Skip to main content

engage/generated/unity_engine/rendering/
batchrenderergroup.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-rendering-batchrenderergroup-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::system::{
9        delegate::{Delegate, IDelegate},
10        multicastdelegate::{IMulticastDelegate, MulticastDelegate},
11        object::{IObject, Object},
12    };
13
14    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/rendering/batchrenderergroup/BatchRendererGroup.md"))]
15    #[::unity::class(namespace = "UnityEngine.Rendering", name = "BatchRendererGroup")]
16    #[parent(crate::system::object::Object)]
17    pub struct BatchRendererGroup {
18        #[offset(16)]
19        #[rename(name = "m_GroupHandle")]
20        pub m_group_handle: ::unity::IntPtr,
21        #[offset(24)]
22        #[rename(name = "m_PerformCulling")]
23        pub m_perform_culling: crate::unity_engine::rendering::batchrenderergroup::BatchRendererGroup_OnPerformCulling,
24    }
25
26    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/rendering/batchrenderergroup/BatchRendererGroup_OnPerformCulling.md"))]
27    #[::unity::class(namespace = "UnityEngine.Rendering", name = "BatchRendererGroup.OnPerformCulling")]
28    #[parent(crate::system::multicastdelegate::MulticastDelegate)]
29    pub struct BatchRendererGroup_OnPerformCulling {}
30}
31
32#[cfg(feature = "unity_engine-rendering-batchrenderergroup-types")]
33pub use __types::*;
34
35#[cfg(feature = "unity_engine-rendering-batchrenderergroup")]
36impl BatchRendererGroup {
37    #[doc = "`InvokeOnPerformCulling(crate::unity_engine::rendering::batchrenderergroup::BatchRendererGroup, *mutcrate::unity_engine::rendering::batchrenderercullingoutput::BatchRendererCullingOutput, *mutcrate::unity_engine::rendering::lodparameters::LODParameters)` overload"]
38    pub fn invoke_on_perform_culling(
39        group: impl ::core::convert::Into<crate::unity_engine::rendering::batchrenderergroup::BatchRendererGroup>,
40    ) -> (
41        crate::unity_engine::rendering::batchrenderercullingoutput::BatchRendererCullingOutput,
42        crate::unity_engine::rendering::lodparameters::LODParameters,
43    ) {
44        unsafe {
45            let mut __out_0 =
46                ::core::mem::MaybeUninit::<crate::unity_engine::rendering::batchrenderercullingoutput::BatchRendererCullingOutput>::uninit();
47            let mut __out_1 = ::core::mem::MaybeUninit::<crate::unity_engine::rendering::lodparameters::LODParameters>::uninit();
48            ::unity::il2cpp_call!((::unity::module_base()+0x2c372f0usize)as*mut u8,();
49(crate::unity_engine::rendering::batchrenderergroup::BatchRendererGroup)::core::convert::Into::into(group),(*mut crate::unity_engine::rendering::batchrenderercullingoutput::BatchRendererCullingOutput)__out_0.as_mut_ptr(),(*mut crate::unity_engine::rendering::lodparameters::LODParameters)__out_1.as_mut_ptr());
50            (__out_0.assume_init(), __out_1.assume_init())
51        }
52    }
53}
54
55#[cfg(feature = "unity_engine-rendering-batchrenderergroup")]
56impl BatchRendererGroup {
57    pub fn invoke_on_perform_culling_method_info() -> &'static ::unity::il2cpp::MethodInfo {
58        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
59    }
60}
61
62#[cfg(feature = "unity_engine-rendering-batchrenderergroup")]
63pub trait IBatchRendererGroup_OnPerformCullingMethods: IBatchRendererGroup_OnPerformCulling {
64    #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` overload"]
65    fn ctor(self, object: impl ::core::convert::Into<crate::system::object::Object>, method: impl ::core::convert::Into<::unity::IntPtr>) -> () {
66        unsafe {
67            let __receiver = <BatchRendererGroup_OnPerformCulling as ::unity::FromIlInstance>::from_il_instance(
68                <Self as ::unity::SystemObject>::as_instance(self),
69            );
70            ::unity::il2cpp_call!((::unity::module_base()+0x379b3b0usize)as*mut u8,();
71(BatchRendererGroup_OnPerformCulling)__receiver,(crate::system::object::Object)::core::convert::Into::into(object),(::unity::IntPtr)::core::convert::Into::into(method))
72        }
73    }
74}
75
76#[cfg(feature = "unity_engine-rendering-batchrenderergroup")]
77impl<__T: IBatchRendererGroup_OnPerformCulling> IBatchRendererGroup_OnPerformCullingMethods for __T {}
78
79#[cfg(feature = "unity_engine-rendering-batchrenderergroup")]
80impl BatchRendererGroup_OnPerformCulling {
81    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
82        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
83    }
84}
85
86#[cfg(feature = "unity_engine-rendering-batchrenderergroup")]
87impl BatchRendererGroup_OnPerformCulling {
88    #[doc = "`.ctor(crate::system::object::Object, ::unity::IntPtr)` — overload selector"]
89    pub fn new(object: crate::system::object::Object, method: ::unity::IntPtr) -> Self {
90        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
91            panic!(
92                "{}
93::{}
94 failed to instantiate",
95                ::core::stringify!(BatchRendererGroup_OnPerformCulling),
96                ::core::stringify!(new),
97            )
98        });
99        <Self as IBatchRendererGroup_OnPerformCullingMethods>::ctor(this, object, method);
100        this
101    }
102}
103
104#[cfg(feature = "unity_engine-rendering-batchrenderergroup")]
105#[doc(hidden)]
106pub mod prelude {
107    pub use super::{
108        BatchRendererGroup, BatchRendererGroup_OnPerformCulling, IBatchRendererGroup, IBatchRendererGroup_OnPerformCulling,
109        IBatchRendererGroup_OnPerformCullingMethods,
110    };
111    #[cfg(feature = "system-delegate")]
112    pub use crate::system::delegate::IDelegateMethods;
113    #[cfg(feature = "system-multicastdelegate")]
114    pub use crate::system::multicastdelegate::IMulticastDelegateMethods;
115    #[cfg(feature = "system-object")]
116    pub use crate::system::object::IObjectMethods;
117    pub use crate::system::{delegate::IDelegate, multicastdelegate::IMulticastDelegate, object::IObject};
118}