Skip to main content

engage/generated/root_motion/final_ik/
ikmappinglimb.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "root_motion-final_ik-ikmappinglimb-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        root_motion::final_ik::ikmapping::{IIKMapping, IKMapping},
10        system::{
11            object::{IObject, Object},
12            r#enum::{Enum, IEnum},
13            valuetype::{IValueType, ValueType},
14        },
15    };
16
17    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root_motion/final_ik/ikmappinglimb/IKMappingLimb_BoneMapType.md"))]
18    #[repr(C)]
19    #[derive(::core::clone::Clone, ::core::marker::Copy, ::core::fmt::Debug, ::core::cmp::PartialEq, ::core::cmp::Eq)]
20    pub struct IKMappingLimb_BoneMapType {
21        pub value: i32,
22    }
23    impl ::unity::ClassIdentity for IKMappingLimb_BoneMapType {
24        const NAME: &'static str = "IKMappingLimb.BoneMapType";
25        const NAMESPACE: &'static str = "RootMotion.FinalIK";
26
27        fn class() -> ::unity::Class {
28            static CACHE: ::std::sync::OnceLock<::unity::Class> = ::std::sync::OnceLock::new();
29            *CACHE.get_or_init(|| ::unity::Class::lookup(Self::NAMESPACE, Self::NAME))
30        }
31    }
32    impl ::unity::IlType for IKMappingLimb_BoneMapType {
33        fn il_type() -> &'static ::unity::il2cpp::Il2CppType {
34            &<Self as ::unity::ClassIdentity>::class().raw()._1.byval_arg
35        }
36    }
37    impl IKMappingLimb_BoneMapType {
38        pub fn parent() -> Self {
39            Self { value: 0 }
40        }
41
42        pub fn bone1() -> Self {
43            Self { value: 1 }
44        }
45
46        pub fn bone2() -> Self {
47            Self { value: 2 }
48        }
49
50        pub fn bone3() -> Self {
51            Self { value: 3 }
52        }
53    }
54
55    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root_motion/final_ik/ikmappinglimb/IKMappingLimb.md"))]
56    #[::unity::class(namespace = "RootMotion.FinalIK", name = "IKMappingLimb")]
57    #[parent(crate::root_motion::final_ik::ikmapping::IKMapping)]
58    pub struct IKMappingLimb {
59        #[offset(16)]
60        #[rename(name = "parentBone")]
61        pub parent_bone: crate::unity_engine::transform::Transform,
62        #[offset(24)]
63        #[rename(name = "bone1")]
64        pub bone1: crate::unity_engine::transform::Transform,
65        #[offset(32)]
66        #[rename(name = "bone2")]
67        pub bone2: crate::unity_engine::transform::Transform,
68        #[offset(40)]
69        #[rename(name = "bone3")]
70        pub bone3: crate::unity_engine::transform::Transform,
71        #[offset(48)]
72        #[rename(name = "maintainRotationWeight")]
73        pub maintain_rotation_weight: f32,
74        #[offset(52)]
75        #[rename(name = "weight")]
76        pub weight: f32,
77        #[offset(56)]
78        #[rename(name = "updatePlaneRotations")]
79        pub update_plane_rotations: bool,
80        #[offset(64)]
81        #[rename(name = "boneMapParent")]
82        pub bone_map_parent: crate::root_motion::final_ik::ikmapping::IKMapping_BoneMap,
83        #[offset(72)]
84        #[rename(name = "boneMap1")]
85        pub bone_map1: crate::root_motion::final_ik::ikmapping::IKMapping_BoneMap,
86        #[offset(80)]
87        #[rename(name = "boneMap2")]
88        pub bone_map2: crate::root_motion::final_ik::ikmapping::IKMapping_BoneMap,
89        #[offset(88)]
90        #[rename(name = "boneMap3")]
91        pub bone_map3: crate::root_motion::final_ik::ikmapping::IKMapping_BoneMap,
92    }
93}
94
95#[cfg(feature = "root_motion-final_ik-ikmappinglimb-types")]
96pub use __types::*;
97
98#[cfg(feature = "root_motion-final_ik-ikmappinglimb")]
99pub trait IIKMappingLimbMethods: IIKMappingLimb {
100    #[doc = "`IsValid(crate::root_motion::final_ik::iksolver::IKSolver, *mut::unity::Il2CppString)` overload"]
101    fn is_valid(self, solver: impl ::core::convert::Into<crate::root_motion::final_ik::iksolver::IKSolver>) -> (bool, ::unity::Il2CppString) {
102        unsafe {
103            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
104            let mut __out_0 = ::core::mem::MaybeUninit::<::unity::Il2CppString>::uninit();
105            let __ret = {
106                {
107                    let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
108                    let __vi = *__vt.get(4usize).unwrap_or_else(|| {
109                        panic!(
110                            "unity: virtual slot {}
111 out of range (vtable len {}
112) on the runtime class behind {}
113 (method `{}
114`)",
115                            4usize,
116                            __vt.len(),
117                            <IKMappingLimb as ::unity::ClassIdentity>::NAME,
118                            "IsValid",
119                        )
120                    });
121                    let __inner: extern "C" fn(
122                        IKMappingLimb,
123                        crate::root_motion::final_ik::iksolver::IKSolver,
124                        *mut ::unity::Il2CppString,
125                        ::unity::OptionalMethod,
126                    ) -> bool = ::core::mem::transmute(__vi.method_ptr);
127                    let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
128                    __inner(__receiver, ::core::convert::Into::into(solver), __out_0.as_mut_ptr(), __mi)
129                }
130            };
131            (__ret, __out_0.assume_init())
132        }
133    }
134    #[doc = "`GetBoneMap(crate::root_motion::final_ik::ikmappinglimb::IKMappingLimb_BoneMapType)` overload"]
135    fn get_bone_map(
136        self,
137        bone_map: impl ::core::convert::Into<crate::root_motion::final_ik::ikmappinglimb::IKMappingLimb_BoneMapType>,
138    ) -> crate::root_motion::final_ik::ikmapping::IKMapping_BoneMap {
139        unsafe {
140            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
141            ::unity::il2cpp_call!((::unity::module_base()+0x2a79ee0usize)as*mut u8,crate::root_motion::final_ik::ikmapping::IKMapping_BoneMap;
142(IKMappingLimb)__receiver,(crate::root_motion::final_ik::ikmappinglimb::IKMappingLimb_BoneMapType)::core::convert::Into::into(bone_map))
143        }
144    }
145    #[doc = "`SetLimbOrientation(crate::unity_engine::vector3::Vector3, crate::unity_engine::vector3::Vector3)` overload"]
146    fn set_limb_orientation(
147        self,
148        upper: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
149        lower: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
150    ) -> () {
151        unsafe {
152            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
153            ::unity::il2cpp_call!((::unity::module_base()+0x2a79fc0usize)as*mut u8,();
154(IKMappingLimb)__receiver,(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(upper),(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(lower))
155        }
156    }
157    #[doc = "`.ctor()` overload"]
158    fn ctor(self) -> () {
159        unsafe {
160            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
161            ::unity::il2cpp_call!((::unity::module_base()+0x2a7a1c0usize)as*mut u8,();
162(IKMappingLimb)__receiver)
163        }
164    }
165    #[doc = "`.ctor(crate::unity_engine::transform::Transform, crate::unity_engine::transform::Transform, crate::unity_engine::transform::Transform, crate::unity_engine::transform::Transform)` overload"]
166    fn ctor_2(
167        self,
168        bone1: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
169        bone2: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
170        bone3: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
171        parent_bone: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
172    ) -> () {
173        unsafe {
174            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
175            ::unity::il2cpp_call!((::unity::module_base()+0x2a7a2c0usize)as*mut u8,();
176(IKMappingLimb)__receiver,(crate::unity_engine::transform::Transform)::core::convert::Into::into(bone1),(crate::unity_engine::transform::Transform)::core::convert::Into::into(bone2),(crate::unity_engine::transform::Transform)::core::convert::Into::into(bone3),(crate::unity_engine::transform::Transform)::core::convert::Into::into(parent_bone))
177        }
178    }
179    #[doc = "`SetBones(crate::unity_engine::transform::Transform, crate::unity_engine::transform::Transform, crate::unity_engine::transform::Transform, crate::unity_engine::transform::Transform)` overload"]
180    fn set_bones(
181        self,
182        bone1: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
183        bone2: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
184        bone3: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
185        parent_bone: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
186    ) -> () {
187        unsafe {
188            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
189            ::unity::il2cpp_call!((::unity::module_base()+0x2a7a420usize)as*mut u8,();
190(IKMappingLimb)__receiver,(crate::unity_engine::transform::Transform)::core::convert::Into::into(bone1),(crate::unity_engine::transform::Transform)::core::convert::Into::into(bone2),(crate::unity_engine::transform::Transform)::core::convert::Into::into(bone3),(crate::unity_engine::transform::Transform)::core::convert::Into::into(parent_bone))
191        }
192    }
193    #[doc = "`StoreDefaultLocalState()` overload"]
194    fn store_default_local_state(self) -> () {
195        unsafe {
196            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
197            ::unity::il2cpp_call!((::unity::module_base()+0x2a7a490usize)as*mut u8,();
198(IKMappingLimb)__receiver)
199        }
200    }
201    #[doc = "`FixTransforms()` overload"]
202    fn fix_transforms(self) -> () {
203        unsafe {
204            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
205            ::unity::il2cpp_call!((::unity::module_base()+0x2a7a540usize)as*mut u8,();
206(IKMappingLimb)__receiver)
207        }
208    }
209    #[doc = "`Initiate(crate::root_motion::final_ik::iksolverfullbody::IKSolverFullBody)` overload"]
210    fn initiate(self, solver: impl ::core::convert::Into<crate::root_motion::final_ik::iksolverfullbody::IKSolverFullBody>) -> () {
211        unsafe {
212            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
213            {
214                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
215                let __vi = *__vt.get(5usize).unwrap_or_else(|| {
216                    panic!(
217                        "unity: virtual slot {}
218 out of range (vtable len {}
219) on the runtime class behind {}
220 (method `{}
221`)",
222                        5usize,
223                        __vt.len(),
224                        <IKMappingLimb as ::unity::ClassIdentity>::NAME,
225                        "Initiate",
226                    )
227                });
228                let __inner: extern "C" fn(
229                    IKMappingLimb,
230                    crate::root_motion::final_ik::iksolverfullbody::IKSolverFullBody,
231                    ::unity::OptionalMethod,
232                ) -> () = ::core::mem::transmute(__vi.method_ptr);
233                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
234                __inner(__receiver, ::core::convert::Into::into(solver), __mi)
235            }
236        }
237    }
238    #[doc = "`ReadPose()` overload"]
239    fn read_pose(self) -> () {
240        unsafe {
241            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
242            ::unity::il2cpp_call!((::unity::module_base()+0x2a7a8a0usize)as*mut u8,();
243(IKMappingLimb)__receiver)
244        }
245    }
246    #[doc = "`WritePose(crate::root_motion::final_ik::iksolverfullbody::IKSolverFullBody, bool)` overload"]
247    fn write_pose(
248        self,
249        solver: impl ::core::convert::Into<crate::root_motion::final_ik::iksolverfullbody::IKSolverFullBody>,
250        full_body: impl ::core::convert::Into<bool>,
251    ) -> () {
252        unsafe {
253            let __receiver = <IKMappingLimb as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
254            ::unity::il2cpp_call!((::unity::module_base()+0x2a7a910usize)as*mut u8,();
255(IKMappingLimb)__receiver,(crate::root_motion::final_ik::iksolverfullbody::IKSolverFullBody)::core::convert::Into::into(solver),(bool)::core::convert::Into::into(full_body))
256        }
257    }
258}
259
260#[cfg(feature = "root_motion-final_ik-ikmappinglimb")]
261impl<__T: IIKMappingLimb> IIKMappingLimbMethods for __T {}
262
263#[cfg(feature = "root_motion-final_ik-ikmappinglimb")]
264impl IKMappingLimb {
265    pub fn is_valid_method_info() -> &'static ::unity::il2cpp::MethodInfo {
266        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
267    }
268
269    pub fn get_bone_map_method_info() -> &'static ::unity::il2cpp::MethodInfo {
270        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
271    }
272
273    pub fn set_limb_orientation_method_info() -> &'static ::unity::il2cpp::MethodInfo {
274        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
275    }
276
277    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
278        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
279    }
280
281    pub fn ctor_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
282        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
283    }
284
285    pub fn set_bones_method_info() -> &'static ::unity::il2cpp::MethodInfo {
286        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
287    }
288
289    pub fn store_default_local_state_method_info() -> &'static ::unity::il2cpp::MethodInfo {
290        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
291    }
292
293    pub fn fix_transforms_method_info() -> &'static ::unity::il2cpp::MethodInfo {
294        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
295    }
296
297    pub fn initiate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
298        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
299    }
300
301    pub fn read_pose_method_info() -> &'static ::unity::il2cpp::MethodInfo {
302        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
303    }
304
305    pub fn write_pose_method_info() -> &'static ::unity::il2cpp::MethodInfo {
306        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
307    }
308}
309
310#[cfg(feature = "root_motion-final_ik-ikmappinglimb")]
311impl IKMappingLimb {
312    #[doc = "Direct (non-virtual) call to `IKMappingLimb`'s own `IsValid`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
313    pub unsafe fn is_valid(
314        this: impl ::core::convert::Into<::unity::IlInstance>,
315        solver: crate::root_motion::final_ik::iksolver::IKSolver,
316        message: *mut ::unity::Il2CppString,
317    ) -> bool {
318        let __mi = Self::is_valid_method_info();
319        let __inner: extern "C" fn(
320            ::unity::IlInstance,
321            crate::root_motion::final_ik::iksolver::IKSolver,
322            *mut ::unity::Il2CppString,
323            ::unity::OptionalMethod,
324        ) -> bool = ::core::mem::transmute(__mi.method_ptr);
325        __inner(this.into(), solver, message, ::core::option::Option::None)
326    }
327
328    #[doc = "Direct (non-virtual) call to `IKMappingLimb`'s own `Initiate`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
329    pub unsafe fn initiate(
330        this: impl ::core::convert::Into<::unity::IlInstance>,
331        solver: crate::root_motion::final_ik::iksolverfullbody::IKSolverFullBody,
332    ) -> () {
333        let __mi = Self::initiate_method_info();
334        let __inner: extern "C" fn(
335            ::unity::IlInstance,
336            crate::root_motion::final_ik::iksolverfullbody::IKSolverFullBody,
337            ::unity::OptionalMethod,
338        ) -> () = ::core::mem::transmute(__mi.method_ptr);
339        __inner(this.into(), solver, ::core::option::Option::None)
340    }
341}
342
343#[cfg(feature = "root_motion-final_ik-ikmappinglimb")]
344impl IKMappingLimb {
345    #[doc = "`.ctor()` — no args"]
346    pub fn new() -> Self {
347        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
348            panic!(
349                "{}
350::{}
351 failed to instantiate",
352                ::core::stringify!(IKMappingLimb),
353                ::core::stringify!(new),
354            )
355        });
356        <Self as IIKMappingLimbMethods>::ctor(this);
357        this
358    }
359
360    #[doc = "`.ctor(crate::unity_engine::transform::Transform, crate::unity_engine::transform::Transform, crate::unity_engine::transform::Transform, crate::unity_engine::transform::Transform)` — overload selector"]
361    pub fn new_2(
362        bone1: crate::unity_engine::transform::Transform,
363        bone2: crate::unity_engine::transform::Transform,
364        bone3: crate::unity_engine::transform::Transform,
365        parent_bone: crate::unity_engine::transform::Transform,
366    ) -> Self {
367        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
368            panic!(
369                "{}
370::{}
371 failed to instantiate",
372                ::core::stringify!(IKMappingLimb),
373                ::core::stringify!(new_2),
374            )
375        });
376        <Self as IIKMappingLimbMethods>::ctor_2(this, bone1, bone2, bone3, parent_bone);
377        this
378    }
379}
380
381#[cfg(feature = "root_motion-final_ik-ikmappinglimb")]
382#[doc(hidden)]
383pub mod prelude {
384    pub use super::{IIKMappingLimb, IIKMappingLimbMethods, IKMappingLimb, IKMappingLimb_BoneMapType};
385    #[cfg(feature = "root_motion-final_ik-ikmapping")]
386    pub use crate::root_motion::final_ik::ikmapping::IIKMappingMethods;
387    #[cfg(feature = "system-object")]
388    pub use crate::system::object::IObjectMethods;
389    #[cfg(feature = "system-enum")]
390    pub use crate::system::r#enum::IEnumMethods;
391    #[cfg(feature = "system-valuetype")]
392    pub use crate::system::valuetype::IValueTypeMethods;
393    pub use crate::{
394        root_motion::final_ik::ikmapping::{IIKMapping, IKMapping},
395        system::{object::IObject, r#enum::IEnum, valuetype::IValueType},
396    };
397}