Skip to main content

engage/generated/unity_engine/timeline/
grouptrack.rs

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