engage/generated/unity_engine/rendering/
volumestack.rs1#[cfg(feature = "unity_engine-rendering-volumestack-types")]
4mod __types {
5 #[allow(unused_imports)] use ::unity::prelude::*;
6
7 use super::*;
8 use crate::system::object::{IObject, Object};
9
10 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/rendering/volumestack/VolumeStack.md"))]
11 #[::unity::class(namespace = "UnityEngine.Rendering", name = "VolumeStack")]
12 #[parent(crate::system::object::Object)]
13 pub struct VolumeStack {
14 #[offset(16)]
15 #[rename(name = "components")]
16 pub components: crate::system::collections::generic::dictionary_2::Dictionary_2<
17 ::unity::SystemType,
18 crate::unity_engine::rendering::volumecomponent::VolumeComponent,
19 >,
20 }
21}
22
23#[cfg(feature = "unity_engine-rendering-volumestack-types")]
24pub use __types::*;
25
26#[cfg(feature = "unity_engine-rendering-volumestack")]
27pub trait IVolumeStackMethods: IVolumeStack {
28 #[doc = "`.ctor()` overload"]
29 fn ctor(self) -> () {
30 unsafe {
31 let __receiver = <VolumeStack as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
32 ::unity::il2cpp_call!((::unity::module_base()+0x33e6f90usize)as*mut u8,();
33(VolumeStack)__receiver)
34 }
35 }
36 #[doc = "`Reload(crate::system::collections::generic::ienumerable_1::IEnumerable_1<::unity::SystemType>)` overload"]
37 fn reload(
38 self,
39 base_types: impl ::core::convert::Into<crate::system::collections::generic::ienumerable_1::IEnumerable_1<::unity::SystemType>>,
40 ) -> () {
41 unsafe {
42 let __receiver = <VolumeStack as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
43 ::unity::il2cpp_call!((::unity::module_base()+0x33e6fa0usize)as*mut u8,();
44(VolumeStack)__receiver,(crate::system::collections::generic::ienumerable_1::IEnumerable_1< ::unity::SystemType>)::core::convert::Into::into(base_types))
45 }
46 }
47 fn get_component<M0: ::unity::IlType + ::core::marker::Copy + ::unity::ClassIdentity>(self) -> M0 {
48 static OPEN: ::std::sync::LazyLock<::unity::Il2CppResult<&'static ::unity::il2cpp::MethodInfo>> =
49 ::std::sync::LazyLock::new(|| ::unity::lookup::method_info_on_class(<VolumeStack as ::unity::ClassIdentity>::class(), "GetComponent", 0));
50 #[allow(clippy::type_complexity)]
51 static CACHE: ::std::sync::OnceLock<::std::sync::Mutex<::std::collections::HashMap<usize, &'static ::unity::il2cpp::MethodInfo>>> =
52 ::std::sync::OnceLock::new();
53 let _ = false;
54 let __open: &'static ::unity::il2cpp::MethodInfo = match &*OPEN {
55 ::core::result::Result::Ok(mi) => *mi,
56 ::core::result::Result::Err(e) => {
57 panic!(
58 "method lookup failed: {}
59::{}
60: {}
61",
62 <VolumeStack as ::unity::ClassIdentity>::NAME,
63 "GetComponent",
64 e
65 )
66 },
67 };
68 let __cache = CACHE.get_or_init(|| ::std::sync::Mutex::new(::std::collections::HashMap::new()));
69 let __key: usize = <M0 as ::unity::IlType>::il_type() as *const _ as usize;
70 let __inflated: &'static ::unity::il2cpp::MethodInfo = {
71 let mut __guard = __cache.lock().unwrap();
72 *__guard
73 .entry(__key)
74 .or_insert_with(|| ::unity::il2cpp::generic::create_generic_method_info(__open, &[<M0 as ::unity::IlType>::il_type()]))
75 };
76 unsafe {
77 let __receiver = <VolumeStack as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
78 let __f: extern "C" fn(VolumeStack, ::unity::OptionalMethod) -> M0 = ::core::mem::transmute(__inflated.method_ptr);
79 let __mi_opaque: &'static () = &*(__inflated as *const _ as *const ());
80 __f(__receiver, ::core::option::Option::Some(__mi_opaque))
81 }
82 }
83 #[doc = "`GetComponent(::unity::SystemType)` overload"]
84 fn get_component_2(
85 self,
86 r#type: impl ::core::convert::Into<::unity::SystemType>,
87 ) -> crate::unity_engine::rendering::volumecomponent::VolumeComponent {
88 unsafe {
89 let __receiver = <VolumeStack as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
90 ::unity::il2cpp_call!((::unity::module_base()+0x33e7640usize)as*mut u8,crate::unity_engine::rendering::volumecomponent::VolumeComponent;
91(VolumeStack)__receiver,(::unity::SystemType)::core::convert::Into::into(r#type))
92 }
93 }
94 #[doc = "`Dispose()` overload"]
95 fn dispose(self) -> () {
96 unsafe {
97 let __receiver = <VolumeStack as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
98 {
99 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
100 let __vi = *__vt.get(4usize).unwrap_or_else(|| {
101 panic!(
102 "unity: virtual slot {}
103 out of range (vtable len {}
104) on the runtime class behind {}
105 (method `{}
106`)",
107 4usize,
108 __vt.len(),
109 <VolumeStack as ::unity::ClassIdentity>::NAME,
110 "Dispose",
111 )
112 });
113 let __inner: extern "C" fn(VolumeStack, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
114 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
115 __inner(__receiver, __mi)
116 }
117 }
118 }
119}
120
121#[cfg(feature = "unity_engine-rendering-volumestack")]
122impl<__T: IVolumeStack> IVolumeStackMethods for __T {}
123
124#[cfg(feature = "unity_engine-rendering-volumestack")]
125impl VolumeStack {
126 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
127 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
128 }
129
130 pub fn reload_method_info() -> &'static ::unity::il2cpp::MethodInfo {
131 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
132 }
133
134 pub fn get_component_2_method_info() -> &'static ::unity::il2cpp::MethodInfo {
135 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
136 }
137
138 pub fn dispose_method_info() -> &'static ::unity::il2cpp::MethodInfo {
139 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
140 }
141}
142
143#[cfg(feature = "unity_engine-rendering-volumestack")]
144impl VolumeStack {
145 #[doc = "Direct (non-virtual) call to `VolumeStack`'s own `Dispose`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
146 pub unsafe fn dispose(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
147 let __mi = Self::dispose_method_info();
148 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
149 __inner(this.into(), ::core::option::Option::None)
150 }
151}
152
153#[cfg(feature = "unity_engine-rendering-volumestack")]
154impl VolumeStack {
155 #[doc = "`.ctor()` — no args"]
156 pub fn new() -> Self {
157 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
158 panic!(
159 "{}
160::{}
161 failed to instantiate",
162 ::core::stringify!(VolumeStack),
163 ::core::stringify!(new),
164 )
165 });
166 <Self as IVolumeStackMethods>::ctor(this);
167 this
168 }
169}
170
171#[cfg(feature = "unity_engine-rendering-volumestack")]
172#[doc(hidden)]
173pub mod prelude {
174 pub use super::{IVolumeStack, IVolumeStackMethods, VolumeStack};
175 pub use crate::system::object::IObject;
176 #[cfg(feature = "system-object")]
177 pub use crate::system::object::IObjectMethods;
178}