Skip to main content

engage/generated/root/
akrtpctrack.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "root-akrtpctrack-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        system::object::{IObject, Object},
10        unity_engine::{
11            object_2::{IObject_2, Object_2},
12            playables::playableasset::{IPlayableAsset, PlayableAsset},
13            scriptableobject::{IScriptableObject, ScriptableObject},
14            timeline::trackasset::{ITrackAsset, TrackAsset},
15        },
16    };
17
18    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root/akrtpctrack/AkRTPCTrack.md"))]
19    #[::unity::class(namespace = "", name = "AkRTPCTrack")]
20    #[parent(crate::unity_engine::timeline::trackasset::TrackAsset)]
21    pub struct AkRTPCTrack {}
22}
23
24#[cfg(feature = "root-akrtpctrack-types")]
25pub use __types::*;
26
27#[cfg(feature = "root-akrtpctrack")]
28pub trait IAkRTPCTrackMethods: IAkRTPCTrack {
29    #[doc = "`CreateTrackMixer(crate::unity_engine::playables::playablegraph::PlayableGraph, crate::unity_engine::gameobject::GameObject, i32)` overload"]
30    fn create_track_mixer(
31        self,
32        graph: impl ::core::convert::Into<crate::unity_engine::playables::playablegraph::PlayableGraph>,
33        go: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>,
34        input_count: impl ::core::convert::Into<i32>,
35    ) -> crate::unity_engine::playables::playable::Playable {
36        unsafe {
37            let __receiver = <AkRTPCTrack as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
38            {
39                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
40                let __vi = *__vt.get(23usize).unwrap_or_else(|| {
41                    panic!(
42                        "unity: virtual slot {}
43 out of range (vtable len {}
44) on the runtime class behind {}
45 (method `{}
46`)",
47                        23usize,
48                        __vt.len(),
49                        <AkRTPCTrack as ::unity::ClassIdentity>::NAME,
50                        "CreateTrackMixer",
51                    )
52                });
53                let __inner: extern "C" fn(
54                    AkRTPCTrack,
55                    crate::unity_engine::playables::playablegraph::PlayableGraph,
56                    crate::unity_engine::gameobject::GameObject,
57                    i32,
58                    ::unity::OptionalMethod,
59                ) -> crate::unity_engine::playables::playable::Playable = ::core::mem::transmute(__vi.method_ptr);
60                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
61                __inner(
62                    __receiver,
63                    ::core::convert::Into::into(graph),
64                    ::core::convert::Into::into(go),
65                    ::core::convert::Into::into(input_count),
66                    __mi,
67                )
68            }
69        }
70    }
71    #[doc = "`setPlayableProperties()` overload"]
72    fn set_playable_properties(self) -> () {
73        unsafe {
74            let __receiver = <AkRTPCTrack as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
75            ::unity::il2cpp_call!((::unity::module_base()+0x2f2fd40usize)as*mut u8,();
76(AkRTPCTrack)__receiver)
77        }
78    }
79    #[doc = "`OnValidate()` overload"]
80    fn on_validate(self) -> () {
81        unsafe {
82            let __receiver = <AkRTPCTrack as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
83            ::unity::il2cpp_call!((::unity::module_base()+0x2f30050usize)as*mut u8,();
84(AkRTPCTrack)__receiver)
85        }
86    }
87    #[doc = "`.ctor()` overload"]
88    fn ctor(self) -> () {
89        unsafe {
90            let __receiver = <AkRTPCTrack as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
91            ::unity::il2cpp_call!((::unity::module_base()+0x2f30340usize)as*mut u8,();
92(AkRTPCTrack)__receiver)
93        }
94    }
95}
96
97#[cfg(feature = "root-akrtpctrack")]
98impl<__T: IAkRTPCTrack> IAkRTPCTrackMethods for __T {}
99
100#[cfg(feature = "root-akrtpctrack")]
101impl AkRTPCTrack {
102    pub fn create_track_mixer_method_info() -> &'static ::unity::il2cpp::MethodInfo {
103        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
104    }
105
106    pub fn set_playable_properties_method_info() -> &'static ::unity::il2cpp::MethodInfo {
107        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
108    }
109
110    pub fn on_validate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
111        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
112    }
113
114    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
115        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
116    }
117}
118
119#[cfg(feature = "root-akrtpctrack")]
120impl AkRTPCTrack {
121    #[doc = "Direct (non-virtual) call to `AkRTPCTrack`'s own `CreateTrackMixer`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
122    pub unsafe fn create_track_mixer(
123        this: impl ::core::convert::Into<::unity::IlInstance>,
124        graph: crate::unity_engine::playables::playablegraph::PlayableGraph,
125        go: crate::unity_engine::gameobject::GameObject,
126        input_count: i32,
127    ) -> crate::unity_engine::playables::playable::Playable {
128        let __mi = Self::create_track_mixer_method_info();
129        let __inner: extern "C" fn(
130            ::unity::IlInstance,
131            crate::unity_engine::playables::playablegraph::PlayableGraph,
132            crate::unity_engine::gameobject::GameObject,
133            i32,
134            ::unity::OptionalMethod,
135        ) -> crate::unity_engine::playables::playable::Playable = ::core::mem::transmute(__mi.method_ptr);
136        __inner(this.into(), graph, go, input_count, ::core::option::Option::None)
137    }
138}
139
140#[cfg(feature = "root-akrtpctrack")]
141impl AkRTPCTrack {
142    #[doc = "`.ctor()` — no args"]
143    pub fn new() -> Self {
144        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
145            panic!(
146                "{}
147::{}
148 failed to instantiate",
149                ::core::stringify!(AkRTPCTrack),
150                ::core::stringify!(new),
151            )
152        });
153        <Self as IAkRTPCTrackMethods>::ctor(this);
154        this
155    }
156}
157
158#[cfg(feature = "root-akrtpctrack")]
159#[doc(hidden)]
160pub mod prelude {
161    pub use super::{AkRTPCTrack, IAkRTPCTrack, IAkRTPCTrackMethods};
162    #[cfg(feature = "system-object")]
163    pub use crate::system::object::IObjectMethods;
164    #[cfg(feature = "unity_engine-object_2")]
165    pub use crate::unity_engine::object_2::IObject_2Methods;
166    #[cfg(feature = "unity_engine-playables-playableasset")]
167    pub use crate::unity_engine::playables::playableasset::IPlayableAssetMethods;
168    #[cfg(feature = "unity_engine-scriptableobject")]
169    pub use crate::unity_engine::scriptableobject::IScriptableObjectMethods;
170    #[cfg(feature = "unity_engine-timeline-trackasset")]
171    pub use crate::unity_engine::timeline::trackasset::ITrackAssetMethods;
172    pub use crate::{
173        system::object::IObject,
174        unity_engine::{
175            object_2::IObject_2, playables::playableasset::IPlayableAsset, scriptableobject::IScriptableObject, timeline::trackasset::ITrackAsset,
176        },
177    };
178}