1#[cfg(feature = "unity_engine-timeline-timelineplayable-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::playables::playablebehaviour::{IPlayableBehaviour, PlayableBehaviour},
11 };
12
13 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/timeline/timelineplayable/TimelinePlayable.md"))]
14 #[::unity::class(namespace = "UnityEngine.Timeline", name = "TimelinePlayable")]
15 #[parent(crate::unity_engine::playables::playablebehaviour::PlayableBehaviour)]
16 pub struct TimelinePlayable {
17 #[offset(16)]
18 #[rename(name = "m_IntervalTree")]
19 pub m_interval_tree:
20 crate::unity_engine::timeline::intervaltree_1::IntervalTree_1<crate::unity_engine::timeline::runtimeelement::RuntimeElement>,
21 #[offset(24)]
22 #[rename(name = "m_ActiveClips")]
23 pub m_active_clips: crate::system::collections::generic::list_1::List_1<crate::unity_engine::timeline::runtimeelement::RuntimeElement>,
24 #[offset(32)]
25 #[rename(name = "m_CurrentListOfActiveClips")]
26 pub m_current_list_of_active_clips:
27 crate::system::collections::generic::list_1::List_1<crate::unity_engine::timeline::runtimeelement::RuntimeElement>,
28 #[offset(40)]
29 #[rename(name = "m_ActiveBit")]
30 pub m_active_bit: i32,
31 #[offset(48)]
32 #[rename(name = "m_EvaluateCallbacks")]
33 pub m_evaluate_callbacks:
34 crate::system::collections::generic::list_1::List_1<crate::unity_engine::timeline::itimelineevaluatecallback::ITimelineEvaluateCallback>,
35 #[offset(56)]
36 #[rename(name = "m_PlayableCache")]
37 pub m_playable_cache: crate::system::collections::generic::dictionary_2::Dictionary_2<
38 crate::unity_engine::timeline::trackasset::TrackAsset,
39 crate::unity_engine::playables::playable::Playable,
40 >,
41 #[static_field]
42 #[rename(name = "muteAudioScrubbing")]
43 pub mute_audio_scrubbing: bool,
44 }
45}
46
47#[cfg(feature = "unity_engine-timeline-timelineplayable-types")]
48pub use __types::*;
49
50#[cfg(feature = "unity_engine-timeline-timelineplayable")]
51impl TimelinePlayable {
52 #[doc = "`Create(crate::unity_engine::playables::playablegraph::PlayableGraph, crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::unity_engine::timeline::trackasset::TrackAsset>, crate::unity_engine::gameobject::GameObject, bool, bool)` overload"]
53 pub fn create(
54 graph: impl ::core::convert::Into<crate::unity_engine::playables::playablegraph::PlayableGraph>,
55 tracks: impl ::core::convert::Into<
56 crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::unity_engine::timeline::trackasset::TrackAsset>,
57 >,
58 go: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>,
59 auto_rebalance: impl ::core::convert::Into<bool>,
60 create_outputs: impl ::core::convert::Into<bool>,
61 ) -> crate::unity_engine::playables::scriptplayable_1::ScriptPlayable_1<crate::unity_engine::timeline::timelineplayable::TimelinePlayable> {
62 unsafe {
63 ::unity::il2cpp_call!((::unity::module_base()+0x35de480usize)as*mut u8,crate::unity_engine::playables::scriptplayable_1::ScriptPlayable_1<crate::unity_engine::timeline::timelineplayable::TimelinePlayable> ;
64(crate::unity_engine::playables::playablegraph::PlayableGraph)::core::convert::Into::into(graph),(crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::unity_engine::timeline::trackasset::TrackAsset>)::core::convert::Into::into(tracks),(crate::unity_engine::gameobject::GameObject)::core::convert::Into::into(go),(bool)::core::convert::Into::into(auto_rebalance),(bool)::core::convert::Into::into(create_outputs))
65 }
66 }
67
68 #[doc = "`CreatePlayableGraph(crate::unity_engine::playables::playablegraph::PlayableGraph, crate::unity_engine::timeline::trackasset::TrackAsset, crate::unity_engine::gameobject::GameObject, crate::unity_engine::timeline::intervaltree_1::IntervalTree_1<crate::unity_engine::timeline::runtimeelement::RuntimeElement>, crate::unity_engine::playables::playable::Playable)` overload"]
69 pub fn create_playable_graph(
70 graph: impl ::core::convert::Into<crate::unity_engine::playables::playablegraph::PlayableGraph>,
71 asset: impl ::core::convert::Into<crate::unity_engine::timeline::trackasset::TrackAsset>,
72 go: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>,
73 tree: impl ::core::convert::Into<
74 crate::unity_engine::timeline::intervaltree_1::IntervalTree_1<crate::unity_engine::timeline::runtimeelement::RuntimeElement>,
75 >,
76 timeline_playable: impl ::core::convert::Into<crate::unity_engine::playables::playable::Playable>,
77 ) -> crate::unity_engine::playables::playable::Playable {
78 unsafe {
79 ::unity::il2cpp_call!((::unity::module_base()+0x35e3970usize)as*mut u8,crate::unity_engine::playables::playable::Playable;
80(crate::unity_engine::playables::playablegraph::PlayableGraph)::core::convert::Into::into(graph),(crate::unity_engine::timeline::trackasset::TrackAsset)::core::convert::Into::into(asset),(crate::unity_engine::gameobject::GameObject)::core::convert::Into::into(go),(crate::unity_engine::timeline::intervaltree_1::IntervalTree_1<crate::unity_engine::timeline::runtimeelement::RuntimeElement>)::core::convert::Into::into(tree),(crate::unity_engine::playables::playable::Playable)::core::convert::Into::into(timeline_playable))
81 }
82 }
83
84 #[doc = "`.cctor()` overload"]
85 pub fn cctor() -> () {
86 unsafe {
87 ::unity::il2cpp_call!((::unity::module_base()+0x35e4610usize)as*mut u8,();
88 )
89 }
90 }
91}
92
93#[cfg(feature = "unity_engine-timeline-timelineplayable")]
94pub trait ITimelinePlayableMethods: ITimelinePlayable {
95 #[doc = "`Compile(crate::unity_engine::playables::playablegraph::PlayableGraph, crate::unity_engine::playables::playable::Playable, crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::unity_engine::timeline::trackasset::TrackAsset>, crate::unity_engine::gameobject::GameObject, bool, bool)` overload"]
96 fn compile(
97 self,
98 graph: impl ::core::convert::Into<crate::unity_engine::playables::playablegraph::PlayableGraph>,
99 timeline_playable: impl ::core::convert::Into<crate::unity_engine::playables::playable::Playable>,
100 tracks: impl ::core::convert::Into<
101 crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::unity_engine::timeline::trackasset::TrackAsset>,
102 >,
103 go: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>,
104 auto_rebalance: impl ::core::convert::Into<bool>,
105 create_outputs: impl ::core::convert::Into<bool>,
106 ) -> () {
107 unsafe {
108 let __receiver = <TimelinePlayable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
109 ::unity::il2cpp_call!((::unity::module_base()+0x35e2370usize)as*mut u8,();
110(TimelinePlayable)__receiver,(crate::unity_engine::playables::playablegraph::PlayableGraph)::core::convert::Into::into(graph),(crate::unity_engine::playables::playable::Playable)::core::convert::Into::into(timeline_playable),(crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::unity_engine::timeline::trackasset::TrackAsset>)::core::convert::Into::into(tracks),(crate::unity_engine::gameobject::GameObject)::core::convert::Into::into(go),(bool)::core::convert::Into::into(auto_rebalance),(bool)::core::convert::Into::into(create_outputs))
111 }
112 }
113 #[doc = "`CompileTrackList(crate::unity_engine::playables::playablegraph::PlayableGraph, crate::unity_engine::playables::playable::Playable, crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::unity_engine::timeline::trackasset::TrackAsset>, crate::unity_engine::gameobject::GameObject, bool)` overload"]
114 fn compile_track_list(
115 self,
116 graph: impl ::core::convert::Into<crate::unity_engine::playables::playablegraph::PlayableGraph>,
117 timeline_playable: impl ::core::convert::Into<crate::unity_engine::playables::playable::Playable>,
118 tracks: impl ::core::convert::Into<
119 crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::unity_engine::timeline::trackasset::TrackAsset>,
120 >,
121 go: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>,
122 create_outputs: impl ::core::convert::Into<bool>,
123 ) -> () {
124 unsafe {
125 let __receiver = <TimelinePlayable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
126 ::unity::il2cpp_call!((::unity::module_base()+0x35e25f0usize)as*mut u8,();
127(TimelinePlayable)__receiver,(crate::unity_engine::playables::playablegraph::PlayableGraph)::core::convert::Into::into(graph),(crate::unity_engine::playables::playable::Playable)::core::convert::Into::into(timeline_playable),(crate::system::collections::generic::ienumerable_1::IEnumerable_1<crate::unity_engine::timeline::trackasset::TrackAsset>)::core::convert::Into::into(tracks),(crate::unity_engine::gameobject::GameObject)::core::convert::Into::into(go),(bool)::core::convert::Into::into(create_outputs))
128 }
129 }
130 #[doc = "`CreateTrackOutput(crate::unity_engine::playables::playablegraph::PlayableGraph, crate::unity_engine::timeline::trackasset::TrackAsset, crate::unity_engine::gameobject::GameObject, crate::unity_engine::playables::playable::Playable, i32)` overload"]
131 fn create_track_output(
132 self,
133 graph: impl ::core::convert::Into<crate::unity_engine::playables::playablegraph::PlayableGraph>,
134 track: impl ::core::convert::Into<crate::unity_engine::timeline::trackasset::TrackAsset>,
135 go: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>,
136 playable: impl ::core::convert::Into<crate::unity_engine::playables::playable::Playable>,
137 port: impl ::core::convert::Into<i32>,
138 ) -> () {
139 unsafe {
140 let __receiver = <TimelinePlayable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
141 ::unity::il2cpp_call!((::unity::module_base()+0x35e3250usize)as*mut u8,();
142(TimelinePlayable)__receiver,(crate::unity_engine::playables::playablegraph::PlayableGraph)::core::convert::Into::into(graph),(crate::unity_engine::timeline::trackasset::TrackAsset)::core::convert::Into::into(track),(crate::unity_engine::gameobject::GameObject)::core::convert::Into::into(go),(crate::unity_engine::playables::playable::Playable)::core::convert::Into::into(playable),(i32)::core::convert::Into::into(port))
143 }
144 }
145 #[doc = "`EvaluateWeightsForAnimationPlayableOutput(crate::unity_engine::timeline::trackasset::TrackAsset, crate::unity_engine::animations::animationplayableoutput::AnimationPlayableOutput)` overload"]
146 fn evaluate_weights_for_animation_playable_output(
147 self,
148 track: impl ::core::convert::Into<crate::unity_engine::timeline::trackasset::TrackAsset>,
149 anim_output: impl ::core::convert::Into<crate::unity_engine::animations::animationplayableoutput::AnimationPlayableOutput>,
150 ) -> () {
151 unsafe {
152 let __receiver = <TimelinePlayable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
153 ::unity::il2cpp_call!((::unity::module_base()+0x35e38d0usize)as*mut u8,();
154(TimelinePlayable)__receiver,(crate::unity_engine::timeline::trackasset::TrackAsset)::core::convert::Into::into(track),(crate::unity_engine::animations::animationplayableoutput::AnimationPlayableOutput)::core::convert::Into::into(anim_output))
155 }
156 }
157 #[doc = "`CreateTrackPlayable(crate::unity_engine::playables::playablegraph::PlayableGraph, crate::unity_engine::playables::playable::Playable, crate::unity_engine::timeline::trackasset::TrackAsset, crate::unity_engine::gameobject::GameObject, bool)` overload"]
158 fn create_track_playable(
159 self,
160 graph: impl ::core::convert::Into<crate::unity_engine::playables::playablegraph::PlayableGraph>,
161 timeline_playable: impl ::core::convert::Into<crate::unity_engine::playables::playable::Playable>,
162 track: impl ::core::convert::Into<crate::unity_engine::timeline::trackasset::TrackAsset>,
163 go: impl ::core::convert::Into<crate::unity_engine::gameobject::GameObject>,
164 create_outputs: impl ::core::convert::Into<bool>,
165 ) -> crate::unity_engine::playables::playable::Playable {
166 unsafe {
167 let __receiver = <TimelinePlayable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
168 ::unity::il2cpp_call!((::unity::module_base()+0x35e2de0usize)as*mut u8,crate::unity_engine::playables::playable::Playable;
169(TimelinePlayable)__receiver,(crate::unity_engine::playables::playablegraph::PlayableGraph)::core::convert::Into::into(graph),(crate::unity_engine::playables::playable::Playable)::core::convert::Into::into(timeline_playable),(crate::unity_engine::timeline::trackasset::TrackAsset)::core::convert::Into::into(track),(crate::unity_engine::gameobject::GameObject)::core::convert::Into::into(go),(bool)::core::convert::Into::into(create_outputs))
170 }
171 }
172 #[doc = "`PrepareFrame(crate::unity_engine::playables::playable::Playable, crate::unity_engine::playables::framedata::FrameData)` overload"]
173 fn prepare_frame(
174 self,
175 playable: impl ::core::convert::Into<crate::unity_engine::playables::playable::Playable>,
176 info: impl ::core::convert::Into<crate::unity_engine::playables::framedata::FrameData>,
177 ) -> () {
178 unsafe {
179 let __receiver = <TimelinePlayable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
180 {
181 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
182 let __vi = *__vt.get(19usize).unwrap_or_else(|| {
183 panic!(
184 "unity: virtual slot {}
185 out of range (vtable len {}
186) on the runtime class behind {}
187 (method `{}
188`)",
189 19usize,
190 __vt.len(),
191 <TimelinePlayable as ::unity::ClassIdentity>::NAME,
192 "PrepareFrame",
193 )
194 });
195 let __inner: extern "C" fn(
196 TimelinePlayable,
197 crate::unity_engine::playables::playable::Playable,
198 crate::unity_engine::playables::framedata::FrameData,
199 ::unity::OptionalMethod,
200 ) -> () = ::core::mem::transmute(__vi.method_ptr);
201 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
202 __inner(__receiver, ::core::convert::Into::into(playable), ::core::convert::Into::into(info), __mi)
203 }
204 }
205 }
206 #[doc = "`Evaluate(crate::unity_engine::playables::playable::Playable, crate::unity_engine::playables::framedata::FrameData)` overload"]
207 fn evaluate(
208 self,
209 playable: impl ::core::convert::Into<crate::unity_engine::playables::playable::Playable>,
210 frame_data: impl ::core::convert::Into<crate::unity_engine::playables::framedata::FrameData>,
211 ) -> () {
212 unsafe {
213 let __receiver = <TimelinePlayable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
214 ::unity::il2cpp_call!((::unity::module_base()+0x35e3dd0usize)as*mut u8,();
215(TimelinePlayable)__receiver,(crate::unity_engine::playables::playable::Playable)::core::convert::Into::into(playable),(crate::unity_engine::playables::framedata::FrameData)::core::convert::Into::into(frame_data))
216 }
217 }
218 #[doc = "`CacheTrack(crate::unity_engine::timeline::trackasset::TrackAsset, crate::unity_engine::playables::playable::Playable, i32, crate::unity_engine::playables::playable::Playable)` overload"]
219 fn cache_track(
220 self,
221 track: impl ::core::convert::Into<crate::unity_engine::timeline::trackasset::TrackAsset>,
222 playable: impl ::core::convert::Into<crate::unity_engine::playables::playable::Playable>,
223 port: impl ::core::convert::Into<i32>,
224 parent: impl ::core::convert::Into<crate::unity_engine::playables::playable::Playable>,
225 ) -> () {
226 unsafe {
227 let __receiver = <TimelinePlayable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
228 ::unity::il2cpp_call!((::unity::module_base()+0x35e3d10usize)as*mut u8,();
229(TimelinePlayable)__receiver,(crate::unity_engine::timeline::trackasset::TrackAsset)::core::convert::Into::into(track),(crate::unity_engine::playables::playable::Playable)::core::convert::Into::into(playable),(i32)::core::convert::Into::into(port),(crate::unity_engine::playables::playable::Playable)::core::convert::Into::into(parent))
230 }
231 }
232 #[doc = "`.ctor()` overload"]
233 fn ctor(self) -> () {
234 unsafe {
235 let __receiver = <TimelinePlayable as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
236 ::unity::il2cpp_call!((::unity::module_base()+0x35e4480usize)as*mut u8,();
237(TimelinePlayable)__receiver)
238 }
239 }
240}
241
242#[cfg(feature = "unity_engine-timeline-timelineplayable")]
243impl<__T: ITimelinePlayable> ITimelinePlayableMethods for __T {}
244
245#[cfg(feature = "unity_engine-timeline-timelineplayable")]
246impl TimelinePlayable {
247 pub fn create_method_info() -> &'static ::unity::il2cpp::MethodInfo {
248 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
249 }
250
251 pub fn compile_method_info() -> &'static ::unity::il2cpp::MethodInfo {
252 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
253 }
254
255 pub fn compile_track_list_method_info() -> &'static ::unity::il2cpp::MethodInfo {
256 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
257 }
258
259 pub fn create_track_output_method_info() -> &'static ::unity::il2cpp::MethodInfo {
260 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
261 }
262
263 pub fn evaluate_weights_for_animation_playable_output_method_info() -> &'static ::unity::il2cpp::MethodInfo {
264 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
265 }
266
267 pub fn create_playable_graph_method_info() -> &'static ::unity::il2cpp::MethodInfo {
268 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
269 }
270
271 pub fn create_track_playable_method_info() -> &'static ::unity::il2cpp::MethodInfo {
272 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
273 }
274
275 pub fn prepare_frame_method_info() -> &'static ::unity::il2cpp::MethodInfo {
276 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
277 }
278
279 pub fn evaluate_method_info() -> &'static ::unity::il2cpp::MethodInfo {
280 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
281 }
282
283 pub fn cache_track_method_info() -> &'static ::unity::il2cpp::MethodInfo {
284 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[9]
285 }
286
287 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
288 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[10]
289 }
290
291 pub fn cctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
292 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[11]
293 }
294}
295
296#[cfg(feature = "unity_engine-timeline-timelineplayable")]
297impl TimelinePlayable {
298 #[doc = "Direct (non-virtual) call to `TimelinePlayable`'s own `PrepareFrame`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
299 pub unsafe fn prepare_frame(
300 this: impl ::core::convert::Into<::unity::IlInstance>,
301 playable: crate::unity_engine::playables::playable::Playable,
302 info: crate::unity_engine::playables::framedata::FrameData,
303 ) -> () {
304 let __mi = Self::prepare_frame_method_info();
305 let __inner: extern "C" fn(
306 ::unity::IlInstance,
307 crate::unity_engine::playables::playable::Playable,
308 crate::unity_engine::playables::framedata::FrameData,
309 ::unity::OptionalMethod,
310 ) -> () = ::core::mem::transmute(__mi.method_ptr);
311 __inner(this.into(), playable, info, ::core::option::Option::None)
312 }
313}
314
315#[cfg(feature = "unity_engine-timeline-timelineplayable")]
316impl TimelinePlayable {
317 #[doc = "`.ctor()` — no args"]
318 pub fn new() -> Self {
319 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
320 panic!(
321 "{}
322::{}
323 failed to instantiate",
324 ::core::stringify!(TimelinePlayable),
325 ::core::stringify!(new),
326 )
327 });
328 <Self as ITimelinePlayableMethods>::ctor(this);
329 this
330 }
331}
332
333#[cfg(feature = "unity_engine-timeline-timelineplayable")]
334#[doc(hidden)]
335pub mod prelude {
336 pub use super::{ITimelinePlayable, ITimelinePlayableMethods, TimelinePlayable};
337 #[cfg(feature = "system-object")]
338 pub use crate::system::object::IObjectMethods;
339 #[cfg(feature = "unity_engine-playables-playablebehaviour")]
340 pub use crate::unity_engine::playables::playablebehaviour::IPlayableBehaviourMethods;
341 pub use crate::{system::object::IObject, unity_engine::playables::playablebehaviour::IPlayableBehaviour};
342}