1#[cfg(feature = "root-akobstructionocclusion-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 behaviour::{Behaviour, IBehaviour},
12 component::{Component, IComponent},
13 monobehaviour::{IMonoBehaviour, MonoBehaviour},
14 object_2::{IObject_2, Object_2},
15 },
16 };
17
18 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root/akobstructionocclusion/AkObstructionOcclusion.md"))]
19 #[::unity::class(namespace = "", name = "AkObstructionOcclusion")]
20 #[parent(crate::unity_engine::monobehaviour::MonoBehaviour)]
21 pub struct AkObstructionOcclusion {
22 #[offset(24)]
23 #[rename(name = "listenersToRemove")]
24 pub listeners_to_remove: crate::system::collections::generic::list_1::List_1<crate::root::akaudiolistener::AkAudioListener>,
25 #[offset(32)]
26 #[rename(name = "currentListenerList")]
27 pub current_listener_list: crate::system::collections::generic::list_1::List_1<crate::root::akaudiolistener::AkAudioListener>,
28 #[offset(40)]
29 #[rename(name = "ObstructionOcclusionValues")]
30 pub obstruction_occlusion_values: crate::system::collections::generic::dictionary_2::Dictionary_2<
31 crate::root::akaudiolistener::AkAudioListener,
32 crate::root::akobstructionocclusion::AkObstructionOcclusion_ObstructionOcclusionValue,
33 >,
34 #[offset(48)]
35 #[rename(name = "fadeRate")]
36 pub fade_rate: f32,
37 #[offset(52)]
38 #[rename(name = "fadeTime")]
39 pub fade_time: f32,
40 #[offset(56)]
41 #[rename(name = "LayerMask")]
42 pub layer_mask: crate::unity_engine::layermask::LayerMask,
43 #[offset(60)]
44 #[rename(name = "maxDistance")]
45 pub max_distance: f32,
46 #[offset(64)]
47 #[rename(name = "refreshInterval")]
48 pub refresh_interval: f32,
49 #[offset(68)]
50 #[rename(name = "refreshTime")]
51 pub refresh_time: f32,
52 }
53
54 #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/root/akobstructionocclusion/AkObstructionOcclusion_ObstructionOcclusionValue.md"))]
55 #[::unity::class(namespace = "", name = "AkObstructionOcclusion.ObstructionOcclusionValue")]
56 #[parent(crate::system::object::Object)]
57 pub struct AkObstructionOcclusion_ObstructionOcclusionValue {
58 #[offset(16)]
59 #[rename(name = "currentValue")]
60 pub current_value: f32,
61 #[offset(20)]
62 #[rename(name = "targetValue")]
63 pub target_value: f32,
64 }
65}
66
67#[cfg(feature = "root-akobstructionocclusion-types")]
68pub use __types::*;
69
70#[cfg(feature = "root-akobstructionocclusion")]
71pub trait IAkObstructionOcclusionMethods: IAkObstructionOcclusion {
72 #[doc = "`InitIntervalsAndFadeRates()` overload"]
73 fn init_intervals_and_fade_rates(self) -> () {
74 unsafe {
75 let __receiver =
76 <AkObstructionOcclusion as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
77 ::unity::il2cpp_call!((::unity::module_base()+0x2f19890usize)as*mut u8,();
78(AkObstructionOcclusion)__receiver)
79 }
80 }
81 #[doc = "`UpdateCurrentListenerList()` overload"]
82 fn update_current_listener_list(self) -> () {
83 unsafe {
84 let __receiver =
85 <AkObstructionOcclusion as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
86 {
87 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
88 let __vi = *__vt.get(4usize).unwrap_or_else(|| {
89 panic!(
90 "unity: virtual slot {}
91 out of range (vtable len {}
92) on the runtime class behind {}
93 (method `{}
94`)",
95 4usize,
96 __vt.len(),
97 <AkObstructionOcclusion as ::unity::ClassIdentity>::NAME,
98 "UpdateCurrentListenerList",
99 )
100 });
101 let __inner: extern "C" fn(AkObstructionOcclusion, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
102 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
103 __inner(__receiver, __mi)
104 }
105 }
106 }
107 #[doc = "`UpdateObstructionOcclusionValues()` overload"]
108 fn update_obstruction_occlusion_values(self) -> () {
109 unsafe {
110 let __receiver =
111 <AkObstructionOcclusion as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
112 ::unity::il2cpp_call!((::unity::module_base()+0x2f29930usize)as*mut u8,();
113(AkObstructionOcclusion)__receiver)
114 }
115 }
116 #[doc = "`CastRays()` overload"]
117 fn cast_rays(self) -> () {
118 unsafe {
119 let __receiver =
120 <AkObstructionOcclusion as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
121 ::unity::il2cpp_call!((::unity::module_base()+0x2f29c30usize)as*mut u8,();
122(AkObstructionOcclusion)__receiver)
123 }
124 }
125 #[doc = "`SetObstructionOcclusion(crate::system::collections::generic::keyvaluepair_2::KeyValuePair_2<crate::root::akaudiolistener::AkAudioListener,crate::root::akobstructionocclusion::AkObstructionOcclusion_ObstructionOcclusionValue>)` overload"]
126 fn set_obstruction_occlusion(
127 self,
128 obs_occ_pair: impl ::core::convert::Into<
129 crate::system::collections::generic::keyvaluepair_2::KeyValuePair_2<
130 crate::root::akaudiolistener::AkAudioListener,
131 crate::root::akobstructionocclusion::AkObstructionOcclusion_ObstructionOcclusionValue,
132 >,
133 >,
134 ) -> () {
135 unsafe {
136 let __receiver =
137 <AkObstructionOcclusion as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
138 {
139 let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
140 let __vi = *__vt.get(5usize).unwrap_or_else(|| {
141 panic!(
142 "unity: virtual slot {}
143 out of range (vtable len {}
144) on the runtime class behind {}
145 (method `{}
146`)",
147 5usize,
148 __vt.len(),
149 <AkObstructionOcclusion as ::unity::ClassIdentity>::NAME,
150 "SetObstructionOcclusion",
151 )
152 });
153 let __inner: extern "C" fn(
154 AkObstructionOcclusion,
155 crate::system::collections::generic::keyvaluepair_2::KeyValuePair_2<
156 crate::root::akaudiolistener::AkAudioListener,
157 crate::root::akobstructionocclusion::AkObstructionOcclusion_ObstructionOcclusionValue,
158 >,
159 ::unity::OptionalMethod,
160 ) -> () = ::core::mem::transmute(__vi.method_ptr);
161 let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
162 __inner(__receiver, ::core::convert::Into::into(obs_occ_pair), __mi)
163 }
164 }
165 }
166 #[doc = "`Update()` overload"]
167 fn update(self) -> () {
168 unsafe {
169 let __receiver =
170 <AkObstructionOcclusion as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
171 ::unity::il2cpp_call!((::unity::module_base()+0x2f29ec0usize)as*mut u8,();
172(AkObstructionOcclusion)__receiver)
173 }
174 }
175 #[doc = "`.ctor()` overload"]
176 fn ctor(self) -> () {
177 unsafe {
178 let __receiver =
179 <AkObstructionOcclusion as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
180 ::unity::il2cpp_call!((::unity::module_base()+0x2f19de0usize)as*mut u8,();
181(AkObstructionOcclusion)__receiver)
182 }
183 }
184}
185
186#[cfg(feature = "root-akobstructionocclusion")]
187impl<__T: IAkObstructionOcclusion> IAkObstructionOcclusionMethods for __T {}
188
189#[cfg(feature = "root-akobstructionocclusion")]
190impl AkObstructionOcclusion {
191 pub fn init_intervals_and_fade_rates_method_info() -> &'static ::unity::il2cpp::MethodInfo {
192 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
193 }
194
195 pub fn update_current_listener_list_method_info() -> &'static ::unity::il2cpp::MethodInfo {
196 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
197 }
198
199 pub fn update_obstruction_occlusion_values_method_info() -> &'static ::unity::il2cpp::MethodInfo {
200 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
201 }
202
203 pub fn cast_rays_method_info() -> &'static ::unity::il2cpp::MethodInfo {
204 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
205 }
206
207 pub fn set_obstruction_occlusion_method_info() -> &'static ::unity::il2cpp::MethodInfo {
208 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
209 }
210
211 pub fn update_method_info() -> &'static ::unity::il2cpp::MethodInfo {
212 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
213 }
214
215 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
216 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
217 }
218}
219
220#[cfg(feature = "root-akobstructionocclusion")]
221impl AkObstructionOcclusion {
222 #[doc = "Direct (non-virtual) call to `AkObstructionOcclusion`'s own `UpdateCurrentListenerList`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
223 pub unsafe fn update_current_listener_list(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
224 let __mi = Self::update_current_listener_list_method_info();
225 let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
226 __inner(this.into(), ::core::option::Option::None)
227 }
228
229 #[doc = "Direct (non-virtual) call to `AkObstructionOcclusion`'s own `SetObstructionOcclusion`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
230 pub unsafe fn set_obstruction_occlusion(
231 this: impl ::core::convert::Into<::unity::IlInstance>,
232 obs_occ_pair: crate::system::collections::generic::keyvaluepair_2::KeyValuePair_2<
233 crate::root::akaudiolistener::AkAudioListener,
234 crate::root::akobstructionocclusion::AkObstructionOcclusion_ObstructionOcclusionValue,
235 >,
236 ) -> () {
237 let __mi = Self::set_obstruction_occlusion_method_info();
238 let __inner: extern "C" fn(
239 ::unity::IlInstance,
240 crate::system::collections::generic::keyvaluepair_2::KeyValuePair_2<
241 crate::root::akaudiolistener::AkAudioListener,
242 crate::root::akobstructionocclusion::AkObstructionOcclusion_ObstructionOcclusionValue,
243 >,
244 ::unity::OptionalMethod,
245 ) -> () = ::core::mem::transmute(__mi.method_ptr);
246 __inner(this.into(), obs_occ_pair, ::core::option::Option::None)
247 }
248}
249
250#[cfg(feature = "root-akobstructionocclusion")]
251impl AkObstructionOcclusion {
252 #[doc = "`.ctor()` — no args"]
253 pub fn new() -> Self {
254 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
255 panic!(
256 "{}
257::{}
258 failed to instantiate",
259 ::core::stringify!(AkObstructionOcclusion),
260 ::core::stringify!(new),
261 )
262 });
263 <Self as IAkObstructionOcclusionMethods>::ctor(this);
264 this
265 }
266}
267
268#[cfg(feature = "root-akobstructionocclusion")]
269pub trait IAkObstructionOcclusion_ObstructionOcclusionValueMethods: IAkObstructionOcclusion_ObstructionOcclusionValue {
270 #[doc = "`Update(f32)` overload"]
271 fn update(self, fade_rate: impl ::core::convert::Into<f32>) -> bool {
272 unsafe {
273 let __receiver = <AkObstructionOcclusion_ObstructionOcclusionValue as ::unity::FromIlInstance>::from_il_instance(
274 <Self as ::unity::SystemObject>::as_instance(self),
275 );
276 ::unity::il2cpp_call!((::unity::module_base()+0x1ba1110usize)as*mut u8,bool;
277(AkObstructionOcclusion_ObstructionOcclusionValue)__receiver,(f32)::core::convert::Into::into(fade_rate))
278 }
279 }
280 #[doc = "`.ctor()` overload"]
281 fn ctor(self) -> () {
282 unsafe {
283 let __receiver = <AkObstructionOcclusion_ObstructionOcclusionValue as ::unity::FromIlInstance>::from_il_instance(
284 <Self as ::unity::SystemObject>::as_instance(self),
285 );
286 ::unity::il2cpp_call!((::unity::module_base()+0x1ba11a0usize)as*mut u8,();
287(AkObstructionOcclusion_ObstructionOcclusionValue)__receiver)
288 }
289 }
290}
291
292#[cfg(feature = "root-akobstructionocclusion")]
293impl<__T: IAkObstructionOcclusion_ObstructionOcclusionValue> IAkObstructionOcclusion_ObstructionOcclusionValueMethods for __T {}
294
295#[cfg(feature = "root-akobstructionocclusion")]
296impl AkObstructionOcclusion_ObstructionOcclusionValue {
297 pub fn update_method_info() -> &'static ::unity::il2cpp::MethodInfo {
298 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
299 }
300
301 pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
302 <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
303 }
304}
305
306#[cfg(feature = "root-akobstructionocclusion")]
307impl AkObstructionOcclusion_ObstructionOcclusionValue {
308 #[doc = "`.ctor()` — no args"]
309 pub fn new() -> Self {
310 let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
311 panic!(
312 "{}
313::{}
314 failed to instantiate",
315 ::core::stringify!(AkObstructionOcclusion_ObstructionOcclusionValue),
316 ::core::stringify!(new),
317 )
318 });
319 <Self as IAkObstructionOcclusion_ObstructionOcclusionValueMethods>::ctor(this);
320 this
321 }
322}
323
324#[cfg(feature = "root-akobstructionocclusion")]
325#[doc(hidden)]
326pub mod prelude {
327 pub use super::{
328 AkObstructionOcclusion, AkObstructionOcclusion_ObstructionOcclusionValue, IAkObstructionOcclusion, IAkObstructionOcclusionMethods,
329 IAkObstructionOcclusion_ObstructionOcclusionValue, IAkObstructionOcclusion_ObstructionOcclusionValueMethods,
330 };
331 #[cfg(feature = "system-object")]
332 pub use crate::system::object::IObjectMethods;
333 #[cfg(feature = "unity_engine-behaviour")]
334 pub use crate::unity_engine::behaviour::IBehaviourMethods;
335 #[cfg(feature = "unity_engine-component")]
336 pub use crate::unity_engine::component::IComponentMethods;
337 #[cfg(feature = "unity_engine-monobehaviour")]
338 pub use crate::unity_engine::monobehaviour::IMonoBehaviourMethods;
339 #[cfg(feature = "unity_engine-object_2")]
340 pub use crate::unity_engine::object_2::IObject_2Methods;
341 pub use crate::{
342 system::object::IObject,
343 unity_engine::{behaviour::IBehaviour, component::IComponent, monobehaviour::IMonoBehaviour, object_2::IObject_2},
344 };
345}