Skip to main content

engage/generated/unity_engine/rendering/
vector3parameter.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-rendering-vector3parameter-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::rendering::{
11            volumeparameter::{IVolumeParameter, VolumeParameter},
12            volumeparameter_1::{IVolumeParameter_1, VolumeParameter_1},
13        },
14    };
15
16    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/rendering/vector3parameter/Vector3Parameter.md"))]
17    #[::unity::class(namespace = "UnityEngine.Rendering", name = "Vector3Parameter")]
18    #[parent(crate::unity_engine::rendering::volumeparameter_1::VolumeParameter_1<crate::unity_engine::vector3::Vector3>)]
19    pub struct Vector3Parameter {}
20}
21
22#[cfg(feature = "unity_engine-rendering-vector3parameter-types")]
23pub use __types::*;
24
25#[cfg(feature = "unity_engine-rendering-vector3parameter")]
26pub trait IVector3ParameterMethods: IVector3Parameter {
27    #[doc = "`.ctor(crate::unity_engine::vector3::Vector3, bool)` overload"]
28    fn ctor(self, value: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>, override_state: impl ::core::convert::Into<bool>) -> () {
29        unsafe {
30            let __receiver = <Vector3Parameter as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
31            ::unity::il2cpp_call!((::unity::module_base()+0x33e4830usize)as*mut u8,();
32(Vector3Parameter)__receiver,(crate::unity_engine::vector3::Vector3)::core::convert::Into::into(value),(bool)::core::convert::Into::into(override_state))
33        }
34    }
35    #[doc = "`Interp(crate::unity_engine::vector3::Vector3, crate::unity_engine::vector3::Vector3, f32)` overload"]
36    fn interp(
37        self,
38        from: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
39        to: impl ::core::convert::Into<crate::unity_engine::vector3::Vector3>,
40        t: impl ::core::convert::Into<f32>,
41    ) -> () {
42        unsafe {
43            let __receiver = <Vector3Parameter as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
44            {
45                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
46                let __vi = *__vt.get(14usize).unwrap_or_else(|| {
47                    panic!(
48                        "unity: virtual slot {}
49 out of range (vtable len {}
50) on the runtime class behind {}
51 (method `{}
52`)",
53                        14usize,
54                        __vt.len(),
55                        <Vector3Parameter as ::unity::ClassIdentity>::NAME,
56                        "Interp",
57                    )
58                });
59                let __inner: extern "C" fn(
60                    Vector3Parameter,
61                    crate::unity_engine::vector3::Vector3,
62                    crate::unity_engine::vector3::Vector3,
63                    f32,
64                    ::unity::OptionalMethod,
65                ) -> () = ::core::mem::transmute(__vi.method_ptr);
66                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
67                __inner(
68                    __receiver,
69                    ::core::convert::Into::into(from),
70                    ::core::convert::Into::into(to),
71                    ::core::convert::Into::into(t),
72                    __mi,
73                )
74            }
75        }
76    }
77}
78
79#[cfg(feature = "unity_engine-rendering-vector3parameter")]
80impl<__T: IVector3Parameter> IVector3ParameterMethods for __T {}
81
82#[cfg(feature = "unity_engine-rendering-vector3parameter")]
83impl Vector3Parameter {
84    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
85        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
86    }
87
88    pub fn interp_method_info() -> &'static ::unity::il2cpp::MethodInfo {
89        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
90    }
91}
92
93#[cfg(feature = "unity_engine-rendering-vector3parameter")]
94impl Vector3Parameter {
95    #[doc = "Direct (non-virtual) call to `Vector3Parameter`'s own `Interp`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
96    pub unsafe fn interp(
97        this: impl ::core::convert::Into<::unity::IlInstance>,
98        from: crate::unity_engine::vector3::Vector3,
99        to: crate::unity_engine::vector3::Vector3,
100        t: f32,
101    ) -> () {
102        let __mi = Self::interp_method_info();
103        let __inner: extern "C" fn(
104            ::unity::IlInstance,
105            crate::unity_engine::vector3::Vector3,
106            crate::unity_engine::vector3::Vector3,
107            f32,
108            ::unity::OptionalMethod,
109        ) -> () = ::core::mem::transmute(__mi.method_ptr);
110        __inner(this.into(), from, to, t, ::core::option::Option::None)
111    }
112}
113
114#[cfg(feature = "unity_engine-rendering-vector3parameter")]
115impl Vector3Parameter {
116    #[doc = "`.ctor(crate::unity_engine::vector3::Vector3, bool)` — overload selector"]
117    pub fn new(value: crate::unity_engine::vector3::Vector3, override_state: bool) -> Self {
118        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
119            panic!(
120                "{}
121::{}
122 failed to instantiate",
123                ::core::stringify!(Vector3Parameter),
124                ::core::stringify!(new),
125            )
126        });
127        <Self as IVector3ParameterMethods>::ctor(this, value, override_state);
128        this
129    }
130}
131
132#[cfg(feature = "unity_engine-rendering-vector3parameter")]
133#[doc(hidden)]
134pub mod prelude {
135    pub use super::{IVector3Parameter, IVector3ParameterMethods, Vector3Parameter};
136    #[cfg(feature = "system-object")]
137    pub use crate::system::object::IObjectMethods;
138    #[cfg(feature = "unity_engine-rendering-volumeparameter")]
139    pub use crate::unity_engine::rendering::volumeparameter::IVolumeParameterMethods;
140    #[cfg(feature = "unity_engine-rendering-volumeparameter_1")]
141    pub use crate::unity_engine::rendering::volumeparameter_1::IVolumeParameter_1Methods;
142    pub use crate::{
143        system::object::IObject,
144        unity_engine::rendering::{volumeparameter::IVolumeParameter, volumeparameter_1::IVolumeParameter_1},
145    };
146}