Skip to main content

engage/generated/root_motion/final_ik/
iksolverfullbody.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "root_motion-final_ik-iksolverfullbody-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        root_motion::final_ik::iksolver::{IIKSolver, IKSolver},
10        system::object::{IObject, Object},
11    };
12
13    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root_motion/final_ik/iksolverfullbody/IKSolverFullBody.md"))]
14    #[::unity::class(namespace = "RootMotion.FinalIK", name = "IKSolverFullBody")]
15    #[parent(crate::root_motion::final_ik::iksolver::IKSolver)]
16    pub struct IKSolverFullBody {
17        #[offset(88)]
18        #[rename(name = "iterations")]
19        pub iterations: i32,
20        #[offset(96)]
21        #[rename(name = "chain")]
22        pub chain: ::unity::Array<crate::root_motion::final_ik::fbikchain::FBIKChain>,
23        #[offset(104)]
24        #[rename(name = "effectors")]
25        pub effectors: ::unity::Array<crate::root_motion::final_ik::ikeffector::IKEffector>,
26        #[offset(112)]
27        #[rename(name = "spineMapping")]
28        pub spine_mapping: crate::root_motion::final_ik::ikmappingspine::IKMappingSpine,
29        #[offset(120)]
30        #[rename(name = "boneMappings")]
31        pub bone_mappings: ::unity::Array<crate::root_motion::final_ik::ikmappingbone::IKMappingBone>,
32        #[offset(128)]
33        #[rename(name = "limbMappings")]
34        pub limb_mappings: ::unity::Array<crate::root_motion::final_ik::ikmappinglimb::IKMappingLimb>,
35        #[offset(136)]
36        #[rename(name = "FABRIKPass")]
37        pub fabrik_pass: bool,
38        #[offset(144)]
39        #[rename(name = "OnPreRead")]
40        pub on_pre_read: crate::root_motion::final_ik::iksolver::IKSolver_UpdateDelegate,
41        #[offset(152)]
42        #[rename(name = "OnPreSolve")]
43        pub on_pre_solve: crate::root_motion::final_ik::iksolver::IKSolver_UpdateDelegate,
44        #[offset(160)]
45        #[rename(name = "OnPreIteration")]
46        pub on_pre_iteration: crate::root_motion::final_ik::iksolver::IKSolver_IterationDelegate,
47        #[offset(168)]
48        #[rename(name = "OnPostIteration")]
49        pub on_post_iteration: crate::root_motion::final_ik::iksolver::IKSolver_IterationDelegate,
50        #[offset(176)]
51        #[rename(name = "OnPreBend")]
52        pub on_pre_bend: crate::root_motion::final_ik::iksolver::IKSolver_UpdateDelegate,
53        #[offset(184)]
54        #[rename(name = "OnPostSolve")]
55        pub on_post_solve: crate::root_motion::final_ik::iksolver::IKSolver_UpdateDelegate,
56        #[offset(192)]
57        #[rename(name = "OnStoreDefaultLocalState")]
58        pub on_store_default_local_state: crate::root_motion::final_ik::iksolver::IKSolver_UpdateDelegate,
59        #[offset(200)]
60        #[rename(name = "OnFixTransforms")]
61        pub on_fix_transforms: crate::root_motion::final_ik::iksolver::IKSolver_UpdateDelegate,
62    }
63}
64
65#[cfg(feature = "root_motion-final_ik-iksolverfullbody-types")]
66pub use __types::*;
67
68#[cfg(feature = "root_motion-final_ik-iksolverfullbody")]
69pub trait IIKSolverFullBodyMethods: IIKSolverFullBody {
70    #[doc = "`GetEffector(crate::unity_engine::transform::Transform)` overload"]
71    fn get_effector(
72        self,
73        t: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
74    ) -> crate::root_motion::final_ik::ikeffector::IKEffector {
75        unsafe {
76            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
77            ::unity::il2cpp_call!((::unity::module_base()+0x3c2cd50usize)as*mut u8,crate::root_motion::final_ik::ikeffector::IKEffector;
78(IKSolverFullBody)__receiver,(crate::unity_engine::transform::Transform)::core::convert::Into::into(t))
79        }
80    }
81    #[doc = "`GetChain(crate::unity_engine::transform::Transform)` overload"]
82    fn get_chain(
83        self,
84        transform: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
85    ) -> crate::root_motion::final_ik::fbikchain::FBIKChain {
86        unsafe {
87            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
88            ::unity::il2cpp_call!((::unity::module_base()+0x3c2ce50usize)as*mut u8,crate::root_motion::final_ik::fbikchain::FBIKChain;
89(IKSolverFullBody)__receiver,(crate::unity_engine::transform::Transform)::core::convert::Into::into(transform))
90        }
91    }
92    #[doc = "`GetChainIndex(crate::unity_engine::transform::Transform)` overload"]
93    fn get_chain_index(self, transform: impl ::core::convert::Into<crate::unity_engine::transform::Transform>) -> i32 {
94        unsafe {
95            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
96            ::unity::il2cpp_call!((::unity::module_base()+0x3c2ceb0usize)as*mut u8,i32;
97(IKSolverFullBody)__receiver,(crate::unity_engine::transform::Transform)::core::convert::Into::into(transform))
98        }
99    }
100    #[doc = "`GetNode(i32, i32)` overload"]
101    fn get_node(
102        self,
103        chain_index: impl ::core::convert::Into<i32>,
104        node_index: impl ::core::convert::Into<i32>,
105    ) -> crate::root_motion::final_ik::iksolver::IKSolver_Node {
106        unsafe {
107            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
108            ::unity::il2cpp_call!((::unity::module_base()+0x3c2cfe0usize)as*mut u8,crate::root_motion::final_ik::iksolver::IKSolver_Node;
109(IKSolverFullBody)__receiver,(i32)::core::convert::Into::into(chain_index),(i32)::core::convert::Into::into(node_index))
110        }
111    }
112    #[doc = "`GetChainAndNodeIndexes(crate::unity_engine::transform::Transform, *muti32, *muti32)` overload"]
113    fn get_chain_and_node_indexes(self, transform: impl ::core::convert::Into<crate::unity_engine::transform::Transform>) -> (i32, i32) {
114        unsafe {
115            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
116            let mut __out_0 = ::core::mem::MaybeUninit::<i32>::uninit();
117            let mut __out_1 = ::core::mem::MaybeUninit::<i32>::uninit();
118            ::unity::il2cpp_call!((::unity::module_base()+0x3c2d030usize)as*mut u8,();
119(IKSolverFullBody)__receiver,(crate::unity_engine::transform::Transform)::core::convert::Into::into(transform),(*mut i32)__out_0.as_mut_ptr(),(*mut i32)__out_1.as_mut_ptr());
120            (__out_0.assume_init(), __out_1.assume_init())
121        }
122    }
123    #[doc = "`GetPoints()` overload"]
124    fn get_points(self) -> ::unity::Array<crate::root_motion::final_ik::iksolver::IKSolver_Point> {
125        unsafe {
126            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
127            {
128                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
129                let __vi = *__vt.get(6usize).unwrap_or_else(|| {
130                    panic!(
131                        "unity: virtual slot {}
132 out of range (vtable len {}
133) on the runtime class behind {}
134 (method `{}
135`)",
136                        6usize,
137                        __vt.len(),
138                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
139                        "GetPoints",
140                    )
141                });
142                let __inner: extern "C" fn(
143                    IKSolverFullBody,
144                    ::unity::OptionalMethod,
145                ) -> ::unity::Array<crate::root_motion::final_ik::iksolver::IKSolver_Point> = ::core::mem::transmute(__vi.method_ptr);
146                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
147                __inner(__receiver, __mi)
148            }
149        }
150    }
151    #[doc = "`GetPoint(crate::unity_engine::transform::Transform)` overload"]
152    fn get_point(
153        self,
154        transform: impl ::core::convert::Into<crate::unity_engine::transform::Transform>,
155    ) -> crate::root_motion::final_ik::iksolver::IKSolver_Point {
156        unsafe {
157            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
158            {
159                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
160                let __vi = *__vt.get(7usize).unwrap_or_else(|| {
161                    panic!(
162                        "unity: virtual slot {}
163 out of range (vtable len {}
164) on the runtime class behind {}
165 (method `{}
166`)",
167                        7usize,
168                        __vt.len(),
169                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
170                        "GetPoint",
171                    )
172                });
173                let __inner: extern "C" fn(
174                    IKSolverFullBody,
175                    crate::unity_engine::transform::Transform,
176                    ::unity::OptionalMethod,
177                ) -> crate::root_motion::final_ik::iksolver::IKSolver_Point = ::core::mem::transmute(__vi.method_ptr);
178                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
179                __inner(__receiver, ::core::convert::Into::into(transform), __mi)
180            }
181        }
182    }
183    #[doc = "`IsValid(*mut::unity::Il2CppString)` overload"]
184    fn is_valid(self) -> (bool, ::unity::Il2CppString) {
185        unsafe {
186            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
187            let mut __out_0 = ::core::mem::MaybeUninit::<::unity::Il2CppString>::uninit();
188            let __ret = {
189                {
190                    let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
191                    let __vi = *__vt.get(4usize).unwrap_or_else(|| {
192                        panic!(
193                            "unity: virtual slot {}
194 out of range (vtable len {}
195) on the runtime class behind {}
196 (method `{}
197`)",
198                            4usize,
199                            __vt.len(),
200                            <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
201                            "IsValid",
202                        )
203                    });
204                    let __inner: extern "C" fn(IKSolverFullBody, *mut ::unity::Il2CppString, ::unity::OptionalMethod) -> bool =
205                        ::core::mem::transmute(__vi.method_ptr);
206                    let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
207                    __inner(__receiver, __out_0.as_mut_ptr(), __mi)
208                }
209            };
210            (__ret, __out_0.assume_init())
211        }
212    }
213    #[doc = "`StoreDefaultLocalState()` overload"]
214    fn store_default_local_state(self) -> () {
215        unsafe {
216            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
217            {
218                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
219                let __vi = *__vt.get(9usize).unwrap_or_else(|| {
220                    panic!(
221                        "unity: virtual slot {}
222 out of range (vtable len {}
223) on the runtime class behind {}
224 (method `{}
225`)",
226                        9usize,
227                        __vt.len(),
228                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
229                        "StoreDefaultLocalState",
230                    )
231                });
232                let __inner: extern "C" fn(IKSolverFullBody, ::unity::OptionalMethod) -> () = ::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, __mi)
235            }
236        }
237    }
238    #[doc = "`FixTransforms()` overload"]
239    fn fix_transforms(self) -> () {
240        unsafe {
241            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
242            {
243                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
244                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
245                    panic!(
246                        "unity: virtual slot {}
247 out of range (vtable len {}
248) on the runtime class behind {}
249 (method `{}
250`)",
251                        8usize,
252                        __vt.len(),
253                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
254                        "FixTransforms",
255                    )
256                });
257                let __inner: extern "C" fn(IKSolverFullBody, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
258                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
259                __inner(__receiver, __mi)
260            }
261        }
262    }
263    #[doc = "`OnInitiate()` overload"]
264    fn on_initiate(self) -> () {
265        unsafe {
266            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
267            {
268                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
269                let __vi = *__vt.get(10usize).unwrap_or_else(|| {
270                    panic!(
271                        "unity: virtual slot {}
272 out of range (vtable len {}
273) on the runtime class behind {}
274 (method `{}
275`)",
276                        10usize,
277                        __vt.len(),
278                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
279                        "OnInitiate",
280                    )
281                });
282                let __inner: extern "C" fn(IKSolverFullBody, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
283                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
284                __inner(__receiver, __mi)
285            }
286        }
287    }
288    #[doc = "`OnUpdate()` overload"]
289    fn on_update(self) -> () {
290        unsafe {
291            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
292            {
293                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
294                let __vi = *__vt.get(11usize).unwrap_or_else(|| {
295                    panic!(
296                        "unity: virtual slot {}
297 out of range (vtable len {}
298) on the runtime class behind {}
299 (method `{}
300`)",
301                        11usize,
302                        __vt.len(),
303                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
304                        "OnUpdate",
305                    )
306                });
307                let __inner: extern "C" fn(IKSolverFullBody, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
308                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
309                __inner(__receiver, __mi)
310            }
311        }
312    }
313    #[doc = "`ReadPose()` overload"]
314    fn read_pose(self) -> () {
315        unsafe {
316            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
317            {
318                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
319                let __vi = *__vt.get(12usize).unwrap_or_else(|| {
320                    panic!(
321                        "unity: virtual slot {}
322 out of range (vtable len {}
323) on the runtime class behind {}
324 (method `{}
325`)",
326                        12usize,
327                        __vt.len(),
328                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
329                        "ReadPose",
330                    )
331                });
332                let __inner: extern "C" fn(IKSolverFullBody, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
333                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
334                __inner(__receiver, __mi)
335            }
336        }
337    }
338    #[doc = "`Solve()` overload"]
339    fn solve(self) -> () {
340        unsafe {
341            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
342            {
343                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
344                let __vi = *__vt.get(13usize).unwrap_or_else(|| {
345                    panic!(
346                        "unity: virtual slot {}
347 out of range (vtable len {}
348) on the runtime class behind {}
349 (method `{}
350`)",
351                        13usize,
352                        __vt.len(),
353                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
354                        "Solve",
355                    )
356                });
357                let __inner: extern "C" fn(IKSolverFullBody, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
358                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
359                __inner(__receiver, __mi)
360            }
361        }
362    }
363    #[doc = "`ApplyBendConstraints()` overload"]
364    fn apply_bend_constraints(self) -> () {
365        unsafe {
366            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
367            {
368                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
369                let __vi = *__vt.get(14usize).unwrap_or_else(|| {
370                    panic!(
371                        "unity: virtual slot {}
372 out of range (vtable len {}
373) on the runtime class behind {}
374 (method `{}
375`)",
376                        14usize,
377                        __vt.len(),
378                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
379                        "ApplyBendConstraints",
380                    )
381                });
382                let __inner: extern "C" fn(IKSolverFullBody, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
383                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
384                __inner(__receiver, __mi)
385            }
386        }
387    }
388    #[doc = "`WritePose()` overload"]
389    fn write_pose(self) -> () {
390        unsafe {
391            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
392            {
393                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
394                let __vi = *__vt.get(15usize).unwrap_or_else(|| {
395                    panic!(
396                        "unity: virtual slot {}
397 out of range (vtable len {}
398) on the runtime class behind {}
399 (method `{}
400`)",
401                        15usize,
402                        __vt.len(),
403                        <IKSolverFullBody as ::unity::ClassIdentity>::NAME,
404                        "WritePose",
405                    )
406                });
407                let __inner: extern "C" fn(IKSolverFullBody, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
408                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
409                __inner(__receiver, __mi)
410            }
411        }
412    }
413    #[doc = "`.ctor()` overload"]
414    fn ctor(self) -> () {
415        unsafe {
416            let __receiver = <IKSolverFullBody as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
417            ::unity::il2cpp_call!((::unity::module_base()+0x3c2e060usize)as*mut u8,();
418(IKSolverFullBody)__receiver)
419        }
420    }
421}
422
423#[cfg(feature = "root_motion-final_ik-iksolverfullbody")]
424impl<__T: IIKSolverFullBody> IIKSolverFullBodyMethods for __T {}
425
426#[cfg(feature = "root_motion-final_ik-iksolverfullbody")]
427impl IKSolverFullBody {
428    pub fn get_effector_method_info() -> &'static ::unity::il2cpp::MethodInfo {
429        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
430    }
431
432    pub fn get_chain_method_info() -> &'static ::unity::il2cpp::MethodInfo {
433        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
434    }
435
436    pub fn get_chain_index_method_info() -> &'static ::unity::il2cpp::MethodInfo {
437        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
438    }
439
440    pub fn get_node_method_info() -> &'static ::unity::il2cpp::MethodInfo {
441        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
442    }
443
444    pub fn get_chain_and_node_indexes_method_info() -> &'static ::unity::il2cpp::MethodInfo {
445        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
446    }
447
448    pub fn get_points_method_info() -> &'static ::unity::il2cpp::MethodInfo {
449        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
450    }
451
452    pub fn get_point_method_info() -> &'static ::unity::il2cpp::MethodInfo {
453        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
454    }
455
456    pub fn is_valid_method_info() -> &'static ::unity::il2cpp::MethodInfo {
457        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
458    }
459
460    pub fn store_default_local_state_method_info() -> &'static ::unity::il2cpp::MethodInfo {
461        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
462    }
463
464    pub fn fix_transforms_method_info() -> &'static ::unity::il2cpp::MethodInfo {
465        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
466    }
467
468    pub fn on_initiate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
469        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
470    }
471
472    pub fn on_update_method_info() -> &'static ::unity::il2cpp::MethodInfo {
473        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
474    }
475
476    pub fn read_pose_method_info() -> &'static ::unity::il2cpp::MethodInfo {
477        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[12]
478    }
479
480    pub fn solve_method_info() -> &'static ::unity::il2cpp::MethodInfo {
481        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[13]
482    }
483
484    pub fn apply_bend_constraints_method_info() -> &'static ::unity::il2cpp::MethodInfo {
485        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[14]
486    }
487
488    pub fn write_pose_method_info() -> &'static ::unity::il2cpp::MethodInfo {
489        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[15]
490    }
491
492    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
493        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[16]
494    }
495}
496
497#[cfg(feature = "root_motion-final_ik-iksolverfullbody")]
498impl IKSolverFullBody {
499    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `GetPoints`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
500    pub unsafe fn get_points(
501        this: impl ::core::convert::Into<::unity::IlInstance>,
502    ) -> ::unity::Array<crate::root_motion::final_ik::iksolver::IKSolver_Point> {
503        let __mi = Self::get_points_method_info();
504        let __inner: extern "C" fn(
505            ::unity::IlInstance,
506            ::unity::OptionalMethod,
507        ) -> ::unity::Array<crate::root_motion::final_ik::iksolver::IKSolver_Point> = ::core::mem::transmute(__mi.method_ptr);
508        __inner(this.into(), ::core::option::Option::None)
509    }
510
511    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `GetPoint`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
512    pub unsafe fn get_point(
513        this: impl ::core::convert::Into<::unity::IlInstance>,
514        transform: crate::unity_engine::transform::Transform,
515    ) -> crate::root_motion::final_ik::iksolver::IKSolver_Point {
516        let __mi = Self::get_point_method_info();
517        let __inner: extern "C" fn(
518            ::unity::IlInstance,
519            crate::unity_engine::transform::Transform,
520            ::unity::OptionalMethod,
521        ) -> crate::root_motion::final_ik::iksolver::IKSolver_Point = ::core::mem::transmute(__mi.method_ptr);
522        __inner(this.into(), transform, ::core::option::Option::None)
523    }
524
525    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `IsValid`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
526    pub unsafe fn is_valid(this: impl ::core::convert::Into<::unity::IlInstance>, message: *mut ::unity::Il2CppString) -> bool {
527        let __mi = Self::is_valid_method_info();
528        let __inner: extern "C" fn(::unity::IlInstance, *mut ::unity::Il2CppString, ::unity::OptionalMethod) -> bool =
529            ::core::mem::transmute(__mi.method_ptr);
530        __inner(this.into(), message, ::core::option::Option::None)
531    }
532
533    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `StoreDefaultLocalState`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
534    pub unsafe fn store_default_local_state(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
535        let __mi = Self::store_default_local_state_method_info();
536        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
537        __inner(this.into(), ::core::option::Option::None)
538    }
539
540    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `FixTransforms`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
541    pub unsafe fn fix_transforms(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
542        let __mi = Self::fix_transforms_method_info();
543        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
544        __inner(this.into(), ::core::option::Option::None)
545    }
546
547    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `OnInitiate`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
548    pub unsafe fn on_initiate(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
549        let __mi = Self::on_initiate_method_info();
550        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
551        __inner(this.into(), ::core::option::Option::None)
552    }
553
554    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `OnUpdate`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
555    pub unsafe fn on_update(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
556        let __mi = Self::on_update_method_info();
557        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
558        __inner(this.into(), ::core::option::Option::None)
559    }
560
561    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `ReadPose`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
562    pub unsafe fn read_pose(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
563        let __mi = Self::read_pose_method_info();
564        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
565        __inner(this.into(), ::core::option::Option::None)
566    }
567
568    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `Solve`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
569    pub unsafe fn solve(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
570        let __mi = Self::solve_method_info();
571        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
572        __inner(this.into(), ::core::option::Option::None)
573    }
574
575    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `ApplyBendConstraints`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
576    pub unsafe fn apply_bend_constraints(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
577        let __mi = Self::apply_bend_constraints_method_info();
578        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
579        __inner(this.into(), ::core::option::Option::None)
580    }
581
582    #[doc = "Direct (non-virtual) call to `IKSolverFullBody`'s own `WritePose`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
583    pub unsafe fn write_pose(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
584        let __mi = Self::write_pose_method_info();
585        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
586        __inner(this.into(), ::core::option::Option::None)
587    }
588}
589
590#[cfg(feature = "root_motion-final_ik-iksolverfullbody")]
591impl IKSolverFullBody {
592    #[doc = "`.ctor()` — no args"]
593    pub fn new() -> Self {
594        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
595            panic!(
596                "{}
597::{}
598 failed to instantiate",
599                ::core::stringify!(IKSolverFullBody),
600                ::core::stringify!(new),
601            )
602        });
603        <Self as IIKSolverFullBodyMethods>::ctor(this);
604        this
605    }
606}
607
608#[cfg(feature = "root_motion-final_ik-iksolverfullbody")]
609#[doc(hidden)]
610pub mod prelude {
611    pub use super::{IIKSolverFullBody, IIKSolverFullBodyMethods, IKSolverFullBody};
612    #[cfg(feature = "root_motion-final_ik-iksolver")]
613    pub use crate::root_motion::final_ik::iksolver::IIKSolverMethods;
614    #[cfg(feature = "system-object")]
615    pub use crate::system::object::IObjectMethods;
616    pub use crate::{
617        root_motion::final_ik::iksolver::{IIKSolver, IKSolver},
618        system::object::IObject,
619    };
620}