qt_3d_render/
lib.rs

1#![cfg_attr(feature = "ritual_rustdoc_nightly", feature(doc_cfg))]
2//! This crate was generated by `ritual`.
3//!                     See [README](https://github.com/rust-qt/ritual) for more information.
4
5mod __ffi {
6    //! Functions provided by the C++ wrapper library
7
8    include!(concat!(env!("OUT_DIR"), "/ffi.rs"));
9}
10pub mod ops;
11pub use ::cpp_core;
12pub use ::qt_3d_core;
13pub use ::qt_core;
14pub use ::qt_gui;
15/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qabstractfunctor.html">QAbstractFunctor</a> is an abstract base class for all functors.</p>
16///
17/// C++ class: <span style='color: green;'>```Qt3DRender::QAbstractFunctor```</span>.
18///
19/// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractfunctor.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3drender-qabstractfunctor.html">QAbstractFunctor</a> is an abstract base class for all functors.</p>
20/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qabstractfunctor.html">QAbstractFunctor</a> is used as a base class for all functors and data generators in <a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a> module.</p>
21/// <p>When user defines a new functor or generator, they need to implement the <a href="http://doc.qt.io/qt-5/qt3drender-qabstractfunctor.html#id">QAbstractFunctor::id</a>() method, which should be done using the <code>QT3D_FUNCTOR</code> macro in the class definition.</p></div>
22#[repr(C)]
23pub struct QAbstractFunctor {
24    _unused: u8,
25}
26impl QAbstractFunctor {
27    /// <p>Returns a pointer to the id of the functor.</p>
28    ///
29    /// Calls C++ function: <span style='color: green;'>```pure virtual qintptr Qt3DRender::QAbstractFunctor::id() const```</span>.
30    ///
31    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractfunctor.html#id">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the id of the functor.</p></div>
32    #[inline(always)]
33    pub unsafe fn id(&self) -> isize {
34        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractFunctor_id(
35            self as *const crate::QAbstractFunctor,
36        )
37    }
38}
39
40pub mod q_abstract_light {
41    //! C++ type: <span style='color: green;'>```Qt3DRender::QAbstractLight```</span>
42
43    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractLight::Type```</span>.
44    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
45    #[repr(transparent)]
46    pub struct Type(::std::os::raw::c_int);
47
48    impl From<::std::os::raw::c_int> for Type {
49        fn from(value: ::std::os::raw::c_int) -> Self {
50            Type(value)
51        }
52    }
53
54    impl From<Type> for ::std::os::raw::c_int {
55        fn from(value: Type) -> Self {
56            value.0
57        }
58    }
59
60    impl Type {
61        pub fn to_int(&self) -> ::std::os::raw::c_int {
62            self.0
63        }
64    }
65
66    impl Type {
67        /// C++ enum variant: <span style='color: green;'>```PointLight = 0```</span>
68        #[allow(non_upper_case_globals)]
69        pub const PointLight: crate::q_abstract_light::Type = crate::q_abstract_light::Type(0);
70        /// C++ enum variant: <span style='color: green;'>```DirectionalLight = 1```</span>
71        #[allow(non_upper_case_globals)]
72        pub const DirectionalLight: crate::q_abstract_light::Type =
73            crate::q_abstract_light::Type(1);
74        /// C++ enum variant: <span style='color: green;'>```SpotLight = 2```</span>
75        #[allow(non_upper_case_globals)]
76        pub const SpotLight: crate::q_abstract_light::Type = crate::q_abstract_light::Type(2);
77    }
78}
79/// <p>Encapsulate a <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> object in a Qt 3D scene.</p>
80///
81/// C++ class: <span style='color: green;'>```Qt3DRender::QAbstractLight```</span>.
82///
83/// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulate a <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> object in a Qt 3D scene.</p></div>
84#[repr(C)]
85pub struct QAbstractLight {
86    _unused: u8,
87}
88impl QAbstractLight {
89    /// <p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> color.</p>
90    ///
91    /// Returns a built-in Qt slot `Qt3DRender::QAbstractLight::setColor` that can be passed to `qt_core::Signal::connect`.
92    ///
93    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#color-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> color.</p>
94    /// <p><b>Access functions:</b></p>
95    /// <div class="table"><table class="alignedsummary">
96    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QColor </td><td class="memItemRight bottomAlign"><span class="name"><b>color</b></span>() const</td></tr>
97    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setColor</b></span>(const QColor &amp;<i>color</i>)</td></tr>
98    /// </tbody></table></div>
99    /// <p><b>Notifier signal:</b></p>
100    /// <div class="table"><table class="alignedsummary">
101    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>colorChanged</b></span>(const QColor &amp;<i>color</i>)</td></tr>
102    /// </tbody></table></div></div>
103    #[inline(always)]
104    pub fn slot_set_color(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QColor,)> {
105        unsafe {
106            ::qt_core::Receiver::new(
107                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
108                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setColor(QColor const &)\0"),
109            )
110        }
111    }
112
113    /// <p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> intensity.</p>
114    ///
115    /// Returns a built-in Qt slot `Qt3DRender::QAbstractLight::setIntensity` that can be passed to `qt_core::Signal::connect`.
116    ///
117    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#intensity-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> intensity.</p>
118    /// <p><b>Access functions:</b></p>
119    /// <div class="table"><table class="alignedsummary">
120    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>intensity</b></span>() const</td></tr>
121    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIntensity</b></span>(float <i>intensity</i>)</td></tr>
122    /// </tbody></table></div>
123    /// <p><b>Notifier signal:</b></p>
124    /// <div class="table"><table class="alignedsummary">
125    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>intensityChanged</b></span>(float <i>intensity</i>)</td></tr>
126    /// </tbody></table></div></div>
127    #[inline(always)]
128    pub fn slot_set_intensity(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
129        unsafe {
130            ::qt_core::Receiver::new(
131                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
132                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setIntensity(float)\0"),
133            )
134        }
135    }
136
137    /// <p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> color.</p>
138    ///
139    /// Returns a built-in Qt signal `Qt3DRender::QAbstractLight::colorChanged` that can be passed to `qt_core::Signal::connect`.
140    ///
141    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#color-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> color.</p>
142    /// <p><b>Access functions:</b></p>
143    /// <div class="table"><table class="alignedsummary">
144    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QColor </td><td class="memItemRight bottomAlign"><span class="name"><b>color</b></span>() const</td></tr>
145    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setColor</b></span>(const QColor &amp;<i>color</i>)</td></tr>
146    /// </tbody></table></div>
147    /// <p><b>Notifier signal:</b></p>
148    /// <div class="table"><table class="alignedsummary">
149    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>colorChanged</b></span>(const QColor &amp;<i>color</i>)</td></tr>
150    /// </tbody></table></div></div>
151    #[inline(always)]
152    pub fn color_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QColor,)> {
153        unsafe {
154            ::qt_core::Signal::new(
155                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
156                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2colorChanged(QColor const &)\0"),
157            )
158        }
159    }
160
161    /// <p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> intensity.</p>
162    ///
163    /// Returns a built-in Qt signal `Qt3DRender::QAbstractLight::intensityChanged` that can be passed to `qt_core::Signal::connect`.
164    ///
165    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#intensity-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> intensity.</p>
166    /// <p><b>Access functions:</b></p>
167    /// <div class="table"><table class="alignedsummary">
168    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>intensity</b></span>() const</td></tr>
169    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIntensity</b></span>(float <i>intensity</i>)</td></tr>
170    /// </tbody></table></div>
171    /// <p><b>Notifier signal:</b></p>
172    /// <div class="table"><table class="alignedsummary">
173    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>intensityChanged</b></span>(float <i>intensity</i>)</td></tr>
174    /// </tbody></table></div></div>
175    #[inline(always)]
176    pub fn intensity_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
177        unsafe {
178            ::qt_core::Signal::new(
179                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
180                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2intensityChanged(float)\0"),
181            )
182        }
183    }
184
185    /// <p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> color.</p>
186    ///
187    /// Calls C++ function: <span style='color: green;'>```QColor Qt3DRender::QAbstractLight::color() const```</span>.
188    ///
189    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#color-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> color.</p>
190    /// <p><b>Access functions:</b></p>
191    /// <div class="table"><table class="alignedsummary">
192    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QColor </td><td class="memItemRight bottomAlign"><span class="name"><b>color</b></span>() const</td></tr>
193    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setColor</b></span>(const QColor &amp;<i>color</i>)</td></tr>
194    /// </tbody></table></div>
195    /// <p><b>Notifier signal:</b></p>
196    /// <div class="table"><table class="alignedsummary">
197    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>colorChanged</b></span>(const QColor &amp;<i>color</i>)</td></tr>
198    /// </tbody></table></div></div>
199    #[inline(always)]
200    pub unsafe fn color(&self) -> ::cpp_core::CppBox<::qt_gui::QColor> {
201        let ffi_result = {
202            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_color(
203                self as *const crate::QAbstractLight,
204            )
205        };
206        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
207    }
208
209    /// <p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> intensity.</p>
210    ///
211    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QAbstractLight::intensity() const```</span>.
212    ///
213    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#intensity-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> intensity.</p>
214    /// <p><b>Access functions:</b></p>
215    /// <div class="table"><table class="alignedsummary">
216    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>intensity</b></span>() const</td></tr>
217    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIntensity</b></span>(float <i>intensity</i>)</td></tr>
218    /// </tbody></table></div>
219    /// <p><b>Notifier signal:</b></p>
220    /// <div class="table"><table class="alignedsummary">
221    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>intensityChanged</b></span>(float <i>intensity</i>)</td></tr>
222    /// </tbody></table></div></div>
223    #[inline(always)]
224    pub unsafe fn intensity(&self) -> ::std::os::raw::c_float {
225        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_intensity(
226            self as *const crate::QAbstractLight,
227        )
228    }
229
230    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QAbstractLight::metaObject() const```</span>.
231    #[inline(always)]
232    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
233        let ffi_result = {
234            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_metaObject(
235                self as *const crate::QAbstractLight,
236            )
237        };
238        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
239    }
240
241    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QAbstractLight::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
242    #[inline(always)]
243    pub unsafe fn qt_metacall(
244        &self,
245        arg1: ::qt_core::q_meta_object::Call,
246        arg2: ::std::os::raw::c_int,
247        arg3: *mut *mut ::std::ffi::c_void,
248    ) -> ::std::os::raw::c_int {
249        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_qt_metacall(
250            self as *const crate::QAbstractLight as *mut crate::QAbstractLight,
251            arg1,
252            arg2,
253            arg3,
254        )
255    }
256
257    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QAbstractLight::qt_metacast(const char* arg1)```</span>.
258    #[inline(always)]
259    pub unsafe fn qt_metacast(
260        &self,
261        arg1: *const ::std::os::raw::c_char,
262    ) -> *mut ::std::ffi::c_void {
263        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_qt_metacast(
264            self as *const crate::QAbstractLight as *mut crate::QAbstractLight,
265            arg1,
266        )
267    }
268
269    /// <p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> color.</p>
270    ///
271    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractLight::setColor(const QColor& color)```</span>.
272    ///
273    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#color-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> color.</p>
274    /// <p><b>Access functions:</b></p>
275    /// <div class="table"><table class="alignedsummary">
276    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QColor </td><td class="memItemRight bottomAlign"><span class="name"><b>color</b></span>() const</td></tr>
277    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setColor</b></span>(const QColor &amp;<i>color</i>)</td></tr>
278    /// </tbody></table></div>
279    /// <p><b>Notifier signal:</b></p>
280    /// <div class="table"><table class="alignedsummary">
281    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>colorChanged</b></span>(const QColor &amp;<i>color</i>)</td></tr>
282    /// </tbody></table></div></div>
283    #[inline(always)]
284    pub unsafe fn set_color(
285        &self,
286        color: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QColor>>,
287    ) {
288        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_setColor(
289            self as *const crate::QAbstractLight as *mut crate::QAbstractLight,
290            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QColor>>::cast_into(color)
291                .as_raw_ptr(),
292        )
293    }
294
295    /// <p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> intensity.</p>
296    ///
297    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractLight::setIntensity(float intensity)```</span>.
298    ///
299    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#intensity-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html">QAbstractLight</a> intensity.</p>
300    /// <p><b>Access functions:</b></p>
301    /// <div class="table"><table class="alignedsummary">
302    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>intensity</b></span>() const</td></tr>
303    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIntensity</b></span>(float <i>intensity</i>)</td></tr>
304    /// </tbody></table></div>
305    /// <p><b>Notifier signal:</b></p>
306    /// <div class="table"><table class="alignedsummary">
307    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>intensityChanged</b></span>(float <i>intensity</i>)</td></tr>
308    /// </tbody></table></div></div>
309    #[inline(always)]
310    pub unsafe fn set_intensity(&self, intensity: ::std::os::raw::c_float) {
311        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_setIntensity(
312            self as *const crate::QAbstractLight as *mut crate::QAbstractLight,
313            intensity,
314        )
315    }
316
317    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
318    #[inline(always)]
319    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
320        let ffi_result =
321            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_staticMetaObject() };
322        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
323            .expect("attempted to construct a null Ref")
324    }
325
326    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAbstractLight::tr(const char* s, const char* c, int n)```</span>.
327    #[inline(always)]
328    pub unsafe fn tr(
329        s: *const ::std::os::raw::c_char,
330        c: *const ::std::os::raw::c_char,
331        n: ::std::os::raw::c_int,
332    ) -> ::cpp_core::CppBox<::qt_core::QString> {
333        let ffi_result =
334            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_tr(s, c, n) };
335        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
336    }
337
338    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAbstractLight::trUtf8(const char* s, const char* c, int n)```</span>.
339    #[inline(always)]
340    pub unsafe fn tr_utf8(
341        s: *const ::std::os::raw::c_char,
342        c: *const ::std::os::raw::c_char,
343        n: ::std::os::raw::c_int,
344    ) -> ::cpp_core::CppBox<::qt_core::QString> {
345        let ffi_result =
346            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_trUtf8(s, c, n) };
347        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
348    }
349
350    /// <p>Contains the type of light.</p>
351    ///
352    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight::Type Qt3DRender::QAbstractLight::type() const```</span>.
353    ///
354    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#type-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Contains the type of light.</p>
355    /// <p><b>Access functions:</b></p>
356    /// <div class="table"><table class="alignedsummary">
357    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Type </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#type">type</a></b></span>() const</td></tr>
358    /// </tbody></table></div></div>
359    #[inline(always)]
360    pub unsafe fn type_(&self) -> crate::q_abstract_light::Type {
361        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_type(
362            self as *const crate::QAbstractLight,
363        )
364    }
365}
366
367/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">QTextureImageData</a> stores data representing a texture.</p>
368///
369/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureImageData```</span>.
370///
371/// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">QTextureImageData</a> stores data representing a texture.</p></div>
372#[repr(C)]
373pub struct QTextureImageData {
374    _unused: u8,
375}
376impl QTextureImageData {
377    /// <p>Remove stored texture data and return the object to its initial state</p>
378    ///
379    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::cleanup()```</span>.
380    ///
381    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#cleanup">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove stored texture data and return the object to its initial state</p></div>
382    #[inline(always)]
383    pub unsafe fn cleanup(&self) {
384        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_cleanup(
385            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
386        )
387    }
388
389    /// <p>Copy-assignment operator.</p>
390    ///
391    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImageData& Qt3DRender::QTextureImageData::operator=(const Qt3DRender::QTextureImageData& other)```</span>.
392    ///
393    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Copy-assignment operator.</p></div>
394    #[inline(always)]
395    pub unsafe fn copy_from(
396        &self,
397        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureImageData>>,
398    ) -> ::cpp_core::Ref<crate::QTextureImageData> {
399        let ffi_result = {
400            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_operator_(
401                self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
402                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureImageData>>::cast_into(other)
403                    .as_raw_ptr(),
404            )
405        };
406        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
407    }
408
409    /// <p>Returns the raw image data for the texture at layer <i>layer</i>, face <i>face</i> and mipmapLevel <i>mipmapLevel</i></p>
410    ///
411    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QTextureImageData::data(int layer = …, int face = …, int mipmapLevel = …) const```</span>.
412    ///
413    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the raw image data for the texture at layer <i>layer</i>, face <i>face</i> and mipmapLevel <i>mipmapLevel</i></p>
414    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setData">setData</a>().</p></div>
415    #[inline(always)]
416    pub unsafe fn data_3a(
417        &self,
418        layer: ::std::os::raw::c_int,
419        face: ::std::os::raw::c_int,
420        mipmap_level: ::std::os::raw::c_int,
421    ) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
422        let ffi_result = {
423            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_data(
424                self as *const crate::QTextureImageData,
425                layer,
426                face,
427                mipmap_level,
428            )
429        };
430        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
431    }
432
433    /// <p>Returns the raw image data for the texture at layer <i>layer</i>, face <i>face</i> and mipmapLevel <i>mipmapLevel</i></p>
434    ///
435    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QTextureImageData::data(int layer = …, int face = …) const```</span>.
436    ///
437    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the raw image data for the texture at layer <i>layer</i>, face <i>face</i> and mipmapLevel <i>mipmapLevel</i></p>
438    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setData">setData</a>().</p></div>
439    #[inline(always)]
440    pub unsafe fn data_2a(
441        &self,
442        layer: ::std::os::raw::c_int,
443        face: ::std::os::raw::c_int,
444    ) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
445        let ffi_result = {
446            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_data1(
447                self as *const crate::QTextureImageData,
448                layer,
449                face,
450            )
451        };
452        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
453    }
454
455    /// <p>Returns the raw image data for the texture at layer <i>layer</i>, face <i>face</i> and mipmapLevel <i>mipmapLevel</i></p>
456    ///
457    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QTextureImageData::data(int layer = …) const```</span>.
458    ///
459    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the raw image data for the texture at layer <i>layer</i>, face <i>face</i> and mipmapLevel <i>mipmapLevel</i></p>
460    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setData">setData</a>().</p></div>
461    #[inline(always)]
462    pub unsafe fn data_1a(
463        &self,
464        layer: ::std::os::raw::c_int,
465    ) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
466        let ffi_result = {
467            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_data2(
468                self as *const crate::QTextureImageData,
469                layer,
470            )
471        };
472        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
473    }
474
475    /// <p>Returns the raw image data for the texture at layer <i>layer</i>, face <i>face</i> and mipmapLevel <i>mipmapLevel</i></p>
476    ///
477    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QTextureImageData::data() const```</span>.
478    ///
479    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the raw image data for the texture at layer <i>layer</i>, face <i>face</i> and mipmapLevel <i>mipmapLevel</i></p>
480    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setData">setData</a>().</p></div>
481    #[inline(always)]
482    pub unsafe fn data_0a(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
483        let ffi_result = {
484            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_data3(
485                self as *const crate::QTextureImageData,
486            )
487        };
488        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
489    }
490
491    /// <p>Returns the depth of the stored texture</p>
492    ///
493    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureImageData::depth() const```</span>.
494    ///
495    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#depth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the depth of the stored texture</p>
496    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setDepth">setDepth</a>().</p></div>
497    #[inline(always)]
498    pub unsafe fn depth(&self) -> ::std::os::raw::c_int {
499        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_depth(
500            self as *const crate::QTextureImageData,
501        )
502    }
503
504    /// <p>Returns the number of faces in the stored texture</p>
505    ///
506    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureImageData::faces() const```</span>.
507    ///
508    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#faces">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of faces in the stored texture</p>
509    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setFaces">setFaces</a>().</p></div>
510    #[inline(always)]
511    pub unsafe fn faces(&self) -> ::std::os::raw::c_int {
512        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_faces(
513            self as *const crate::QTextureImageData,
514        )
515    }
516
517    /// <p>Returns the format of the stored texture</p>
518    ///
519    /// Calls C++ function: <span style='color: green;'>```QOpenGLTexture::TextureFormat Qt3DRender::QTextureImageData::format() const```</span>.
520    ///
521    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#format">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the format of the stored texture</p>
522    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setFormat">setFormat</a>().</p></div>
523    #[inline(always)]
524    pub unsafe fn format(&self) -> ::qt_gui::q_opengl_texture::TextureFormat {
525        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_format(
526            self as *const crate::QTextureImageData,
527        )
528    }
529
530    /// <p>Returns the height of the stored texture</p>
531    ///
532    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureImageData::height() const```</span>.
533    ///
534    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#height">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the height of the stored texture</p>
535    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setHeight">setHeight</a>().</p></div>
536    #[inline(always)]
537    pub unsafe fn height(&self) -> ::std::os::raw::c_int {
538        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_height(
539            self as *const crate::QTextureImageData,
540        )
541    }
542
543    /// <p>Returns true if the stored texture is in a compressed format</p>
544    ///
545    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QTextureImageData::isCompressed() const```</span>.
546    ///
547    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#isCompressed">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if the stored texture is in a compressed format</p></div>
548    #[inline(always)]
549    pub unsafe fn is_compressed(&self) -> bool {
550        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_isCompressed(
551            self as *const crate::QTextureImageData,
552        )
553    }
554
555    /// <p>Returns the number of layers in the stored texture</p>
556    ///
557    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureImageData::layers() const```</span>.
558    ///
559    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#layers">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of layers in the stored texture</p>
560    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setLayers">setLayers</a>().</p></div>
561    #[inline(always)]
562    pub unsafe fn layers(&self) -> ::std::os::raw::c_int {
563        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_layers(
564            self as *const crate::QTextureImageData,
565        )
566    }
567
568    /// <p>Returns the number of mip levels in the stored texture</p>
569    ///
570    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureImageData::mipLevels() const```</span>.
571    ///
572    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#mipLevels">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of mip levels in the stored texture</p>
573    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setMipLevels">setMipLevels</a>().</p></div>
574    #[inline(always)]
575    pub unsafe fn mip_levels(&self) -> ::std::os::raw::c_int {
576        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_mipLevels(
577            self as *const crate::QTextureImageData,
578        )
579    }
580
581    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">Qt3DRender::QTextureImageData</a>.</p>
582    ///
583    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureImageData::QTextureImageData()```</span>.
584    ///
585    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#QTextureImageData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">Qt3DRender::QTextureImageData</a>.</p></div>
586    #[inline(always)]
587    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QTextureImageData> {
588        let ffi_result =
589            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_QTextureImageData() };
590        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
591    }
592
593    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">QTextureImageData</a> stores data representing a texture.</p>
594    ///
595    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureImageData::QTextureImageData(const Qt3DRender::QTextureImageData& other)```</span>.
596    ///
597    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">QTextureImageData</a> stores data representing a texture.</p></div>
598    #[inline(always)]
599    pub unsafe fn new_copy(
600        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureImageData>>,
601    ) -> ::cpp_core::CppBox<crate::QTextureImageData> {
602        let ffi_result = {
603            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_QTextureImageData1(
604                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureImageData>>::cast_into(other)
605                    .as_raw_ptr(),
606            )
607        };
608        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
609    }
610
611    /// <p>Returns the pixel format of the stored texture</p>
612    ///
613    /// Calls C++ function: <span style='color: green;'>```QOpenGLTexture::PixelFormat Qt3DRender::QTextureImageData::pixelFormat() const```</span>.
614    ///
615    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#pixelFormat">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the pixel format of the stored texture</p>
616    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setPixelFormat">setPixelFormat</a>().</p></div>
617    #[inline(always)]
618    pub unsafe fn pixel_format(&self) -> ::qt_gui::q_opengl_texture::PixelFormat {
619        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_pixelFormat(
620            self as *const crate::QTextureImageData,
621        )
622    }
623
624    /// <p>Returns the pixel type of the stored texture</p>
625    ///
626    /// Calls C++ function: <span style='color: green;'>```QOpenGLTexture::PixelType Qt3DRender::QTextureImageData::pixelType() const```</span>.
627    ///
628    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#pixelType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the pixel type of the stored texture</p>
629    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setPixelType">setPixelType</a>().</p></div>
630    #[inline(always)]
631    pub unsafe fn pixel_type(&self) -> ::qt_gui::q_opengl_texture::PixelType {
632        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_pixelType(
633            self as *const crate::QTextureImageData,
634        )
635    }
636
637    /// <p>Store the data <i>data</i> with blocksize <i>blockSize</i> and if the data to be stored is compressed <i>isCompressed</i></p>
638    ///
639    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setData(const QByteArray& data, int blockSize, bool isCompressed = …)```</span>.
640    ///
641    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Store the data <i>data</i> with blocksize <i>blockSize</i> and if the data to be stored is compressed <i>isCompressed</i></p>
642    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#data">data</a>().</p></div>
643    #[inline(always)]
644    pub unsafe fn set_data_3a(
645        &self,
646        data: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
647        block_size: ::std::os::raw::c_int,
648        is_compressed: bool,
649    ) {
650        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setData(
651            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
652            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(data)
653                .as_raw_ptr(),
654            block_size,
655            is_compressed,
656        )
657    }
658
659    /// <p>Store the data <i>data</i> with blocksize <i>blockSize</i> and if the data to be stored is compressed <i>isCompressed</i></p>
660    ///
661    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setData(const QByteArray& data, int blockSize)```</span>.
662    ///
663    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Store the data <i>data</i> with blocksize <i>blockSize</i> and if the data to be stored is compressed <i>isCompressed</i></p>
664    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#data">data</a>().</p></div>
665    #[inline(always)]
666    pub unsafe fn set_data_2a(
667        &self,
668        data: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
669        block_size: ::std::os::raw::c_int,
670    ) {
671        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setData1(
672            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
673            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(data)
674                .as_raw_ptr(),
675            block_size,
676        )
677    }
678
679    /// <p>Sets the depth to <i>depth</i>. <i>setDepth</i></p>
680    ///
681    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setDepth(int depth)```</span>.
682    ///
683    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setDepth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the depth to <i>depth</i>. <i>setDepth</i></p>
684    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#depth">depth</a>().</p></div>
685    #[inline(always)]
686    pub unsafe fn set_depth(&self, depth: ::std::os::raw::c_int) {
687        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setDepth(
688            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
689            depth,
690        )
691    }
692
693    /// <p>Sets the faces to <i>faces</i>. <i>setFaces</i></p>
694    ///
695    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setFaces(int faces)```</span>.
696    ///
697    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setFaces">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the faces to <i>faces</i>. <i>setFaces</i></p>
698    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#faces">faces</a>().</p></div>
699    #[inline(always)]
700    pub unsafe fn set_faces(&self, faces: ::std::os::raw::c_int) {
701        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setFaces(
702            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
703            faces,
704        )
705    }
706
707    /// <p>Sets the format to <i>format</i>. <i></i></p>
708    ///
709    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setFormat(QOpenGLTexture::TextureFormat format)```</span>.
710    ///
711    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setFormat">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the format to <i>format</i>. <i></i></p>
712    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#format">format</a>().</p></div>
713    #[inline(always)]
714    pub unsafe fn set_format(&self, format: ::qt_gui::q_opengl_texture::TextureFormat) {
715        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setFormat(
716            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
717            format,
718        )
719    }
720
721    /// <p>Sets the height to <i>height</i>. <i>setHeight</i></p>
722    ///
723    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setHeight(int height)```</span>.
724    ///
725    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setHeight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the height to <i>height</i>. <i>setHeight</i></p>
726    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#height">height</a>().</p></div>
727    #[inline(always)]
728    pub unsafe fn set_height(&self, height: ::std::os::raw::c_int) {
729        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setHeight(
730            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
731            height,
732        )
733    }
734
735    /// <p>Copies the image <i>image</i> as raw data within this object</p>
736    ///
737    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setImage(const QImage& arg1)```</span>.
738    ///
739    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setImage">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Copies the image <i>image</i> as raw data within this object</p></div>
740    #[inline(always)]
741    pub unsafe fn set_image(
742        &self,
743        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QImage>>,
744    ) {
745        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setImage(
746            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
747            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QImage>>::cast_into(arg1).as_raw_ptr(),
748        )
749    }
750
751    /// <p>Sets the layers to <i>layers</i>. <i>setLayers</i></p>
752    ///
753    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setLayers(int layers)```</span>.
754    ///
755    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setLayers">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the layers to <i>layers</i>. <i>setLayers</i></p>
756    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#layers">layers</a>().</p></div>
757    #[inline(always)]
758    pub unsafe fn set_layers(&self, layers: ::std::os::raw::c_int) {
759        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setLayers(
760            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
761            layers,
762        )
763    }
764
765    /// <p>Sets the mip levels to <i>mipLevels</i>. <i>setMipLevels</i></p>
766    ///
767    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setMipLevels(int mipLevels)```</span>.
768    ///
769    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setMipLevels">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the mip levels to <i>mipLevels</i>. <i>setMipLevels</i></p>
770    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#mipLevels">mipLevels</a>().</p></div>
771    #[inline(always)]
772    pub unsafe fn set_mip_levels(&self, mip_levels: ::std::os::raw::c_int) {
773        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setMipLevels(
774            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
775            mip_levels,
776        )
777    }
778
779    /// <p>Sets the pixel format to <i>pixelFormat</i>. <i>setPixelFormat</i></p>
780    ///
781    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setPixelFormat(QOpenGLTexture::PixelFormat pixelFormat)```</span>.
782    ///
783    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setPixelFormat">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the pixel format to <i>pixelFormat</i>. <i>setPixelFormat</i></p>
784    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#pixelFormat">pixelFormat</a>().</p></div>
785    #[inline(always)]
786    pub unsafe fn set_pixel_format(&self, pixel_format: ::qt_gui::q_opengl_texture::PixelFormat) {
787        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setPixelFormat(
788            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
789            pixel_format,
790        )
791    }
792
793    /// <p>Sets the pixel type to <i>pixelType</i> <i>setPixelType</i></p>
794    ///
795    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setPixelType(QOpenGLTexture::PixelType pixelType)```</span>.
796    ///
797    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setPixelType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the pixel type to <i>pixelType</i> <i>setPixelType</i></p>
798    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#pixelType">pixelType</a>().</p></div>
799    #[inline(always)]
800    pub unsafe fn set_pixel_type(&self, pixel_type: ::qt_gui::q_opengl_texture::PixelType) {
801        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setPixelType(
802            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
803            pixel_type,
804        )
805    }
806
807    /// <p>Sets the target to <i>target</i>. <i>target</i></p>
808    ///
809    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setTarget(QOpenGLTexture::Target target)```</span>.
810    ///
811    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setTarget">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the target to <i>target</i>. <i>target</i></p>
812    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#target">target</a>().</p></div>
813    #[inline(always)]
814    pub unsafe fn set_target(&self, target: ::qt_gui::q_opengl_texture::Target) {
815        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setTarget(
816            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
817            target,
818        )
819    }
820
821    /// <p>Sets the width to <i>width</i>. <i>setWidth</i></p>
822    ///
823    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureImageData::setWidth(int width)```</span>.
824    ///
825    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setWidth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the width to <i>width</i>. <i>setWidth</i></p>
826    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#width">width</a>().</p></div>
827    #[inline(always)]
828    pub unsafe fn set_width(&self, width: ::std::os::raw::c_int) {
829        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_setWidth(
830            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
831            width,
832        )
833    }
834
835    /// <p>Returns the target for the stored texture</p>
836    ///
837    /// Calls C++ function: <span style='color: green;'>```QOpenGLTexture::Target Qt3DRender::QTextureImageData::target() const```</span>.
838    ///
839    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#target">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the target for the stored texture</p>
840    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setTarget">setTarget</a>().</p></div>
841    #[inline(always)]
842    pub unsafe fn target(&self) -> ::qt_gui::q_opengl_texture::Target {
843        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_target(
844            self as *const crate::QTextureImageData,
845        )
846    }
847
848    /// <p>Returns the width of the stored texture</p>
849    ///
850    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureImageData::width() const```</span>.
851    ///
852    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#width">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the width of the stored texture</p>
853    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html#setWidth">setWidth</a>().</p></div>
854    #[inline(always)]
855    pub unsafe fn width(&self) -> ::std::os::raw::c_int {
856        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_width(
857            self as *const crate::QTextureImageData,
858        )
859    }
860}
861
862pub mod q_abstract_texture {
863    //! C++ type: <span style='color: green;'>```Qt3DRender::QAbstractTexture```</span>
864
865    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Status```</span>.
866    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
867    #[repr(transparent)]
868    pub struct Status(::std::os::raw::c_int);
869
870    impl From<::std::os::raw::c_int> for Status {
871        fn from(value: ::std::os::raw::c_int) -> Self {
872            Status(value)
873        }
874    }
875
876    impl From<Status> for ::std::os::raw::c_int {
877        fn from(value: Status) -> Self {
878            value.0
879        }
880    }
881
882    impl Status {
883        pub fn to_int(&self) -> ::std::os::raw::c_int {
884            self.0
885        }
886    }
887
888    impl Status {
889        /// C++ enum variant: <span style='color: green;'>```None = 0```</span>
890        #[allow(non_upper_case_globals)]
891        pub const None: crate::q_abstract_texture::Status = crate::q_abstract_texture::Status(0);
892        /// C++ enum variant: <span style='color: green;'>```Loading = 1```</span>
893        #[allow(non_upper_case_globals)]
894        pub const Loading: crate::q_abstract_texture::Status = crate::q_abstract_texture::Status(1);
895        /// C++ enum variant: <span style='color: green;'>```Ready = 2```</span>
896        #[allow(non_upper_case_globals)]
897        pub const Ready: crate::q_abstract_texture::Status = crate::q_abstract_texture::Status(2);
898        /// C++ enum variant: <span style='color: green;'>```Error = 3```</span>
899        #[allow(non_upper_case_globals)]
900        pub const Error: crate::q_abstract_texture::Status = crate::q_abstract_texture::Status(3);
901    }
902
903    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Target```</span>.
904    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
905    #[repr(transparent)]
906    pub struct Target(::std::os::raw::c_int);
907
908    impl From<::std::os::raw::c_int> for Target {
909        fn from(value: ::std::os::raw::c_int) -> Self {
910            Target(value)
911        }
912    }
913
914    impl From<Target> for ::std::os::raw::c_int {
915        fn from(value: Target) -> Self {
916            value.0
917        }
918    }
919
920    impl Target {
921        pub fn to_int(&self) -> ::std::os::raw::c_int {
922            self.0
923        }
924    }
925
926    impl Target {
927        /// C++ enum variant: <span style='color: green;'>```TargetAutomatic = 0```</span>
928        #[allow(non_upper_case_globals)]
929        pub const TargetAutomatic: crate::q_abstract_texture::Target =
930            crate::q_abstract_texture::Target(0);
931        /// C++ enum variant: <span style='color: green;'>```Target1D = 3552```</span>
932        #[allow(non_upper_case_globals)]
933        pub const Target1D: crate::q_abstract_texture::Target =
934            crate::q_abstract_texture::Target(3552);
935        /// C++ enum variant: <span style='color: green;'>```Target1DArray = 35864```</span>
936        #[allow(non_upper_case_globals)]
937        pub const Target1DArray: crate::q_abstract_texture::Target =
938            crate::q_abstract_texture::Target(35864);
939        /// C++ enum variant: <span style='color: green;'>```Target2D = 3553```</span>
940        #[allow(non_upper_case_globals)]
941        pub const Target2D: crate::q_abstract_texture::Target =
942            crate::q_abstract_texture::Target(3553);
943        /// C++ enum variant: <span style='color: green;'>```Target2DArray = 35866```</span>
944        #[allow(non_upper_case_globals)]
945        pub const Target2DArray: crate::q_abstract_texture::Target =
946            crate::q_abstract_texture::Target(35866);
947        /// C++ enum variant: <span style='color: green;'>```Target3D = 32879```</span>
948        #[allow(non_upper_case_globals)]
949        pub const Target3D: crate::q_abstract_texture::Target =
950            crate::q_abstract_texture::Target(32879);
951        /// C++ enum variant: <span style='color: green;'>```TargetCubeMap = 34067```</span>
952        #[allow(non_upper_case_globals)]
953        pub const TargetCubeMap: crate::q_abstract_texture::Target =
954            crate::q_abstract_texture::Target(34067);
955        /// C++ enum variant: <span style='color: green;'>```TargetCubeMapArray = 36873```</span>
956        #[allow(non_upper_case_globals)]
957        pub const TargetCubeMapArray: crate::q_abstract_texture::Target =
958            crate::q_abstract_texture::Target(36873);
959        /// C++ enum variant: <span style='color: green;'>```Target2DMultisample = 37120```</span>
960        #[allow(non_upper_case_globals)]
961        pub const Target2DMultisample: crate::q_abstract_texture::Target =
962            crate::q_abstract_texture::Target(37120);
963        /// C++ enum variant: <span style='color: green;'>```Target2DMultisampleArray = 37122```</span>
964        #[allow(non_upper_case_globals)]
965        pub const Target2DMultisampleArray: crate::q_abstract_texture::Target =
966            crate::q_abstract_texture::Target(37122);
967        /// C++ enum variant: <span style='color: green;'>```TargetRectangle = 34037```</span>
968        #[allow(non_upper_case_globals)]
969        pub const TargetRectangle: crate::q_abstract_texture::Target =
970            crate::q_abstract_texture::Target(34037);
971        /// C++ enum variant: <span style='color: green;'>```TargetBuffer = 35882```</span>
972        #[allow(non_upper_case_globals)]
973        pub const TargetBuffer: crate::q_abstract_texture::Target =
974            crate::q_abstract_texture::Target(35882);
975    }
976
977    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractTexture::TextureFormat```</span>.
978    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
979    #[repr(transparent)]
980    pub struct TextureFormat(::std::os::raw::c_int);
981
982    impl From<::std::os::raw::c_int> for TextureFormat {
983        fn from(value: ::std::os::raw::c_int) -> Self {
984            TextureFormat(value)
985        }
986    }
987
988    impl From<TextureFormat> for ::std::os::raw::c_int {
989        fn from(value: TextureFormat) -> Self {
990            value.0
991        }
992    }
993
994    impl TextureFormat {
995        pub fn to_int(&self) -> ::std::os::raw::c_int {
996            self.0
997        }
998    }
999
1000    impl TextureFormat {
1001        /// C++ enum variant: <span style='color: green;'>```NoFormat = 0```</span>
1002        #[allow(non_upper_case_globals)]
1003        pub const NoFormat: crate::q_abstract_texture::TextureFormat =
1004            crate::q_abstract_texture::TextureFormat(0);
1005        /// C++ enum variant: <span style='color: green;'>```Automatic = 1```</span>
1006        #[allow(non_upper_case_globals)]
1007        pub const Automatic: crate::q_abstract_texture::TextureFormat =
1008            crate::q_abstract_texture::TextureFormat(1);
1009        /// C++ enum variant: <span style='color: green;'>```R8_UNorm = 33321```</span>
1010        #[allow(non_upper_case_globals)]
1011        pub const R8UNorm: crate::q_abstract_texture::TextureFormat =
1012            crate::q_abstract_texture::TextureFormat(33321);
1013        /// C++ enum variant: <span style='color: green;'>```RG8_UNorm = 33323```</span>
1014        #[allow(non_upper_case_globals)]
1015        pub const RG8UNorm: crate::q_abstract_texture::TextureFormat =
1016            crate::q_abstract_texture::TextureFormat(33323);
1017        /// C++ enum variant: <span style='color: green;'>```RGB8_UNorm = 32849```</span>
1018        #[allow(non_upper_case_globals)]
1019        pub const RGB8UNorm: crate::q_abstract_texture::TextureFormat =
1020            crate::q_abstract_texture::TextureFormat(32849);
1021        /// C++ enum variant: <span style='color: green;'>```RGBA8_UNorm = 32856```</span>
1022        #[allow(non_upper_case_globals)]
1023        pub const RGBA8UNorm: crate::q_abstract_texture::TextureFormat =
1024            crate::q_abstract_texture::TextureFormat(32856);
1025        /// C++ enum variant: <span style='color: green;'>```R16_UNorm = 33322```</span>
1026        #[allow(non_upper_case_globals)]
1027        pub const R16UNorm: crate::q_abstract_texture::TextureFormat =
1028            crate::q_abstract_texture::TextureFormat(33322);
1029        /// C++ enum variant: <span style='color: green;'>```RG16_UNorm = 33324```</span>
1030        #[allow(non_upper_case_globals)]
1031        pub const RG16UNorm: crate::q_abstract_texture::TextureFormat =
1032            crate::q_abstract_texture::TextureFormat(33324);
1033        /// C++ enum variant: <span style='color: green;'>```RGB16_UNorm = 32852```</span>
1034        #[allow(non_upper_case_globals)]
1035        pub const RGB16UNorm: crate::q_abstract_texture::TextureFormat =
1036            crate::q_abstract_texture::TextureFormat(32852);
1037        /// C++ enum variant: <span style='color: green;'>```RGBA16_UNorm = 32859```</span>
1038        #[allow(non_upper_case_globals)]
1039        pub const RGBA16UNorm: crate::q_abstract_texture::TextureFormat =
1040            crate::q_abstract_texture::TextureFormat(32859);
1041        /// C++ enum variant: <span style='color: green;'>```R8_SNorm = 36756```</span>
1042        #[allow(non_upper_case_globals)]
1043        pub const R8SNorm: crate::q_abstract_texture::TextureFormat =
1044            crate::q_abstract_texture::TextureFormat(36756);
1045        /// C++ enum variant: <span style='color: green;'>```RG8_SNorm = 36757```</span>
1046        #[allow(non_upper_case_globals)]
1047        pub const RG8SNorm: crate::q_abstract_texture::TextureFormat =
1048            crate::q_abstract_texture::TextureFormat(36757);
1049        /// C++ enum variant: <span style='color: green;'>```RGB8_SNorm = 36758```</span>
1050        #[allow(non_upper_case_globals)]
1051        pub const RGB8SNorm: crate::q_abstract_texture::TextureFormat =
1052            crate::q_abstract_texture::TextureFormat(36758);
1053        /// C++ enum variant: <span style='color: green;'>```RGBA8_SNorm = 36759```</span>
1054        #[allow(non_upper_case_globals)]
1055        pub const RGBA8SNorm: crate::q_abstract_texture::TextureFormat =
1056            crate::q_abstract_texture::TextureFormat(36759);
1057        /// C++ enum variant: <span style='color: green;'>```R16_SNorm = 36760```</span>
1058        #[allow(non_upper_case_globals)]
1059        pub const R16SNorm: crate::q_abstract_texture::TextureFormat =
1060            crate::q_abstract_texture::TextureFormat(36760);
1061        /// C++ enum variant: <span style='color: green;'>```RG16_SNorm = 36761```</span>
1062        #[allow(non_upper_case_globals)]
1063        pub const RG16SNorm: crate::q_abstract_texture::TextureFormat =
1064            crate::q_abstract_texture::TextureFormat(36761);
1065        /// C++ enum variant: <span style='color: green;'>```RGB16_SNorm = 36762```</span>
1066        #[allow(non_upper_case_globals)]
1067        pub const RGB16SNorm: crate::q_abstract_texture::TextureFormat =
1068            crate::q_abstract_texture::TextureFormat(36762);
1069        /// C++ enum variant: <span style='color: green;'>```RGBA16_SNorm = 36763```</span>
1070        #[allow(non_upper_case_globals)]
1071        pub const RGBA16SNorm: crate::q_abstract_texture::TextureFormat =
1072            crate::q_abstract_texture::TextureFormat(36763);
1073        /// C++ enum variant: <span style='color: green;'>```R8U = 33330```</span>
1074        #[allow(non_upper_case_globals)]
1075        pub const R8U: crate::q_abstract_texture::TextureFormat =
1076            crate::q_abstract_texture::TextureFormat(33330);
1077        /// C++ enum variant: <span style='color: green;'>```RG8U = 33336```</span>
1078        #[allow(non_upper_case_globals)]
1079        pub const RG8U: crate::q_abstract_texture::TextureFormat =
1080            crate::q_abstract_texture::TextureFormat(33336);
1081        /// C++ enum variant: <span style='color: green;'>```RGB8U = 36221```</span>
1082        #[allow(non_upper_case_globals)]
1083        pub const RGB8U: crate::q_abstract_texture::TextureFormat =
1084            crate::q_abstract_texture::TextureFormat(36221);
1085        /// C++ enum variant: <span style='color: green;'>```RGBA8U = 36220```</span>
1086        #[allow(non_upper_case_globals)]
1087        pub const RGBA8U: crate::q_abstract_texture::TextureFormat =
1088            crate::q_abstract_texture::TextureFormat(36220);
1089        /// C++ enum variant: <span style='color: green;'>```R16U = 33332```</span>
1090        #[allow(non_upper_case_globals)]
1091        pub const R16U: crate::q_abstract_texture::TextureFormat =
1092            crate::q_abstract_texture::TextureFormat(33332);
1093        /// C++ enum variant: <span style='color: green;'>```RG16U = 33338```</span>
1094        #[allow(non_upper_case_globals)]
1095        pub const RG16U: crate::q_abstract_texture::TextureFormat =
1096            crate::q_abstract_texture::TextureFormat(33338);
1097        /// C++ enum variant: <span style='color: green;'>```RGB16U = 36215```</span>
1098        #[allow(non_upper_case_globals)]
1099        pub const RGB16U: crate::q_abstract_texture::TextureFormat =
1100            crate::q_abstract_texture::TextureFormat(36215);
1101        /// C++ enum variant: <span style='color: green;'>```RGBA16U = 36214```</span>
1102        #[allow(non_upper_case_globals)]
1103        pub const RGBA16U: crate::q_abstract_texture::TextureFormat =
1104            crate::q_abstract_texture::TextureFormat(36214);
1105        /// C++ enum variant: <span style='color: green;'>```R32U = 33334```</span>
1106        #[allow(non_upper_case_globals)]
1107        pub const R32U: crate::q_abstract_texture::TextureFormat =
1108            crate::q_abstract_texture::TextureFormat(33334);
1109        /// C++ enum variant: <span style='color: green;'>```RG32U = 33340```</span>
1110        #[allow(non_upper_case_globals)]
1111        pub const RG32U: crate::q_abstract_texture::TextureFormat =
1112            crate::q_abstract_texture::TextureFormat(33340);
1113        /// C++ enum variant: <span style='color: green;'>```RGB32U = 36209```</span>
1114        #[allow(non_upper_case_globals)]
1115        pub const RGB32U: crate::q_abstract_texture::TextureFormat =
1116            crate::q_abstract_texture::TextureFormat(36209);
1117        /// C++ enum variant: <span style='color: green;'>```RGBA32U = 36208```</span>
1118        #[allow(non_upper_case_globals)]
1119        pub const RGBA32U: crate::q_abstract_texture::TextureFormat =
1120            crate::q_abstract_texture::TextureFormat(36208);
1121        /// C++ enum variant: <span style='color: green;'>```R8I = 33329```</span>
1122        #[allow(non_upper_case_globals)]
1123        pub const R8I: crate::q_abstract_texture::TextureFormat =
1124            crate::q_abstract_texture::TextureFormat(33329);
1125        /// C++ enum variant: <span style='color: green;'>```RG8I = 33335```</span>
1126        #[allow(non_upper_case_globals)]
1127        pub const RG8I: crate::q_abstract_texture::TextureFormat =
1128            crate::q_abstract_texture::TextureFormat(33335);
1129        /// C++ enum variant: <span style='color: green;'>```RGB8I = 36239```</span>
1130        #[allow(non_upper_case_globals)]
1131        pub const RGB8I: crate::q_abstract_texture::TextureFormat =
1132            crate::q_abstract_texture::TextureFormat(36239);
1133        /// C++ enum variant: <span style='color: green;'>```RGBA8I = 36238```</span>
1134        #[allow(non_upper_case_globals)]
1135        pub const RGBA8I: crate::q_abstract_texture::TextureFormat =
1136            crate::q_abstract_texture::TextureFormat(36238);
1137        /// C++ enum variant: <span style='color: green;'>```R16I = 33331```</span>
1138        #[allow(non_upper_case_globals)]
1139        pub const R16I: crate::q_abstract_texture::TextureFormat =
1140            crate::q_abstract_texture::TextureFormat(33331);
1141        /// C++ enum variant: <span style='color: green;'>```RG16I = 33337```</span>
1142        #[allow(non_upper_case_globals)]
1143        pub const RG16I: crate::q_abstract_texture::TextureFormat =
1144            crate::q_abstract_texture::TextureFormat(33337);
1145        /// C++ enum variant: <span style='color: green;'>```RGB16I = 36233```</span>
1146        #[allow(non_upper_case_globals)]
1147        pub const RGB16I: crate::q_abstract_texture::TextureFormat =
1148            crate::q_abstract_texture::TextureFormat(36233);
1149        /// C++ enum variant: <span style='color: green;'>```RGBA16I = 36232```</span>
1150        #[allow(non_upper_case_globals)]
1151        pub const RGBA16I: crate::q_abstract_texture::TextureFormat =
1152            crate::q_abstract_texture::TextureFormat(36232);
1153        /// C++ enum variant: <span style='color: green;'>```R32I = 33333```</span>
1154        #[allow(non_upper_case_globals)]
1155        pub const R32I: crate::q_abstract_texture::TextureFormat =
1156            crate::q_abstract_texture::TextureFormat(33333);
1157        /// C++ enum variant: <span style='color: green;'>```RG32I = 33339```</span>
1158        #[allow(non_upper_case_globals)]
1159        pub const RG32I: crate::q_abstract_texture::TextureFormat =
1160            crate::q_abstract_texture::TextureFormat(33339);
1161        /// C++ enum variant: <span style='color: green;'>```RGB32I = 36227```</span>
1162        #[allow(non_upper_case_globals)]
1163        pub const RGB32I: crate::q_abstract_texture::TextureFormat =
1164            crate::q_abstract_texture::TextureFormat(36227);
1165        /// C++ enum variant: <span style='color: green;'>```RGBA32I = 36226```</span>
1166        #[allow(non_upper_case_globals)]
1167        pub const RGBA32I: crate::q_abstract_texture::TextureFormat =
1168            crate::q_abstract_texture::TextureFormat(36226);
1169        /// C++ enum variant: <span style='color: green;'>```R16F = 33325```</span>
1170        #[allow(non_upper_case_globals)]
1171        pub const R16F: crate::q_abstract_texture::TextureFormat =
1172            crate::q_abstract_texture::TextureFormat(33325);
1173        /// C++ enum variant: <span style='color: green;'>```RG16F = 33327```</span>
1174        #[allow(non_upper_case_globals)]
1175        pub const RG16F: crate::q_abstract_texture::TextureFormat =
1176            crate::q_abstract_texture::TextureFormat(33327);
1177        /// C++ enum variant: <span style='color: green;'>```RGB16F = 34843```</span>
1178        #[allow(non_upper_case_globals)]
1179        pub const RGB16F: crate::q_abstract_texture::TextureFormat =
1180            crate::q_abstract_texture::TextureFormat(34843);
1181        /// C++ enum variant: <span style='color: green;'>```RGBA16F = 34842```</span>
1182        #[allow(non_upper_case_globals)]
1183        pub const RGBA16F: crate::q_abstract_texture::TextureFormat =
1184            crate::q_abstract_texture::TextureFormat(34842);
1185        /// C++ enum variant: <span style='color: green;'>```R32F = 33326```</span>
1186        #[allow(non_upper_case_globals)]
1187        pub const R32F: crate::q_abstract_texture::TextureFormat =
1188            crate::q_abstract_texture::TextureFormat(33326);
1189        /// C++ enum variant: <span style='color: green;'>```RG32F = 33328```</span>
1190        #[allow(non_upper_case_globals)]
1191        pub const RG32F: crate::q_abstract_texture::TextureFormat =
1192            crate::q_abstract_texture::TextureFormat(33328);
1193        /// C++ enum variant: <span style='color: green;'>```RGB32F = 34837```</span>
1194        #[allow(non_upper_case_globals)]
1195        pub const RGB32F: crate::q_abstract_texture::TextureFormat =
1196            crate::q_abstract_texture::TextureFormat(34837);
1197        /// C++ enum variant: <span style='color: green;'>```RGBA32F = 34836```</span>
1198        #[allow(non_upper_case_globals)]
1199        pub const RGBA32F: crate::q_abstract_texture::TextureFormat =
1200            crate::q_abstract_texture::TextureFormat(34836);
1201        /// C++ enum variant: <span style='color: green;'>```RGB9E5 = 35901```</span>
1202        #[allow(non_upper_case_globals)]
1203        pub const RGB9E5: crate::q_abstract_texture::TextureFormat =
1204            crate::q_abstract_texture::TextureFormat(35901);
1205        /// C++ enum variant: <span style='color: green;'>```RG11B10F = 35898```</span>
1206        #[allow(non_upper_case_globals)]
1207        pub const RG11B10F: crate::q_abstract_texture::TextureFormat =
1208            crate::q_abstract_texture::TextureFormat(35898);
1209        /// C++ enum variant: <span style='color: green;'>```RG3B2 = 10768```</span>
1210        #[allow(non_upper_case_globals)]
1211        pub const RG3B2: crate::q_abstract_texture::TextureFormat =
1212            crate::q_abstract_texture::TextureFormat(10768);
1213        /// C++ enum variant: <span style='color: green;'>```R5G6B5 = 36194```</span>
1214        #[allow(non_upper_case_globals)]
1215        pub const R5G6B5: crate::q_abstract_texture::TextureFormat =
1216            crate::q_abstract_texture::TextureFormat(36194);
1217        /// C++ enum variant: <span style='color: green;'>```RGB5A1 = 32855```</span>
1218        #[allow(non_upper_case_globals)]
1219        pub const RGB5A1: crate::q_abstract_texture::TextureFormat =
1220            crate::q_abstract_texture::TextureFormat(32855);
1221        /// C++ enum variant: <span style='color: green;'>```RGBA4 = 32854```</span>
1222        #[allow(non_upper_case_globals)]
1223        pub const RGBA4: crate::q_abstract_texture::TextureFormat =
1224            crate::q_abstract_texture::TextureFormat(32854);
1225        /// C++ enum variant: <span style='color: green;'>```RGB10A2 = 36975```</span>
1226        #[allow(non_upper_case_globals)]
1227        pub const RGB10A2: crate::q_abstract_texture::TextureFormat =
1228            crate::q_abstract_texture::TextureFormat(36975);
1229        /// C++ enum variant: <span style='color: green;'>```D16 = 33189```</span>
1230        #[allow(non_upper_case_globals)]
1231        pub const D16: crate::q_abstract_texture::TextureFormat =
1232            crate::q_abstract_texture::TextureFormat(33189);
1233        /// C++ enum variant: <span style='color: green;'>```D24 = 33190```</span>
1234        #[allow(non_upper_case_globals)]
1235        pub const D24: crate::q_abstract_texture::TextureFormat =
1236            crate::q_abstract_texture::TextureFormat(33190);
1237        /// C++ enum variant: <span style='color: green;'>```D24S8 = 35056```</span>
1238        #[allow(non_upper_case_globals)]
1239        pub const D24S8: crate::q_abstract_texture::TextureFormat =
1240            crate::q_abstract_texture::TextureFormat(35056);
1241        /// C++ enum variant: <span style='color: green;'>```D32 = 33191```</span>
1242        #[allow(non_upper_case_globals)]
1243        pub const D32: crate::q_abstract_texture::TextureFormat =
1244            crate::q_abstract_texture::TextureFormat(33191);
1245        /// C++ enum variant: <span style='color: green;'>```D32F = 36012```</span>
1246        #[allow(non_upper_case_globals)]
1247        pub const D32F: crate::q_abstract_texture::TextureFormat =
1248            crate::q_abstract_texture::TextureFormat(36012);
1249        /// C++ enum variant: <span style='color: green;'>```D32FS8X24 = 36013```</span>
1250        #[allow(non_upper_case_globals)]
1251        pub const D32FS8X24: crate::q_abstract_texture::TextureFormat =
1252            crate::q_abstract_texture::TextureFormat(36013);
1253        /// C++ enum variant: <span style='color: green;'>```RGB_DXT1 = 33776```</span>
1254        #[allow(non_upper_case_globals)]
1255        pub const RGBDXT1: crate::q_abstract_texture::TextureFormat =
1256            crate::q_abstract_texture::TextureFormat(33776);
1257        /// C++ enum variant: <span style='color: green;'>```RGBA_DXT1 = 33777```</span>
1258        #[allow(non_upper_case_globals)]
1259        pub const RGBADXT1: crate::q_abstract_texture::TextureFormat =
1260            crate::q_abstract_texture::TextureFormat(33777);
1261        /// C++ enum variant: <span style='color: green;'>```RGBA_DXT3 = 33778```</span>
1262        #[allow(non_upper_case_globals)]
1263        pub const RGBADXT3: crate::q_abstract_texture::TextureFormat =
1264            crate::q_abstract_texture::TextureFormat(33778);
1265        /// C++ enum variant: <span style='color: green;'>```RGBA_DXT5 = 33779```</span>
1266        #[allow(non_upper_case_globals)]
1267        pub const RGBADXT5: crate::q_abstract_texture::TextureFormat =
1268            crate::q_abstract_texture::TextureFormat(33779);
1269        /// C++ enum variant: <span style='color: green;'>```R_ATI1N_UNorm = 36283```</span>
1270        #[allow(non_upper_case_globals)]
1271        pub const RATI1NUNorm: crate::q_abstract_texture::TextureFormat =
1272            crate::q_abstract_texture::TextureFormat(36283);
1273        /// C++ enum variant: <span style='color: green;'>```R_ATI1N_SNorm = 36284```</span>
1274        #[allow(non_upper_case_globals)]
1275        pub const RATI1NSNorm: crate::q_abstract_texture::TextureFormat =
1276            crate::q_abstract_texture::TextureFormat(36284);
1277        /// C++ enum variant: <span style='color: green;'>```RG_ATI2N_UNorm = 36285```</span>
1278        #[allow(non_upper_case_globals)]
1279        pub const RGATI2NUNorm: crate::q_abstract_texture::TextureFormat =
1280            crate::q_abstract_texture::TextureFormat(36285);
1281        /// C++ enum variant: <span style='color: green;'>```RG_ATI2N_SNorm = 36286```</span>
1282        #[allow(non_upper_case_globals)]
1283        pub const RGATI2NSNorm: crate::q_abstract_texture::TextureFormat =
1284            crate::q_abstract_texture::TextureFormat(36286);
1285        /// C++ enum variant: <span style='color: green;'>```RGB_BP_UNSIGNED_FLOAT = 36495```</span>
1286        #[allow(non_upper_case_globals)]
1287        pub const RGBBPUNSIGNEDFLOAT: crate::q_abstract_texture::TextureFormat =
1288            crate::q_abstract_texture::TextureFormat(36495);
1289        /// C++ enum variant: <span style='color: green;'>```RGB_BP_SIGNED_FLOAT = 36494```</span>
1290        #[allow(non_upper_case_globals)]
1291        pub const RGBBPSIGNEDFLOAT: crate::q_abstract_texture::TextureFormat =
1292            crate::q_abstract_texture::TextureFormat(36494);
1293        /// C++ enum variant: <span style='color: green;'>```RGB_BP_UNorm = 36492```</span>
1294        #[allow(non_upper_case_globals)]
1295        pub const RGBBPUNorm: crate::q_abstract_texture::TextureFormat =
1296            crate::q_abstract_texture::TextureFormat(36492);
1297        /// C++ enum variant: <span style='color: green;'>```R11_EAC_UNorm = 37488```</span>
1298        #[allow(non_upper_case_globals)]
1299        pub const R11EACUNorm: crate::q_abstract_texture::TextureFormat =
1300            crate::q_abstract_texture::TextureFormat(37488);
1301        /// C++ enum variant: <span style='color: green;'>```R11_EAC_SNorm = 37489```</span>
1302        #[allow(non_upper_case_globals)]
1303        pub const R11EACSNorm: crate::q_abstract_texture::TextureFormat =
1304            crate::q_abstract_texture::TextureFormat(37489);
1305        /// C++ enum variant: <span style='color: green;'>```RG11_EAC_UNorm = 37490```</span>
1306        #[allow(non_upper_case_globals)]
1307        pub const RG11EACUNorm: crate::q_abstract_texture::TextureFormat =
1308            crate::q_abstract_texture::TextureFormat(37490);
1309        /// C++ enum variant: <span style='color: green;'>```RG11_EAC_SNorm = 37491```</span>
1310        #[allow(non_upper_case_globals)]
1311        pub const RG11EACSNorm: crate::q_abstract_texture::TextureFormat =
1312            crate::q_abstract_texture::TextureFormat(37491);
1313        /// C++ enum variant: <span style='color: green;'>```RGB8_ETC2 = 37492```</span>
1314        #[allow(non_upper_case_globals)]
1315        pub const RGB8ETC2: crate::q_abstract_texture::TextureFormat =
1316            crate::q_abstract_texture::TextureFormat(37492);
1317        /// C++ enum variant: <span style='color: green;'>```SRGB8_ETC2 = 37493```</span>
1318        #[allow(non_upper_case_globals)]
1319        pub const SRGB8ETC2: crate::q_abstract_texture::TextureFormat =
1320            crate::q_abstract_texture::TextureFormat(37493);
1321        /// C++ enum variant: <span style='color: green;'>```RGB8_PunchThrough_Alpha1_ETC2 = 37494```</span>
1322        #[allow(non_upper_case_globals)]
1323        pub const RGB8PunchThroughAlpha1ETC2: crate::q_abstract_texture::TextureFormat =
1324            crate::q_abstract_texture::TextureFormat(37494);
1325        /// C++ enum variant: <span style='color: green;'>```SRGB8_PunchThrough_Alpha1_ETC2 = 37495```</span>
1326        #[allow(non_upper_case_globals)]
1327        pub const SRGB8PunchThroughAlpha1ETC2: crate::q_abstract_texture::TextureFormat =
1328            crate::q_abstract_texture::TextureFormat(37495);
1329        /// C++ enum variant: <span style='color: green;'>```RGBA8_ETC2_EAC = 37496```</span>
1330        #[allow(non_upper_case_globals)]
1331        pub const RGBA8ETC2EAC: crate::q_abstract_texture::TextureFormat =
1332            crate::q_abstract_texture::TextureFormat(37496);
1333        /// C++ enum variant: <span style='color: green;'>```SRGB8_Alpha8_ETC2_EAC = 37497```</span>
1334        #[allow(non_upper_case_globals)]
1335        pub const SRGB8Alpha8ETC2EAC: crate::q_abstract_texture::TextureFormat =
1336            crate::q_abstract_texture::TextureFormat(37497);
1337        /// C++ enum variant: <span style='color: green;'>```RGB8_ETC1 = 36196```</span>
1338        #[allow(non_upper_case_globals)]
1339        pub const RGB8ETC1: crate::q_abstract_texture::TextureFormat =
1340            crate::q_abstract_texture::TextureFormat(36196);
1341        /// C++ enum variant: <span style='color: green;'>```SRGB8 = 35905```</span>
1342        #[allow(non_upper_case_globals)]
1343        pub const SRGB8: crate::q_abstract_texture::TextureFormat =
1344            crate::q_abstract_texture::TextureFormat(35905);
1345        /// C++ enum variant: <span style='color: green;'>```SRGB8_Alpha8 = 35907```</span>
1346        #[allow(non_upper_case_globals)]
1347        pub const SRGB8Alpha8: crate::q_abstract_texture::TextureFormat =
1348            crate::q_abstract_texture::TextureFormat(35907);
1349        /// C++ enum variant: <span style='color: green;'>```SRGB_DXT1 = 35916```</span>
1350        #[allow(non_upper_case_globals)]
1351        pub const SRGBDXT1: crate::q_abstract_texture::TextureFormat =
1352            crate::q_abstract_texture::TextureFormat(35916);
1353        /// C++ enum variant: <span style='color: green;'>```SRGB_Alpha_DXT1 = 35917```</span>
1354        #[allow(non_upper_case_globals)]
1355        pub const SRGBAlphaDXT1: crate::q_abstract_texture::TextureFormat =
1356            crate::q_abstract_texture::TextureFormat(35917);
1357        /// C++ enum variant: <span style='color: green;'>```SRGB_Alpha_DXT3 = 35918```</span>
1358        #[allow(non_upper_case_globals)]
1359        pub const SRGBAlphaDXT3: crate::q_abstract_texture::TextureFormat =
1360            crate::q_abstract_texture::TextureFormat(35918);
1361        /// C++ enum variant: <span style='color: green;'>```SRGB_Alpha_DXT5 = 35919```</span>
1362        #[allow(non_upper_case_globals)]
1363        pub const SRGBAlphaDXT5: crate::q_abstract_texture::TextureFormat =
1364            crate::q_abstract_texture::TextureFormat(35919);
1365        /// C++ enum variant: <span style='color: green;'>```SRGB_BP_UNorm = 36493```</span>
1366        #[allow(non_upper_case_globals)]
1367        pub const SRGBBPUNorm: crate::q_abstract_texture::TextureFormat =
1368            crate::q_abstract_texture::TextureFormat(36493);
1369        /// C++ enum variant: <span style='color: green;'>```DepthFormat = 6402```</span>
1370        #[allow(non_upper_case_globals)]
1371        pub const DepthFormat: crate::q_abstract_texture::TextureFormat =
1372            crate::q_abstract_texture::TextureFormat(6402);
1373        /// C++ enum variant: <span style='color: green;'>```AlphaFormat = 6406```</span>
1374        #[allow(non_upper_case_globals)]
1375        pub const AlphaFormat: crate::q_abstract_texture::TextureFormat =
1376            crate::q_abstract_texture::TextureFormat(6406);
1377        /// C++ enum variant: <span style='color: green;'>```RGBFormat = 6407```</span>
1378        #[allow(non_upper_case_globals)]
1379        pub const RGBFormat: crate::q_abstract_texture::TextureFormat =
1380            crate::q_abstract_texture::TextureFormat(6407);
1381        /// C++ enum variant: <span style='color: green;'>```RGBAFormat = 6408```</span>
1382        #[allow(non_upper_case_globals)]
1383        pub const RGBAFormat: crate::q_abstract_texture::TextureFormat =
1384            crate::q_abstract_texture::TextureFormat(6408);
1385        /// C++ enum variant: <span style='color: green;'>```LuminanceFormat = 6409```</span>
1386        #[allow(non_upper_case_globals)]
1387        pub const LuminanceFormat: crate::q_abstract_texture::TextureFormat =
1388            crate::q_abstract_texture::TextureFormat(6409);
1389        /// C++ enum variant: <span style='color: green;'>```LuminanceAlphaFormat = 6410```</span>
1390        #[allow(non_upper_case_globals)]
1391        pub const LuminanceAlphaFormat: crate::q_abstract_texture::TextureFormat =
1392            crate::q_abstract_texture::TextureFormat(6410);
1393        /// C++ enum variant: <span style='color: green;'>```RGB10A2 = 32857```</span>
1394        #[allow(non_upper_case_globals)]
1395        pub const RGB10A2_2: crate::q_abstract_texture::TextureFormat =
1396            crate::q_abstract_texture::TextureFormat(32857);
1397        /// C++ enum variant: <span style='color: green;'>```RGB10A2U = 36975```</span>
1398        #[allow(non_upper_case_globals)]
1399        pub const RGB10A2U: crate::q_abstract_texture::TextureFormat =
1400            crate::q_abstract_texture::TextureFormat(36975);
1401    }
1402
1403    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Filter```</span>.
1404    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
1405    #[repr(transparent)]
1406    pub struct Filter(::std::os::raw::c_int);
1407
1408    impl From<::std::os::raw::c_int> for Filter {
1409        fn from(value: ::std::os::raw::c_int) -> Self {
1410            Filter(value)
1411        }
1412    }
1413
1414    impl From<Filter> for ::std::os::raw::c_int {
1415        fn from(value: Filter) -> Self {
1416            value.0
1417        }
1418    }
1419
1420    impl Filter {
1421        pub fn to_int(&self) -> ::std::os::raw::c_int {
1422            self.0
1423        }
1424    }
1425
1426    impl Filter {
1427        /// C++ enum variant: <span style='color: green;'>```Nearest = 9728```</span>
1428        #[allow(non_upper_case_globals)]
1429        pub const Nearest: crate::q_abstract_texture::Filter =
1430            crate::q_abstract_texture::Filter(9728);
1431        /// C++ enum variant: <span style='color: green;'>```Linear = 9729```</span>
1432        #[allow(non_upper_case_globals)]
1433        pub const Linear: crate::q_abstract_texture::Filter =
1434            crate::q_abstract_texture::Filter(9729);
1435        /// C++ enum variant: <span style='color: green;'>```NearestMipMapNearest = 9984```</span>
1436        #[allow(non_upper_case_globals)]
1437        pub const NearestMipMapNearest: crate::q_abstract_texture::Filter =
1438            crate::q_abstract_texture::Filter(9984);
1439        /// C++ enum variant: <span style='color: green;'>```NearestMipMapLinear = 9986```</span>
1440        #[allow(non_upper_case_globals)]
1441        pub const NearestMipMapLinear: crate::q_abstract_texture::Filter =
1442            crate::q_abstract_texture::Filter(9986);
1443        /// C++ enum variant: <span style='color: green;'>```LinearMipMapNearest = 9985```</span>
1444        #[allow(non_upper_case_globals)]
1445        pub const LinearMipMapNearest: crate::q_abstract_texture::Filter =
1446            crate::q_abstract_texture::Filter(9985);
1447        /// C++ enum variant: <span style='color: green;'>```LinearMipMapLinear = 9987```</span>
1448        #[allow(non_upper_case_globals)]
1449        pub const LinearMipMapLinear: crate::q_abstract_texture::Filter =
1450            crate::q_abstract_texture::Filter(9987);
1451    }
1452
1453    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractTexture::CubeMapFace```</span>.
1454    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
1455    #[repr(transparent)]
1456    pub struct CubeMapFace(::std::os::raw::c_int);
1457
1458    impl From<::std::os::raw::c_int> for CubeMapFace {
1459        fn from(value: ::std::os::raw::c_int) -> Self {
1460            CubeMapFace(value)
1461        }
1462    }
1463
1464    impl From<CubeMapFace> for ::std::os::raw::c_int {
1465        fn from(value: CubeMapFace) -> Self {
1466            value.0
1467        }
1468    }
1469
1470    impl CubeMapFace {
1471        pub fn to_int(&self) -> ::std::os::raw::c_int {
1472            self.0
1473        }
1474    }
1475
1476    impl CubeMapFace {
1477        /// C++ enum variant: <span style='color: green;'>```CubeMapPositiveX = 34069```</span>
1478        #[allow(non_upper_case_globals)]
1479        pub const CubeMapPositiveX: crate::q_abstract_texture::CubeMapFace =
1480            crate::q_abstract_texture::CubeMapFace(34069);
1481        /// C++ enum variant: <span style='color: green;'>```CubeMapNegativeX = 34070```</span>
1482        #[allow(non_upper_case_globals)]
1483        pub const CubeMapNegativeX: crate::q_abstract_texture::CubeMapFace =
1484            crate::q_abstract_texture::CubeMapFace(34070);
1485        /// C++ enum variant: <span style='color: green;'>```CubeMapPositiveY = 34071```</span>
1486        #[allow(non_upper_case_globals)]
1487        pub const CubeMapPositiveY: crate::q_abstract_texture::CubeMapFace =
1488            crate::q_abstract_texture::CubeMapFace(34071);
1489        /// C++ enum variant: <span style='color: green;'>```CubeMapNegativeY = 34072```</span>
1490        #[allow(non_upper_case_globals)]
1491        pub const CubeMapNegativeY: crate::q_abstract_texture::CubeMapFace =
1492            crate::q_abstract_texture::CubeMapFace(34072);
1493        /// C++ enum variant: <span style='color: green;'>```CubeMapPositiveZ = 34073```</span>
1494        #[allow(non_upper_case_globals)]
1495        pub const CubeMapPositiveZ: crate::q_abstract_texture::CubeMapFace =
1496            crate::q_abstract_texture::CubeMapFace(34073);
1497        /// C++ enum variant: <span style='color: green;'>```CubeMapNegativeZ = 34074```</span>
1498        #[allow(non_upper_case_globals)]
1499        pub const CubeMapNegativeZ: crate::q_abstract_texture::CubeMapFace =
1500            crate::q_abstract_texture::CubeMapFace(34074);
1501        /// C++ enum variant: <span style='color: green;'>```AllFaces = 34075```</span>
1502        #[allow(non_upper_case_globals)]
1503        pub const AllFaces: crate::q_abstract_texture::CubeMapFace =
1504            crate::q_abstract_texture::CubeMapFace(34075);
1505    }
1506
1507    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonFunction```</span>.
1508    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
1509    #[repr(transparent)]
1510    pub struct ComparisonFunction(::std::os::raw::c_int);
1511
1512    impl From<::std::os::raw::c_int> for ComparisonFunction {
1513        fn from(value: ::std::os::raw::c_int) -> Self {
1514            ComparisonFunction(value)
1515        }
1516    }
1517
1518    impl From<ComparisonFunction> for ::std::os::raw::c_int {
1519        fn from(value: ComparisonFunction) -> Self {
1520            value.0
1521        }
1522    }
1523
1524    impl ComparisonFunction {
1525        pub fn to_int(&self) -> ::std::os::raw::c_int {
1526            self.0
1527        }
1528    }
1529
1530    impl ComparisonFunction {
1531        /// C++ enum variant: <span style='color: green;'>```CompareLessEqual = 515```</span>
1532        #[allow(non_upper_case_globals)]
1533        pub const CompareLessEqual: crate::q_abstract_texture::ComparisonFunction =
1534            crate::q_abstract_texture::ComparisonFunction(515);
1535        /// C++ enum variant: <span style='color: green;'>```CompareGreaterEqual = 518```</span>
1536        #[allow(non_upper_case_globals)]
1537        pub const CompareGreaterEqual: crate::q_abstract_texture::ComparisonFunction =
1538            crate::q_abstract_texture::ComparisonFunction(518);
1539        /// C++ enum variant: <span style='color: green;'>```CompareLess = 513```</span>
1540        #[allow(non_upper_case_globals)]
1541        pub const CompareLess: crate::q_abstract_texture::ComparisonFunction =
1542            crate::q_abstract_texture::ComparisonFunction(513);
1543        /// C++ enum variant: <span style='color: green;'>```CompareGreater = 516```</span>
1544        #[allow(non_upper_case_globals)]
1545        pub const CompareGreater: crate::q_abstract_texture::ComparisonFunction =
1546            crate::q_abstract_texture::ComparisonFunction(516);
1547        /// C++ enum variant: <span style='color: green;'>```CompareEqual = 514```</span>
1548        #[allow(non_upper_case_globals)]
1549        pub const CompareEqual: crate::q_abstract_texture::ComparisonFunction =
1550            crate::q_abstract_texture::ComparisonFunction(514);
1551        /// C++ enum variant: <span style='color: green;'>```CommpareNotEqual = 517```</span>
1552        #[allow(non_upper_case_globals)]
1553        pub const CommpareNotEqual: crate::q_abstract_texture::ComparisonFunction =
1554            crate::q_abstract_texture::ComparisonFunction(517);
1555        /// C++ enum variant: <span style='color: green;'>```CompareAlways = 519```</span>
1556        #[allow(non_upper_case_globals)]
1557        pub const CompareAlways: crate::q_abstract_texture::ComparisonFunction =
1558            crate::q_abstract_texture::ComparisonFunction(519);
1559        /// C++ enum variant: <span style='color: green;'>```CompareNever = 512```</span>
1560        #[allow(non_upper_case_globals)]
1561        pub const CompareNever: crate::q_abstract_texture::ComparisonFunction =
1562            crate::q_abstract_texture::ComparisonFunction(512);
1563    }
1564
1565    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonMode```</span>.
1566    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
1567    #[repr(transparent)]
1568    pub struct ComparisonMode(::std::os::raw::c_int);
1569
1570    impl From<::std::os::raw::c_int> for ComparisonMode {
1571        fn from(value: ::std::os::raw::c_int) -> Self {
1572            ComparisonMode(value)
1573        }
1574    }
1575
1576    impl From<ComparisonMode> for ::std::os::raw::c_int {
1577        fn from(value: ComparisonMode) -> Self {
1578            value.0
1579        }
1580    }
1581
1582    impl ComparisonMode {
1583        pub fn to_int(&self) -> ::std::os::raw::c_int {
1584            self.0
1585        }
1586    }
1587
1588    impl ComparisonMode {
1589        /// C++ enum variant: <span style='color: green;'>```CompareRefToTexture = 34894```</span>
1590        #[allow(non_upper_case_globals)]
1591        pub const CompareRefToTexture: crate::q_abstract_texture::ComparisonMode =
1592            crate::q_abstract_texture::ComparisonMode(34894);
1593        /// C++ enum variant: <span style='color: green;'>```CompareNone = 0```</span>
1594        #[allow(non_upper_case_globals)]
1595        pub const CompareNone: crate::q_abstract_texture::ComparisonMode =
1596            crate::q_abstract_texture::ComparisonMode(0);
1597    }
1598
1599    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractTexture::HandleType```</span>.
1600    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
1601    #[repr(transparent)]
1602    pub struct HandleType(::std::os::raw::c_int);
1603
1604    impl From<::std::os::raw::c_int> for HandleType {
1605        fn from(value: ::std::os::raw::c_int) -> Self {
1606            HandleType(value)
1607        }
1608    }
1609
1610    impl From<HandleType> for ::std::os::raw::c_int {
1611        fn from(value: HandleType) -> Self {
1612            value.0
1613        }
1614    }
1615
1616    impl HandleType {
1617        pub fn to_int(&self) -> ::std::os::raw::c_int {
1618            self.0
1619        }
1620    }
1621
1622    impl HandleType {
1623        /// C++ enum variant: <span style='color: green;'>```NoHandle = 0```</span>
1624        #[allow(non_upper_case_globals)]
1625        pub const NoHandle: crate::q_abstract_texture::HandleType =
1626            crate::q_abstract_texture::HandleType(0);
1627        /// C++ enum variant: <span style='color: green;'>```OpenGLTextureId = 1```</span>
1628        #[allow(non_upper_case_globals)]
1629        pub const OpenGLTextureId: crate::q_abstract_texture::HandleType =
1630            crate::q_abstract_texture::HandleType(1);
1631    }
1632}
1633/// <p>A base class to be used to provide textures.</p>
1634///
1635/// C++ class: <span style='color: green;'>```Qt3DRender::QAbstractTexture```</span>.
1636///
1637/// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A base class to be used to provide textures.</p>
1638/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> class shouldn't be used directly but rather through one of its subclasses. Each subclass implements a given texture target (2D, 2DArray, 3D, CubeMap ...) Each subclass provides a set of functors for each layer, cube map face and mipmap level. In turn the backend uses those functor to properly fill a corresponding OpenGL texture with data.</p></div>
1639#[repr(C)]
1640pub struct QAbstractTexture {
1641    _unused: u8,
1642}
1643impl QAbstractTexture {
1644    /// <p>Set the texture format to <i>format</i>.</p>
1645    ///
1646    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setFormat` that can be passed to `qt_core::Signal::connect`.
1647    ///
1648    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setFormat">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the texture format to <i>format</i>.</p>
1649    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#format-prop">format</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#format">format</a>().</p></div>
1650    #[inline(always)]
1651    pub fn slot_set_format(
1652        &self,
1653    ) -> ::qt_core::Receiver<(crate::q_abstract_texture::TextureFormat,)> {
1654        unsafe {
1655            ::qt_core::Receiver::new(
1656                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1657                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
1658                    b"1setFormat(Qt3DRender::QAbstractTexture::TextureFormat)\0",
1659                ),
1660            )
1661        }
1662    }
1663
1664    /// <p>Boolean parameter <i>gen</i> sets a flag indicating whether the texture provider should generate mipmaps or not.</p>
1665    ///
1666    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setGenerateMipMaps` that can be passed to `qt_core::Signal::connect`.
1667    ///
1668    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setGenerateMipMaps">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Boolean parameter <i>gen</i> sets a flag indicating whether the texture provider should generate mipmaps or not.</p>
1669    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#generateMipMaps-prop">generateMipMaps</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#generateMipMaps-prop">generateMipMaps</a>().</p></div>
1670    #[inline(always)]
1671    pub fn slot_set_generate_mip_maps(&self) -> ::qt_core::Receiver<(bool,)> {
1672        unsafe {
1673            ::qt_core::Receiver::new(
1674                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1675                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setGenerateMipMaps(bool)\0"),
1676            )
1677        }
1678    }
1679
1680    /// <p>Set the width of the texture provider to <i>width</i>.</p>
1681    ///
1682    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setWidth` that can be passed to `qt_core::Signal::connect`.
1683    ///
1684    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setWidth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the width of the texture provider to <i>width</i>.</p>
1685    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#width-prop">width</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#width">width</a>().</p></div>
1686    #[inline(always)]
1687    pub fn slot_set_width(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
1688        unsafe {
1689            ::qt_core::Receiver::new(
1690                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1691                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setWidth(int)\0"),
1692            )
1693        }
1694    }
1695
1696    /// <p>Set the height to <i>height</i>.</p>
1697    ///
1698    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setHeight` that can be passed to `qt_core::Signal::connect`.
1699    ///
1700    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setHeight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the height to <i>height</i>.</p>
1701    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#height-prop">height</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#height">height</a>().</p></div>
1702    #[inline(always)]
1703    pub fn slot_set_height(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
1704        unsafe {
1705            ::qt_core::Receiver::new(
1706                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1707                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setHeight(int)\0"),
1708            )
1709        }
1710    }
1711
1712    /// <p>Set the depth of the texture to <i>depth</i>.</p>
1713    ///
1714    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setDepth` that can be passed to `qt_core::Signal::connect`.
1715    ///
1716    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setDepth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the depth of the texture to <i>depth</i>.</p>
1717    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#depth-prop">depth</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#depth">depth</a>().</p></div>
1718    #[inline(always)]
1719    pub fn slot_set_depth(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
1720        unsafe {
1721            ::qt_core::Receiver::new(
1722                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1723                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setDepth(int)\0"),
1724            )
1725        }
1726    }
1727
1728    /// <p>Set the minification filter to the specified value <i>f</i>.</p>
1729    ///
1730    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setMinificationFilter` that can be passed to `qt_core::Signal::connect`.
1731    ///
1732    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMinificationFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the minification filter to the specified value <i>f</i>.</p>
1733    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#minificationFilter-prop">minificationFilter</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#minificationFilter-prop">minificationFilter</a>().</p></div>
1734    #[inline(always)]
1735    pub fn slot_set_minification_filter(
1736        &self,
1737    ) -> ::qt_core::Receiver<(crate::q_abstract_texture::Filter,)> {
1738        unsafe {
1739            ::qt_core::Receiver::new(
1740                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1741                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
1742                    b"1setMinificationFilter(Qt3DRender::QAbstractTexture::Filter)\0",
1743                ),
1744            )
1745        }
1746    }
1747
1748    /// <p>Set the magnification filter to <i>f</i>.</p>
1749    ///
1750    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setMagnificationFilter` that can be passed to `qt_core::Signal::connect`.
1751    ///
1752    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMagnificationFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the magnification filter to <i>f</i>.</p>
1753    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#magnificationFilter-prop">magnificationFilter</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#magnificationFilter-prop">magnificationFilter</a>().</p></div>
1754    #[inline(always)]
1755    pub fn slot_set_magnification_filter(
1756        &self,
1757    ) -> ::qt_core::Receiver<(crate::q_abstract_texture::Filter,)> {
1758        unsafe {
1759            ::qt_core::Receiver::new(
1760                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1761                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
1762                    b"1setMagnificationFilter(Qt3DRender::QAbstractTexture::Filter)\0",
1763                ),
1764            )
1765        }
1766    }
1767
1768    /// <p>Sets the maximum anisotropy to <i>anisotropy</i>.</p>
1769    ///
1770    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setMaximumAnisotropy` that can be passed to `qt_core::Signal::connect`.
1771    ///
1772    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMaximumAnisotropy">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the maximum anisotropy to <i>anisotropy</i>.</p>
1773    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#maximumAnisotropy-prop">maximumAnisotropy</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#maximumAnisotropy">maximumAnisotropy</a>().</p></div>
1774    #[inline(always)]
1775    pub fn slot_set_maximum_anisotropy(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
1776        unsafe {
1777            ::qt_core::Receiver::new(
1778                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1779                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setMaximumAnisotropy(float)\0"),
1780            )
1781        }
1782    }
1783
1784    /// <p>Set the comparison function to <i>function</i>.</p>
1785    ///
1786    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setComparisonFunction` that can be passed to `qt_core::Signal::connect`.
1787    ///
1788    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setComparisonFunction">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the comparison function to <i>function</i>.</p>
1789    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonFunction-prop">comparisonFunction</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonFunction">comparisonFunction</a>().</p></div>
1790    #[inline(always)]
1791    pub fn slot_set_comparison_function(
1792        &self,
1793    ) -> ::qt_core::Receiver<(crate::q_abstract_texture::ComparisonFunction,)> {
1794        unsafe {
1795            ::qt_core::Receiver::new(
1796                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1797                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
1798                    b"1setComparisonFunction(Qt3DRender::QAbstractTexture::ComparisonFunction)\0",
1799                ),
1800            )
1801        }
1802    }
1803
1804    /// <p>Set the comparison mode to <i>mode</i>.</p>
1805    ///
1806    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setComparisonMode` that can be passed to `qt_core::Signal::connect`.
1807    ///
1808    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setComparisonMode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the comparison mode to <i>mode</i>.</p>
1809    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonMode-prop">comparisonMode</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonMode">comparisonMode</a>().</p></div>
1810    #[inline(always)]
1811    pub fn slot_set_comparison_mode(
1812        &self,
1813    ) -> ::qt_core::Receiver<(crate::q_abstract_texture::ComparisonMode,)> {
1814        unsafe {
1815            ::qt_core::Receiver::new(
1816                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1817                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
1818                    b"1setComparisonMode(Qt3DRender::QAbstractTexture::ComparisonMode)\0",
1819                ),
1820            )
1821        }
1822    }
1823
1824    /// <p>Set the maximum layer count to <i>layers</i>.</p>
1825    ///
1826    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setLayers` that can be passed to `qt_core::Signal::connect`.
1827    ///
1828    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setLayers">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the maximum layer count to <i>layers</i>.</p>
1829    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#layers-prop">layers</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#layers">layers</a>().</p></div>
1830    #[inline(always)]
1831    pub fn slot_set_layers(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
1832        unsafe {
1833            ::qt_core::Receiver::new(
1834                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1835                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLayers(int)\0"),
1836            )
1837        }
1838    }
1839
1840    /// <p>Set the number of samples per texel to <i>samples</i>.</p>
1841    ///
1842    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTexture::setSamples` that can be passed to `qt_core::Signal::connect`.
1843    ///
1844    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setSamples">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the number of samples per texel to <i>samples</i>.</p>
1845    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#samples-prop">samples</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#samples">samples</a>().</p></div>
1846    #[inline(always)]
1847    pub fn slot_set_samples(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
1848        unsafe {
1849            ::qt_core::Receiver::new(
1850                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1851                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSamples(int)\0"),
1852            )
1853        }
1854    }
1855
1856    /// <p>Holds the format of the texture provider.</p>
1857    ///
1858    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::formatChanged` that can be passed to `qt_core::Signal::connect`.
1859    ///
1860    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#format-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the format of the texture provider.</p>
1861    /// <p><b>Access functions:</b></p>
1862    /// <div class="table"><table class="alignedsummary">
1863    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> TextureFormat </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#format">format</a></b></span>() const</td></tr>
1864    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setFormat">setFormat</a></b></span>(TextureFormat <i>format</i>)</td></tr>
1865    /// </tbody></table></div>
1866    /// <p><b>Notifier signal:</b></p>
1867    /// <div class="table"><table class="alignedsummary">
1868    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>formatChanged</b></span>(TextureFormat <i>format</i>)</td></tr>
1869    /// </tbody></table></div></div>
1870    #[inline(always)]
1871    pub fn format_changed(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::TextureFormat,)> {
1872        unsafe {
1873            ::qt_core::Signal::new(
1874                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1875                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
1876                    b"2formatChanged(Qt3DRender::QAbstractTexture::TextureFormat)\0",
1877                ),
1878            )
1879        }
1880    }
1881
1882    /// <p>Holds the current status of the texture provider.</p>
1883    ///
1884    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::statusChanged` that can be passed to `qt_core::Signal::connect`.
1885    ///
1886    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current status of the texture provider.</p>
1887    /// <p><b>Access functions:</b></p>
1888    /// <div class="table"><table class="alignedsummary">
1889    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Status </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#status">status</a></b></span>() const</td></tr>
1890    /// </tbody></table></div>
1891    /// <p><b>Notifier signal:</b></p>
1892    /// <div class="table"><table class="alignedsummary">
1893    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Status <i>status</i>)</td></tr>
1894    /// </tbody></table></div></div>
1895    #[inline(always)]
1896    pub fn status_changed(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::Status,)> {
1897        unsafe {
1898            ::qt_core::Signal::new(
1899                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1900                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
1901                    b"2statusChanged(Qt3DRender::QAbstractTexture::Status)\0",
1902                ),
1903            )
1904        }
1905    }
1906
1907    /// <p>Holds whether the texture provider should auto generate mipmaps.</p>
1908    ///
1909    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::generateMipMapsChanged` that can be passed to `qt_core::Signal::connect`.
1910    ///
1911    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#generateMipMaps-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the texture provider should auto generate mipmaps.</p>
1912    /// <p><b>Access functions:</b></p>
1913    /// <div class="table"><table class="alignedsummary">
1914    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>generateMipMaps</b></span>() const</td></tr>
1915    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setGenerateMipMaps">setGenerateMipMaps</a></b></span>(bool <i>gen</i>)</td></tr>
1916    /// </tbody></table></div>
1917    /// <p><b>Notifier signal:</b></p>
1918    /// <div class="table"><table class="alignedsummary">
1919    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>generateMipMapsChanged</b></span>(bool <i>generateMipMaps</i>)</td></tr>
1920    /// </tbody></table></div></div>
1921    #[inline(always)]
1922    pub fn generate_mip_maps_changed(&self) -> ::qt_core::Signal<(bool,)> {
1923        unsafe {
1924            ::qt_core::Signal::new(
1925                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1926                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2generateMipMapsChanged(bool)\0"),
1927            )
1928        }
1929    }
1930
1931    /// <p>Holds the width of the texture provider.</p>
1932    ///
1933    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::widthChanged` that can be passed to `qt_core::Signal::connect`.
1934    ///
1935    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#width-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the width of the texture provider.</p>
1936    /// <p><b>Access functions:</b></p>
1937    /// <div class="table"><table class="alignedsummary">
1938    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#width">width</a></b></span>() const</td></tr>
1939    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setWidth">setWidth</a></b></span>(int <i>width</i>)</td></tr>
1940    /// </tbody></table></div>
1941    /// <p><b>Notifier signal:</b></p>
1942    /// <div class="table"><table class="alignedsummary">
1943    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>widthChanged</b></span>(int <i>width</i>)</td></tr>
1944    /// </tbody></table></div></div>
1945    #[inline(always)]
1946    pub fn width_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
1947        unsafe {
1948            ::qt_core::Signal::new(
1949                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1950                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2widthChanged(int)\0"),
1951            )
1952        }
1953    }
1954
1955    /// <p>Holds the height of the texture provider.</p>
1956    ///
1957    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::heightChanged` that can be passed to `qt_core::Signal::connect`.
1958    ///
1959    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#height-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the height of the texture provider.</p>
1960    /// <p><b>Access functions:</b></p>
1961    /// <div class="table"><table class="alignedsummary">
1962    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#height">height</a></b></span>() const</td></tr>
1963    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setHeight">setHeight</a></b></span>(int <i>height</i>)</td></tr>
1964    /// </tbody></table></div>
1965    /// <p><b>Notifier signal:</b></p>
1966    /// <div class="table"><table class="alignedsummary">
1967    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>heightChanged</b></span>(int <i>height</i>)</td></tr>
1968    /// </tbody></table></div></div>
1969    #[inline(always)]
1970    pub fn height_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
1971        unsafe {
1972            ::qt_core::Signal::new(
1973                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1974                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2heightChanged(int)\0"),
1975            )
1976        }
1977    }
1978
1979    /// <p>Holds the depth of the texture provider.</p>
1980    ///
1981    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::depthChanged` that can be passed to `qt_core::Signal::connect`.
1982    ///
1983    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#depth-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the depth of the texture provider.</p>
1984    /// <p><b>Access functions:</b></p>
1985    /// <div class="table"><table class="alignedsummary">
1986    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#depth">depth</a></b></span>() const</td></tr>
1987    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setDepth">setDepth</a></b></span>(int <i>depth</i>)</td></tr>
1988    /// </tbody></table></div>
1989    /// <p><b>Notifier signal:</b></p>
1990    /// <div class="table"><table class="alignedsummary">
1991    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthChanged</b></span>(int <i>depth</i>)</td></tr>
1992    /// </tbody></table></div></div>
1993    #[inline(always)]
1994    pub fn depth_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
1995        unsafe {
1996            ::qt_core::Signal::new(
1997                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
1998                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2depthChanged(int)\0"),
1999            )
2000        }
2001    }
2002
2003    /// <p>Holds the magnification filter of the texture provider.</p>
2004    ///
2005    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::magnificationFilterChanged` that can be passed to `qt_core::Signal::connect`.
2006    ///
2007    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#magnificationFilter-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the magnification filter of the texture provider.</p>
2008    /// <p><b>Access functions:</b></p>
2009    /// <div class="table"><table class="alignedsummary">
2010    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Filter </td><td class="memItemRight bottomAlign"><span class="name"><b>magnificationFilter</b></span>() const</td></tr>
2011    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMagnificationFilter">setMagnificationFilter</a></b></span>(Filter <i>f</i>)</td></tr>
2012    /// </tbody></table></div>
2013    /// <p><b>Notifier signal:</b></p>
2014    /// <div class="table"><table class="alignedsummary">
2015    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>magnificationFilterChanged</b></span>(Filter <i>magnificationFilter</i>)</td></tr>
2016    /// </tbody></table></div></div>
2017    #[inline(always)]
2018    pub fn magnification_filter_changed(
2019        &self,
2020    ) -> ::qt_core::Signal<(crate::q_abstract_texture::Filter,)> {
2021        unsafe {
2022            ::qt_core::Signal::new(
2023                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
2024                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
2025                    b"2magnificationFilterChanged(Qt3DRender::QAbstractTexture::Filter)\0",
2026                ),
2027            )
2028        }
2029    }
2030
2031    /// <p>Holds the minification filter of the texture provider.</p>
2032    ///
2033    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::minificationFilterChanged` that can be passed to `qt_core::Signal::connect`.
2034    ///
2035    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#minificationFilter-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the minification filter of the texture provider.</p>
2036    /// <p><b>Access functions:</b></p>
2037    /// <div class="table"><table class="alignedsummary">
2038    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Filter </td><td class="memItemRight bottomAlign"><span class="name"><b>minificationFilter</b></span>() const</td></tr>
2039    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMinificationFilter">setMinificationFilter</a></b></span>(Filter <i>f</i>)</td></tr>
2040    /// </tbody></table></div>
2041    /// <p><b>Notifier signal:</b></p>
2042    /// <div class="table"><table class="alignedsummary">
2043    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>minificationFilterChanged</b></span>(Filter <i>minificationFilter</i>)</td></tr>
2044    /// </tbody></table></div></div>
2045    #[inline(always)]
2046    pub fn minification_filter_changed(
2047        &self,
2048    ) -> ::qt_core::Signal<(crate::q_abstract_texture::Filter,)> {
2049        unsafe {
2050            ::qt_core::Signal::new(
2051                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
2052                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
2053                    b"2minificationFilterChanged(Qt3DRender::QAbstractTexture::Filter)\0",
2054                ),
2055            )
2056        }
2057    }
2058
2059    /// <p>Holds the maximum anisotropy of the texture provider.</p>
2060    ///
2061    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::maximumAnisotropyChanged` that can be passed to `qt_core::Signal::connect`.
2062    ///
2063    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#maximumAnisotropy-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the maximum anisotropy of the texture provider.</p>
2064    /// <p><b>Access functions:</b></p>
2065    /// <div class="table"><table class="alignedsummary">
2066    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#maximumAnisotropy">maximumAnisotropy</a></b></span>() const</td></tr>
2067    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMaximumAnisotropy">setMaximumAnisotropy</a></b></span>(float <i>anisotropy</i>)</td></tr>
2068    /// </tbody></table></div>
2069    /// <p><b>Notifier signal:</b></p>
2070    /// <div class="table"><table class="alignedsummary">
2071    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>maximumAnisotropyChanged</b></span>(float <i>maximumAnisotropy</i>)</td></tr>
2072    /// </tbody></table></div></div>
2073    #[inline(always)]
2074    pub fn maximum_anisotropy_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
2075        unsafe {
2076            ::qt_core::Signal::new(
2077                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
2078                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
2079                    b"2maximumAnisotropyChanged(float)\0",
2080                ),
2081            )
2082        }
2083    }
2084
2085    /// <p>Holds the comparison function of the texture provider.</p>
2086    ///
2087    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::comparisonFunctionChanged` that can be passed to `qt_core::Signal::connect`.
2088    ///
2089    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the comparison function of the texture provider.</p>
2090    /// <p><b>Access functions:</b></p>
2091    /// <div class="table"><table class="alignedsummary">
2092    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> ComparisonFunction </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonFunction">comparisonFunction</a></b></span>() const</td></tr>
2093    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setComparisonFunction">setComparisonFunction</a></b></span>(ComparisonFunction <i>function</i>)</td></tr>
2094    /// </tbody></table></div>
2095    /// <p><b>Notifier signal:</b></p>
2096    /// <div class="table"><table class="alignedsummary">
2097    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonFunctionChanged</b></span>(ComparisonFunction <i>comparisonFunction</i>)</td></tr>
2098    /// </tbody></table></div></div>
2099    #[inline(always)]
2100    pub fn comparison_function_changed(
2101        &self,
2102    ) -> ::qt_core::Signal<(crate::q_abstract_texture::ComparisonFunction,)> {
2103        unsafe {
2104            ::qt_core::Signal::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2comparisonFunctionChanged(Qt3DRender::QAbstractTexture::ComparisonFunction)\0"))
2105        }
2106    }
2107
2108    /// <p>Holds the comparison mode of the texture provider.</p>
2109    ///
2110    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::comparisonModeChanged` that can be passed to `qt_core::Signal::connect`.
2111    ///
2112    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the comparison mode of the texture provider.</p>
2113    /// <p><b>Access functions:</b></p>
2114    /// <div class="table"><table class="alignedsummary">
2115    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> ComparisonMode </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonMode">comparisonMode</a></b></span>() const</td></tr>
2116    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setComparisonMode">setComparisonMode</a></b></span>(ComparisonMode <i>mode</i>)</td></tr>
2117    /// </tbody></table></div>
2118    /// <p><b>Notifier signal:</b></p>
2119    /// <div class="table"><table class="alignedsummary">
2120    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonModeChanged</b></span>(ComparisonMode <i>comparisonMode</i>)</td></tr>
2121    /// </tbody></table></div></div>
2122    #[inline(always)]
2123    pub fn comparison_mode_changed(
2124        &self,
2125    ) -> ::qt_core::Signal<(crate::q_abstract_texture::ComparisonMode,)> {
2126        unsafe {
2127            ::qt_core::Signal::new(
2128                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
2129                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
2130                    b"2comparisonModeChanged(Qt3DRender::QAbstractTexture::ComparisonMode)\0",
2131                ),
2132            )
2133        }
2134    }
2135
2136    /// <p>Holds the maximum layer count of the texture provider. By default, the maximum layer count is 1.</p>
2137    ///
2138    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::layersChanged` that can be passed to `qt_core::Signal::connect`.
2139    ///
2140    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#layers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the maximum layer count of the texture provider. By default, the maximum layer count is 1.</p>
2141    /// <p><b>Note: </b>this has a meaning only for texture providers that have 3D or array target formats.</p><p><b>Access functions:</b></p>
2142    /// <div class="table"><table class="alignedsummary">
2143    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#layers">layers</a></b></span>() const</td></tr>
2144    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setLayers">setLayers</a></b></span>(int <i>layers</i>)</td></tr>
2145    /// </tbody></table></div>
2146    /// <p><b>Notifier signal:</b></p>
2147    /// <div class="table"><table class="alignedsummary">
2148    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layersChanged</b></span>(int <i>layers</i>)</td></tr>
2149    /// </tbody></table></div></div>
2150    #[inline(always)]
2151    pub fn layers_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
2152        unsafe {
2153            ::qt_core::Signal::new(
2154                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
2155                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2layersChanged(int)\0"),
2156            )
2157        }
2158    }
2159
2160    /// <p>Holds the number of samples per texel for the texture provider. By default, the number of samples is 1.</p>
2161    ///
2162    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTexture::samplesChanged` that can be passed to `qt_core::Signal::connect`.
2163    ///
2164    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#samples-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the number of samples per texel for the texture provider. By default, the number of samples is 1.</p>
2165    /// <p><b>Note: </b>this has a meaning only for texture providers that have multisample formats.</p><p><b>Access functions:</b></p>
2166    /// <div class="table"><table class="alignedsummary">
2167    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#samples">samples</a></b></span>() const</td></tr>
2168    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setSamples">setSamples</a></b></span>(int <i>samples</i>)</td></tr>
2169    /// </tbody></table></div>
2170    /// <p><b>Notifier signal:</b></p>
2171    /// <div class="table"><table class="alignedsummary">
2172    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>samplesChanged</b></span>(int <i>samples</i>)</td></tr>
2173    /// </tbody></table></div></div>
2174    #[inline(always)]
2175    pub fn samples_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
2176        unsafe {
2177            ::qt_core::Signal::new(
2178                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
2179                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2samplesChanged(int)\0"),
2180            )
2181        }
2182    }
2183
2184    /// <p>Adds a new Qt3DCore::QAbstractTextureImage <i>textureImage</i> to the texture provider.</p>
2185    ///
2186    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractTexture::addTextureImage(Qt3DRender::QAbstractTextureImage* textureImage)```</span>.
2187    ///
2188    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#addTextureImage">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds a new Qt3DCore::QAbstractTextureImage <i>textureImage</i> to the texture provider.</p>
2189    /// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">Qt3DRender::QAbstractTextureImage</a> should never be shared between multiple <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">Qt3DRender::QAbstractTexture</a> instances.</p></div>
2190    #[inline(always)]
2191    pub unsafe fn add_texture_image(
2192        &self,
2193        texture_image: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTextureImage>>,
2194    ) {
2195        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_addTextureImage(
2196            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2197            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTextureImage>>::cast_into(
2198                texture_image,
2199            )
2200            .as_raw_ptr() as *mut crate::QAbstractTextureImage,
2201        )
2202    }
2203
2204    /// <p>Holds the comparison function of the texture provider.</p>
2205    ///
2206    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonFunction Qt3DRender::QAbstractTexture::comparisonFunction() const```</span>.
2207    ///
2208    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the comparison function of the texture provider.</p>
2209    /// <p><b>Access functions:</b></p>
2210    /// <div class="table"><table class="alignedsummary">
2211    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> ComparisonFunction </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonFunction">comparisonFunction</a></b></span>() const</td></tr>
2212    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setComparisonFunction">setComparisonFunction</a></b></span>(ComparisonFunction <i>function</i>)</td></tr>
2213    /// </tbody></table></div>
2214    /// <p><b>Notifier signal:</b></p>
2215    /// <div class="table"><table class="alignedsummary">
2216    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonFunctionChanged</b></span>(ComparisonFunction <i>comparisonFunction</i>)</td></tr>
2217    /// </tbody></table></div></div>
2218    #[inline(always)]
2219    pub unsafe fn comparison_function(&self) -> crate::q_abstract_texture::ComparisonFunction {
2220        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_comparisonFunction(
2221            self as *const crate::QAbstractTexture,
2222        )
2223    }
2224
2225    /// <p>Holds the comparison mode of the texture provider.</p>
2226    ///
2227    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonMode Qt3DRender::QAbstractTexture::comparisonMode() const```</span>.
2228    ///
2229    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the comparison mode of the texture provider.</p>
2230    /// <p><b>Access functions:</b></p>
2231    /// <div class="table"><table class="alignedsummary">
2232    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> ComparisonMode </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonMode">comparisonMode</a></b></span>() const</td></tr>
2233    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setComparisonMode">setComparisonMode</a></b></span>(ComparisonMode <i>mode</i>)</td></tr>
2234    /// </tbody></table></div>
2235    /// <p><b>Notifier signal:</b></p>
2236    /// <div class="table"><table class="alignedsummary">
2237    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonModeChanged</b></span>(ComparisonMode <i>comparisonMode</i>)</td></tr>
2238    /// </tbody></table></div></div>
2239    #[inline(always)]
2240    pub unsafe fn comparison_mode(&self) -> crate::q_abstract_texture::ComparisonMode {
2241        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_comparisonMode(
2242            self as *const crate::QAbstractTexture,
2243        )
2244    }
2245
2246    /// <p>Holds the depth of the texture provider.</p>
2247    ///
2248    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QAbstractTexture::depth() const```</span>.
2249    ///
2250    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#depth-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the depth of the texture provider.</p>
2251    /// <p><b>Access functions:</b></p>
2252    /// <div class="table"><table class="alignedsummary">
2253    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#depth">depth</a></b></span>() const</td></tr>
2254    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setDepth">setDepth</a></b></span>(int <i>depth</i>)</td></tr>
2255    /// </tbody></table></div>
2256    /// <p><b>Notifier signal:</b></p>
2257    /// <div class="table"><table class="alignedsummary">
2258    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthChanged</b></span>(int <i>depth</i>)</td></tr>
2259    /// </tbody></table></div></div>
2260    #[inline(always)]
2261    pub unsafe fn depth(&self) -> ::std::os::raw::c_int {
2262        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_depth(
2263            self as *const crate::QAbstractTexture,
2264        )
2265    }
2266
2267    /// <p>Holds the format of the texture provider.</p>
2268    ///
2269    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::TextureFormat Qt3DRender::QAbstractTexture::format() const```</span>.
2270    ///
2271    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#format-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the format of the texture provider.</p>
2272    /// <p><b>Access functions:</b></p>
2273    /// <div class="table"><table class="alignedsummary">
2274    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> TextureFormat </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#format">format</a></b></span>() const</td></tr>
2275    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setFormat">setFormat</a></b></span>(TextureFormat <i>format</i>)</td></tr>
2276    /// </tbody></table></div>
2277    /// <p><b>Notifier signal:</b></p>
2278    /// <div class="table"><table class="alignedsummary">
2279    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>formatChanged</b></span>(TextureFormat <i>format</i>)</td></tr>
2280    /// </tbody></table></div></div>
2281    #[inline(always)]
2282    pub unsafe fn format(&self) -> crate::q_abstract_texture::TextureFormat {
2283        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_format(
2284            self as *const crate::QAbstractTexture,
2285        )
2286    }
2287
2288    /// <p>Holds whether the texture provider should auto generate mipmaps.</p>
2289    ///
2290    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QAbstractTexture::generateMipMaps() const```</span>.
2291    ///
2292    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#generateMipMaps-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the texture provider should auto generate mipmaps.</p>
2293    /// <p><b>Access functions:</b></p>
2294    /// <div class="table"><table class="alignedsummary">
2295    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>generateMipMaps</b></span>() const</td></tr>
2296    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setGenerateMipMaps">setGenerateMipMaps</a></b></span>(bool <i>gen</i>)</td></tr>
2297    /// </tbody></table></div>
2298    /// <p><b>Notifier signal:</b></p>
2299    /// <div class="table"><table class="alignedsummary">
2300    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>generateMipMapsChanged</b></span>(bool <i>generateMipMaps</i>)</td></tr>
2301    /// </tbody></table></div></div>
2302    #[inline(always)]
2303    pub unsafe fn generate_mip_maps(&self) -> bool {
2304        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_generateMipMaps(
2305            self as *const crate::QAbstractTexture,
2306        )
2307    }
2308
2309    /// <p>Holds the current texture handle, if Qt 3D is using the OpenGL renderer, handle is a texture id integer.</p>
2310    ///
2311    /// Calls C++ function: <span style='color: green;'>```QVariant Qt3DRender::QAbstractTexture::handle() const```</span>.
2312    ///
2313    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#handle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current texture handle, if Qt 3D is using the OpenGL renderer, handle is a texture id integer.</p>
2314    /// <p><b>Access functions:</b></p>
2315    /// <div class="table"><table class="alignedsummary">
2316    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#handle">handle</a></b></span>() const</td></tr>
2317    /// </tbody></table></div>
2318    /// <p><b>Notifier signal:</b></p>
2319    /// <div class="table"><table class="alignedsummary">
2320    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleChanged</b></span>(QVariant <i>handle</i>)</td></tr>
2321    /// </tbody></table></div></div>
2322    #[inline(always)]
2323    #[cfg_attr(
2324        feature = "ritual_rustdoc_nightly",
2325        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
2326    )]
2327    #[cfg(any(
2328        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
2329        feature = "ritual_rustdoc"
2330    ))]
2331    pub unsafe fn handle(&self) -> ::cpp_core::CppBox<::qt_core::QVariant> {
2332        let ffi_result = {
2333            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_handle(
2334                self as *const crate::QAbstractTexture,
2335            )
2336        };
2337        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2338    }
2339
2340    /// <p>Holds the current texture handle, if Qt 3D is using the OpenGL renderer, handle is a texture id integer.</p>
2341    ///
2342    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractTexture::handleChanged(QVariant handle)```</span>.
2343    ///
2344    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#handle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current texture handle, if Qt 3D is using the OpenGL renderer, handle is a texture id integer.</p>
2345    /// <p><b>Access functions:</b></p>
2346    /// <div class="table"><table class="alignedsummary">
2347    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#handle">handle</a></b></span>() const</td></tr>
2348    /// </tbody></table></div>
2349    /// <p><b>Notifier signal:</b></p>
2350    /// <div class="table"><table class="alignedsummary">
2351    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleChanged</b></span>(QVariant <i>handle</i>)</td></tr>
2352    /// </tbody></table></div></div>
2353    #[inline(always)]
2354    #[cfg_attr(
2355        feature = "ritual_rustdoc_nightly",
2356        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
2357    )]
2358    #[cfg(any(
2359        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
2360        feature = "ritual_rustdoc"
2361    ))]
2362    pub unsafe fn handle_changed(
2363        &self,
2364        handle: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
2365    ) {
2366        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_handleChanged(
2367            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2368            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(handle)
2369                .as_raw_ptr(),
2370        )
2371    }
2372
2373    /// <p>Holds the current texture handle type.</p>
2374    ///
2375    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::HandleType Qt3DRender::QAbstractTexture::handleType() const```</span>.
2376    ///
2377    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#handleType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current texture handle type.</p>
2378    /// <p><b>Access functions:</b></p>
2379    /// <div class="table"><table class="alignedsummary">
2380    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture::HandleType </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#handleType">handleType</a></b></span>() const</td></tr>
2381    /// </tbody></table></div>
2382    /// <p><b>Notifier signal:</b></p>
2383    /// <div class="table"><table class="alignedsummary">
2384    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleTypeChanged</b></span>(Qt3DRender::QAbstractTexture::HandleType <i>handleType</i>)</td></tr>
2385    /// </tbody></table></div></div>
2386    #[inline(always)]
2387    #[cfg_attr(
2388        feature = "ritual_rustdoc_nightly",
2389        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
2390    )]
2391    #[cfg(any(
2392        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
2393        feature = "ritual_rustdoc"
2394    ))]
2395    pub unsafe fn handle_type(&self) -> crate::q_abstract_texture::HandleType {
2396        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_handleType(
2397            self as *const crate::QAbstractTexture,
2398        )
2399    }
2400
2401    /// <p>Holds the current texture handle type.</p>
2402    ///
2403    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractTexture::handleTypeChanged(Qt3DRender::QAbstractTexture::HandleType handleType)```</span>.
2404    ///
2405    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#handleType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current texture handle type.</p>
2406    /// <p><b>Access functions:</b></p>
2407    /// <div class="table"><table class="alignedsummary">
2408    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture::HandleType </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#handleType">handleType</a></b></span>() const</td></tr>
2409    /// </tbody></table></div>
2410    /// <p><b>Notifier signal:</b></p>
2411    /// <div class="table"><table class="alignedsummary">
2412    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleTypeChanged</b></span>(Qt3DRender::QAbstractTexture::HandleType <i>handleType</i>)</td></tr>
2413    /// </tbody></table></div></div>
2414    #[inline(always)]
2415    #[cfg_attr(
2416        feature = "ritual_rustdoc_nightly",
2417        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
2418    )]
2419    #[cfg(any(
2420        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
2421        feature = "ritual_rustdoc"
2422    ))]
2423    pub unsafe fn handle_type_changed(&self, handle_type: crate::q_abstract_texture::HandleType) {
2424        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_handleTypeChanged(
2425            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2426            handle_type,
2427        )
2428    }
2429
2430    /// <p>Holds the height of the texture provider.</p>
2431    ///
2432    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QAbstractTexture::height() const```</span>.
2433    ///
2434    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#height-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the height of the texture provider.</p>
2435    /// <p><b>Access functions:</b></p>
2436    /// <div class="table"><table class="alignedsummary">
2437    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#height">height</a></b></span>() const</td></tr>
2438    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setHeight">setHeight</a></b></span>(int <i>height</i>)</td></tr>
2439    /// </tbody></table></div>
2440    /// <p><b>Notifier signal:</b></p>
2441    /// <div class="table"><table class="alignedsummary">
2442    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>heightChanged</b></span>(int <i>height</i>)</td></tr>
2443    /// </tbody></table></div></div>
2444    #[inline(always)]
2445    pub unsafe fn height(&self) -> ::std::os::raw::c_int {
2446        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_height(
2447            self as *const crate::QAbstractTexture,
2448        )
2449    }
2450
2451    /// <p>Holds the maximum layer count of the texture provider. By default, the maximum layer count is 1.</p>
2452    ///
2453    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QAbstractTexture::layers() const```</span>.
2454    ///
2455    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#layers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the maximum layer count of the texture provider. By default, the maximum layer count is 1.</p>
2456    /// <p><b>Note: </b>this has a meaning only for texture providers that have 3D or array target formats.</p><p><b>Access functions:</b></p>
2457    /// <div class="table"><table class="alignedsummary">
2458    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#layers">layers</a></b></span>() const</td></tr>
2459    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setLayers">setLayers</a></b></span>(int <i>layers</i>)</td></tr>
2460    /// </tbody></table></div>
2461    /// <p><b>Notifier signal:</b></p>
2462    /// <div class="table"><table class="alignedsummary">
2463    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layersChanged</b></span>(int <i>layers</i>)</td></tr>
2464    /// </tbody></table></div></div>
2465    #[inline(always)]
2466    pub unsafe fn layers(&self) -> ::std::os::raw::c_int {
2467        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_layers(
2468            self as *const crate::QAbstractTexture,
2469        )
2470    }
2471
2472    /// <p>Holds the magnification filter of the texture provider.</p>
2473    ///
2474    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Filter Qt3DRender::QAbstractTexture::magnificationFilter() const```</span>.
2475    ///
2476    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#magnificationFilter-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the magnification filter of the texture provider.</p>
2477    /// <p><b>Access functions:</b></p>
2478    /// <div class="table"><table class="alignedsummary">
2479    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Filter </td><td class="memItemRight bottomAlign"><span class="name"><b>magnificationFilter</b></span>() const</td></tr>
2480    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMagnificationFilter">setMagnificationFilter</a></b></span>(Filter <i>f</i>)</td></tr>
2481    /// </tbody></table></div>
2482    /// <p><b>Notifier signal:</b></p>
2483    /// <div class="table"><table class="alignedsummary">
2484    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>magnificationFilterChanged</b></span>(Filter <i>magnificationFilter</i>)</td></tr>
2485    /// </tbody></table></div></div>
2486    #[inline(always)]
2487    pub unsafe fn magnification_filter(&self) -> crate::q_abstract_texture::Filter {
2488        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_magnificationFilter(
2489            self as *const crate::QAbstractTexture,
2490        )
2491    }
2492
2493    /// <p>Holds the maximum anisotropy of the texture provider.</p>
2494    ///
2495    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QAbstractTexture::maximumAnisotropy() const```</span>.
2496    ///
2497    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#maximumAnisotropy-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the maximum anisotropy of the texture provider.</p>
2498    /// <p><b>Access functions:</b></p>
2499    /// <div class="table"><table class="alignedsummary">
2500    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#maximumAnisotropy">maximumAnisotropy</a></b></span>() const</td></tr>
2501    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMaximumAnisotropy">setMaximumAnisotropy</a></b></span>(float <i>anisotropy</i>)</td></tr>
2502    /// </tbody></table></div>
2503    /// <p><b>Notifier signal:</b></p>
2504    /// <div class="table"><table class="alignedsummary">
2505    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>maximumAnisotropyChanged</b></span>(float <i>maximumAnisotropy</i>)</td></tr>
2506    /// </tbody></table></div></div>
2507    #[inline(always)]
2508    pub unsafe fn maximum_anisotropy(&self) -> ::std::os::raw::c_float {
2509        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_maximumAnisotropy(
2510            self as *const crate::QAbstractTexture,
2511        )
2512    }
2513
2514    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QAbstractTexture::metaObject() const```</span>.
2515    #[inline(always)]
2516    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
2517        let ffi_result = {
2518            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_metaObject(
2519                self as *const crate::QAbstractTexture,
2520            )
2521        };
2522        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
2523    }
2524
2525    /// <p>Holds the minification filter of the texture provider.</p>
2526    ///
2527    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Filter Qt3DRender::QAbstractTexture::minificationFilter() const```</span>.
2528    ///
2529    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#minificationFilter-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the minification filter of the texture provider.</p>
2530    /// <p><b>Access functions:</b></p>
2531    /// <div class="table"><table class="alignedsummary">
2532    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Filter </td><td class="memItemRight bottomAlign"><span class="name"><b>minificationFilter</b></span>() const</td></tr>
2533    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMinificationFilter">setMinificationFilter</a></b></span>(Filter <i>f</i>)</td></tr>
2534    /// </tbody></table></div>
2535    /// <p><b>Notifier signal:</b></p>
2536    /// <div class="table"><table class="alignedsummary">
2537    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>minificationFilterChanged</b></span>(Filter <i>minificationFilter</i>)</td></tr>
2538    /// </tbody></table></div></div>
2539    #[inline(always)]
2540    pub unsafe fn minification_filter(&self) -> crate::q_abstract_texture::Filter {
2541        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_minificationFilter(
2542            self as *const crate::QAbstractTexture,
2543        )
2544    }
2545
2546    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QAbstractTexture::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
2547    #[inline(always)]
2548    pub unsafe fn qt_metacall(
2549        &self,
2550        arg1: ::qt_core::q_meta_object::Call,
2551        arg2: ::std::os::raw::c_int,
2552        arg3: *mut *mut ::std::ffi::c_void,
2553    ) -> ::std::os::raw::c_int {
2554        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_qt_metacall(
2555            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2556            arg1,
2557            arg2,
2558            arg3,
2559        )
2560    }
2561
2562    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QAbstractTexture::qt_metacast(const char* arg1)```</span>.
2563    #[inline(always)]
2564    pub unsafe fn qt_metacast(
2565        &self,
2566        arg1: *const ::std::os::raw::c_char,
2567    ) -> *mut ::std::ffi::c_void {
2568        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_qt_metacast(
2569            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2570            arg1,
2571        )
2572    }
2573
2574    /// <p>Removes a Qt3DCore::QAbstractTextureImage <i>textureImage</i> from the texture provider.</p>
2575    ///
2576    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractTexture::removeTextureImage(Qt3DRender::QAbstractTextureImage* textureImage)```</span>.
2577    ///
2578    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#removeTextureImage">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes a Qt3DCore::QAbstractTextureImage <i>textureImage</i> from the texture provider.</p></div>
2579    #[inline(always)]
2580    pub unsafe fn remove_texture_image(
2581        &self,
2582        texture_image: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTextureImage>>,
2583    ) {
2584        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_removeTextureImage(
2585            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2586            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTextureImage>>::cast_into(
2587                texture_image,
2588            )
2589            .as_raw_ptr() as *mut crate::QAbstractTextureImage,
2590        )
2591    }
2592
2593    /// <p>Holds the number of samples per texel for the texture provider. By default, the number of samples is 1.</p>
2594    ///
2595    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QAbstractTexture::samples() const```</span>.
2596    ///
2597    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#samples-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the number of samples per texel for the texture provider. By default, the number of samples is 1.</p>
2598    /// <p><b>Note: </b>this has a meaning only for texture providers that have multisample formats.</p><p><b>Access functions:</b></p>
2599    /// <div class="table"><table class="alignedsummary">
2600    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#samples">samples</a></b></span>() const</td></tr>
2601    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setSamples">setSamples</a></b></span>(int <i>samples</i>)</td></tr>
2602    /// </tbody></table></div>
2603    /// <p><b>Notifier signal:</b></p>
2604    /// <div class="table"><table class="alignedsummary">
2605    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>samplesChanged</b></span>(int <i>samples</i>)</td></tr>
2606    /// </tbody></table></div></div>
2607    #[inline(always)]
2608    pub unsafe fn samples(&self) -> ::std::os::raw::c_int {
2609        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_samples(
2610            self as *const crate::QAbstractTexture,
2611        )
2612    }
2613
2614    /// <p>Set the comparison function to <i>function</i>.</p>
2615    ///
2616    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setComparisonFunction(Qt3DRender::QAbstractTexture::ComparisonFunction function)```</span>.
2617    ///
2618    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setComparisonFunction">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the comparison function to <i>function</i>.</p>
2619    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonFunction-prop">comparisonFunction</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonFunction">comparisonFunction</a>().</p></div>
2620    #[inline(always)]
2621    pub unsafe fn set_comparison_function(
2622        &self,
2623        function: crate::q_abstract_texture::ComparisonFunction,
2624    ) {
2625        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setComparisonFunction(
2626            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2627            function,
2628        )
2629    }
2630
2631    /// <p>Set the comparison mode to <i>mode</i>.</p>
2632    ///
2633    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setComparisonMode(Qt3DRender::QAbstractTexture::ComparisonMode mode)```</span>.
2634    ///
2635    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setComparisonMode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the comparison mode to <i>mode</i>.</p>
2636    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonMode-prop">comparisonMode</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#comparisonMode">comparisonMode</a>().</p></div>
2637    #[inline(always)]
2638    pub unsafe fn set_comparison_mode(&self, mode: crate::q_abstract_texture::ComparisonMode) {
2639        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setComparisonMode(
2640            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2641            mode,
2642        )
2643    }
2644
2645    /// <p>Set the depth of the texture to <i>depth</i>.</p>
2646    ///
2647    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setDepth(int depth)```</span>.
2648    ///
2649    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setDepth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the depth of the texture to <i>depth</i>.</p>
2650    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#depth-prop">depth</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#depth">depth</a>().</p></div>
2651    #[inline(always)]
2652    pub unsafe fn set_depth(&self, depth: ::std::os::raw::c_int) {
2653        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setDepth(
2654            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2655            depth,
2656        )
2657    }
2658
2659    /// <p>Set the texture format to <i>format</i>.</p>
2660    ///
2661    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setFormat(Qt3DRender::QAbstractTexture::TextureFormat format)```</span>.
2662    ///
2663    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setFormat">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the texture format to <i>format</i>.</p>
2664    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#format-prop">format</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#format">format</a>().</p></div>
2665    #[inline(always)]
2666    pub unsafe fn set_format(&self, format: crate::q_abstract_texture::TextureFormat) {
2667        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setFormat(
2668            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2669            format,
2670        )
2671    }
2672
2673    /// <p>Boolean parameter <i>gen</i> sets a flag indicating whether the texture provider should generate mipmaps or not.</p>
2674    ///
2675    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setGenerateMipMaps(bool gen)```</span>.
2676    ///
2677    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setGenerateMipMaps">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Boolean parameter <i>gen</i> sets a flag indicating whether the texture provider should generate mipmaps or not.</p>
2678    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#generateMipMaps-prop">generateMipMaps</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#generateMipMaps-prop">generateMipMaps</a>().</p></div>
2679    #[inline(always)]
2680    pub unsafe fn set_generate_mip_maps(&self, gen: bool) {
2681        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setGenerateMipMaps(
2682            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2683            gen,
2684        )
2685    }
2686
2687    /// <p>Set the height to <i>height</i>.</p>
2688    ///
2689    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setHeight(int height)```</span>.
2690    ///
2691    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setHeight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the height to <i>height</i>.</p>
2692    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#height-prop">height</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#height">height</a>().</p></div>
2693    #[inline(always)]
2694    pub unsafe fn set_height(&self, height: ::std::os::raw::c_int) {
2695        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setHeight(
2696            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2697            height,
2698        )
2699    }
2700
2701    /// <p>Set the maximum layer count to <i>layers</i>.</p>
2702    ///
2703    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setLayers(int layers)```</span>.
2704    ///
2705    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setLayers">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the maximum layer count to <i>layers</i>.</p>
2706    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#layers-prop">layers</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#layers">layers</a>().</p></div>
2707    #[inline(always)]
2708    pub unsafe fn set_layers(&self, layers: ::std::os::raw::c_int) {
2709        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setLayers(
2710            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2711            layers,
2712        )
2713    }
2714
2715    /// <p>Set the magnification filter to <i>f</i>.</p>
2716    ///
2717    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setMagnificationFilter(Qt3DRender::QAbstractTexture::Filter f)```</span>.
2718    ///
2719    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMagnificationFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the magnification filter to <i>f</i>.</p>
2720    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#magnificationFilter-prop">magnificationFilter</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#magnificationFilter-prop">magnificationFilter</a>().</p></div>
2721    #[inline(always)]
2722    pub unsafe fn set_magnification_filter(&self, f: crate::q_abstract_texture::Filter) {
2723        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setMagnificationFilter(
2724            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2725            f,
2726        )
2727    }
2728
2729    /// <p>Sets the maximum anisotropy to <i>anisotropy</i>.</p>
2730    ///
2731    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setMaximumAnisotropy(float anisotropy)```</span>.
2732    ///
2733    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMaximumAnisotropy">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the maximum anisotropy to <i>anisotropy</i>.</p>
2734    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#maximumAnisotropy-prop">maximumAnisotropy</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#maximumAnisotropy">maximumAnisotropy</a>().</p></div>
2735    #[inline(always)]
2736    pub unsafe fn set_maximum_anisotropy(&self, anisotropy: ::std::os::raw::c_float) {
2737        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setMaximumAnisotropy(
2738            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2739            anisotropy,
2740        )
2741    }
2742
2743    /// <p>Set the minification filter to the specified value <i>f</i>.</p>
2744    ///
2745    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setMinificationFilter(Qt3DRender::QAbstractTexture::Filter f)```</span>.
2746    ///
2747    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setMinificationFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the minification filter to the specified value <i>f</i>.</p>
2748    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#minificationFilter-prop">minificationFilter</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#minificationFilter-prop">minificationFilter</a>().</p></div>
2749    #[inline(always)]
2750    pub unsafe fn set_minification_filter(&self, f: crate::q_abstract_texture::Filter) {
2751        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setMinificationFilter(
2752            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2753            f,
2754        )
2755    }
2756
2757    /// <p>Set the number of samples per texel to <i>samples</i>.</p>
2758    ///
2759    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setSamples(int samples)```</span>.
2760    ///
2761    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setSamples">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the number of samples per texel to <i>samples</i>.</p>
2762    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#samples-prop">samples</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#samples">samples</a>().</p></div>
2763    #[inline(always)]
2764    pub unsafe fn set_samples(&self, samples: ::std::os::raw::c_int) {
2765        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setSamples(
2766            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2767            samples,
2768        )
2769    }
2770
2771    /// <p>Sets the size of the texture provider to width <i>w</i>, height <i>h</i> and depth <i>d</i>.</p>
2772    ///
2773    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractTexture::setSize(int width, int height = …, int depth = …)```</span>.
2774    ///
2775    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the texture provider to width <i>w</i>, height <i>h</i> and depth <i>d</i>.</p></div>
2776    #[inline(always)]
2777    pub unsafe fn set_size_3a(
2778        &self,
2779        width: ::std::os::raw::c_int,
2780        height: ::std::os::raw::c_int,
2781        depth: ::std::os::raw::c_int,
2782    ) {
2783        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setSize(
2784            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2785            width,
2786            height,
2787            depth,
2788        )
2789    }
2790
2791    /// <p>Sets the size of the texture provider to width <i>w</i>, height <i>h</i> and depth <i>d</i>.</p>
2792    ///
2793    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractTexture::setSize(int width, int height = …)```</span>.
2794    ///
2795    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the texture provider to width <i>w</i>, height <i>h</i> and depth <i>d</i>.</p></div>
2796    #[inline(always)]
2797    pub unsafe fn set_size_2a(&self, width: ::std::os::raw::c_int, height: ::std::os::raw::c_int) {
2798        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setSize1(
2799            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2800            width,
2801            height,
2802        )
2803    }
2804
2805    /// <p>Sets the size of the texture provider to width <i>w</i>, height <i>h</i> and depth <i>d</i>.</p>
2806    ///
2807    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractTexture::setSize(int width)```</span>.
2808    ///
2809    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the texture provider to width <i>w</i>, height <i>h</i> and depth <i>d</i>.</p></div>
2810    #[inline(always)]
2811    pub unsafe fn set_size_1a(&self, width: ::std::os::raw::c_int) {
2812        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setSize2(
2813            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2814            width,
2815        )
2816    }
2817
2818    /// <p>Set the width of the texture provider to <i>width</i>.</p>
2819    ///
2820    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTexture::setWidth(int width)```</span>.
2821    ///
2822    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setWidth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the width of the texture provider to <i>width</i>.</p>
2823    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#width-prop">width</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#width">width</a>().</p></div>
2824    #[inline(always)]
2825    pub unsafe fn set_width(&self, width: ::std::os::raw::c_int) {
2826        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setWidth(
2827            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2828            width,
2829        )
2830    }
2831
2832    /// <p>Set the wrapmode to the value specified in <i>wrapMode</i>.</p>
2833    ///
2834    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractTexture::setWrapMode(const Qt3DRender::QTextureWrapMode& wrapMode)```</span>.
2835    ///
2836    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setWrapMode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Set the wrapmode to the value specified in <i>wrapMode</i>.</p>
2837    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#wrapMode-prop">wrapMode</a>().</p></div>
2838    #[inline(always)]
2839    pub unsafe fn set_wrap_mode(
2840        &self,
2841        wrap_mode: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureWrapMode>>,
2842    ) {
2843        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_setWrapMode(
2844            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2845            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureWrapMode>>::cast_into(wrap_mode)
2846                .as_raw_ptr(),
2847        )
2848    }
2849
2850    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
2851    #[inline(always)]
2852    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
2853        let ffi_result =
2854            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_staticMetaObject() };
2855        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
2856            .expect("attempted to construct a null Ref")
2857    }
2858
2859    /// <p>Holds the current status of the texture provider.</p>
2860    ///
2861    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Status Qt3DRender::QAbstractTexture::status() const```</span>.
2862    ///
2863    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current status of the texture provider.</p>
2864    /// <p><b>Access functions:</b></p>
2865    /// <div class="table"><table class="alignedsummary">
2866    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Status </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#status">status</a></b></span>() const</td></tr>
2867    /// </tbody></table></div>
2868    /// <p><b>Notifier signal:</b></p>
2869    /// <div class="table"><table class="alignedsummary">
2870    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Status <i>status</i>)</td></tr>
2871    /// </tbody></table></div></div>
2872    #[inline(always)]
2873    pub unsafe fn status(&self) -> crate::q_abstract_texture::Status {
2874        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_status(
2875            self as *const crate::QAbstractTexture,
2876        )
2877    }
2878
2879    /// <p>Holds the target format of the texture provider.</p>
2880    ///
2881    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Target Qt3DRender::QAbstractTexture::target() const```</span>.
2882    ///
2883    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#target-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the target format of the texture provider.</p>
2884    /// <p><b>Note: </b>The target format can only be set once.</p><p><b>Access functions:</b></p>
2885    /// <div class="table"><table class="alignedsummary">
2886    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Target </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#target">target</a></b></span>() const</td></tr>
2887    /// </tbody></table></div></div>
2888    #[inline(always)]
2889    pub unsafe fn target(&self) -> crate::q_abstract_texture::Target {
2890        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_target(
2891            self as *const crate::QAbstractTexture,
2892        )
2893    }
2894
2895    /// <p>Returns a list of pointers to <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a> objects contained in the texture provider.</p>
2896    ///
2897    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*> Qt3DRender::QAbstractTexture::textureImages() const```</span>.
2898    ///
2899    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#textureImages">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a list of pointers to <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a> objects contained in the texture provider.</p></div>
2900    #[inline(always)]
2901    pub unsafe fn texture_images(
2902        &self,
2903    ) -> ::cpp_core::CppBox<crate::QVectorOfQAbstractTextureImage> {
2904        let ffi_result = {
2905            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_textureImages(
2906                self as *const crate::QAbstractTexture,
2907            )
2908        };
2909        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2910    }
2911
2912    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAbstractTexture::tr(const char* s, const char* c, int n)```</span>.
2913    #[inline(always)]
2914    pub unsafe fn tr(
2915        s: *const ::std::os::raw::c_char,
2916        c: *const ::std::os::raw::c_char,
2917        n: ::std::os::raw::c_int,
2918    ) -> ::cpp_core::CppBox<::qt_core::QString> {
2919        let ffi_result =
2920            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_tr(s, c, n) };
2921        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2922    }
2923
2924    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAbstractTexture::trUtf8(const char* s, const char* c, int n)```</span>.
2925    #[inline(always)]
2926    pub unsafe fn tr_utf8(
2927        s: *const ::std::os::raw::c_char,
2928        c: *const ::std::os::raw::c_char,
2929        n: ::std::os::raw::c_int,
2930    ) -> ::cpp_core::CppBox<::qt_core::QString> {
2931        let ffi_result =
2932            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_trUtf8(s, c, n) };
2933        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
2934    }
2935
2936    /// <p>Updates a sub region of the texture, defined by <i>update</i>, without having to change the data generator or rely on adding or removing texture images.</p>
2937    ///
2938    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractTexture::updateData(const Qt3DRender::QTextureDataUpdate& update)```</span>.
2939    ///
2940    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#updateData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Updates a sub region of the texture, defined by <i>update</i>, without having to change the data generator or rely on adding or removing texture images.</p>
2941    /// <p>This function was introduced in  Qt 5.14.</p>
2942    /// <p><b>Note: </b>This function can be invoked via the meta-object system and from QML. See <a href="http://doc.qt.io/qt-5/qobject.html#Q_INVOKABLE">Q_INVOKABLE</a>.</p></div>
2943    #[inline(always)]
2944    #[cfg_attr(
2945        feature = "ritual_rustdoc_nightly",
2946        doc(cfg(cpp_lib_version = "5.14.0"))
2947    )]
2948    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
2949    pub unsafe fn update_data(
2950        &self,
2951        update: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureDataUpdate>>,
2952    ) {
2953        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_updateData(
2954            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2955            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureDataUpdate>>::cast_into(update)
2956                .as_raw_ptr(),
2957        )
2958    }
2959
2960    /// <p>Holds the width of the texture provider.</p>
2961    ///
2962    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QAbstractTexture::width() const```</span>.
2963    ///
2964    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#width-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the width of the texture provider.</p>
2965    /// <p><b>Access functions:</b></p>
2966    /// <div class="table"><table class="alignedsummary">
2967    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#width">width</a></b></span>() const</td></tr>
2968    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#setWidth">setWidth</a></b></span>(int <i>width</i>)</td></tr>
2969    /// </tbody></table></div>
2970    /// <p><b>Notifier signal:</b></p>
2971    /// <div class="table"><table class="alignedsummary">
2972    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>widthChanged</b></span>(int <i>width</i>)</td></tr>
2973    /// </tbody></table></div></div>
2974    #[inline(always)]
2975    pub unsafe fn width(&self) -> ::std::os::raw::c_int {
2976        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_width(
2977            self as *const crate::QAbstractTexture,
2978        )
2979    }
2980
2981    /// <p>Holds the wrap mode of the texture provider.</p>
2982    ///
2983    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureWrapMode* Qt3DRender::QAbstractTexture::wrapMode()```</span>.
2984    ///
2985    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#wrapMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the wrap mode of the texture provider.</p>
2986    /// <p><b>Access functions:</b></p>
2987    /// <div class="table"><table class="alignedsummary">
2988    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QTextureWrapMode *</td><td class="memItemRight bottomAlign"><span class="name"><b>wrapMode</b></span>()</td></tr>
2989    /// </tbody></table></div></div>
2990    #[inline(always)]
2991    pub unsafe fn wrap_mode(&self) -> ::qt_core::QPtr<crate::QTextureWrapMode> {
2992        let ffi_result = {
2993            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_wrapMode(
2994                self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
2995            )
2996        };
2997        ::qt_core::QPtr::from_raw(ffi_result)
2998    }
2999}
3000
3001/// <p>Provides texture image data for <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a></p>
3002///
3003/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureImageDataGenerator```</span>.
3004///
3005/// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides texture image data for <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a></p>
3006/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html">QTextureImageDataGenerator</a> is a data provider for <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a>. <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html">QTextureImageDataGenerator</a> can be used to expand Qt3D with more ways to load texture image data as well as support user-defined formats and formats Qt3D does not natively support. The data is returned by the <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html#QTextureImageDataPtr-typedef">QTextureImageDataPtr</a> which contains the data that will be loaded to the texture. <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html">QTextureImageDataGenerator</a> is executed by Aspect jobs in the backend.</p></div>
3007#[repr(C)]
3008pub struct QTextureImageDataGenerator {
3009    _unused: u8,
3010}
3011/// <p>Encapsulates the necessary information to create an OpenGL texture image.</p>
3012///
3013/// C++ class: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage```</span>.
3014///
3015/// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates the necessary information to create an OpenGL texture image.</p>
3016/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a> should be used as the means of providing image data to a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a>. It contains the necessary information: mipmap level, layer, cube face load at the proper place data into an OpenGL texture.</p>
3017/// <p>The actual data is provided through a <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html">QTextureImageDataGenerator</a> that will be executed by Aspect jobs in the backend. <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a> should be subclassed to provide a functor and eventual additional properties needed by the functor to load actual data.</p>
3018/// <p><b>Note: </b>: <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a> should never be shared. Expect crashes, undefined behavior at best if this rule is not respected.</p></div>
3019#[repr(C)]
3020pub struct QAbstractTextureImage {
3021    _unused: u8,
3022}
3023impl QAbstractTextureImage {
3024    /// <p>Sets the mip level of a texture to <i>level</i>. <i>level</i></p>
3025    ///
3026    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTextureImage::setMipLevel` that can be passed to `qt_core::Signal::connect`.
3027    ///
3028    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setMipLevel">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the mip level of a texture to <i>level</i>. <i>level</i></p>
3029    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#mipLevel-prop">mipLevel</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#mipLevel-prop">mipLevel</a>().</p></div>
3030    #[inline(always)]
3031    pub fn slot_set_mip_level(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
3032        unsafe {
3033            ::qt_core::Receiver::new(
3034                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3035                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setMipLevel(int)\0"),
3036            )
3037        }
3038    }
3039
3040    /// <p>Sets the layer of a texture to <i>layer</i>. <i>layer</i></p>
3041    ///
3042    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTextureImage::setLayer` that can be passed to `qt_core::Signal::connect`.
3043    ///
3044    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setLayer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the layer of a texture to <i>layer</i>. <i>layer</i></p>
3045    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#layer-prop">layer</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#layer-prop">layer</a>().</p></div>
3046    #[inline(always)]
3047    pub fn slot_set_layer(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
3048        unsafe {
3049            ::qt_core::Receiver::new(
3050                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3051                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLayer(int)\0"),
3052            )
3053        }
3054    }
3055
3056    /// <p>Sets the texture image face to <i>face</i>. <i>face</i></p>
3057    ///
3058    /// Returns a built-in Qt slot `Qt3DRender::QAbstractTextureImage::setFace` that can be passed to `qt_core::Signal::connect`.
3059    ///
3060    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setFace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the texture image face to <i>face</i>. <i>face</i></p>
3061    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#face-prop">face</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#face-prop">face</a>().</p></div>
3062    #[inline(always)]
3063    pub fn slot_set_face(&self) -> ::qt_core::Receiver<(crate::q_abstract_texture::CubeMapFace,)> {
3064        unsafe {
3065            ::qt_core::Receiver::new(
3066                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3067                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
3068                    b"1setFace(Qt3DRender::QAbstractTexture::CubeMapFace)\0",
3069                ),
3070            )
3071        }
3072    }
3073
3074    /// <p>Holds the mipmap level of the texture image.</p>
3075    ///
3076    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTextureImage::mipLevelChanged` that can be passed to `qt_core::Signal::connect`.
3077    ///
3078    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the mipmap level of the texture image.</p>
3079    /// <p><b>Access functions:</b></p>
3080    /// <div class="table"><table class="alignedsummary">
3081    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
3082    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setMipLevel">setMipLevel</a></b></span>(int <i>level</i>)</td></tr>
3083    /// </tbody></table></div>
3084    /// <p><b>Notifier signal:</b></p>
3085    /// <div class="table"><table class="alignedsummary">
3086    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
3087    /// </tbody></table></div></div>
3088    #[inline(always)]
3089    pub fn mip_level_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
3090        unsafe {
3091            ::qt_core::Signal::new(
3092                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3093                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2mipLevelChanged(int)\0"),
3094            )
3095        }
3096    }
3097
3098    /// <p>Returns the layer of the texture image.</p>
3099    ///
3100    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTextureImage::layerChanged` that can be passed to `qt_core::Signal::connect`.
3101    ///
3102    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the layer of the texture image.</p>
3103    /// <p><b>Access functions:</b></p>
3104    /// <div class="table"><table class="alignedsummary">
3105    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
3106    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setLayer">setLayer</a></b></span>(int <i>layer</i>)</td></tr>
3107    /// </tbody></table></div>
3108    /// <p><b>Notifier signal:</b></p>
3109    /// <div class="table"><table class="alignedsummary">
3110    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
3111    /// </tbody></table></div></div>
3112    #[inline(always)]
3113    pub fn layer_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
3114        unsafe {
3115            ::qt_core::Signal::new(
3116                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3117                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2layerChanged(int)\0"),
3118            )
3119        }
3120    }
3121
3122    /// <p>Holds the cube map face of the texture image.</p>
3123    ///
3124    /// Returns a built-in Qt signal `Qt3DRender::QAbstractTextureImage::faceChanged` that can be passed to `qt_core::Signal::connect`.
3125    ///
3126    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#face-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the cube map face of the texture image.</p>
3127    /// <p><b>Note: </b>The cube map face has a meaning only for <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMap</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMapArray</a>.</p><p><b>Access functions:</b></p>
3128    /// <div class="table"><table class="alignedsummary">
3129    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture::CubeMapFace </td><td class="memItemRight bottomAlign"><span class="name"><b>face</b></span>() const</td></tr>
3130    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setFace">setFace</a></b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
3131    /// </tbody></table></div>
3132    /// <p><b>Notifier signal:</b></p>
3133    /// <div class="table"><table class="alignedsummary">
3134    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceChanged</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
3135    /// </tbody></table></div></div>
3136    #[inline(always)]
3137    pub fn face_changed(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::CubeMapFace,)> {
3138        unsafe {
3139            ::qt_core::Signal::new(
3140                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3141                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
3142                    b"2faceChanged(Qt3DRender::QAbstractTexture::CubeMapFace)\0",
3143                ),
3144            )
3145        }
3146    }
3147
3148    /// <p>Holds the cube map face of the texture image.</p>
3149    ///
3150    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::CubeMapFace Qt3DRender::QAbstractTextureImage::face() const```</span>.
3151    ///
3152    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#face-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the cube map face of the texture image.</p>
3153    /// <p><b>Note: </b>The cube map face has a meaning only for <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMap</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMapArray</a>.</p><p><b>Access functions:</b></p>
3154    /// <div class="table"><table class="alignedsummary">
3155    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture::CubeMapFace </td><td class="memItemRight bottomAlign"><span class="name"><b>face</b></span>() const</td></tr>
3156    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setFace">setFace</a></b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
3157    /// </tbody></table></div>
3158    /// <p><b>Notifier signal:</b></p>
3159    /// <div class="table"><table class="alignedsummary">
3160    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceChanged</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
3161    /// </tbody></table></div></div>
3162    #[inline(always)]
3163    pub unsafe fn face(&self) -> crate::q_abstract_texture::CubeMapFace {
3164        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_face(
3165            self as *const crate::QAbstractTextureImage,
3166        )
3167    }
3168
3169    /// <p>Returns the layer of the texture image.</p>
3170    ///
3171    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QAbstractTextureImage::layer() const```</span>.
3172    ///
3173    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the layer of the texture image.</p>
3174    /// <p><b>Access functions:</b></p>
3175    /// <div class="table"><table class="alignedsummary">
3176    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
3177    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setLayer">setLayer</a></b></span>(int <i>layer</i>)</td></tr>
3178    /// </tbody></table></div>
3179    /// <p><b>Notifier signal:</b></p>
3180    /// <div class="table"><table class="alignedsummary">
3181    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
3182    /// </tbody></table></div></div>
3183    #[inline(always)]
3184    pub unsafe fn layer(&self) -> ::std::os::raw::c_int {
3185        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_layer(
3186            self as *const crate::QAbstractTextureImage,
3187        )
3188    }
3189
3190    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QAbstractTextureImage::metaObject() const```</span>.
3191    #[inline(always)]
3192    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
3193        let ffi_result = {
3194            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_metaObject(
3195                self as *const crate::QAbstractTextureImage,
3196            )
3197        };
3198        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
3199    }
3200
3201    /// <p>Holds the mipmap level of the texture image.</p>
3202    ///
3203    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QAbstractTextureImage::mipLevel() const```</span>.
3204    ///
3205    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the mipmap level of the texture image.</p>
3206    /// <p><b>Access functions:</b></p>
3207    /// <div class="table"><table class="alignedsummary">
3208    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
3209    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setMipLevel">setMipLevel</a></b></span>(int <i>level</i>)</td></tr>
3210    /// </tbody></table></div>
3211    /// <p><b>Notifier signal:</b></p>
3212    /// <div class="table"><table class="alignedsummary">
3213    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
3214    /// </tbody></table></div></div>
3215    #[inline(always)]
3216    pub unsafe fn mip_level(&self) -> ::std::os::raw::c_int {
3217        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_mipLevel(
3218            self as *const crate::QAbstractTextureImage,
3219        )
3220    }
3221
3222    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QAbstractTextureImage::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
3223    #[inline(always)]
3224    pub unsafe fn qt_metacall(
3225        &self,
3226        arg1: ::qt_core::q_meta_object::Call,
3227        arg2: ::std::os::raw::c_int,
3228        arg3: *mut *mut ::std::ffi::c_void,
3229    ) -> ::std::os::raw::c_int {
3230        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_qt_metacall(
3231            self as *const crate::QAbstractTextureImage as *mut crate::QAbstractTextureImage,
3232            arg1,
3233            arg2,
3234            arg3,
3235        )
3236    }
3237
3238    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QAbstractTextureImage::qt_metacast(const char* arg1)```</span>.
3239    #[inline(always)]
3240    pub unsafe fn qt_metacast(
3241        &self,
3242        arg1: *const ::std::os::raw::c_char,
3243    ) -> *mut ::std::ffi::c_void {
3244        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_qt_metacast(
3245            self as *const crate::QAbstractTextureImage as *mut crate::QAbstractTextureImage,
3246            arg1,
3247        )
3248    }
3249
3250    /// <p>Sets the texture image face to <i>face</i>. <i>face</i></p>
3251    ///
3252    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTextureImage::setFace(Qt3DRender::QAbstractTexture::CubeMapFace face)```</span>.
3253    ///
3254    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setFace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the texture image face to <i>face</i>. <i>face</i></p>
3255    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#face-prop">face</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#face-prop">face</a>().</p></div>
3256    #[inline(always)]
3257    pub unsafe fn set_face(&self, face: crate::q_abstract_texture::CubeMapFace) {
3258        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_setFace(
3259            self as *const crate::QAbstractTextureImage as *mut crate::QAbstractTextureImage,
3260            face,
3261        )
3262    }
3263
3264    /// <p>Sets the layer of a texture to <i>layer</i>. <i>layer</i></p>
3265    ///
3266    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTextureImage::setLayer(int layer)```</span>.
3267    ///
3268    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setLayer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the layer of a texture to <i>layer</i>. <i>layer</i></p>
3269    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#layer-prop">layer</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#layer-prop">layer</a>().</p></div>
3270    #[inline(always)]
3271    pub unsafe fn set_layer(&self, layer: ::std::os::raw::c_int) {
3272        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_setLayer(
3273            self as *const crate::QAbstractTextureImage as *mut crate::QAbstractTextureImage,
3274            layer,
3275        )
3276    }
3277
3278    /// <p>Sets the mip level of a texture to <i>level</i>. <i>level</i></p>
3279    ///
3280    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractTextureImage::setMipLevel(int level)```</span>.
3281    ///
3282    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#setMipLevel">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the mip level of a texture to <i>level</i>. <i>level</i></p>
3283    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#mipLevel-prop">mipLevel</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html#mipLevel-prop">mipLevel</a>().</p></div>
3284    #[inline(always)]
3285    pub unsafe fn set_mip_level(&self, level: ::std::os::raw::c_int) {
3286        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_setMipLevel(
3287            self as *const crate::QAbstractTextureImage as *mut crate::QAbstractTextureImage,
3288            level,
3289        )
3290    }
3291
3292    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
3293    #[inline(always)]
3294    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
3295        let ffi_result = {
3296            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_staticMetaObject()
3297        };
3298        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
3299            .expect("attempted to construct a null Ref")
3300    }
3301
3302    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAbstractTextureImage::tr(const char* s, const char* c, int n)```</span>.
3303    #[inline(always)]
3304    pub unsafe fn tr(
3305        s: *const ::std::os::raw::c_char,
3306        c: *const ::std::os::raw::c_char,
3307        n: ::std::os::raw::c_int,
3308    ) -> ::cpp_core::CppBox<::qt_core::QString> {
3309        let ffi_result =
3310            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_tr(s, c, n) };
3311        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3312    }
3313
3314    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAbstractTextureImage::trUtf8(const char* s, const char* c, int n)```</span>.
3315    #[inline(always)]
3316    pub unsafe fn tr_utf8(
3317        s: *const ::std::os::raw::c_char,
3318        c: *const ::std::os::raw::c_char,
3319        n: ::std::os::raw::c_int,
3320    ) -> ::cpp_core::CppBox<::qt_core::QString> {
3321        let ffi_result =
3322            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_trUtf8(s, c, n) };
3323        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3324    }
3325}
3326
3327/// <p>An abstract base class for all render states</p>
3328///
3329/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderState```</span>.
3330///
3331/// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>An abstract base class for all render states</p>
3332/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">Qt3DRender::QRenderState</a> class is abstract base class for all render states. One can not instantiate <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> directly, but through its subclasses.</p></div>
3333#[repr(C)]
3334pub struct QRenderState {
3335    _unused: u8,
3336}
3337impl QRenderState {
3338    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderState::metaObject() const```</span>.
3339    #[inline(always)]
3340    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
3341        let ffi_result = {
3342            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderState_metaObject(
3343                self as *const crate::QRenderState,
3344            )
3345        };
3346        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
3347    }
3348
3349    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderState::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
3350    #[inline(always)]
3351    pub unsafe fn qt_metacall(
3352        &self,
3353        arg1: ::qt_core::q_meta_object::Call,
3354        arg2: ::std::os::raw::c_int,
3355        arg3: *mut *mut ::std::ffi::c_void,
3356    ) -> ::std::os::raw::c_int {
3357        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderState_qt_metacall(
3358            self as *const crate::QRenderState as *mut crate::QRenderState,
3359            arg1,
3360            arg2,
3361            arg3,
3362        )
3363    }
3364
3365    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderState::qt_metacast(const char* arg1)```</span>.
3366    #[inline(always)]
3367    pub unsafe fn qt_metacast(
3368        &self,
3369        arg1: *const ::std::os::raw::c_char,
3370    ) -> *mut ::std::ffi::c_void {
3371        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderState_qt_metacast(
3372            self as *const crate::QRenderState as *mut crate::QRenderState,
3373            arg1,
3374        )
3375    }
3376
3377    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
3378    #[inline(always)]
3379    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
3380        let ffi_result =
3381            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderState_staticMetaObject() };
3382        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
3383            .expect("attempted to construct a null Ref")
3384    }
3385
3386    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderState::tr(const char* s, const char* c, int n)```</span>.
3387    #[inline(always)]
3388    pub unsafe fn tr(
3389        s: *const ::std::os::raw::c_char,
3390        c: *const ::std::os::raw::c_char,
3391        n: ::std::os::raw::c_int,
3392    ) -> ::cpp_core::CppBox<::qt_core::QString> {
3393        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderState_tr(s, c, n) };
3394        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3395    }
3396
3397    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderState::trUtf8(const char* s, const char* c, int n)```</span>.
3398    #[inline(always)]
3399    pub unsafe fn tr_utf8(
3400        s: *const ::std::os::raw::c_char,
3401        c: *const ::std::os::raw::c_char,
3402        n: ::std::os::raw::c_int,
3403    ) -> ::cpp_core::CppBox<::qt_core::QString> {
3404        let ffi_result =
3405            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderState_trUtf8(s, c, n) };
3406        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3407    }
3408}
3409
3410/// <p>Enable alpha-to-coverage multisampling mode</p>
3411///
3412/// C++ class: <span style='color: green;'>```Qt3DRender::QAlphaCoverage```</span>.
3413///
3414/// <a href="http://doc.qt.io/qt-5/qt3drender-qalphacoverage.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enable alpha-to-coverage multisampling mode</p>
3415/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qalphacoverage.html">Qt3DRender::QAlphaCoverage</a> class enables alpha-to-coverage multisampling mode. When enabled, the fragment alpha value is used as a coverage for the sample and combined with fragment coverage value. <a href="http://doc.qt.io/qt-5/qt3drender-qalphacoverage.html">Qt3DRender::QAlphaCoverage</a> does nothing if multisampling is disabled. Alpha-to-coverage is most useful when order independent blending is required, for example when rendering leaves, grass and other rich vegetation.</p></div>
3416#[repr(C)]
3417pub struct QAlphaCoverage {
3418    _unused: u8,
3419}
3420impl QAlphaCoverage {
3421    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QAlphaCoverage::metaObject() const```</span>.
3422    #[inline(always)]
3423    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
3424        let ffi_result = {
3425            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaCoverage_metaObject(
3426                self as *const crate::QAlphaCoverage,
3427            )
3428        };
3429        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
3430    }
3431
3432    /// <p>Default constructs an instance of QAlphaCoverage.</p>
3433    ///
3434    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAlphaCoverage::QAlphaCoverage(Qt3DCore::QNode* parent = …)```</span>.
3435    ///
3436    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphacoverage.html#QAlphaCoverage">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QAlphaCoverage.</p></div>
3437    #[inline(always)]
3438    pub unsafe fn new_1a(
3439        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
3440    ) -> ::qt_core::QBox<crate::QAlphaCoverage> {
3441        let ffi_result = {
3442            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaCoverage_QAlphaCoverage(
3443                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
3444                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
3445            )
3446        };
3447        ::qt_core::QBox::from_raw(ffi_result)
3448    }
3449
3450    /// <p>Enable alpha-to-coverage multisampling mode</p>
3451    ///
3452    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAlphaCoverage::QAlphaCoverage()```</span>.
3453    ///
3454    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphacoverage.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enable alpha-to-coverage multisampling mode</p>
3455    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qalphacoverage.html">Qt3DRender::QAlphaCoverage</a> class enables alpha-to-coverage multisampling mode. When enabled, the fragment alpha value is used as a coverage for the sample and combined with fragment coverage value. <a href="http://doc.qt.io/qt-5/qt3drender-qalphacoverage.html">Qt3DRender::QAlphaCoverage</a> does nothing if multisampling is disabled. Alpha-to-coverage is most useful when order independent blending is required, for example when rendering leaves, grass and other rich vegetation.</p></div>
3456    #[inline(always)]
3457    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QAlphaCoverage> {
3458        let ffi_result =
3459            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaCoverage_QAlphaCoverage1() };
3460        ::qt_core::QBox::from_raw(ffi_result)
3461    }
3462
3463    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QAlphaCoverage::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
3464    #[inline(always)]
3465    pub unsafe fn qt_metacall(
3466        &self,
3467        arg1: ::qt_core::q_meta_object::Call,
3468        arg2: ::std::os::raw::c_int,
3469        arg3: *mut *mut ::std::ffi::c_void,
3470    ) -> ::std::os::raw::c_int {
3471        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaCoverage_qt_metacall(
3472            self as *const crate::QAlphaCoverage as *mut crate::QAlphaCoverage,
3473            arg1,
3474            arg2,
3475            arg3,
3476        )
3477    }
3478
3479    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QAlphaCoverage::qt_metacast(const char* arg1)```</span>.
3480    #[inline(always)]
3481    pub unsafe fn qt_metacast(
3482        &self,
3483        arg1: *const ::std::os::raw::c_char,
3484    ) -> *mut ::std::ffi::c_void {
3485        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaCoverage_qt_metacast(
3486            self as *const crate::QAlphaCoverage as *mut crate::QAlphaCoverage,
3487            arg1,
3488        )
3489    }
3490
3491    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
3492    #[inline(always)]
3493    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
3494        let ffi_result =
3495            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaCoverage_staticMetaObject() };
3496        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
3497            .expect("attempted to construct a null Ref")
3498    }
3499
3500    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAlphaCoverage::tr(const char* s, const char* c, int n)```</span>.
3501    #[inline(always)]
3502    pub unsafe fn tr(
3503        s: *const ::std::os::raw::c_char,
3504        c: *const ::std::os::raw::c_char,
3505        n: ::std::os::raw::c_int,
3506    ) -> ::cpp_core::CppBox<::qt_core::QString> {
3507        let ffi_result =
3508            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaCoverage_tr(s, c, n) };
3509        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3510    }
3511
3512    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAlphaCoverage::trUtf8(const char* s, const char* c, int n)```</span>.
3513    #[inline(always)]
3514    pub unsafe fn tr_utf8(
3515        s: *const ::std::os::raw::c_char,
3516        c: *const ::std::os::raw::c_char,
3517        n: ::std::os::raw::c_int,
3518    ) -> ::cpp_core::CppBox<::qt_core::QString> {
3519        let ffi_result =
3520            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaCoverage_trUtf8(s, c, n) };
3521        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3522    }
3523}
3524
3525pub mod q_alpha_test {
3526    //! C++ type: <span style='color: green;'>```Qt3DRender::QAlphaTest```</span>
3527
3528    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAlphaTest::AlphaFunction```</span>.
3529    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
3530    #[repr(transparent)]
3531    pub struct AlphaFunction(::std::os::raw::c_int);
3532
3533    impl From<::std::os::raw::c_int> for AlphaFunction {
3534        fn from(value: ::std::os::raw::c_int) -> Self {
3535            AlphaFunction(value)
3536        }
3537    }
3538
3539    impl From<AlphaFunction> for ::std::os::raw::c_int {
3540        fn from(value: AlphaFunction) -> Self {
3541            value.0
3542        }
3543    }
3544
3545    impl AlphaFunction {
3546        pub fn to_int(&self) -> ::std::os::raw::c_int {
3547            self.0
3548        }
3549    }
3550
3551    impl AlphaFunction {
3552        /// C++ enum variant: <span style='color: green;'>```Never = 512```</span>
3553        #[allow(non_upper_case_globals)]
3554        pub const Never: crate::q_alpha_test::AlphaFunction =
3555            crate::q_alpha_test::AlphaFunction(512);
3556        /// C++ enum variant: <span style='color: green;'>```Always = 519```</span>
3557        #[allow(non_upper_case_globals)]
3558        pub const Always: crate::q_alpha_test::AlphaFunction =
3559            crate::q_alpha_test::AlphaFunction(519);
3560        /// C++ enum variant: <span style='color: green;'>```Less = 513```</span>
3561        #[allow(non_upper_case_globals)]
3562        pub const Less: crate::q_alpha_test::AlphaFunction =
3563            crate::q_alpha_test::AlphaFunction(513);
3564        /// C++ enum variant: <span style='color: green;'>```LessOrEqual = 515```</span>
3565        #[allow(non_upper_case_globals)]
3566        pub const LessOrEqual: crate::q_alpha_test::AlphaFunction =
3567            crate::q_alpha_test::AlphaFunction(515);
3568        /// C++ enum variant: <span style='color: green;'>```Equal = 514```</span>
3569        #[allow(non_upper_case_globals)]
3570        pub const Equal: crate::q_alpha_test::AlphaFunction =
3571            crate::q_alpha_test::AlphaFunction(514);
3572        /// C++ enum variant: <span style='color: green;'>```GreaterOrEqual = 518```</span>
3573        #[allow(non_upper_case_globals)]
3574        pub const GreaterOrEqual: crate::q_alpha_test::AlphaFunction =
3575            crate::q_alpha_test::AlphaFunction(518);
3576        /// C++ enum variant: <span style='color: green;'>```Greater = 516```</span>
3577        #[allow(non_upper_case_globals)]
3578        pub const Greater: crate::q_alpha_test::AlphaFunction =
3579            crate::q_alpha_test::AlphaFunction(516);
3580        /// C++ enum variant: <span style='color: green;'>```NotEqual = 517```</span>
3581        #[allow(non_upper_case_globals)]
3582        pub const NotEqual: crate::q_alpha_test::AlphaFunction =
3583            crate::q_alpha_test::AlphaFunction(517);
3584    }
3585}
3586/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html">QAlphaTest</a> class specify alpha reference test</p>
3587///
3588/// C++ class: <span style='color: green;'>```Qt3DRender::QAlphaTest```</span>.
3589///
3590/// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html">QAlphaTest</a> class specify alpha reference test</p>
3591/// <p>As the OpenGL documentation explains; The alpha test discards a fragment conditional on the outcome of a comparison between the incoming fragment's alpha value and a constant reference value.</p></div>
3592#[repr(C)]
3593pub struct QAlphaTest {
3594    _unused: u8,
3595}
3596impl QAlphaTest {
3597    /// <p>Holds the alpha function used by the alpha test. Default is Never.</p>
3598    ///
3599    /// Returns a built-in Qt slot `Qt3DRender::QAlphaTest::setAlphaFunction` that can be passed to `qt_core::Signal::connect`.
3600    ///
3601    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html#alphaFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the alpha function used by the alpha test. Default is Never.</p>
3602    /// <p><b>Access functions:</b></p>
3603    /// <div class="table"><table class="alignedsummary">
3604    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AlphaFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaFunction</b></span>() const</td></tr>
3605    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAlphaFunction</b></span>(AlphaFunction <i>alphaFunction</i>)</td></tr>
3606    /// </tbody></table></div>
3607    /// <p><b>Notifier signal:</b></p>
3608    /// <div class="table"><table class="alignedsummary">
3609    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaFunctionChanged</b></span>(AlphaFunction <i>alphaFunction</i>)</td></tr>
3610    /// </tbody></table></div></div>
3611    #[inline(always)]
3612    pub fn slot_set_alpha_function(
3613        &self,
3614    ) -> ::qt_core::Receiver<(crate::q_alpha_test::AlphaFunction,)> {
3615        unsafe {
3616            ::qt_core::Receiver::new(
3617                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3618                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
3619                    b"1setAlphaFunction(Qt3DRender::QAlphaTest::AlphaFunction)\0",
3620                ),
3621            )
3622        }
3623    }
3624
3625    /// <p>Holds the reference value used by the alpha test. Default is 0.0. When set, the value is clamped between 0 and 1.</p>
3626    ///
3627    /// Returns a built-in Qt slot `Qt3DRender::QAlphaTest::setReferenceValue` that can be passed to `qt_core::Signal::connect`.
3628    ///
3629    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html#referenceValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the reference value used by the alpha test. Default is 0.0. When set, the value is clamped between 0 and 1.</p>
3630    /// <p><b>Access functions:</b></p>
3631    /// <div class="table"><table class="alignedsummary">
3632    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValue</b></span>() const</td></tr>
3633    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setReferenceValue</b></span>(float <i>referenceValue</i>)</td></tr>
3634    /// </tbody></table></div>
3635    /// <p><b>Notifier signal:</b></p>
3636    /// <div class="table"><table class="alignedsummary">
3637    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValueChanged</b></span>(float <i>referenceValue</i>)</td></tr>
3638    /// </tbody></table></div></div>
3639    #[inline(always)]
3640    pub fn slot_set_reference_value(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
3641        unsafe {
3642            ::qt_core::Receiver::new(
3643                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3644                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setReferenceValue(float)\0"),
3645            )
3646        }
3647    }
3648
3649    /// <p>Holds the alpha function used by the alpha test. Default is Never.</p>
3650    ///
3651    /// Returns a built-in Qt signal `Qt3DRender::QAlphaTest::alphaFunctionChanged` that can be passed to `qt_core::Signal::connect`.
3652    ///
3653    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html#alphaFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the alpha function used by the alpha test. Default is Never.</p>
3654    /// <p><b>Access functions:</b></p>
3655    /// <div class="table"><table class="alignedsummary">
3656    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AlphaFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaFunction</b></span>() const</td></tr>
3657    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAlphaFunction</b></span>(AlphaFunction <i>alphaFunction</i>)</td></tr>
3658    /// </tbody></table></div>
3659    /// <p><b>Notifier signal:</b></p>
3660    /// <div class="table"><table class="alignedsummary">
3661    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaFunctionChanged</b></span>(AlphaFunction <i>alphaFunction</i>)</td></tr>
3662    /// </tbody></table></div></div>
3663    #[inline(always)]
3664    pub fn alpha_function_changed(
3665        &self,
3666    ) -> ::qt_core::Signal<(crate::q_alpha_test::AlphaFunction,)> {
3667        unsafe {
3668            ::qt_core::Signal::new(
3669                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3670                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
3671                    b"2alphaFunctionChanged(Qt3DRender::QAlphaTest::AlphaFunction)\0",
3672                ),
3673            )
3674        }
3675    }
3676
3677    /// <p>Holds the reference value used by the alpha test. Default is 0.0. When set, the value is clamped between 0 and 1.</p>
3678    ///
3679    /// Returns a built-in Qt signal `Qt3DRender::QAlphaTest::referenceValueChanged` that can be passed to `qt_core::Signal::connect`.
3680    ///
3681    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html#referenceValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the reference value used by the alpha test. Default is 0.0. When set, the value is clamped between 0 and 1.</p>
3682    /// <p><b>Access functions:</b></p>
3683    /// <div class="table"><table class="alignedsummary">
3684    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValue</b></span>() const</td></tr>
3685    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setReferenceValue</b></span>(float <i>referenceValue</i>)</td></tr>
3686    /// </tbody></table></div>
3687    /// <p><b>Notifier signal:</b></p>
3688    /// <div class="table"><table class="alignedsummary">
3689    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValueChanged</b></span>(float <i>referenceValue</i>)</td></tr>
3690    /// </tbody></table></div></div>
3691    #[inline(always)]
3692    pub fn reference_value_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
3693        unsafe {
3694            ::qt_core::Signal::new(
3695                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
3696                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2referenceValueChanged(float)\0"),
3697            )
3698        }
3699    }
3700
3701    /// <p>Holds the alpha function used by the alpha test. Default is Never.</p>
3702    ///
3703    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaTest::AlphaFunction Qt3DRender::QAlphaTest::alphaFunction() const```</span>.
3704    ///
3705    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html#alphaFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the alpha function used by the alpha test. Default is Never.</p>
3706    /// <p><b>Access functions:</b></p>
3707    /// <div class="table"><table class="alignedsummary">
3708    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AlphaFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaFunction</b></span>() const</td></tr>
3709    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAlphaFunction</b></span>(AlphaFunction <i>alphaFunction</i>)</td></tr>
3710    /// </tbody></table></div>
3711    /// <p><b>Notifier signal:</b></p>
3712    /// <div class="table"><table class="alignedsummary">
3713    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaFunctionChanged</b></span>(AlphaFunction <i>alphaFunction</i>)</td></tr>
3714    /// </tbody></table></div></div>
3715    #[inline(always)]
3716    pub unsafe fn alpha_function(&self) -> crate::q_alpha_test::AlphaFunction {
3717        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_alphaFunction(
3718            self as *const crate::QAlphaTest,
3719        )
3720    }
3721
3722    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QAlphaTest::metaObject() const```</span>.
3723    #[inline(always)]
3724    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
3725        let ffi_result = {
3726            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_metaObject(
3727                self as *const crate::QAlphaTest,
3728            )
3729        };
3730        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
3731    }
3732
3733    /// <p>Default constructs an instance of QAlphaTest.</p>
3734    ///
3735    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAlphaTest::QAlphaTest(Qt3DCore::QNode* parent = …)```</span>.
3736    ///
3737    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html#QAlphaTest">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QAlphaTest.</p></div>
3738    #[inline(always)]
3739    pub unsafe fn new_1a(
3740        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
3741    ) -> ::qt_core::QBox<crate::QAlphaTest> {
3742        let ffi_result = {
3743            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_QAlphaTest(
3744                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
3745                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
3746            )
3747        };
3748        ::qt_core::QBox::from_raw(ffi_result)
3749    }
3750
3751    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html">QAlphaTest</a> class specify alpha reference test</p>
3752    ///
3753    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAlphaTest::QAlphaTest()```</span>.
3754    ///
3755    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html">QAlphaTest</a> class specify alpha reference test</p>
3756    /// <p>As the OpenGL documentation explains; The alpha test discards a fragment conditional on the outcome of a comparison between the incoming fragment's alpha value and a constant reference value.</p></div>
3757    #[inline(always)]
3758    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QAlphaTest> {
3759        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_QAlphaTest1() };
3760        ::qt_core::QBox::from_raw(ffi_result)
3761    }
3762
3763    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QAlphaTest::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
3764    #[inline(always)]
3765    pub unsafe fn qt_metacall(
3766        &self,
3767        arg1: ::qt_core::q_meta_object::Call,
3768        arg2: ::std::os::raw::c_int,
3769        arg3: *mut *mut ::std::ffi::c_void,
3770    ) -> ::std::os::raw::c_int {
3771        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_qt_metacall(
3772            self as *const crate::QAlphaTest as *mut crate::QAlphaTest,
3773            arg1,
3774            arg2,
3775            arg3,
3776        )
3777    }
3778
3779    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QAlphaTest::qt_metacast(const char* arg1)```</span>.
3780    #[inline(always)]
3781    pub unsafe fn qt_metacast(
3782        &self,
3783        arg1: *const ::std::os::raw::c_char,
3784    ) -> *mut ::std::ffi::c_void {
3785        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_qt_metacast(
3786            self as *const crate::QAlphaTest as *mut crate::QAlphaTest,
3787            arg1,
3788        )
3789    }
3790
3791    /// <p>Holds the reference value used by the alpha test. Default is 0.0. When set, the value is clamped between 0 and 1.</p>
3792    ///
3793    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QAlphaTest::referenceValue() const```</span>.
3794    ///
3795    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html#referenceValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the reference value used by the alpha test. Default is 0.0. When set, the value is clamped between 0 and 1.</p>
3796    /// <p><b>Access functions:</b></p>
3797    /// <div class="table"><table class="alignedsummary">
3798    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValue</b></span>() const</td></tr>
3799    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setReferenceValue</b></span>(float <i>referenceValue</i>)</td></tr>
3800    /// </tbody></table></div>
3801    /// <p><b>Notifier signal:</b></p>
3802    /// <div class="table"><table class="alignedsummary">
3803    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValueChanged</b></span>(float <i>referenceValue</i>)</td></tr>
3804    /// </tbody></table></div></div>
3805    #[inline(always)]
3806    pub unsafe fn reference_value(&self) -> ::std::os::raw::c_float {
3807        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_referenceValue(
3808            self as *const crate::QAlphaTest,
3809        )
3810    }
3811
3812    /// <p>Holds the alpha function used by the alpha test. Default is Never.</p>
3813    ///
3814    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAlphaTest::setAlphaFunction(Qt3DRender::QAlphaTest::AlphaFunction alphaFunction)```</span>.
3815    ///
3816    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html#alphaFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the alpha function used by the alpha test. Default is Never.</p>
3817    /// <p><b>Access functions:</b></p>
3818    /// <div class="table"><table class="alignedsummary">
3819    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AlphaFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaFunction</b></span>() const</td></tr>
3820    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAlphaFunction</b></span>(AlphaFunction <i>alphaFunction</i>)</td></tr>
3821    /// </tbody></table></div>
3822    /// <p><b>Notifier signal:</b></p>
3823    /// <div class="table"><table class="alignedsummary">
3824    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaFunctionChanged</b></span>(AlphaFunction <i>alphaFunction</i>)</td></tr>
3825    /// </tbody></table></div></div>
3826    #[inline(always)]
3827    pub unsafe fn set_alpha_function(&self, alpha_function: crate::q_alpha_test::AlphaFunction) {
3828        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_setAlphaFunction(
3829            self as *const crate::QAlphaTest as *mut crate::QAlphaTest,
3830            alpha_function,
3831        )
3832    }
3833
3834    /// <p>Holds the reference value used by the alpha test. Default is 0.0. When set, the value is clamped between 0 and 1.</p>
3835    ///
3836    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAlphaTest::setReferenceValue(float referenceValue)```</span>.
3837    ///
3838    /// <a href="http://doc.qt.io/qt-5/qt3drender-qalphatest.html#referenceValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the reference value used by the alpha test. Default is 0.0. When set, the value is clamped between 0 and 1.</p>
3839    /// <p><b>Access functions:</b></p>
3840    /// <div class="table"><table class="alignedsummary">
3841    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValue</b></span>() const</td></tr>
3842    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setReferenceValue</b></span>(float <i>referenceValue</i>)</td></tr>
3843    /// </tbody></table></div>
3844    /// <p><b>Notifier signal:</b></p>
3845    /// <div class="table"><table class="alignedsummary">
3846    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValueChanged</b></span>(float <i>referenceValue</i>)</td></tr>
3847    /// </tbody></table></div></div>
3848    #[inline(always)]
3849    pub unsafe fn set_reference_value(&self, reference_value: ::std::os::raw::c_float) {
3850        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_setReferenceValue(
3851            self as *const crate::QAlphaTest as *mut crate::QAlphaTest,
3852            reference_value,
3853        )
3854    }
3855
3856    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
3857    #[inline(always)]
3858    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
3859        let ffi_result =
3860            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_staticMetaObject() };
3861        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
3862            .expect("attempted to construct a null Ref")
3863    }
3864
3865    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAlphaTest::tr(const char* s, const char* c, int n)```</span>.
3866    #[inline(always)]
3867    pub unsafe fn tr(
3868        s: *const ::std::os::raw::c_char,
3869        c: *const ::std::os::raw::c_char,
3870        n: ::std::os::raw::c_int,
3871    ) -> ::cpp_core::CppBox<::qt_core::QString> {
3872        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_tr(s, c, n) };
3873        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3874    }
3875
3876    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAlphaTest::trUtf8(const char* s, const char* c, int n)```</span>.
3877    #[inline(always)]
3878    pub unsafe fn tr_utf8(
3879        s: *const ::std::os::raw::c_char,
3880        c: *const ::std::os::raw::c_char,
3881        n: ::std::os::raw::c_int,
3882    ) -> ::cpp_core::CppBox<::qt_core::QString> {
3883        let ffi_result =
3884            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_trUtf8(s, c, n) };
3885        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
3886    }
3887}
3888
3889pub mod q_attribute {
3890    //! C++ type: <span style='color: green;'>```Qt3DRender::QAttribute```</span>
3891
3892    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAttribute::AttributeType```</span>.
3893    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
3894    #[repr(transparent)]
3895    pub struct AttributeType(::std::os::raw::c_int);
3896
3897    impl From<::std::os::raw::c_int> for AttributeType {
3898        fn from(value: ::std::os::raw::c_int) -> Self {
3899            AttributeType(value)
3900        }
3901    }
3902
3903    impl From<AttributeType> for ::std::os::raw::c_int {
3904        fn from(value: AttributeType) -> Self {
3905            value.0
3906        }
3907    }
3908
3909    impl AttributeType {
3910        pub fn to_int(&self) -> ::std::os::raw::c_int {
3911            self.0
3912        }
3913    }
3914
3915    impl AttributeType {
3916        /// C++ enum variant: <span style='color: green;'>```VertexAttribute = 0```</span>
3917        #[allow(non_upper_case_globals)]
3918        pub const VertexAttribute: crate::q_attribute::AttributeType =
3919            crate::q_attribute::AttributeType(0);
3920        /// C++ enum variant: <span style='color: green;'>```IndexAttribute = 1```</span>
3921        #[allow(non_upper_case_globals)]
3922        pub const IndexAttribute: crate::q_attribute::AttributeType =
3923            crate::q_attribute::AttributeType(1);
3924        /// C++ enum variant: <span style='color: green;'>```DrawIndirectAttribute = 2```</span>
3925        #[allow(non_upper_case_globals)]
3926        pub const DrawIndirectAttribute: crate::q_attribute::AttributeType =
3927            crate::q_attribute::AttributeType(2);
3928    }
3929
3930    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAttribute::VertexBaseType```</span>.
3931    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
3932    #[repr(transparent)]
3933    pub struct VertexBaseType(::std::os::raw::c_int);
3934
3935    impl From<::std::os::raw::c_int> for VertexBaseType {
3936        fn from(value: ::std::os::raw::c_int) -> Self {
3937            VertexBaseType(value)
3938        }
3939    }
3940
3941    impl From<VertexBaseType> for ::std::os::raw::c_int {
3942        fn from(value: VertexBaseType) -> Self {
3943            value.0
3944        }
3945    }
3946
3947    impl VertexBaseType {
3948        pub fn to_int(&self) -> ::std::os::raw::c_int {
3949            self.0
3950        }
3951    }
3952
3953    impl VertexBaseType {
3954        /// C++ enum variant: <span style='color: green;'>```Byte = 0```</span>
3955        #[allow(non_upper_case_globals)]
3956        pub const Byte: crate::q_attribute::VertexBaseType = crate::q_attribute::VertexBaseType(0);
3957        /// C++ enum variant: <span style='color: green;'>```UnsignedByte = 1```</span>
3958        #[allow(non_upper_case_globals)]
3959        pub const UnsignedByte: crate::q_attribute::VertexBaseType =
3960            crate::q_attribute::VertexBaseType(1);
3961        /// C++ enum variant: <span style='color: green;'>```Short = 2```</span>
3962        #[allow(non_upper_case_globals)]
3963        pub const Short: crate::q_attribute::VertexBaseType = crate::q_attribute::VertexBaseType(2);
3964        /// C++ enum variant: <span style='color: green;'>```UnsignedShort = 3```</span>
3965        #[allow(non_upper_case_globals)]
3966        pub const UnsignedShort: crate::q_attribute::VertexBaseType =
3967            crate::q_attribute::VertexBaseType(3);
3968        /// C++ enum variant: <span style='color: green;'>```Int = 4```</span>
3969        #[allow(non_upper_case_globals)]
3970        pub const Int: crate::q_attribute::VertexBaseType = crate::q_attribute::VertexBaseType(4);
3971        /// C++ enum variant: <span style='color: green;'>```UnsignedInt = 5```</span>
3972        #[allow(non_upper_case_globals)]
3973        pub const UnsignedInt: crate::q_attribute::VertexBaseType =
3974            crate::q_attribute::VertexBaseType(5);
3975        /// C++ enum variant: <span style='color: green;'>```HalfFloat = 6```</span>
3976        #[allow(non_upper_case_globals)]
3977        pub const HalfFloat: crate::q_attribute::VertexBaseType =
3978            crate::q_attribute::VertexBaseType(6);
3979        /// C++ enum variant: <span style='color: green;'>```Float = 7```</span>
3980        #[allow(non_upper_case_globals)]
3981        pub const Float: crate::q_attribute::VertexBaseType = crate::q_attribute::VertexBaseType(7);
3982        /// C++ enum variant: <span style='color: green;'>```Double = 8```</span>
3983        #[allow(non_upper_case_globals)]
3984        pub const Double: crate::q_attribute::VertexBaseType =
3985            crate::q_attribute::VertexBaseType(8);
3986    }
3987}
3988/// <p>Defines an attribute and how data should be read from a <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">QBuffer</a>.</p>
3989///
3990/// C++ class: <span style='color: green;'>```Qt3DRender::QAttribute```</span>.
3991///
3992/// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines an attribute and how data should be read from a <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">QBuffer</a>.</p>
3993/// <p>There are 3 types of attributes.</p>
3994/// <ul>
3995/// <li><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#AttributeType-enum">VertexAttribute</a>: used to define data to be read on a per vertex basis</li>
3996/// <li><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#AttributeType-enum">IndexAttribute</a>: used to define vertex indices when indexed draw calls are to be used</li>
3997/// <li><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#AttributeType-enum">DrawIndirectAttribute</a>: used to specify the DrawIndirect buffer to be used when indirect draw calls are to be used</li>
3998/// </ul>
3999/// <p><b>Note: </b>when an attribute is of type <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#AttributeType-enum">DrawIndirectAttribute</a>, only count, stride and offset are relevant.</p><p>When providing your own attributes, it may make sense to name your attribute using helpers such as <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultPositionAttributeName">QAttribute::defaultPositionAttributeName</a>() as that will ensure your geometry will be compatible with picking and the various materials provided in the <a href="http://doc.qt.io/qt-5/qt3dextras-module.html">Qt3DExtras</a> module.</p></div>
4000#[repr(C)]
4001pub struct QAttribute {
4002    _unused: u8,
4003}
4004impl QAttribute {
4005    /// <p>Holds the buffer.</p>
4006    ///
4007    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setBuffer` that can be passed to `qt_core::Signal::connect`.
4008    ///
4009    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#buffer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer.</p>
4010    /// <p><b>Access functions:</b></p>
4011    /// <div class="table"><table class="alignedsummary">
4012    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QBuffer *</td><td class="memItemRight bottomAlign"><span class="name"><b>buffer</b></span>() const</td></tr>
4013    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBuffer</b></span>(QBuffer *<i>buffer</i>)</td></tr>
4014    /// </tbody></table></div>
4015    /// <p><b>Notifier signal:</b></p>
4016    /// <div class="table"><table class="alignedsummary">
4017    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferChanged</b></span>(QBuffer *<i>buffer</i>)</td></tr>
4018    /// </tbody></table></div></div>
4019    #[inline(always)]
4020    pub fn slot_set_buffer(&self) -> ::qt_core::Receiver<(*mut crate::QBuffer,)> {
4021        unsafe {
4022            ::qt_core::Receiver::new(
4023                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4024                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4025                    b"1setBuffer(Qt3DRender::QBuffer *)\0",
4026                ),
4027            )
4028        }
4029    }
4030
4031    /// <p>Holds the name.</p>
4032    ///
4033    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setName` that can be passed to `qt_core::Signal::connect`.
4034    ///
4035    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name.</p>
4036    /// <p><b>Access functions:</b></p>
4037    /// <div class="table"><table class="alignedsummary">
4038    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
4039    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>name</i>)</td></tr>
4040    /// </tbody></table></div>
4041    /// <p><b>Notifier signal:</b></p>
4042    /// <div class="table"><table class="alignedsummary">
4043    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
4044    /// </tbody></table></div></div>
4045    #[inline(always)]
4046    pub fn slot_set_name(&self) -> ::qt_core::Receiver<(*const ::qt_core::QString,)> {
4047        unsafe {
4048            ::qt_core::Receiver::new(
4049                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4050                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setName(QString const &)\0"),
4051            )
4052        }
4053    }
4054
4055    /// <p>Holds the data type.</p>
4056    ///
4057    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setVertexBaseType` that can be passed to `qt_core::Signal::connect`.
4058    ///
4059    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#vertexBaseType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the data type.</p>
4060    /// <p><b>Access functions:</b></p>
4061    /// <div class="table"><table class="alignedsummary">
4062    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> VertexBaseType </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexBaseType</b></span>() const</td></tr>
4063    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexBaseType</b></span>(VertexBaseType <i>type</i>)</td></tr>
4064    /// </tbody></table></div>
4065    /// <p><b>Notifier signal:</b></p>
4066    /// <div class="table"><table class="alignedsummary">
4067    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexBaseTypeChanged</b></span>(VertexBaseType <i>vertexBaseType</i>)</td></tr>
4068    /// </tbody></table></div></div>
4069    #[inline(always)]
4070    pub fn slot_set_vertex_base_type(
4071        &self,
4072    ) -> ::qt_core::Receiver<(crate::q_attribute::VertexBaseType,)> {
4073        unsafe {
4074            ::qt_core::Receiver::new(
4075                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4076                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4077                    b"1setVertexBaseType(Qt3DRender::QAttribute::VertexBaseType)\0",
4078                ),
4079            )
4080        }
4081    }
4082
4083    /// <p>Holds the data size, it can only be 1 to 4 units (scalars and vectors), 9 units (3x3 matrices) or 16 units (4x4 matrices).</p>
4084    ///
4085    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setVertexSize` that can be passed to `qt_core::Signal::connect`.
4086    ///
4087    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#vertexSize-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the data size, it can only be 1 to 4 units (scalars and vectors), 9 units (3x3 matrices) or 16 units (4x4 matrices).</p>
4088    /// <p><b>Access functions:</b></p>
4089    /// <div class="table"><table class="alignedsummary">
4090    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexSize</b></span>() const</td></tr>
4091    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexSize</b></span>(uint <i>size</i>)</td></tr>
4092    /// </tbody></table></div>
4093    /// <p><b>Notifier signal:</b></p>
4094    /// <div class="table"><table class="alignedsummary">
4095    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexSizeChanged</b></span>(uint <i>vertexSize</i>)</td></tr>
4096    /// </tbody></table></div></div>
4097    #[inline(always)]
4098    pub fn slot_set_vertex_size(&self) -> ::qt_core::Receiver<(::std::os::raw::c_uint,)> {
4099        unsafe {
4100            ::qt_core::Receiver::new(
4101                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4102                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setVertexSize(unsigned int)\0"),
4103            )
4104        }
4105    }
4106
4107    /// <p>This function is deprecated.</p>
4108    ///
4109    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setDataType` that can be passed to `qt_core::Signal::connect`.
4110    ///
4111    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#setDataType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is deprecated.</p></div>
4112    #[inline(always)]
4113    pub fn slot_set_data_type(&self) -> ::qt_core::Receiver<(crate::q_attribute::VertexBaseType,)> {
4114        unsafe {
4115            ::qt_core::Receiver::new(
4116                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4117                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4118                    b"1setDataType(Qt3DRender::QAttribute::VertexBaseType)\0",
4119                ),
4120            )
4121        }
4122    }
4123
4124    /// <p>This function is deprecated.</p>
4125    ///
4126    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setDataSize` that can be passed to `qt_core::Signal::connect`.
4127    ///
4128    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#setDataSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is deprecated.</p></div>
4129    #[inline(always)]
4130    pub fn slot_set_data_size(&self) -> ::qt_core::Receiver<(::std::os::raw::c_uint,)> {
4131        unsafe {
4132            ::qt_core::Receiver::new(
4133                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4134                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setDataSize(unsigned int)\0"),
4135            )
4136        }
4137    }
4138
4139    /// <p>Holds the count.</p>
4140    ///
4141    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setCount` that can be passed to `qt_core::Signal::connect`.
4142    ///
4143    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#count-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the count.</p>
4144    /// <p><b>Access functions:</b></p>
4145    /// <div class="table"><table class="alignedsummary">
4146    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>count</b></span>() const</td></tr>
4147    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCount</b></span>(uint <i>count</i>)</td></tr>
4148    /// </tbody></table></div>
4149    /// <p><b>Notifier signal:</b></p>
4150    /// <div class="table"><table class="alignedsummary">
4151    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>countChanged</b></span>(uint <i>count</i>)</td></tr>
4152    /// </tbody></table></div></div>
4153    #[inline(always)]
4154    pub fn slot_set_count(&self) -> ::qt_core::Receiver<(::std::os::raw::c_uint,)> {
4155        unsafe {
4156            ::qt_core::Receiver::new(
4157                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4158                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setCount(unsigned int)\0"),
4159            )
4160        }
4161    }
4162
4163    /// <p>Holds the byte stride.</p>
4164    ///
4165    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setByteStride` that can be passed to `qt_core::Signal::connect`.
4166    ///
4167    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#byteStride-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte stride.</p>
4168    /// <p><b>Access functions:</b></p>
4169    /// <div class="table"><table class="alignedsummary">
4170    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>byteStride</b></span>() const</td></tr>
4171    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setByteStride</b></span>(uint <i>byteStride</i>)</td></tr>
4172    /// </tbody></table></div>
4173    /// <p><b>Notifier signal:</b></p>
4174    /// <div class="table"><table class="alignedsummary">
4175    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>byteStrideChanged</b></span>(uint <i>byteStride</i>)</td></tr>
4176    /// </tbody></table></div></div>
4177    #[inline(always)]
4178    pub fn slot_set_byte_stride(&self) -> ::qt_core::Receiver<(::std::os::raw::c_uint,)> {
4179        unsafe {
4180            ::qt_core::Receiver::new(
4181                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4182                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setByteStride(unsigned int)\0"),
4183            )
4184        }
4185    }
4186
4187    /// <p>Holds the byte offset.</p>
4188    ///
4189    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setByteOffset` that can be passed to `qt_core::Signal::connect`.
4190    ///
4191    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#byteOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte offset.</p>
4192    /// <p><b>Access functions:</b></p>
4193    /// <div class="table"><table class="alignedsummary">
4194    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>byteOffset</b></span>() const</td></tr>
4195    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setByteOffset</b></span>(uint <i>byteOffset</i>)</td></tr>
4196    /// </tbody></table></div>
4197    /// <p><b>Notifier signal:</b></p>
4198    /// <div class="table"><table class="alignedsummary">
4199    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>byteOffsetChanged</b></span>(uint <i>byteOffset</i>)</td></tr>
4200    /// </tbody></table></div></div>
4201    #[inline(always)]
4202    pub fn slot_set_byte_offset(&self) -> ::qt_core::Receiver<(::std::os::raw::c_uint,)> {
4203        unsafe {
4204            ::qt_core::Receiver::new(
4205                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4206                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setByteOffset(unsigned int)\0"),
4207            )
4208        }
4209    }
4210
4211    /// <p>Holds the divisor.</p>
4212    ///
4213    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setDivisor` that can be passed to `qt_core::Signal::connect`.
4214    ///
4215    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#divisor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the divisor.</p>
4216    /// <p><b>Access functions:</b></p>
4217    /// <div class="table"><table class="alignedsummary">
4218    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>divisor</b></span>() const</td></tr>
4219    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDivisor</b></span>(uint <i>divisor</i>)</td></tr>
4220    /// </tbody></table></div>
4221    /// <p><b>Notifier signal:</b></p>
4222    /// <div class="table"><table class="alignedsummary">
4223    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>divisorChanged</b></span>(uint <i>divisor</i>)</td></tr>
4224    /// </tbody></table></div></div>
4225    #[inline(always)]
4226    pub fn slot_set_divisor(&self) -> ::qt_core::Receiver<(::std::os::raw::c_uint,)> {
4227        unsafe {
4228            ::qt_core::Receiver::new(
4229                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4230                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setDivisor(unsigned int)\0"),
4231            )
4232        }
4233    }
4234
4235    /// <p>Holds the attribute type.</p>
4236    ///
4237    /// Returns a built-in Qt slot `Qt3DRender::QAttribute::setAttributeType` that can be passed to `qt_core::Signal::connect`.
4238    ///
4239    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#attributeType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attribute type.</p>
4240    /// <p><b>Access functions:</b></p>
4241    /// <div class="table"><table class="alignedsummary">
4242    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AttributeType </td><td class="memItemRight bottomAlign"><span class="name"><b>attributeType</b></span>() const</td></tr>
4243    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAttributeType</b></span>(AttributeType <i>attributeType</i>)</td></tr>
4244    /// </tbody></table></div>
4245    /// <p><b>Notifier signal:</b></p>
4246    /// <div class="table"><table class="alignedsummary">
4247    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>attributeTypeChanged</b></span>(AttributeType <i>attributeType</i>)</td></tr>
4248    /// </tbody></table></div></div>
4249    #[inline(always)]
4250    pub fn slot_set_attribute_type(
4251        &self,
4252    ) -> ::qt_core::Receiver<(crate::q_attribute::AttributeType,)> {
4253        unsafe {
4254            ::qt_core::Receiver::new(
4255                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4256                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4257                    b"1setAttributeType(Qt3DRender::QAttribute::AttributeType)\0",
4258                ),
4259            )
4260        }
4261    }
4262
4263    /// <p>Holds the buffer.</p>
4264    ///
4265    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::bufferChanged` that can be passed to `qt_core::Signal::connect`.
4266    ///
4267    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#buffer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer.</p>
4268    /// <p><b>Access functions:</b></p>
4269    /// <div class="table"><table class="alignedsummary">
4270    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QBuffer *</td><td class="memItemRight bottomAlign"><span class="name"><b>buffer</b></span>() const</td></tr>
4271    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBuffer</b></span>(QBuffer *<i>buffer</i>)</td></tr>
4272    /// </tbody></table></div>
4273    /// <p><b>Notifier signal:</b></p>
4274    /// <div class="table"><table class="alignedsummary">
4275    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferChanged</b></span>(QBuffer *<i>buffer</i>)</td></tr>
4276    /// </tbody></table></div></div>
4277    #[inline(always)]
4278    pub fn buffer_changed(&self) -> ::qt_core::Signal<(*mut crate::QBuffer,)> {
4279        unsafe {
4280            ::qt_core::Signal::new(
4281                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4282                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4283                    b"2bufferChanged(Qt3DRender::QBuffer *)\0",
4284                ),
4285            )
4286        }
4287    }
4288
4289    /// <p>Holds the name.</p>
4290    ///
4291    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::nameChanged` that can be passed to `qt_core::Signal::connect`.
4292    ///
4293    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name.</p>
4294    /// <p><b>Access functions:</b></p>
4295    /// <div class="table"><table class="alignedsummary">
4296    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
4297    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>name</i>)</td></tr>
4298    /// </tbody></table></div>
4299    /// <p><b>Notifier signal:</b></p>
4300    /// <div class="table"><table class="alignedsummary">
4301    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
4302    /// </tbody></table></div></div>
4303    #[inline(always)]
4304    pub fn name_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QString,)> {
4305        unsafe {
4306            ::qt_core::Signal::new(
4307                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4308                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2nameChanged(QString const &)\0"),
4309            )
4310        }
4311    }
4312
4313    /// <p>Holds the data type.</p>
4314    ///
4315    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::vertexBaseTypeChanged` that can be passed to `qt_core::Signal::connect`.
4316    ///
4317    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#vertexBaseType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the data type.</p>
4318    /// <p><b>Access functions:</b></p>
4319    /// <div class="table"><table class="alignedsummary">
4320    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> VertexBaseType </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexBaseType</b></span>() const</td></tr>
4321    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexBaseType</b></span>(VertexBaseType <i>type</i>)</td></tr>
4322    /// </tbody></table></div>
4323    /// <p><b>Notifier signal:</b></p>
4324    /// <div class="table"><table class="alignedsummary">
4325    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexBaseTypeChanged</b></span>(VertexBaseType <i>vertexBaseType</i>)</td></tr>
4326    /// </tbody></table></div></div>
4327    #[inline(always)]
4328    pub fn vertex_base_type_changed(
4329        &self,
4330    ) -> ::qt_core::Signal<(crate::q_attribute::VertexBaseType,)> {
4331        unsafe {
4332            ::qt_core::Signal::new(
4333                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4334                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4335                    b"2vertexBaseTypeChanged(Qt3DRender::QAttribute::VertexBaseType)\0",
4336                ),
4337            )
4338        }
4339    }
4340
4341    /// <p>Holds the data size, it can only be 1 to 4 units (scalars and vectors), 9 units (3x3 matrices) or 16 units (4x4 matrices).</p>
4342    ///
4343    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::vertexSizeChanged` that can be passed to `qt_core::Signal::connect`.
4344    ///
4345    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#vertexSize-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the data size, it can only be 1 to 4 units (scalars and vectors), 9 units (3x3 matrices) or 16 units (4x4 matrices).</p>
4346    /// <p><b>Access functions:</b></p>
4347    /// <div class="table"><table class="alignedsummary">
4348    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexSize</b></span>() const</td></tr>
4349    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexSize</b></span>(uint <i>size</i>)</td></tr>
4350    /// </tbody></table></div>
4351    /// <p><b>Notifier signal:</b></p>
4352    /// <div class="table"><table class="alignedsummary">
4353    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexSizeChanged</b></span>(uint <i>vertexSize</i>)</td></tr>
4354    /// </tbody></table></div></div>
4355    #[inline(always)]
4356    pub fn vertex_size_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
4357        unsafe {
4358            ::qt_core::Signal::new(
4359                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4360                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4361                    b"2vertexSizeChanged(unsigned int)\0",
4362                ),
4363            )
4364        }
4365    }
4366
4367    /// <p>The signal is emitted with <i>vertexBaseType</i> when the dataType changed.</p>
4368    ///
4369    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::dataTypeChanged` that can be passed to `qt_core::Signal::connect`.
4370    ///
4371    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#dataTypeChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The signal is emitted with <i>vertexBaseType</i> when the dataType changed.</p></div>
4372    #[inline(always)]
4373    pub fn data_type_changed(&self) -> ::qt_core::Signal<(crate::q_attribute::VertexBaseType,)> {
4374        unsafe {
4375            ::qt_core::Signal::new(
4376                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4377                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4378                    b"2dataTypeChanged(Qt3DRender::QAttribute::VertexBaseType)\0",
4379                ),
4380            )
4381        }
4382    }
4383
4384    /// <p>The signal is emitted with <i>vertexSize</i> when the dataSize changes.</p>
4385    ///
4386    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::dataSizeChanged` that can be passed to `qt_core::Signal::connect`.
4387    ///
4388    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#dataSizeChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The signal is emitted with <i>vertexSize</i> when the dataSize changes.</p></div>
4389    #[inline(always)]
4390    pub fn data_size_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
4391        unsafe {
4392            ::qt_core::Signal::new(
4393                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4394                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4395                    b"2dataSizeChanged(unsigned int)\0",
4396                ),
4397            )
4398        }
4399    }
4400
4401    /// <p>Holds the count.</p>
4402    ///
4403    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::countChanged` that can be passed to `qt_core::Signal::connect`.
4404    ///
4405    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#count-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the count.</p>
4406    /// <p><b>Access functions:</b></p>
4407    /// <div class="table"><table class="alignedsummary">
4408    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>count</b></span>() const</td></tr>
4409    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCount</b></span>(uint <i>count</i>)</td></tr>
4410    /// </tbody></table></div>
4411    /// <p><b>Notifier signal:</b></p>
4412    /// <div class="table"><table class="alignedsummary">
4413    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>countChanged</b></span>(uint <i>count</i>)</td></tr>
4414    /// </tbody></table></div></div>
4415    #[inline(always)]
4416    pub fn count_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
4417        unsafe {
4418            ::qt_core::Signal::new(
4419                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4420                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2countChanged(unsigned int)\0"),
4421            )
4422        }
4423    }
4424
4425    /// <p>Holds the byte stride.</p>
4426    ///
4427    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::byteStrideChanged` that can be passed to `qt_core::Signal::connect`.
4428    ///
4429    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#byteStride-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte stride.</p>
4430    /// <p><b>Access functions:</b></p>
4431    /// <div class="table"><table class="alignedsummary">
4432    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>byteStride</b></span>() const</td></tr>
4433    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setByteStride</b></span>(uint <i>byteStride</i>)</td></tr>
4434    /// </tbody></table></div>
4435    /// <p><b>Notifier signal:</b></p>
4436    /// <div class="table"><table class="alignedsummary">
4437    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>byteStrideChanged</b></span>(uint <i>byteStride</i>)</td></tr>
4438    /// </tbody></table></div></div>
4439    #[inline(always)]
4440    pub fn byte_stride_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
4441        unsafe {
4442            ::qt_core::Signal::new(
4443                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4444                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4445                    b"2byteStrideChanged(unsigned int)\0",
4446                ),
4447            )
4448        }
4449    }
4450
4451    /// <p>Holds the byte offset.</p>
4452    ///
4453    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::byteOffsetChanged` that can be passed to `qt_core::Signal::connect`.
4454    ///
4455    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#byteOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte offset.</p>
4456    /// <p><b>Access functions:</b></p>
4457    /// <div class="table"><table class="alignedsummary">
4458    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>byteOffset</b></span>() const</td></tr>
4459    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setByteOffset</b></span>(uint <i>byteOffset</i>)</td></tr>
4460    /// </tbody></table></div>
4461    /// <p><b>Notifier signal:</b></p>
4462    /// <div class="table"><table class="alignedsummary">
4463    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>byteOffsetChanged</b></span>(uint <i>byteOffset</i>)</td></tr>
4464    /// </tbody></table></div></div>
4465    #[inline(always)]
4466    pub fn byte_offset_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
4467        unsafe {
4468            ::qt_core::Signal::new(
4469                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4470                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4471                    b"2byteOffsetChanged(unsigned int)\0",
4472                ),
4473            )
4474        }
4475    }
4476
4477    /// <p>Holds the divisor.</p>
4478    ///
4479    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::divisorChanged` that can be passed to `qt_core::Signal::connect`.
4480    ///
4481    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#divisor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the divisor.</p>
4482    /// <p><b>Access functions:</b></p>
4483    /// <div class="table"><table class="alignedsummary">
4484    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>divisor</b></span>() const</td></tr>
4485    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDivisor</b></span>(uint <i>divisor</i>)</td></tr>
4486    /// </tbody></table></div>
4487    /// <p><b>Notifier signal:</b></p>
4488    /// <div class="table"><table class="alignedsummary">
4489    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>divisorChanged</b></span>(uint <i>divisor</i>)</td></tr>
4490    /// </tbody></table></div></div>
4491    #[inline(always)]
4492    pub fn divisor_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
4493        unsafe {
4494            ::qt_core::Signal::new(
4495                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4496                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2divisorChanged(unsigned int)\0"),
4497            )
4498        }
4499    }
4500
4501    /// <p>Holds the attribute type.</p>
4502    ///
4503    /// Returns a built-in Qt signal `Qt3DRender::QAttribute::attributeTypeChanged` that can be passed to `qt_core::Signal::connect`.
4504    ///
4505    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#attributeType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attribute type.</p>
4506    /// <p><b>Access functions:</b></p>
4507    /// <div class="table"><table class="alignedsummary">
4508    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AttributeType </td><td class="memItemRight bottomAlign"><span class="name"><b>attributeType</b></span>() const</td></tr>
4509    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAttributeType</b></span>(AttributeType <i>attributeType</i>)</td></tr>
4510    /// </tbody></table></div>
4511    /// <p><b>Notifier signal:</b></p>
4512    /// <div class="table"><table class="alignedsummary">
4513    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>attributeTypeChanged</b></span>(AttributeType <i>attributeType</i>)</td></tr>
4514    /// </tbody></table></div></div>
4515    #[inline(always)]
4516    pub fn attribute_type_changed(
4517        &self,
4518    ) -> ::qt_core::Signal<(crate::q_attribute::AttributeType,)> {
4519        unsafe {
4520            ::qt_core::Signal::new(
4521                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
4522                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
4523                    b"2attributeTypeChanged(Qt3DRender::QAttribute::AttributeType)\0",
4524                ),
4525            )
4526        }
4527    }
4528
4529    /// <p>Holds the attribute type.</p>
4530    ///
4531    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute::AttributeType Qt3DRender::QAttribute::attributeType() const```</span>.
4532    ///
4533    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#attributeType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attribute type.</p>
4534    /// <p><b>Access functions:</b></p>
4535    /// <div class="table"><table class="alignedsummary">
4536    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AttributeType </td><td class="memItemRight bottomAlign"><span class="name"><b>attributeType</b></span>() const</td></tr>
4537    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAttributeType</b></span>(AttributeType <i>attributeType</i>)</td></tr>
4538    /// </tbody></table></div>
4539    /// <p><b>Notifier signal:</b></p>
4540    /// <div class="table"><table class="alignedsummary">
4541    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>attributeTypeChanged</b></span>(AttributeType <i>attributeType</i>)</td></tr>
4542    /// </tbody></table></div></div>
4543    #[inline(always)]
4544    pub unsafe fn attribute_type(&self) -> crate::q_attribute::AttributeType {
4545        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_attributeType(
4546            self as *const crate::QAttribute,
4547        )
4548    }
4549
4550    /// <p>Holds the buffer.</p>
4551    ///
4552    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBuffer* Qt3DRender::QAttribute::buffer() const```</span>.
4553    ///
4554    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#buffer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer.</p>
4555    /// <p><b>Access functions:</b></p>
4556    /// <div class="table"><table class="alignedsummary">
4557    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QBuffer *</td><td class="memItemRight bottomAlign"><span class="name"><b>buffer</b></span>() const</td></tr>
4558    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBuffer</b></span>(QBuffer *<i>buffer</i>)</td></tr>
4559    /// </tbody></table></div>
4560    /// <p><b>Notifier signal:</b></p>
4561    /// <div class="table"><table class="alignedsummary">
4562    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferChanged</b></span>(QBuffer *<i>buffer</i>)</td></tr>
4563    /// </tbody></table></div></div>
4564    #[inline(always)]
4565    pub unsafe fn buffer(&self) -> ::qt_core::QPtr<crate::QBuffer> {
4566        let ffi_result = {
4567            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_buffer(
4568                self as *const crate::QAttribute,
4569            )
4570        };
4571        ::qt_core::QPtr::from_raw(ffi_result)
4572    }
4573
4574    /// <p>Holds the byte offset.</p>
4575    ///
4576    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QAttribute::byteOffset() const```</span>.
4577    ///
4578    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#byteOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte offset.</p>
4579    /// <p><b>Access functions:</b></p>
4580    /// <div class="table"><table class="alignedsummary">
4581    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>byteOffset</b></span>() const</td></tr>
4582    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setByteOffset</b></span>(uint <i>byteOffset</i>)</td></tr>
4583    /// </tbody></table></div>
4584    /// <p><b>Notifier signal:</b></p>
4585    /// <div class="table"><table class="alignedsummary">
4586    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>byteOffsetChanged</b></span>(uint <i>byteOffset</i>)</td></tr>
4587    /// </tbody></table></div></div>
4588    #[inline(always)]
4589    pub unsafe fn byte_offset(&self) -> ::std::os::raw::c_uint {
4590        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_byteOffset(
4591            self as *const crate::QAttribute,
4592        )
4593    }
4594
4595    /// <p>Holds the byte stride.</p>
4596    ///
4597    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QAttribute::byteStride() const```</span>.
4598    ///
4599    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#byteStride-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte stride.</p>
4600    /// <p><b>Access functions:</b></p>
4601    /// <div class="table"><table class="alignedsummary">
4602    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>byteStride</b></span>() const</td></tr>
4603    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setByteStride</b></span>(uint <i>byteStride</i>)</td></tr>
4604    /// </tbody></table></div>
4605    /// <p><b>Notifier signal:</b></p>
4606    /// <div class="table"><table class="alignedsummary">
4607    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>byteStrideChanged</b></span>(uint <i>byteStride</i>)</td></tr>
4608    /// </tbody></table></div></div>
4609    #[inline(always)]
4610    pub unsafe fn byte_stride(&self) -> ::std::os::raw::c_uint {
4611        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_byteStride(
4612            self as *const crate::QAttribute,
4613        )
4614    }
4615
4616    /// <p>Holds the count.</p>
4617    ///
4618    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QAttribute::count() const```</span>.
4619    ///
4620    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#count-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the count.</p>
4621    /// <p><b>Access functions:</b></p>
4622    /// <div class="table"><table class="alignedsummary">
4623    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>count</b></span>() const</td></tr>
4624    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCount</b></span>(uint <i>count</i>)</td></tr>
4625    /// </tbody></table></div>
4626    /// <p><b>Notifier signal:</b></p>
4627    /// <div class="table"><table class="alignedsummary">
4628    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>countChanged</b></span>(uint <i>count</i>)</td></tr>
4629    /// </tbody></table></div></div>
4630    #[inline(always)]
4631    pub unsafe fn count(&self) -> ::std::os::raw::c_uint {
4632        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_count(
4633            self as *const crate::QAttribute,
4634        )
4635    }
4636
4637    /// <p><b>Access functions:</b></p>
4638    ///
4639    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::defaultColorAttributeName()```</span>.
4640    ///
4641    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultColorAttributeName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
4642    /// <div class="table"><table class="alignedsummary">
4643    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultColorAttributeName">defaultColorAttributeName</a></b></span>()</td></tr>
4644    /// </tbody></table></div></div>
4645    #[inline(always)]
4646    pub unsafe fn default_color_attribute_name() -> ::cpp_core::CppBox<::qt_core::QString> {
4647        let ffi_result = {
4648            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_defaultColorAttributeName()
4649        };
4650        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4651    }
4652
4653    /// <p><b>Access functions:</b></p>
4654    ///
4655    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::defaultJointIndicesAttributeName()```</span>.
4656    ///
4657    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultJointIndicesAttributeName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
4658    /// <div class="table"><table class="alignedsummary">
4659    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultJointIndicesAttributeName">defaultJointIndicesAttributeName</a></b></span>()</td></tr>
4660    /// </tbody></table></div></div>
4661    #[inline(always)]
4662    #[cfg_attr(
4663        feature = "ritual_rustdoc_nightly",
4664        doc(cfg(any(
4665            cpp_lib_version = "5.11.3",
4666            cpp_lib_version = "5.12.2",
4667            cpp_lib_version = "5.13.0",
4668            cpp_lib_version = "5.14.0"
4669        )))
4670    )]
4671    #[cfg(any(
4672        any(
4673            cpp_lib_version = "5.11.3",
4674            cpp_lib_version = "5.12.2",
4675            cpp_lib_version = "5.13.0",
4676            cpp_lib_version = "5.14.0"
4677        ),
4678        feature = "ritual_rustdoc"
4679    ))]
4680    pub unsafe fn default_joint_indices_attribute_name() -> ::cpp_core::CppBox<::qt_core::QString> {
4681        let ffi_result = {
4682            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_defaultJointIndicesAttributeName()
4683        };
4684        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4685    }
4686
4687    /// <p><b>Access functions:</b></p>
4688    ///
4689    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::defaultJointWeightsAttributeName()```</span>.
4690    ///
4691    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultJointWeightsAttributeName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
4692    /// <div class="table"><table class="alignedsummary">
4693    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultJointWeightsAttributeName">defaultJointWeightsAttributeName</a></b></span>()</td></tr>
4694    /// </tbody></table></div></div>
4695    #[inline(always)]
4696    #[cfg_attr(
4697        feature = "ritual_rustdoc_nightly",
4698        doc(cfg(any(
4699            cpp_lib_version = "5.11.3",
4700            cpp_lib_version = "5.12.2",
4701            cpp_lib_version = "5.13.0",
4702            cpp_lib_version = "5.14.0"
4703        )))
4704    )]
4705    #[cfg(any(
4706        any(
4707            cpp_lib_version = "5.11.3",
4708            cpp_lib_version = "5.12.2",
4709            cpp_lib_version = "5.13.0",
4710            cpp_lib_version = "5.14.0"
4711        ),
4712        feature = "ritual_rustdoc"
4713    ))]
4714    pub unsafe fn default_joint_weights_attribute_name() -> ::cpp_core::CppBox<::qt_core::QString> {
4715        let ffi_result = {
4716            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_defaultJointWeightsAttributeName()
4717        };
4718        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4719    }
4720
4721    /// <p><b>Access functions:</b></p>
4722    ///
4723    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::defaultNormalAttributeName()```</span>.
4724    ///
4725    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultNormalAttributeName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
4726    /// <div class="table"><table class="alignedsummary">
4727    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultNormalAttributeName">defaultNormalAttributeName</a></b></span>()</td></tr>
4728    /// </tbody></table></div></div>
4729    #[inline(always)]
4730    pub unsafe fn default_normal_attribute_name() -> ::cpp_core::CppBox<::qt_core::QString> {
4731        let ffi_result = {
4732            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_defaultNormalAttributeName()
4733        };
4734        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4735    }
4736
4737    /// <p><b>Access functions:</b></p>
4738    ///
4739    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::defaultPositionAttributeName()```</span>.
4740    ///
4741    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultPositionAttributeName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
4742    /// <div class="table"><table class="alignedsummary">
4743    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultPositionAttributeName">defaultPositionAttributeName</a></b></span>()</td></tr>
4744    /// </tbody></table></div></div>
4745    #[inline(always)]
4746    pub unsafe fn default_position_attribute_name() -> ::cpp_core::CppBox<::qt_core::QString> {
4747        let ffi_result = {
4748            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_defaultPositionAttributeName()
4749        };
4750        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4751    }
4752
4753    /// <p><b>Access functions:</b></p>
4754    ///
4755    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::defaultTangentAttributeName()```</span>.
4756    ///
4757    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultTangentAttributeName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
4758    /// <div class="table"><table class="alignedsummary">
4759    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultTangentAttributeName">defaultTangentAttributeName</a></b></span>()</td></tr>
4760    /// </tbody></table></div></div>
4761    #[inline(always)]
4762    pub unsafe fn default_tangent_attribute_name() -> ::cpp_core::CppBox<::qt_core::QString> {
4763        let ffi_result = {
4764            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_defaultTangentAttributeName()
4765        };
4766        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4767    }
4768
4769    /// <p><b>Access functions:</b></p>
4770    ///
4771    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::defaultTextureCoordinate1AttributeName()```</span>.
4772    ///
4773    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultTextureCoordinate1AttributeName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
4774    /// <div class="table"><table class="alignedsummary">
4775    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultTextureCoordinate1AttributeName">defaultTextureCoordinate1AttributeName</a></b></span>()</td></tr>
4776    /// </tbody></table></div></div>
4777    #[inline(always)]
4778    #[cfg_attr(
4779        feature = "ritual_rustdoc_nightly",
4780        doc(cfg(any(
4781            cpp_lib_version = "5.11.3",
4782            cpp_lib_version = "5.12.2",
4783            cpp_lib_version = "5.13.0",
4784            cpp_lib_version = "5.14.0"
4785        )))
4786    )]
4787    #[cfg(any(
4788        any(
4789            cpp_lib_version = "5.11.3",
4790            cpp_lib_version = "5.12.2",
4791            cpp_lib_version = "5.13.0",
4792            cpp_lib_version = "5.14.0"
4793        ),
4794        feature = "ritual_rustdoc"
4795    ))]
4796    pub unsafe fn default_texture_coordinate1_attribute_name(
4797    ) -> ::cpp_core::CppBox<::qt_core::QString> {
4798        let ffi_result = {
4799            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_defaultTextureCoordinate1AttributeName()
4800        };
4801        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4802    }
4803
4804    /// <p><b>Access functions:</b></p>
4805    ///
4806    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::defaultTextureCoordinate2AttributeName()```</span>.
4807    ///
4808    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultTextureCoordinate2AttributeName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
4809    /// <div class="table"><table class="alignedsummary">
4810    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultTextureCoordinate2AttributeName">defaultTextureCoordinate2AttributeName</a></b></span>()</td></tr>
4811    /// </tbody></table></div></div>
4812    #[inline(always)]
4813    #[cfg_attr(
4814        feature = "ritual_rustdoc_nightly",
4815        doc(cfg(any(
4816            cpp_lib_version = "5.11.3",
4817            cpp_lib_version = "5.12.2",
4818            cpp_lib_version = "5.13.0",
4819            cpp_lib_version = "5.14.0"
4820        )))
4821    )]
4822    #[cfg(any(
4823        any(
4824            cpp_lib_version = "5.11.3",
4825            cpp_lib_version = "5.12.2",
4826            cpp_lib_version = "5.13.0",
4827            cpp_lib_version = "5.14.0"
4828        ),
4829        feature = "ritual_rustdoc"
4830    ))]
4831    pub unsafe fn default_texture_coordinate2_attribute_name(
4832    ) -> ::cpp_core::CppBox<::qt_core::QString> {
4833        let ffi_result = {
4834            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_defaultTextureCoordinate2AttributeName()
4835        };
4836        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4837    }
4838
4839    /// <p><b>Access functions:</b></p>
4840    ///
4841    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::defaultTextureCoordinateAttributeName()```</span>.
4842    ///
4843    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultTextureCoordinateAttributeName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
4844    /// <div class="table"><table class="alignedsummary">
4845    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultTextureCoordinateAttributeName">defaultTextureCoordinateAttributeName</a></b></span>()</td></tr>
4846    /// </tbody></table></div></div>
4847    #[inline(always)]
4848    pub unsafe fn default_texture_coordinate_attribute_name(
4849    ) -> ::cpp_core::CppBox<::qt_core::QString> {
4850        let ffi_result = {
4851            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_defaultTextureCoordinateAttributeName()
4852        };
4853        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4854    }
4855
4856    /// <p>Holds the divisor.</p>
4857    ///
4858    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QAttribute::divisor() const```</span>.
4859    ///
4860    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#divisor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the divisor.</p>
4861    /// <p><b>Access functions:</b></p>
4862    /// <div class="table"><table class="alignedsummary">
4863    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>divisor</b></span>() const</td></tr>
4864    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDivisor</b></span>(uint <i>divisor</i>)</td></tr>
4865    /// </tbody></table></div>
4866    /// <p><b>Notifier signal:</b></p>
4867    /// <div class="table"><table class="alignedsummary">
4868    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>divisorChanged</b></span>(uint <i>divisor</i>)</td></tr>
4869    /// </tbody></table></div></div>
4870    #[inline(always)]
4871    pub unsafe fn divisor(&self) -> ::std::os::raw::c_uint {
4872        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_divisor(
4873            self as *const crate::QAttribute,
4874        )
4875    }
4876
4877    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QAttribute::metaObject() const```</span>.
4878    #[inline(always)]
4879    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
4880        let ffi_result = {
4881            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_metaObject(
4882                self as *const crate::QAttribute,
4883            )
4884        };
4885        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
4886    }
4887
4888    /// <p>Holds the name.</p>
4889    ///
4890    /// Calls C++ function: <span style='color: green;'>```QString Qt3DRender::QAttribute::name() const```</span>.
4891    ///
4892    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name.</p>
4893    /// <p><b>Access functions:</b></p>
4894    /// <div class="table"><table class="alignedsummary">
4895    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
4896    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>name</i>)</td></tr>
4897    /// </tbody></table></div>
4898    /// <p><b>Notifier signal:</b></p>
4899    /// <div class="table"><table class="alignedsummary">
4900    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
4901    /// </tbody></table></div></div>
4902    #[inline(always)]
4903    pub unsafe fn name(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
4904        let ffi_result = {
4905            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_name(
4906                self as *const crate::QAttribute,
4907            )
4908        };
4909        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
4910    }
4911
4912    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> with <i>parent</i>.</p>
4913    ///
4914    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute(Qt3DCore::QNode* parent = …)```</span>.
4915    ///
4916    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#QAttribute">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> with <i>parent</i>.</p></div>
4917    #[inline(always)]
4918    pub unsafe fn from_q_node(
4919        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
4920    ) -> ::qt_core::QBox<crate::QAttribute> {
4921        let ffi_result = {
4922            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute(
4923                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
4924                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
4925            )
4926        };
4927        ::qt_core::QBox::from_raw(ffi_result)
4928    }
4929
4930    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p>
4931    ///
4932    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute(Qt3DRender::QBuffer* buf, Qt3DRender::QAttribute::VertexBaseType vertexBaseType, unsigned int vertexSize, unsigned int count, unsigned int offset = …, unsigned int stride = …, Qt3DCore::QNode* parent = …)```</span>.
4933    ///
4934    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#QAttribute-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p></div>
4935    #[inline(always)]
4936    pub unsafe fn from_q_buffer_vertex_base_type4_uint_q_node(
4937        buf: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>,
4938        vertex_base_type: crate::q_attribute::VertexBaseType,
4939        vertex_size: ::std::os::raw::c_uint,
4940        count: ::std::os::raw::c_uint,
4941        offset: ::std::os::raw::c_uint,
4942        stride: ::std::os::raw::c_uint,
4943        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
4944    ) -> ::qt_core::QBox<crate::QAttribute> {
4945        let ffi_result = {
4946            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute1(
4947                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(buf).as_raw_ptr()
4948                    as *mut crate::QBuffer,
4949                vertex_base_type,
4950                vertex_size,
4951                count,
4952                offset,
4953                stride,
4954                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
4955                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
4956            )
4957        };
4958        ::qt_core::QBox::from_raw(ffi_result)
4959    }
4960
4961    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> named <i>name</i> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p>
4962    ///
4963    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute(Qt3DRender::QBuffer* buf, const QString& name, Qt3DRender::QAttribute::VertexBaseType vertexBaseType, unsigned int vertexSize, unsigned int count, unsigned int offset = …, unsigned int stride = …, Qt3DCore::QNode* parent = …)```</span>.
4964    ///
4965    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#QAttribute-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> named <i>name</i> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p></div>
4966    #[inline(always)]
4967    pub unsafe fn from_q_buffer_q_string_vertex_base_type4_uint_q_node(
4968        buf: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>,
4969        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
4970        vertex_base_type: crate::q_attribute::VertexBaseType,
4971        vertex_size: ::std::os::raw::c_uint,
4972        count: ::std::os::raw::c_uint,
4973        offset: ::std::os::raw::c_uint,
4974        stride: ::std::os::raw::c_uint,
4975        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
4976    ) -> ::qt_core::QBox<crate::QAttribute> {
4977        let ffi_result = {
4978            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute2(
4979                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(buf).as_raw_ptr()
4980                    as *mut crate::QBuffer,
4981                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
4982                    .as_raw_ptr(),
4983                vertex_base_type,
4984                vertex_size,
4985                count,
4986                offset,
4987                stride,
4988                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
4989                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
4990            )
4991        };
4992        ::qt_core::QBox::from_raw(ffi_result)
4993    }
4994
4995    /// <p>Defines an attribute and how data should be read from a <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">QBuffer</a>.</p>
4996    ///
4997    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute()```</span>.
4998    ///
4999    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines an attribute and how data should be read from a <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">QBuffer</a>.</p>
5000    /// <p>There are 3 types of attributes.</p>
5001    /// <ul>
5002    /// <li><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#AttributeType-enum">VertexAttribute</a>: used to define data to be read on a per vertex basis</li>
5003    /// <li><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#AttributeType-enum">IndexAttribute</a>: used to define vertex indices when indexed draw calls are to be used</li>
5004    /// <li><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#AttributeType-enum">DrawIndirectAttribute</a>: used to specify the DrawIndirect buffer to be used when indirect draw calls are to be used</li>
5005    /// </ul>
5006    /// <p><b>Note: </b>when an attribute is of type <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#AttributeType-enum">DrawIndirectAttribute</a>, only count, stride and offset are relevant.</p><p>When providing your own attributes, it may make sense to name your attribute using helpers such as <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultPositionAttributeName">QAttribute::defaultPositionAttributeName</a>() as that will ensure your geometry will be compatible with picking and the various materials provided in the <a href="http://doc.qt.io/qt-5/qt3dextras-module.html">Qt3DExtras</a> module.</p></div>
5007    #[inline(always)]
5008    pub unsafe fn new() -> ::qt_core::QBox<crate::QAttribute> {
5009        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute3() };
5010        ::qt_core::QBox::from_raw(ffi_result)
5011    }
5012
5013    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p>
5014    ///
5015    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute(Qt3DRender::QBuffer* buf, Qt3DRender::QAttribute::VertexBaseType vertexBaseType, unsigned int vertexSize, unsigned int count, unsigned int offset = …, unsigned int stride = …)```</span>.
5016    ///
5017    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#QAttribute-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p></div>
5018    #[inline(always)]
5019    pub unsafe fn from_q_buffer_vertex_base_type4_uint(
5020        buf: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>,
5021        vertex_base_type: crate::q_attribute::VertexBaseType,
5022        vertex_size: ::std::os::raw::c_uint,
5023        count: ::std::os::raw::c_uint,
5024        offset: ::std::os::raw::c_uint,
5025        stride: ::std::os::raw::c_uint,
5026    ) -> ::qt_core::QBox<crate::QAttribute> {
5027        let ffi_result = {
5028            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute5(
5029                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(buf).as_raw_ptr()
5030                    as *mut crate::QBuffer,
5031                vertex_base_type,
5032                vertex_size,
5033                count,
5034                offset,
5035                stride,
5036            )
5037        };
5038        ::qt_core::QBox::from_raw(ffi_result)
5039    }
5040
5041    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p>
5042    ///
5043    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute(Qt3DRender::QBuffer* buf, Qt3DRender::QAttribute::VertexBaseType vertexBaseType, unsigned int vertexSize, unsigned int count, unsigned int offset = …)```</span>.
5044    ///
5045    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#QAttribute-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p></div>
5046    #[inline(always)]
5047    pub unsafe fn from_q_buffer_vertex_base_type3_uint(
5048        buf: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>,
5049        vertex_base_type: crate::q_attribute::VertexBaseType,
5050        vertex_size: ::std::os::raw::c_uint,
5051        count: ::std::os::raw::c_uint,
5052        offset: ::std::os::raw::c_uint,
5053    ) -> ::qt_core::QBox<crate::QAttribute> {
5054        let ffi_result = {
5055            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute6(
5056                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(buf).as_raw_ptr()
5057                    as *mut crate::QBuffer,
5058                vertex_base_type,
5059                vertex_size,
5060                count,
5061                offset,
5062            )
5063        };
5064        ::qt_core::QBox::from_raw(ffi_result)
5065    }
5066
5067    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p>
5068    ///
5069    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute(Qt3DRender::QBuffer* buf, Qt3DRender::QAttribute::VertexBaseType vertexBaseType, unsigned int vertexSize, unsigned int count)```</span>.
5070    ///
5071    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#QAttribute-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p></div>
5072    #[inline(always)]
5073    pub unsafe fn from_q_buffer_vertex_base_type2_uint(
5074        buf: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>,
5075        vertex_base_type: crate::q_attribute::VertexBaseType,
5076        vertex_size: ::std::os::raw::c_uint,
5077        count: ::std::os::raw::c_uint,
5078    ) -> ::qt_core::QBox<crate::QAttribute> {
5079        let ffi_result = {
5080            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute7(
5081                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(buf).as_raw_ptr()
5082                    as *mut crate::QBuffer,
5083                vertex_base_type,
5084                vertex_size,
5085                count,
5086            )
5087        };
5088        ::qt_core::QBox::from_raw(ffi_result)
5089    }
5090
5091    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> named <i>name</i> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p>
5092    ///
5093    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute(Qt3DRender::QBuffer* buf, const QString& name, Qt3DRender::QAttribute::VertexBaseType vertexBaseType, unsigned int vertexSize, unsigned int count, unsigned int offset = …, unsigned int stride = …)```</span>.
5094    ///
5095    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#QAttribute-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> named <i>name</i> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p></div>
5096    #[inline(always)]
5097    pub unsafe fn from_q_buffer_q_string_vertex_base_type4_uint(
5098        buf: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>,
5099        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
5100        vertex_base_type: crate::q_attribute::VertexBaseType,
5101        vertex_size: ::std::os::raw::c_uint,
5102        count: ::std::os::raw::c_uint,
5103        offset: ::std::os::raw::c_uint,
5104        stride: ::std::os::raw::c_uint,
5105    ) -> ::qt_core::QBox<crate::QAttribute> {
5106        let ffi_result = {
5107            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute8(
5108                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(buf).as_raw_ptr()
5109                    as *mut crate::QBuffer,
5110                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
5111                    .as_raw_ptr(),
5112                vertex_base_type,
5113                vertex_size,
5114                count,
5115                offset,
5116                stride,
5117            )
5118        };
5119        ::qt_core::QBox::from_raw(ffi_result)
5120    }
5121
5122    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> named <i>name</i> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p>
5123    ///
5124    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute(Qt3DRender::QBuffer* buf, const QString& name, Qt3DRender::QAttribute::VertexBaseType vertexBaseType, unsigned int vertexSize, unsigned int count, unsigned int offset = …)```</span>.
5125    ///
5126    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#QAttribute-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> named <i>name</i> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p></div>
5127    #[inline(always)]
5128    pub unsafe fn from_q_buffer_q_string_vertex_base_type3_uint(
5129        buf: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>,
5130        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
5131        vertex_base_type: crate::q_attribute::VertexBaseType,
5132        vertex_size: ::std::os::raw::c_uint,
5133        count: ::std::os::raw::c_uint,
5134        offset: ::std::os::raw::c_uint,
5135    ) -> ::qt_core::QBox<crate::QAttribute> {
5136        let ffi_result = {
5137            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute9(
5138                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(buf).as_raw_ptr()
5139                    as *mut crate::QBuffer,
5140                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
5141                    .as_raw_ptr(),
5142                vertex_base_type,
5143                vertex_size,
5144                count,
5145                offset,
5146            )
5147        };
5148        ::qt_core::QBox::from_raw(ffi_result)
5149    }
5150
5151    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> named <i>name</i> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p>
5152    ///
5153    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAttribute::QAttribute(Qt3DRender::QBuffer* buf, const QString& name, Qt3DRender::QAttribute::VertexBaseType vertexBaseType, unsigned int vertexSize, unsigned int count)```</span>.
5154    ///
5155    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#QAttribute-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">QAttribute</a> named <i>name</i> from <i>buf</i> of <i>type</i>, <i>dataSize</i>, <i>count</i>, <i>offset</i>, and <i>stride</i> with <i>parent</i>.</p></div>
5156    #[inline(always)]
5157    pub unsafe fn from_q_buffer_q_string_vertex_base_type2_uint(
5158        buf: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>,
5159        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
5160        vertex_base_type: crate::q_attribute::VertexBaseType,
5161        vertex_size: ::std::os::raw::c_uint,
5162        count: ::std::os::raw::c_uint,
5163    ) -> ::qt_core::QBox<crate::QAttribute> {
5164        let ffi_result = {
5165            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_QAttribute10(
5166                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(buf).as_raw_ptr()
5167                    as *mut crate::QBuffer,
5168                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
5169                    .as_raw_ptr(),
5170                vertex_base_type,
5171                vertex_size,
5172                count,
5173            )
5174        };
5175        ::qt_core::QBox::from_raw(ffi_result)
5176    }
5177
5178    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QAttribute::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
5179    #[inline(always)]
5180    pub unsafe fn qt_metacall(
5181        &self,
5182        arg1: ::qt_core::q_meta_object::Call,
5183        arg2: ::std::os::raw::c_int,
5184        arg3: *mut *mut ::std::ffi::c_void,
5185    ) -> ::std::os::raw::c_int {
5186        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_qt_metacall(
5187            self as *const crate::QAttribute as *mut crate::QAttribute,
5188            arg1,
5189            arg2,
5190            arg3,
5191        )
5192    }
5193
5194    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QAttribute::qt_metacast(const char* arg1)```</span>.
5195    #[inline(always)]
5196    pub unsafe fn qt_metacast(
5197        &self,
5198        arg1: *const ::std::os::raw::c_char,
5199    ) -> *mut ::std::ffi::c_void {
5200        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_qt_metacast(
5201            self as *const crate::QAttribute as *mut crate::QAttribute,
5202            arg1,
5203        )
5204    }
5205
5206    /// <p>Holds the attribute type.</p>
5207    ///
5208    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setAttributeType(Qt3DRender::QAttribute::AttributeType attributeType)```</span>.
5209    ///
5210    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#attributeType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attribute type.</p>
5211    /// <p><b>Access functions:</b></p>
5212    /// <div class="table"><table class="alignedsummary">
5213    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AttributeType </td><td class="memItemRight bottomAlign"><span class="name"><b>attributeType</b></span>() const</td></tr>
5214    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAttributeType</b></span>(AttributeType <i>attributeType</i>)</td></tr>
5215    /// </tbody></table></div>
5216    /// <p><b>Notifier signal:</b></p>
5217    /// <div class="table"><table class="alignedsummary">
5218    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>attributeTypeChanged</b></span>(AttributeType <i>attributeType</i>)</td></tr>
5219    /// </tbody></table></div></div>
5220    #[inline(always)]
5221    pub unsafe fn set_attribute_type(&self, attribute_type: crate::q_attribute::AttributeType) {
5222        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setAttributeType(
5223            self as *const crate::QAttribute as *mut crate::QAttribute,
5224            attribute_type,
5225        )
5226    }
5227
5228    /// <p>Holds the buffer.</p>
5229    ///
5230    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setBuffer(Qt3DRender::QBuffer* buffer)```</span>.
5231    ///
5232    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#buffer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer.</p>
5233    /// <p><b>Access functions:</b></p>
5234    /// <div class="table"><table class="alignedsummary">
5235    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QBuffer *</td><td class="memItemRight bottomAlign"><span class="name"><b>buffer</b></span>() const</td></tr>
5236    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBuffer</b></span>(QBuffer *<i>buffer</i>)</td></tr>
5237    /// </tbody></table></div>
5238    /// <p><b>Notifier signal:</b></p>
5239    /// <div class="table"><table class="alignedsummary">
5240    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferChanged</b></span>(QBuffer *<i>buffer</i>)</td></tr>
5241    /// </tbody></table></div></div>
5242    #[inline(always)]
5243    pub unsafe fn set_buffer(
5244        &self,
5245        buffer: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>,
5246    ) {
5247        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setBuffer(
5248            self as *const crate::QAttribute as *mut crate::QAttribute,
5249            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(buffer).as_raw_ptr()
5250                as *mut crate::QBuffer,
5251        )
5252    }
5253
5254    /// <p>Holds the byte offset.</p>
5255    ///
5256    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setByteOffset(unsigned int byteOffset)```</span>.
5257    ///
5258    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#byteOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte offset.</p>
5259    /// <p><b>Access functions:</b></p>
5260    /// <div class="table"><table class="alignedsummary">
5261    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>byteOffset</b></span>() const</td></tr>
5262    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setByteOffset</b></span>(uint <i>byteOffset</i>)</td></tr>
5263    /// </tbody></table></div>
5264    /// <p><b>Notifier signal:</b></p>
5265    /// <div class="table"><table class="alignedsummary">
5266    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>byteOffsetChanged</b></span>(uint <i>byteOffset</i>)</td></tr>
5267    /// </tbody></table></div></div>
5268    #[inline(always)]
5269    pub unsafe fn set_byte_offset(&self, byte_offset: ::std::os::raw::c_uint) {
5270        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setByteOffset(
5271            self as *const crate::QAttribute as *mut crate::QAttribute,
5272            byte_offset,
5273        )
5274    }
5275
5276    /// <p>Holds the byte stride.</p>
5277    ///
5278    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setByteStride(unsigned int byteStride)```</span>.
5279    ///
5280    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#byteStride-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte stride.</p>
5281    /// <p><b>Access functions:</b></p>
5282    /// <div class="table"><table class="alignedsummary">
5283    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>byteStride</b></span>() const</td></tr>
5284    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setByteStride</b></span>(uint <i>byteStride</i>)</td></tr>
5285    /// </tbody></table></div>
5286    /// <p><b>Notifier signal:</b></p>
5287    /// <div class="table"><table class="alignedsummary">
5288    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>byteStrideChanged</b></span>(uint <i>byteStride</i>)</td></tr>
5289    /// </tbody></table></div></div>
5290    #[inline(always)]
5291    pub unsafe fn set_byte_stride(&self, byte_stride: ::std::os::raw::c_uint) {
5292        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setByteStride(
5293            self as *const crate::QAttribute as *mut crate::QAttribute,
5294            byte_stride,
5295        )
5296    }
5297
5298    /// <p>Holds the count.</p>
5299    ///
5300    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setCount(unsigned int count)```</span>.
5301    ///
5302    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#count-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the count.</p>
5303    /// <p><b>Access functions:</b></p>
5304    /// <div class="table"><table class="alignedsummary">
5305    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>count</b></span>() const</td></tr>
5306    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCount</b></span>(uint <i>count</i>)</td></tr>
5307    /// </tbody></table></div>
5308    /// <p><b>Notifier signal:</b></p>
5309    /// <div class="table"><table class="alignedsummary">
5310    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>countChanged</b></span>(uint <i>count</i>)</td></tr>
5311    /// </tbody></table></div></div>
5312    #[inline(always)]
5313    pub unsafe fn set_count(&self, count: ::std::os::raw::c_uint) {
5314        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setCount(
5315            self as *const crate::QAttribute as *mut crate::QAttribute,
5316            count,
5317        )
5318    }
5319
5320    /// <p>This function is deprecated.</p>
5321    ///
5322    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setDataSize(unsigned int size)```</span>.
5323    ///
5324    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#setDataSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is deprecated.</p></div>
5325    #[inline(always)]
5326    pub unsafe fn set_data_size(&self, size: ::std::os::raw::c_uint) {
5327        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setDataSize(
5328            self as *const crate::QAttribute as *mut crate::QAttribute,
5329            size,
5330        )
5331    }
5332
5333    /// <p>This function is deprecated.</p>
5334    ///
5335    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setDataType(Qt3DRender::QAttribute::VertexBaseType type)```</span>.
5336    ///
5337    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#setDataType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is deprecated.</p></div>
5338    #[inline(always)]
5339    pub unsafe fn set_data_type(&self, type_: crate::q_attribute::VertexBaseType) {
5340        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setDataType(
5341            self as *const crate::QAttribute as *mut crate::QAttribute,
5342            type_,
5343        )
5344    }
5345
5346    /// <p>Holds the divisor.</p>
5347    ///
5348    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setDivisor(unsigned int divisor)```</span>.
5349    ///
5350    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#divisor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the divisor.</p>
5351    /// <p><b>Access functions:</b></p>
5352    /// <div class="table"><table class="alignedsummary">
5353    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>divisor</b></span>() const</td></tr>
5354    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDivisor</b></span>(uint <i>divisor</i>)</td></tr>
5355    /// </tbody></table></div>
5356    /// <p><b>Notifier signal:</b></p>
5357    /// <div class="table"><table class="alignedsummary">
5358    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>divisorChanged</b></span>(uint <i>divisor</i>)</td></tr>
5359    /// </tbody></table></div></div>
5360    #[inline(always)]
5361    pub unsafe fn set_divisor(&self, divisor: ::std::os::raw::c_uint) {
5362        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setDivisor(
5363            self as *const crate::QAttribute as *mut crate::QAttribute,
5364            divisor,
5365        )
5366    }
5367
5368    /// <p>Holds the name.</p>
5369    ///
5370    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setName(const QString& name)```</span>.
5371    ///
5372    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name.</p>
5373    /// <p><b>Access functions:</b></p>
5374    /// <div class="table"><table class="alignedsummary">
5375    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
5376    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>name</i>)</td></tr>
5377    /// </tbody></table></div>
5378    /// <p><b>Notifier signal:</b></p>
5379    /// <div class="table"><table class="alignedsummary">
5380    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
5381    /// </tbody></table></div></div>
5382    #[inline(always)]
5383    pub unsafe fn set_name(
5384        &self,
5385        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
5386    ) {
5387        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setName(
5388            self as *const crate::QAttribute as *mut crate::QAttribute,
5389            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
5390                .as_raw_ptr(),
5391        )
5392    }
5393
5394    /// <p>Holds the data type.</p>
5395    ///
5396    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setVertexBaseType(Qt3DRender::QAttribute::VertexBaseType type)```</span>.
5397    ///
5398    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#vertexBaseType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the data type.</p>
5399    /// <p><b>Access functions:</b></p>
5400    /// <div class="table"><table class="alignedsummary">
5401    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> VertexBaseType </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexBaseType</b></span>() const</td></tr>
5402    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexBaseType</b></span>(VertexBaseType <i>type</i>)</td></tr>
5403    /// </tbody></table></div>
5404    /// <p><b>Notifier signal:</b></p>
5405    /// <div class="table"><table class="alignedsummary">
5406    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexBaseTypeChanged</b></span>(VertexBaseType <i>vertexBaseType</i>)</td></tr>
5407    /// </tbody></table></div></div>
5408    #[inline(always)]
5409    pub unsafe fn set_vertex_base_type(&self, type_: crate::q_attribute::VertexBaseType) {
5410        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setVertexBaseType(
5411            self as *const crate::QAttribute as *mut crate::QAttribute,
5412            type_,
5413        )
5414    }
5415
5416    /// <p>Holds the data size, it can only be 1 to 4 units (scalars and vectors), 9 units (3x3 matrices) or 16 units (4x4 matrices).</p>
5417    ///
5418    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAttribute::setVertexSize(unsigned int size)```</span>.
5419    ///
5420    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#vertexSize-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the data size, it can only be 1 to 4 units (scalars and vectors), 9 units (3x3 matrices) or 16 units (4x4 matrices).</p>
5421    /// <p><b>Access functions:</b></p>
5422    /// <div class="table"><table class="alignedsummary">
5423    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexSize</b></span>() const</td></tr>
5424    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexSize</b></span>(uint <i>size</i>)</td></tr>
5425    /// </tbody></table></div>
5426    /// <p><b>Notifier signal:</b></p>
5427    /// <div class="table"><table class="alignedsummary">
5428    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexSizeChanged</b></span>(uint <i>vertexSize</i>)</td></tr>
5429    /// </tbody></table></div></div>
5430    #[inline(always)]
5431    pub unsafe fn set_vertex_size(&self, size: ::std::os::raw::c_uint) {
5432        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_setVertexSize(
5433            self as *const crate::QAttribute as *mut crate::QAttribute,
5434            size,
5435        )
5436    }
5437
5438    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
5439    #[inline(always)]
5440    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
5441        let ffi_result =
5442            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_staticMetaObject() };
5443        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
5444            .expect("attempted to construct a null Ref")
5445    }
5446
5447    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::tr(const char* s, const char* c, int n)```</span>.
5448    #[inline(always)]
5449    pub unsafe fn tr(
5450        s: *const ::std::os::raw::c_char,
5451        c: *const ::std::os::raw::c_char,
5452        n: ::std::os::raw::c_int,
5453    ) -> ::cpp_core::CppBox<::qt_core::QString> {
5454        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_tr(s, c, n) };
5455        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5456    }
5457
5458    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAttribute::trUtf8(const char* s, const char* c, int n)```</span>.
5459    #[inline(always)]
5460    pub unsafe fn tr_utf8(
5461        s: *const ::std::os::raw::c_char,
5462        c: *const ::std::os::raw::c_char,
5463        n: ::std::os::raw::c_int,
5464    ) -> ::cpp_core::CppBox<::qt_core::QString> {
5465        let ffi_result =
5466            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_trUtf8(s, c, n) };
5467        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5468    }
5469
5470    /// <p>Holds the data type.</p>
5471    ///
5472    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute::VertexBaseType Qt3DRender::QAttribute::vertexBaseType() const```</span>.
5473    ///
5474    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#vertexBaseType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the data type.</p>
5475    /// <p><b>Access functions:</b></p>
5476    /// <div class="table"><table class="alignedsummary">
5477    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> VertexBaseType </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexBaseType</b></span>() const</td></tr>
5478    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexBaseType</b></span>(VertexBaseType <i>type</i>)</td></tr>
5479    /// </tbody></table></div>
5480    /// <p><b>Notifier signal:</b></p>
5481    /// <div class="table"><table class="alignedsummary">
5482    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexBaseTypeChanged</b></span>(VertexBaseType <i>vertexBaseType</i>)</td></tr>
5483    /// </tbody></table></div></div>
5484    #[inline(always)]
5485    pub unsafe fn vertex_base_type(&self) -> crate::q_attribute::VertexBaseType {
5486        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_vertexBaseType(
5487            self as *const crate::QAttribute,
5488        )
5489    }
5490
5491    /// <p>Holds the data size, it can only be 1 to 4 units (scalars and vectors), 9 units (3x3 matrices) or 16 units (4x4 matrices).</p>
5492    ///
5493    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QAttribute::vertexSize() const```</span>.
5494    ///
5495    /// <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#vertexSize-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the data size, it can only be 1 to 4 units (scalars and vectors), 9 units (3x3 matrices) or 16 units (4x4 matrices).</p>
5496    /// <p><b>Access functions:</b></p>
5497    /// <div class="table"><table class="alignedsummary">
5498    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexSize</b></span>() const</td></tr>
5499    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexSize</b></span>(uint <i>size</i>)</td></tr>
5500    /// </tbody></table></div>
5501    /// <p><b>Notifier signal:</b></p>
5502    /// <div class="table"><table class="alignedsummary">
5503    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexSizeChanged</b></span>(uint <i>vertexSize</i>)</td></tr>
5504    /// </tbody></table></div></div>
5505    #[inline(always)]
5506    pub unsafe fn vertex_size(&self) -> ::std::os::raw::c_uint {
5507        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_vertexSize(
5508            self as *const crate::QAttribute,
5509        )
5510    }
5511}
5512
5513pub mod q_blend_equation {
5514    //! C++ type: <span style='color: green;'>```Qt3DRender::QBlendEquation```</span>
5515
5516    /// C++ enum: <span style='color: green;'>```Qt3DRender::QBlendEquation::BlendFunction```</span>.
5517    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
5518    #[repr(transparent)]
5519    pub struct BlendFunction(::std::os::raw::c_int);
5520
5521    impl From<::std::os::raw::c_int> for BlendFunction {
5522        fn from(value: ::std::os::raw::c_int) -> Self {
5523            BlendFunction(value)
5524        }
5525    }
5526
5527    impl From<BlendFunction> for ::std::os::raw::c_int {
5528        fn from(value: BlendFunction) -> Self {
5529            value.0
5530        }
5531    }
5532
5533    impl BlendFunction {
5534        pub fn to_int(&self) -> ::std::os::raw::c_int {
5535            self.0
5536        }
5537    }
5538
5539    impl BlendFunction {
5540        /// C++ enum variant: <span style='color: green;'>```Add = 32774```</span>
5541        #[allow(non_upper_case_globals)]
5542        pub const Add: crate::q_blend_equation::BlendFunction =
5543            crate::q_blend_equation::BlendFunction(32774);
5544        /// C++ enum variant: <span style='color: green;'>```Subtract = 32778```</span>
5545        #[allow(non_upper_case_globals)]
5546        pub const Subtract: crate::q_blend_equation::BlendFunction =
5547            crate::q_blend_equation::BlendFunction(32778);
5548        /// C++ enum variant: <span style='color: green;'>```ReverseSubtract = 32779```</span>
5549        #[allow(non_upper_case_globals)]
5550        pub const ReverseSubtract: crate::q_blend_equation::BlendFunction =
5551            crate::q_blend_equation::BlendFunction(32779);
5552        /// C++ enum variant: <span style='color: green;'>```Min = 32775```</span>
5553        #[allow(non_upper_case_globals)]
5554        pub const Min: crate::q_blend_equation::BlendFunction =
5555            crate::q_blend_equation::BlendFunction(32775);
5556        /// C++ enum variant: <span style='color: green;'>```Max = 32776```</span>
5557        #[allow(non_upper_case_globals)]
5558        pub const Max: crate::q_blend_equation::BlendFunction =
5559            crate::q_blend_equation::BlendFunction(32776);
5560    }
5561}
5562/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html">QBlendEquation</a> class specifies the equation used for both the RGB blend equation and the Alpha blend equation</p>
5563///
5564/// C++ class: <span style='color: green;'>```Qt3DRender::QBlendEquation```</span>.
5565///
5566/// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html">QBlendEquation</a> class specifies the equation used for both the RGB blend equation and the Alpha blend equation</p>
5567/// <p>The blend equation is used to determine how a new pixel is combined with a pixel already in the framebuffer.</p></div>
5568#[repr(C)]
5569pub struct QBlendEquation {
5570    _unused: u8,
5571}
5572impl QBlendEquation {
5573    /// <p>Holds the blend function, which determines how source and destination colors are combined.</p>
5574    ///
5575    /// Returns a built-in Qt slot `Qt3DRender::QBlendEquation::setBlendFunction` that can be passed to `qt_core::Signal::connect`.
5576    ///
5577    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html#blendFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the blend function, which determines how source and destination colors are combined.</p>
5578    /// <p><b>Access functions:</b></p>
5579    /// <div class="table"><table class="alignedsummary">
5580    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BlendFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>blendFunction</b></span>() const</td></tr>
5581    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBlendFunction</b></span>(BlendFunction <i>blendFunction</i>)</td></tr>
5582    /// </tbody></table></div>
5583    /// <p><b>Notifier signal:</b></p>
5584    /// <div class="table"><table class="alignedsummary">
5585    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>blendFunctionChanged</b></span>(BlendFunction <i>blendFunction</i>)</td></tr>
5586    /// </tbody></table></div></div>
5587    #[inline(always)]
5588    pub fn slot_set_blend_function(
5589        &self,
5590    ) -> ::qt_core::Receiver<(crate::q_blend_equation::BlendFunction,)> {
5591        unsafe {
5592            ::qt_core::Receiver::new(
5593                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
5594                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
5595                    b"1setBlendFunction(Qt3DRender::QBlendEquation::BlendFunction)\0",
5596                ),
5597            )
5598        }
5599    }
5600
5601    /// <p>Holds the blend function, which determines how source and destination colors are combined.</p>
5602    ///
5603    /// Returns a built-in Qt signal `Qt3DRender::QBlendEquation::blendFunctionChanged` that can be passed to `qt_core::Signal::connect`.
5604    ///
5605    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html#blendFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the blend function, which determines how source and destination colors are combined.</p>
5606    /// <p><b>Access functions:</b></p>
5607    /// <div class="table"><table class="alignedsummary">
5608    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BlendFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>blendFunction</b></span>() const</td></tr>
5609    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBlendFunction</b></span>(BlendFunction <i>blendFunction</i>)</td></tr>
5610    /// </tbody></table></div>
5611    /// <p><b>Notifier signal:</b></p>
5612    /// <div class="table"><table class="alignedsummary">
5613    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>blendFunctionChanged</b></span>(BlendFunction <i>blendFunction</i>)</td></tr>
5614    /// </tbody></table></div></div>
5615    #[inline(always)]
5616    pub fn blend_function_changed(
5617        &self,
5618    ) -> ::qt_core::Signal<(crate::q_blend_equation::BlendFunction,)> {
5619        unsafe {
5620            ::qt_core::Signal::new(
5621                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
5622                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
5623                    b"2blendFunctionChanged(Qt3DRender::QBlendEquation::BlendFunction)\0",
5624                ),
5625            )
5626        }
5627    }
5628
5629    /// <p>Holds the blend function, which determines how source and destination colors are combined.</p>
5630    ///
5631    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquation::BlendFunction Qt3DRender::QBlendEquation::blendFunction() const```</span>.
5632    ///
5633    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html#blendFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the blend function, which determines how source and destination colors are combined.</p>
5634    /// <p><b>Access functions:</b></p>
5635    /// <div class="table"><table class="alignedsummary">
5636    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BlendFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>blendFunction</b></span>() const</td></tr>
5637    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBlendFunction</b></span>(BlendFunction <i>blendFunction</i>)</td></tr>
5638    /// </tbody></table></div>
5639    /// <p><b>Notifier signal:</b></p>
5640    /// <div class="table"><table class="alignedsummary">
5641    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>blendFunctionChanged</b></span>(BlendFunction <i>blendFunction</i>)</td></tr>
5642    /// </tbody></table></div></div>
5643    #[inline(always)]
5644    pub unsafe fn blend_function(&self) -> crate::q_blend_equation::BlendFunction {
5645        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_blendFunction(
5646            self as *const crate::QBlendEquation,
5647        )
5648    }
5649
5650    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QBlendEquation::metaObject() const```</span>.
5651    #[inline(always)]
5652    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
5653        let ffi_result = {
5654            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_metaObject(
5655                self as *const crate::QBlendEquation,
5656            )
5657        };
5658        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
5659    }
5660
5661    /// <p>Default constructs an instance of QBlendEquation.</p>
5662    ///
5663    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBlendEquation::QBlendEquation(Qt3DCore::QNode* parent = …)```</span>.
5664    ///
5665    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html#QBlendEquation">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QBlendEquation.</p></div>
5666    #[inline(always)]
5667    pub unsafe fn new_1a(
5668        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
5669    ) -> ::qt_core::QBox<crate::QBlendEquation> {
5670        let ffi_result = {
5671            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_QBlendEquation(
5672                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
5673                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
5674            )
5675        };
5676        ::qt_core::QBox::from_raw(ffi_result)
5677    }
5678
5679    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html">QBlendEquation</a> class specifies the equation used for both the RGB blend equation and the Alpha blend equation</p>
5680    ///
5681    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBlendEquation::QBlendEquation()```</span>.
5682    ///
5683    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html">QBlendEquation</a> class specifies the equation used for both the RGB blend equation and the Alpha blend equation</p>
5684    /// <p>The blend equation is used to determine how a new pixel is combined with a pixel already in the framebuffer.</p></div>
5685    #[inline(always)]
5686    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QBlendEquation> {
5687        let ffi_result =
5688            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_QBlendEquation1() };
5689        ::qt_core::QBox::from_raw(ffi_result)
5690    }
5691
5692    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QBlendEquation::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
5693    #[inline(always)]
5694    pub unsafe fn qt_metacall(
5695        &self,
5696        arg1: ::qt_core::q_meta_object::Call,
5697        arg2: ::std::os::raw::c_int,
5698        arg3: *mut *mut ::std::ffi::c_void,
5699    ) -> ::std::os::raw::c_int {
5700        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_qt_metacall(
5701            self as *const crate::QBlendEquation as *mut crate::QBlendEquation,
5702            arg1,
5703            arg2,
5704            arg3,
5705        )
5706    }
5707
5708    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QBlendEquation::qt_metacast(const char* arg1)```</span>.
5709    #[inline(always)]
5710    pub unsafe fn qt_metacast(
5711        &self,
5712        arg1: *const ::std::os::raw::c_char,
5713    ) -> *mut ::std::ffi::c_void {
5714        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_qt_metacast(
5715            self as *const crate::QBlendEquation as *mut crate::QBlendEquation,
5716            arg1,
5717        )
5718    }
5719
5720    /// <p>Holds the blend function, which determines how source and destination colors are combined.</p>
5721    ///
5722    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBlendEquation::setBlendFunction(Qt3DRender::QBlendEquation::BlendFunction blendFunction)```</span>.
5723    ///
5724    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequation.html#blendFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the blend function, which determines how source and destination colors are combined.</p>
5725    /// <p><b>Access functions:</b></p>
5726    /// <div class="table"><table class="alignedsummary">
5727    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BlendFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>blendFunction</b></span>() const</td></tr>
5728    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBlendFunction</b></span>(BlendFunction <i>blendFunction</i>)</td></tr>
5729    /// </tbody></table></div>
5730    /// <p><b>Notifier signal:</b></p>
5731    /// <div class="table"><table class="alignedsummary">
5732    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>blendFunctionChanged</b></span>(BlendFunction <i>blendFunction</i>)</td></tr>
5733    /// </tbody></table></div></div>
5734    #[inline(always)]
5735    pub unsafe fn set_blend_function(
5736        &self,
5737        blend_function: crate::q_blend_equation::BlendFunction,
5738    ) {
5739        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_setBlendFunction(
5740            self as *const crate::QBlendEquation as *mut crate::QBlendEquation,
5741            blend_function,
5742        )
5743    }
5744
5745    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
5746    #[inline(always)]
5747    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
5748        let ffi_result =
5749            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_staticMetaObject() };
5750        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
5751            .expect("attempted to construct a null Ref")
5752    }
5753
5754    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBlendEquation::tr(const char* s, const char* c, int n)```</span>.
5755    #[inline(always)]
5756    pub unsafe fn tr(
5757        s: *const ::std::os::raw::c_char,
5758        c: *const ::std::os::raw::c_char,
5759        n: ::std::os::raw::c_int,
5760    ) -> ::cpp_core::CppBox<::qt_core::QString> {
5761        let ffi_result =
5762            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_tr(s, c, n) };
5763        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5764    }
5765
5766    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBlendEquation::trUtf8(const char* s, const char* c, int n)```</span>.
5767    #[inline(always)]
5768    pub unsafe fn tr_utf8(
5769        s: *const ::std::os::raw::c_char,
5770        c: *const ::std::os::raw::c_char,
5771        n: ::std::os::raw::c_int,
5772    ) -> ::cpp_core::CppBox<::qt_core::QString> {
5773        let ffi_result =
5774            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_trUtf8(s, c, n) };
5775        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
5776    }
5777}
5778
5779pub mod q_blend_equation_arguments {
5780    //! C++ type: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments```</span>
5781
5782    /// C++ enum: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments::Blending```</span>.
5783    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
5784    #[repr(transparent)]
5785    pub struct Blending(::std::os::raw::c_int);
5786
5787    impl From<::std::os::raw::c_int> for Blending {
5788        fn from(value: ::std::os::raw::c_int) -> Self {
5789            Blending(value)
5790        }
5791    }
5792
5793    impl From<Blending> for ::std::os::raw::c_int {
5794        fn from(value: Blending) -> Self {
5795            value.0
5796        }
5797    }
5798
5799    impl Blending {
5800        pub fn to_int(&self) -> ::std::os::raw::c_int {
5801            self.0
5802        }
5803    }
5804
5805    impl Blending {
5806        /// C++ enum variant: <span style='color: green;'>```Zero = 0```</span>
5807        #[allow(non_upper_case_globals)]
5808        pub const Zero: crate::q_blend_equation_arguments::Blending =
5809            crate::q_blend_equation_arguments::Blending(0);
5810        /// C++ enum variant: <span style='color: green;'>```One = 1```</span>
5811        #[allow(non_upper_case_globals)]
5812        pub const One: crate::q_blend_equation_arguments::Blending =
5813            crate::q_blend_equation_arguments::Blending(1);
5814        /// C++ enum variant: <span style='color: green;'>```SourceColor = 768```</span>
5815        #[allow(non_upper_case_globals)]
5816        pub const SourceColor: crate::q_blend_equation_arguments::Blending =
5817            crate::q_blend_equation_arguments::Blending(768);
5818        /// C++ enum variant: <span style='color: green;'>```SourceAlpha = 770```</span>
5819        #[allow(non_upper_case_globals)]
5820        pub const SourceAlpha: crate::q_blend_equation_arguments::Blending =
5821            crate::q_blend_equation_arguments::Blending(770);
5822        /// C++ enum variant: <span style='color: green;'>```Source1Alpha = 771```</span>
5823        #[allow(non_upper_case_globals)]
5824        pub const Source1Alpha: crate::q_blend_equation_arguments::Blending =
5825            crate::q_blend_equation_arguments::Blending(771);
5826        /// C++ enum variant: <span style='color: green;'>```Source1Color = 772```</span>
5827        #[allow(non_upper_case_globals)]
5828        pub const Source1Color: crate::q_blend_equation_arguments::Blending =
5829            crate::q_blend_equation_arguments::Blending(772);
5830        /// C++ enum variant: <span style='color: green;'>```DestinationColor = 774```</span>
5831        #[allow(non_upper_case_globals)]
5832        pub const DestinationColor: crate::q_blend_equation_arguments::Blending =
5833            crate::q_blend_equation_arguments::Blending(774);
5834        /// C++ enum variant: <span style='color: green;'>```DestinationAlpha = 772```</span>
5835        #[allow(non_upper_case_globals)]
5836        pub const DestinationAlpha: crate::q_blend_equation_arguments::Blending =
5837            crate::q_blend_equation_arguments::Blending(772);
5838        /// C++ enum variant: <span style='color: green;'>```SourceAlphaSaturate = 776```</span>
5839        #[allow(non_upper_case_globals)]
5840        pub const SourceAlphaSaturate: crate::q_blend_equation_arguments::Blending =
5841            crate::q_blend_equation_arguments::Blending(776);
5842        /// C++ enum variant: <span style='color: green;'>```ConstantColor = 32769```</span>
5843        #[allow(non_upper_case_globals)]
5844        pub const ConstantColor: crate::q_blend_equation_arguments::Blending =
5845            crate::q_blend_equation_arguments::Blending(32769);
5846        /// C++ enum variant: <span style='color: green;'>```ConstantAlpha = 32771```</span>
5847        #[allow(non_upper_case_globals)]
5848        pub const ConstantAlpha: crate::q_blend_equation_arguments::Blending =
5849            crate::q_blend_equation_arguments::Blending(32771);
5850        /// C++ enum variant: <span style='color: green;'>```OneMinusSourceColor = 769```</span>
5851        #[allow(non_upper_case_globals)]
5852        pub const OneMinusSourceColor: crate::q_blend_equation_arguments::Blending =
5853            crate::q_blend_equation_arguments::Blending(769);
5854        /// C++ enum variant: <span style='color: green;'>```OneMinusSourceAlpha = 771```</span>
5855        #[allow(non_upper_case_globals)]
5856        pub const OneMinusSourceAlpha: crate::q_blend_equation_arguments::Blending =
5857            crate::q_blend_equation_arguments::Blending(771);
5858        /// C++ enum variant: <span style='color: green;'>```OneMinusDestinationAlpha = 773```</span>
5859        #[allow(non_upper_case_globals)]
5860        pub const OneMinusDestinationAlpha: crate::q_blend_equation_arguments::Blending =
5861            crate::q_blend_equation_arguments::Blending(773);
5862        /// C++ enum variant: <span style='color: green;'>```OneMinusDestinationColor = 775```</span>
5863        #[allow(non_upper_case_globals)]
5864        pub const OneMinusDestinationColor: crate::q_blend_equation_arguments::Blending =
5865            crate::q_blend_equation_arguments::Blending(775);
5866        /// C++ enum variant: <span style='color: green;'>```OneMinusConstantColor = 32770```</span>
5867        #[allow(non_upper_case_globals)]
5868        pub const OneMinusConstantColor: crate::q_blend_equation_arguments::Blending =
5869            crate::q_blend_equation_arguments::Blending(32770);
5870        /// C++ enum variant: <span style='color: green;'>```OneMinusConstantAlpha = 32772```</span>
5871        #[allow(non_upper_case_globals)]
5872        pub const OneMinusConstantAlpha: crate::q_blend_equation_arguments::Blending =
5873            crate::q_blend_equation_arguments::Blending(32772);
5874        /// C++ enum variant: <span style='color: green;'>```OneMinusSource1Alpha = 32773```</span>
5875        #[allow(non_upper_case_globals)]
5876        pub const OneMinusSource1Alpha: crate::q_blend_equation_arguments::Blending =
5877            crate::q_blend_equation_arguments::Blending(32773);
5878        /// C++ enum variant: <span style='color: green;'>```OneMinusSource1Color = 32774```</span>
5879        #[allow(non_upper_case_globals)]
5880        pub const OneMinusSource1Color: crate::q_blend_equation_arguments::Blending =
5881            crate::q_blend_equation_arguments::Blending(32774);
5882        /// C++ enum variant: <span style='color: green;'>```OneMinusSource1Color0 = 32774```</span>
5883        #[allow(non_upper_case_globals)]
5884        pub const OneMinusSource1Color0: crate::q_blend_equation_arguments::Blending =
5885            crate::q_blend_equation_arguments::Blending(32774);
5886    }
5887}
5888/// <p>Encapsulates blending information: specifies how the incoming values (what's going to be drawn) are going to affect the existing values (what is already drawn).</p>
5889///
5890/// C++ class: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments```</span>.
5891///
5892/// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates blending information: specifies how the incoming values (what's going to be drawn) are going to affect the existing values (what is already drawn).</p>
5893/// <p>OpenGL pre-3.0: Set the same blend state for all draw buffers (one <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html">QBlendEquationArguments</a>) OpenGL 3.0-pre4.0: Set the same blend state for all draw buffers, but can disable blending for particular buffers (one <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html">QBlendEquationArguments</a> for setting glBlendFunc, n QBlendEquationArgumentss for enabling/disabling Draw Buffers) OpenGL 4.0+: Can set blend state individually for each draw buffer.</p></div>
5894#[repr(C)]
5895pub struct QBlendEquationArguments {
5896    _unused: u8,
5897}
5898impl QBlendEquationArguments {
5899    /// <p><b>Access functions:</b></p>
5900    ///
5901    /// Returns a built-in Qt slot `Qt3DRender::QBlendEquationArguments::setSourceRgb` that can be passed to `qt_core::Signal::connect`.
5902    ///
5903    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
5904    /// <div class="table"><table class="alignedsummary">
5905    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRgb</b></span>() const</td></tr>
5906    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSourceRgb</b></span>(Blending <i>sourceRgb</i>)</td></tr>
5907    /// </tbody></table></div>
5908    /// <p><b>Notifier signal:</b></p>
5909    /// <div class="table"><table class="alignedsummary">
5910    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRgbChanged</b></span>(Blending <i>sourceRgb</i>)</td></tr>
5911    /// </tbody></table></div></div>
5912    #[inline(always)]
5913    pub fn slot_set_source_rgb(
5914        &self,
5915    ) -> ::qt_core::Receiver<(crate::q_blend_equation_arguments::Blending,)> {
5916        unsafe {
5917            ::qt_core::Receiver::new(
5918                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
5919                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
5920                    b"1setSourceRgb(Qt3DRender::QBlendEquationArguments::Blending)\0",
5921                ),
5922            )
5923        }
5924    }
5925
5926    /// <p><b>Access functions:</b></p>
5927    ///
5928    /// Returns a built-in Qt slot `Qt3DRender::QBlendEquationArguments::setDestinationRgb` that can be passed to `qt_core::Signal::connect`.
5929    ///
5930    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
5931    /// <div class="table"><table class="alignedsummary">
5932    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRgb</b></span>() const</td></tr>
5933    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDestinationRgb</b></span>(Blending <i>destinationRgb</i>)</td></tr>
5934    /// </tbody></table></div>
5935    /// <p><b>Notifier signal:</b></p>
5936    /// <div class="table"><table class="alignedsummary">
5937    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRgbChanged</b></span>(Blending <i>destinationRgb</i>)</td></tr>
5938    /// </tbody></table></div></div>
5939    #[inline(always)]
5940    pub fn slot_set_destination_rgb(
5941        &self,
5942    ) -> ::qt_core::Receiver<(crate::q_blend_equation_arguments::Blending,)> {
5943        unsafe {
5944            ::qt_core::Receiver::new(
5945                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
5946                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
5947                    b"1setDestinationRgb(Qt3DRender::QBlendEquationArguments::Blending)\0",
5948                ),
5949            )
5950        }
5951    }
5952
5953    /// <p><b>Access functions:</b></p>
5954    ///
5955    /// Returns a built-in Qt slot `Qt3DRender::QBlendEquationArguments::setSourceAlpha` that can be passed to `qt_core::Signal::connect`.
5956    ///
5957    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
5958    /// <div class="table"><table class="alignedsummary">
5959    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAlpha</b></span>() const</td></tr>
5960    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSourceAlpha</b></span>(Blending <i>sourceAlpha</i>)</td></tr>
5961    /// </tbody></table></div>
5962    /// <p><b>Notifier signal:</b></p>
5963    /// <div class="table"><table class="alignedsummary">
5964    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAlphaChanged</b></span>(Blending <i>sourceAlpha</i>)</td></tr>
5965    /// </tbody></table></div></div>
5966    #[inline(always)]
5967    pub fn slot_set_source_alpha(
5968        &self,
5969    ) -> ::qt_core::Receiver<(crate::q_blend_equation_arguments::Blending,)> {
5970        unsafe {
5971            ::qt_core::Receiver::new(
5972                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
5973                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
5974                    b"1setSourceAlpha(Qt3DRender::QBlendEquationArguments::Blending)\0",
5975                ),
5976            )
5977        }
5978    }
5979
5980    /// <p><b>Access functions:</b></p>
5981    ///
5982    /// Returns a built-in Qt slot `Qt3DRender::QBlendEquationArguments::setDestinationAlpha` that can be passed to `qt_core::Signal::connect`.
5983    ///
5984    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
5985    /// <div class="table"><table class="alignedsummary">
5986    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAlpha</b></span>() const</td></tr>
5987    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDestinationAlpha</b></span>(Blending <i>destinationAlpha</i>)</td></tr>
5988    /// </tbody></table></div>
5989    /// <p><b>Notifier signal:</b></p>
5990    /// <div class="table"><table class="alignedsummary">
5991    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAlphaChanged</b></span>(Blending <i>destinationAlpha</i>)</td></tr>
5992    /// </tbody></table></div></div>
5993    #[inline(always)]
5994    pub fn slot_set_destination_alpha(
5995        &self,
5996    ) -> ::qt_core::Receiver<(crate::q_blend_equation_arguments::Blending,)> {
5997        unsafe {
5998            ::qt_core::Receiver::new(
5999                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6000                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6001                    b"1setDestinationAlpha(Qt3DRender::QBlendEquationArguments::Blending)\0",
6002                ),
6003            )
6004        }
6005    }
6006
6007    /// <p>Change both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">sourceRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">sourceAlpha</a> properties to <i>sourceRgba</i>.</p>
6008    ///
6009    /// Returns a built-in Qt slot `Qt3DRender::QBlendEquationArguments::setSourceRgba` that can be passed to `qt_core::Signal::connect`.
6010    ///
6011    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#setSourceRgba">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Change both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">sourceRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">sourceAlpha</a> properties to <i>sourceRgba</i>.</p></div>
6012    #[inline(always)]
6013    pub fn slot_set_source_rgba(
6014        &self,
6015    ) -> ::qt_core::Receiver<(crate::q_blend_equation_arguments::Blending,)> {
6016        unsafe {
6017            ::qt_core::Receiver::new(
6018                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6019                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6020                    b"1setSourceRgba(Qt3DRender::QBlendEquationArguments::Blending)\0",
6021                ),
6022            )
6023        }
6024    }
6025
6026    /// <p>Change both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">destinationRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">destinationAlpha</a> properties to <i>destinationRgba</i>.</p>
6027    ///
6028    /// Returns a built-in Qt slot `Qt3DRender::QBlendEquationArguments::setDestinationRgba` that can be passed to `qt_core::Signal::connect`.
6029    ///
6030    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#setDestinationRgba">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Change both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">destinationRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">destinationAlpha</a> properties to <i>destinationRgba</i>.</p></div>
6031    #[inline(always)]
6032    pub fn slot_set_destination_rgba(
6033        &self,
6034    ) -> ::qt_core::Receiver<(crate::q_blend_equation_arguments::Blending,)> {
6035        unsafe {
6036            ::qt_core::Receiver::new(
6037                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6038                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6039                    b"1setDestinationRgba(Qt3DRender::QBlendEquationArguments::Blending)\0",
6040                ),
6041            )
6042        }
6043    }
6044
6045    /// <p>Specifies the index of the Draw Buffer that this <a href="http://doc.qt.io/qt-5/qml-qt3d-render-blendequationarguments.html">BlendEquationArguments</a> applies to. If negative, this will apply to all Draw Buffers.</p>
6046    ///
6047    /// Returns a built-in Qt slot `Qt3DRender::QBlendEquationArguments::setBufferIndex` that can be passed to `qt_core::Signal::connect`.
6048    ///
6049    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#bufferIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the Draw Buffer that this <a href="http://doc.qt.io/qt-5/qml-qt3d-render-blendequationarguments.html">BlendEquationArguments</a> applies to. If negative, this will apply to all Draw Buffers.</p>
6050    /// <p><b>Access functions:</b></p>
6051    /// <div class="table"><table class="alignedsummary">
6052    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferIndex</b></span>() const</td></tr>
6053    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBufferIndex</b></span>(int <i>index</i>)</td></tr>
6054    /// </tbody></table></div>
6055    /// <p><b>Notifier signal:</b></p>
6056    /// <div class="table"><table class="alignedsummary">
6057    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferIndexChanged</b></span>(int <i>index</i>)</td></tr>
6058    /// </tbody></table></div></div>
6059    #[inline(always)]
6060    pub fn slot_set_buffer_index(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
6061        unsafe {
6062            ::qt_core::Receiver::new(
6063                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6064                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setBufferIndex(int)\0"),
6065            )
6066        }
6067    }
6068
6069    /// <p><b>Access functions:</b></p>
6070    ///
6071    /// Returns a built-in Qt signal `Qt3DRender::QBlendEquationArguments::sourceRgbChanged` that can be passed to `qt_core::Signal::connect`.
6072    ///
6073    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6074    /// <div class="table"><table class="alignedsummary">
6075    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRgb</b></span>() const</td></tr>
6076    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSourceRgb</b></span>(Blending <i>sourceRgb</i>)</td></tr>
6077    /// </tbody></table></div>
6078    /// <p><b>Notifier signal:</b></p>
6079    /// <div class="table"><table class="alignedsummary">
6080    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRgbChanged</b></span>(Blending <i>sourceRgb</i>)</td></tr>
6081    /// </tbody></table></div></div>
6082    #[inline(always)]
6083    pub fn source_rgb_changed(
6084        &self,
6085    ) -> ::qt_core::Signal<(crate::q_blend_equation_arguments::Blending,)> {
6086        unsafe {
6087            ::qt_core::Signal::new(
6088                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6089                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6090                    b"2sourceRgbChanged(Qt3DRender::QBlendEquationArguments::Blending)\0",
6091                ),
6092            )
6093        }
6094    }
6095
6096    /// <p><b>Access functions:</b></p>
6097    ///
6098    /// Returns a built-in Qt signal `Qt3DRender::QBlendEquationArguments::sourceAlphaChanged` that can be passed to `qt_core::Signal::connect`.
6099    ///
6100    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6101    /// <div class="table"><table class="alignedsummary">
6102    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAlpha</b></span>() const</td></tr>
6103    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSourceAlpha</b></span>(Blending <i>sourceAlpha</i>)</td></tr>
6104    /// </tbody></table></div>
6105    /// <p><b>Notifier signal:</b></p>
6106    /// <div class="table"><table class="alignedsummary">
6107    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAlphaChanged</b></span>(Blending <i>sourceAlpha</i>)</td></tr>
6108    /// </tbody></table></div></div>
6109    #[inline(always)]
6110    pub fn source_alpha_changed(
6111        &self,
6112    ) -> ::qt_core::Signal<(crate::q_blend_equation_arguments::Blending,)> {
6113        unsafe {
6114            ::qt_core::Signal::new(
6115                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6116                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6117                    b"2sourceAlphaChanged(Qt3DRender::QBlendEquationArguments::Blending)\0",
6118                ),
6119            )
6120        }
6121    }
6122
6123    /// <p><b>Access functions:</b></p>
6124    ///
6125    /// Returns a built-in Qt signal `Qt3DRender::QBlendEquationArguments::destinationRgbChanged` that can be passed to `qt_core::Signal::connect`.
6126    ///
6127    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6128    /// <div class="table"><table class="alignedsummary">
6129    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRgb</b></span>() const</td></tr>
6130    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDestinationRgb</b></span>(Blending <i>destinationRgb</i>)</td></tr>
6131    /// </tbody></table></div>
6132    /// <p><b>Notifier signal:</b></p>
6133    /// <div class="table"><table class="alignedsummary">
6134    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRgbChanged</b></span>(Blending <i>destinationRgb</i>)</td></tr>
6135    /// </tbody></table></div></div>
6136    #[inline(always)]
6137    pub fn destination_rgb_changed(
6138        &self,
6139    ) -> ::qt_core::Signal<(crate::q_blend_equation_arguments::Blending,)> {
6140        unsafe {
6141            ::qt_core::Signal::new(
6142                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6143                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6144                    b"2destinationRgbChanged(Qt3DRender::QBlendEquationArguments::Blending)\0",
6145                ),
6146            )
6147        }
6148    }
6149
6150    /// <p><b>Access functions:</b></p>
6151    ///
6152    /// Returns a built-in Qt signal `Qt3DRender::QBlendEquationArguments::destinationAlphaChanged` that can be passed to `qt_core::Signal::connect`.
6153    ///
6154    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6155    /// <div class="table"><table class="alignedsummary">
6156    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAlpha</b></span>() const</td></tr>
6157    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDestinationAlpha</b></span>(Blending <i>destinationAlpha</i>)</td></tr>
6158    /// </tbody></table></div>
6159    /// <p><b>Notifier signal:</b></p>
6160    /// <div class="table"><table class="alignedsummary">
6161    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAlphaChanged</b></span>(Blending <i>destinationAlpha</i>)</td></tr>
6162    /// </tbody></table></div></div>
6163    #[inline(always)]
6164    pub fn destination_alpha_changed(
6165        &self,
6166    ) -> ::qt_core::Signal<(crate::q_blend_equation_arguments::Blending,)> {
6167        unsafe {
6168            ::qt_core::Signal::new(
6169                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6170                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6171                    b"2destinationAlphaChanged(Qt3DRender::QBlendEquationArguments::Blending)\0",
6172                ),
6173            )
6174        }
6175    }
6176
6177    /// <p>Notify that both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">sourceRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">sourceAlpha</a> properties have changed to <i>sourceRgba</i>.</p>
6178    ///
6179    /// Returns a built-in Qt signal `Qt3DRender::QBlendEquationArguments::sourceRgbaChanged` that can be passed to `qt_core::Signal::connect`.
6180    ///
6181    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgbaChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Notify that both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">sourceRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">sourceAlpha</a> properties have changed to <i>sourceRgba</i>.</p></div>
6182    #[inline(always)]
6183    pub fn source_rgba_changed(
6184        &self,
6185    ) -> ::qt_core::Signal<(crate::q_blend_equation_arguments::Blending,)> {
6186        unsafe {
6187            ::qt_core::Signal::new(
6188                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6189                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6190                    b"2sourceRgbaChanged(Qt3DRender::QBlendEquationArguments::Blending)\0",
6191                ),
6192            )
6193        }
6194    }
6195
6196    /// <p>Notify that both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">destinationRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">destinationAlpha</a> properties have changed to <i>destinationRgba</i>.</p>
6197    ///
6198    /// Returns a built-in Qt signal `Qt3DRender::QBlendEquationArguments::destinationRgbaChanged` that can be passed to `qt_core::Signal::connect`.
6199    ///
6200    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgbaChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Notify that both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">destinationRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">destinationAlpha</a> properties have changed to <i>destinationRgba</i>.</p></div>
6201    #[inline(always)]
6202    pub fn destination_rgba_changed(
6203        &self,
6204    ) -> ::qt_core::Signal<(crate::q_blend_equation_arguments::Blending,)> {
6205        unsafe {
6206            ::qt_core::Signal::new(
6207                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6208                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6209                    b"2destinationRgbaChanged(Qt3DRender::QBlendEquationArguments::Blending)\0",
6210                ),
6211            )
6212        }
6213    }
6214
6215    /// <p>Specifies the index of the Draw Buffer that this <a href="http://doc.qt.io/qt-5/qml-qt3d-render-blendequationarguments.html">BlendEquationArguments</a> applies to. If negative, this will apply to all Draw Buffers.</p>
6216    ///
6217    /// Returns a built-in Qt signal `Qt3DRender::QBlendEquationArguments::bufferIndexChanged` that can be passed to `qt_core::Signal::connect`.
6218    ///
6219    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#bufferIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the Draw Buffer that this <a href="http://doc.qt.io/qt-5/qml-qt3d-render-blendequationarguments.html">BlendEquationArguments</a> applies to. If negative, this will apply to all Draw Buffers.</p>
6220    /// <p><b>Access functions:</b></p>
6221    /// <div class="table"><table class="alignedsummary">
6222    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferIndex</b></span>() const</td></tr>
6223    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBufferIndex</b></span>(int <i>index</i>)</td></tr>
6224    /// </tbody></table></div>
6225    /// <p><b>Notifier signal:</b></p>
6226    /// <div class="table"><table class="alignedsummary">
6227    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferIndexChanged</b></span>(int <i>index</i>)</td></tr>
6228    /// </tbody></table></div></div>
6229    #[inline(always)]
6230    pub fn buffer_index_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
6231        unsafe {
6232            ::qt_core::Signal::new(
6233                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6234                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2bufferIndexChanged(int)\0"),
6235            )
6236        }
6237    }
6238
6239    /// <p>Specifies the index of the Draw Buffer that this <a href="http://doc.qt.io/qt-5/qml-qt3d-render-blendequationarguments.html">BlendEquationArguments</a> applies to. If negative, this will apply to all Draw Buffers.</p>
6240    ///
6241    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QBlendEquationArguments::bufferIndex() const```</span>.
6242    ///
6243    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#bufferIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the Draw Buffer that this <a href="http://doc.qt.io/qt-5/qml-qt3d-render-blendequationarguments.html">BlendEquationArguments</a> applies to. If negative, this will apply to all Draw Buffers.</p>
6244    /// <p><b>Access functions:</b></p>
6245    /// <div class="table"><table class="alignedsummary">
6246    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferIndex</b></span>() const</td></tr>
6247    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBufferIndex</b></span>(int <i>index</i>)</td></tr>
6248    /// </tbody></table></div>
6249    /// <p><b>Notifier signal:</b></p>
6250    /// <div class="table"><table class="alignedsummary">
6251    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferIndexChanged</b></span>(int <i>index</i>)</td></tr>
6252    /// </tbody></table></div></div>
6253    #[inline(always)]
6254    pub unsafe fn buffer_index(&self) -> ::std::os::raw::c_int {
6255        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_bufferIndex(
6256            self as *const crate::QBlendEquationArguments,
6257        )
6258    }
6259
6260    /// <p><b>Access functions:</b></p>
6261    ///
6262    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments::Blending Qt3DRender::QBlendEquationArguments::destinationAlpha() const```</span>.
6263    ///
6264    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6265    /// <div class="table"><table class="alignedsummary">
6266    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAlpha</b></span>() const</td></tr>
6267    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDestinationAlpha</b></span>(Blending <i>destinationAlpha</i>)</td></tr>
6268    /// </tbody></table></div>
6269    /// <p><b>Notifier signal:</b></p>
6270    /// <div class="table"><table class="alignedsummary">
6271    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAlphaChanged</b></span>(Blending <i>destinationAlpha</i>)</td></tr>
6272    /// </tbody></table></div></div>
6273    #[inline(always)]
6274    pub unsafe fn destination_alpha(&self) -> crate::q_blend_equation_arguments::Blending {
6275        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_destinationAlpha(
6276            self as *const crate::QBlendEquationArguments,
6277        )
6278    }
6279
6280    /// <p><b>Access functions:</b></p>
6281    ///
6282    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments::Blending Qt3DRender::QBlendEquationArguments::destinationRgb() const```</span>.
6283    ///
6284    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6285    /// <div class="table"><table class="alignedsummary">
6286    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRgb</b></span>() const</td></tr>
6287    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDestinationRgb</b></span>(Blending <i>destinationRgb</i>)</td></tr>
6288    /// </tbody></table></div>
6289    /// <p><b>Notifier signal:</b></p>
6290    /// <div class="table"><table class="alignedsummary">
6291    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRgbChanged</b></span>(Blending <i>destinationRgb</i>)</td></tr>
6292    /// </tbody></table></div></div>
6293    #[inline(always)]
6294    pub unsafe fn destination_rgb(&self) -> crate::q_blend_equation_arguments::Blending {
6295        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_destinationRgb(
6296            self as *const crate::QBlendEquationArguments,
6297        )
6298    }
6299
6300    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QBlendEquationArguments::metaObject() const```</span>.
6301    #[inline(always)]
6302    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
6303        let ffi_result = {
6304            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_metaObject(
6305                self as *const crate::QBlendEquationArguments,
6306            )
6307        };
6308        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
6309    }
6310
6311    /// <p>Default constructs an instance of QBlendEquationArguments.</p>
6312    ///
6313    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBlendEquationArguments::QBlendEquationArguments(Qt3DCore::QNode* parent = …)```</span>.
6314    ///
6315    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#QBlendEquationArguments">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QBlendEquationArguments.</p></div>
6316    #[inline(always)]
6317    pub unsafe fn new_1a(
6318        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
6319    ) -> ::qt_core::QBox<crate::QBlendEquationArguments> {
6320        let ffi_result = {
6321            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_QBlendEquationArguments(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent).as_raw_ptr() as *mut ::qt_3d_core::QNode)
6322        };
6323        ::qt_core::QBox::from_raw(ffi_result)
6324    }
6325
6326    /// <p>Encapsulates blending information: specifies how the incoming values (what's going to be drawn) are going to affect the existing values (what is already drawn).</p>
6327    ///
6328    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBlendEquationArguments::QBlendEquationArguments()```</span>.
6329    ///
6330    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates blending information: specifies how the incoming values (what's going to be drawn) are going to affect the existing values (what is already drawn).</p>
6331    /// <p>OpenGL pre-3.0: Set the same blend state for all draw buffers (one <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html">QBlendEquationArguments</a>) OpenGL 3.0-pre4.0: Set the same blend state for all draw buffers, but can disable blending for particular buffers (one <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html">QBlendEquationArguments</a> for setting glBlendFunc, n QBlendEquationArgumentss for enabling/disabling Draw Buffers) OpenGL 4.0+: Can set blend state individually for each draw buffer.</p></div>
6332    #[inline(always)]
6333    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QBlendEquationArguments> {
6334        let ffi_result = {
6335            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_QBlendEquationArguments1()
6336        };
6337        ::qt_core::QBox::from_raw(ffi_result)
6338    }
6339
6340    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QBlendEquationArguments::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
6341    #[inline(always)]
6342    pub unsafe fn qt_metacall(
6343        &self,
6344        arg1: ::qt_core::q_meta_object::Call,
6345        arg2: ::std::os::raw::c_int,
6346        arg3: *mut *mut ::std::ffi::c_void,
6347    ) -> ::std::os::raw::c_int {
6348        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_qt_metacall(
6349            self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments,
6350            arg1,
6351            arg2,
6352            arg3,
6353        )
6354    }
6355
6356    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QBlendEquationArguments::qt_metacast(const char* arg1)```</span>.
6357    #[inline(always)]
6358    pub unsafe fn qt_metacast(
6359        &self,
6360        arg1: *const ::std::os::raw::c_char,
6361    ) -> *mut ::std::ffi::c_void {
6362        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_qt_metacast(
6363            self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments,
6364            arg1,
6365        )
6366    }
6367
6368    /// <p>Specifies the index of the Draw Buffer that this <a href="http://doc.qt.io/qt-5/qml-qt3d-render-blendequationarguments.html">BlendEquationArguments</a> applies to. If negative, this will apply to all Draw Buffers.</p>
6369    ///
6370    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBlendEquationArguments::setBufferIndex(int index)```</span>.
6371    ///
6372    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#bufferIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the Draw Buffer that this <a href="http://doc.qt.io/qt-5/qml-qt3d-render-blendequationarguments.html">BlendEquationArguments</a> applies to. If negative, this will apply to all Draw Buffers.</p>
6373    /// <p><b>Access functions:</b></p>
6374    /// <div class="table"><table class="alignedsummary">
6375    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferIndex</b></span>() const</td></tr>
6376    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBufferIndex</b></span>(int <i>index</i>)</td></tr>
6377    /// </tbody></table></div>
6378    /// <p><b>Notifier signal:</b></p>
6379    /// <div class="table"><table class="alignedsummary">
6380    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bufferIndexChanged</b></span>(int <i>index</i>)</td></tr>
6381    /// </tbody></table></div></div>
6382    #[inline(always)]
6383    pub unsafe fn set_buffer_index(&self, index: ::std::os::raw::c_int) {
6384        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_setBufferIndex(
6385            self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments,
6386            index,
6387        )
6388    }
6389
6390    /// <p><b>Access functions:</b></p>
6391    ///
6392    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBlendEquationArguments::setDestinationAlpha(Qt3DRender::QBlendEquationArguments::Blending destinationAlpha)```</span>.
6393    ///
6394    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6395    /// <div class="table"><table class="alignedsummary">
6396    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAlpha</b></span>() const</td></tr>
6397    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDestinationAlpha</b></span>(Blending <i>destinationAlpha</i>)</td></tr>
6398    /// </tbody></table></div>
6399    /// <p><b>Notifier signal:</b></p>
6400    /// <div class="table"><table class="alignedsummary">
6401    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAlphaChanged</b></span>(Blending <i>destinationAlpha</i>)</td></tr>
6402    /// </tbody></table></div></div>
6403    #[inline(always)]
6404    pub unsafe fn set_destination_alpha(
6405        &self,
6406        destination_alpha: crate::q_blend_equation_arguments::Blending,
6407    ) {
6408        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_setDestinationAlpha(
6409            self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments,
6410            destination_alpha,
6411        )
6412    }
6413
6414    /// <p><b>Access functions:</b></p>
6415    ///
6416    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBlendEquationArguments::setDestinationRgb(Qt3DRender::QBlendEquationArguments::Blending destinationRgb)```</span>.
6417    ///
6418    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6419    /// <div class="table"><table class="alignedsummary">
6420    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRgb</b></span>() const</td></tr>
6421    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDestinationRgb</b></span>(Blending <i>destinationRgb</i>)</td></tr>
6422    /// </tbody></table></div>
6423    /// <p><b>Notifier signal:</b></p>
6424    /// <div class="table"><table class="alignedsummary">
6425    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRgbChanged</b></span>(Blending <i>destinationRgb</i>)</td></tr>
6426    /// </tbody></table></div></div>
6427    #[inline(always)]
6428    pub unsafe fn set_destination_rgb(
6429        &self,
6430        destination_rgb: crate::q_blend_equation_arguments::Blending,
6431    ) {
6432        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_setDestinationRgb(
6433            self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments,
6434            destination_rgb,
6435        )
6436    }
6437
6438    /// <p>Change both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">destinationRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">destinationAlpha</a> properties to <i>destinationRgba</i>.</p>
6439    ///
6440    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBlendEquationArguments::setDestinationRgba(Qt3DRender::QBlendEquationArguments::Blending destinationRgba)```</span>.
6441    ///
6442    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#setDestinationRgba">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Change both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationRgb-prop">destinationRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#destinationAlpha-prop">destinationAlpha</a> properties to <i>destinationRgba</i>.</p></div>
6443    #[inline(always)]
6444    pub unsafe fn set_destination_rgba(
6445        &self,
6446        destination_rgba: crate::q_blend_equation_arguments::Blending,
6447    ) {
6448        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_setDestinationRgba(
6449            self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments,
6450            destination_rgba,
6451        )
6452    }
6453
6454    /// <p><b>Access functions:</b></p>
6455    ///
6456    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBlendEquationArguments::setSourceAlpha(Qt3DRender::QBlendEquationArguments::Blending sourceAlpha)```</span>.
6457    ///
6458    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6459    /// <div class="table"><table class="alignedsummary">
6460    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAlpha</b></span>() const</td></tr>
6461    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSourceAlpha</b></span>(Blending <i>sourceAlpha</i>)</td></tr>
6462    /// </tbody></table></div>
6463    /// <p><b>Notifier signal:</b></p>
6464    /// <div class="table"><table class="alignedsummary">
6465    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAlphaChanged</b></span>(Blending <i>sourceAlpha</i>)</td></tr>
6466    /// </tbody></table></div></div>
6467    #[inline(always)]
6468    pub unsafe fn set_source_alpha(
6469        &self,
6470        source_alpha: crate::q_blend_equation_arguments::Blending,
6471    ) {
6472        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_setSourceAlpha(
6473            self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments,
6474            source_alpha,
6475        )
6476    }
6477
6478    /// <p><b>Access functions:</b></p>
6479    ///
6480    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBlendEquationArguments::setSourceRgb(Qt3DRender::QBlendEquationArguments::Blending sourceRgb)```</span>.
6481    ///
6482    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6483    /// <div class="table"><table class="alignedsummary">
6484    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRgb</b></span>() const</td></tr>
6485    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSourceRgb</b></span>(Blending <i>sourceRgb</i>)</td></tr>
6486    /// </tbody></table></div>
6487    /// <p><b>Notifier signal:</b></p>
6488    /// <div class="table"><table class="alignedsummary">
6489    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRgbChanged</b></span>(Blending <i>sourceRgb</i>)</td></tr>
6490    /// </tbody></table></div></div>
6491    #[inline(always)]
6492    pub unsafe fn set_source_rgb(&self, source_rgb: crate::q_blend_equation_arguments::Blending) {
6493        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_setSourceRgb(
6494            self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments,
6495            source_rgb,
6496        )
6497    }
6498
6499    /// <p>Change both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">sourceRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">sourceAlpha</a> properties to <i>sourceRgba</i>.</p>
6500    ///
6501    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBlendEquationArguments::setSourceRgba(Qt3DRender::QBlendEquationArguments::Blending sourceRgba)```</span>.
6502    ///
6503    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#setSourceRgba">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Change both <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">sourceRgb</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">sourceAlpha</a> properties to <i>sourceRgba</i>.</p></div>
6504    #[inline(always)]
6505    pub unsafe fn set_source_rgba(&self, source_rgba: crate::q_blend_equation_arguments::Blending) {
6506        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_setSourceRgba(
6507            self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments,
6508            source_rgba,
6509        )
6510    }
6511
6512    /// <p><b>Access functions:</b></p>
6513    ///
6514    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments::Blending Qt3DRender::QBlendEquationArguments::sourceAlpha() const```</span>.
6515    ///
6516    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceAlpha-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6517    /// <div class="table"><table class="alignedsummary">
6518    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAlpha</b></span>() const</td></tr>
6519    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSourceAlpha</b></span>(Blending <i>sourceAlpha</i>)</td></tr>
6520    /// </tbody></table></div>
6521    /// <p><b>Notifier signal:</b></p>
6522    /// <div class="table"><table class="alignedsummary">
6523    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAlphaChanged</b></span>(Blending <i>sourceAlpha</i>)</td></tr>
6524    /// </tbody></table></div></div>
6525    #[inline(always)]
6526    pub unsafe fn source_alpha(&self) -> crate::q_blend_equation_arguments::Blending {
6527        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_sourceAlpha(
6528            self as *const crate::QBlendEquationArguments,
6529        )
6530    }
6531
6532    /// <p><b>Access functions:</b></p>
6533    ///
6534    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments::Blending Qt3DRender::QBlendEquationArguments::sourceRgb() const```</span>.
6535    ///
6536    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblendequationarguments.html#sourceRgb-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6537    /// <div class="table"><table class="alignedsummary">
6538    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Blending </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRgb</b></span>() const</td></tr>
6539    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSourceRgb</b></span>(Blending <i>sourceRgb</i>)</td></tr>
6540    /// </tbody></table></div>
6541    /// <p><b>Notifier signal:</b></p>
6542    /// <div class="table"><table class="alignedsummary">
6543    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRgbChanged</b></span>(Blending <i>sourceRgb</i>)</td></tr>
6544    /// </tbody></table></div></div>
6545    #[inline(always)]
6546    pub unsafe fn source_rgb(&self) -> crate::q_blend_equation_arguments::Blending {
6547        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_sourceRgb(
6548            self as *const crate::QBlendEquationArguments,
6549        )
6550    }
6551
6552    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
6553    #[inline(always)]
6554    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
6555        let ffi_result = {
6556            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_staticMetaObject()
6557        };
6558        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
6559            .expect("attempted to construct a null Ref")
6560    }
6561
6562    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBlendEquationArguments::tr(const char* s, const char* c, int n)```</span>.
6563    #[inline(always)]
6564    pub unsafe fn tr(
6565        s: *const ::std::os::raw::c_char,
6566        c: *const ::std::os::raw::c_char,
6567        n: ::std::os::raw::c_int,
6568    ) -> ::cpp_core::CppBox<::qt_core::QString> {
6569        let ffi_result =
6570            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_tr(s, c, n) };
6571        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6572    }
6573
6574    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBlendEquationArguments::trUtf8(const char* s, const char* c, int n)```</span>.
6575    #[inline(always)]
6576    pub unsafe fn tr_utf8(
6577        s: *const ::std::os::raw::c_char,
6578        c: *const ::std::os::raw::c_char,
6579        n: ::std::os::raw::c_int,
6580    ) -> ::cpp_core::CppBox<::qt_core::QString> {
6581        let ffi_result = {
6582            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_trUtf8(s, c, n)
6583        };
6584        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
6585    }
6586}
6587
6588pub mod q_buffer {
6589    //! C++ type: <span style='color: green;'>```Qt3DRender::QBuffer```</span>
6590
6591    /// C++ enum: <span style='color: green;'>```Qt3DRender::QBuffer::BufferType```</span>.
6592    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
6593    #[repr(transparent)]
6594    pub struct BufferType(::std::os::raw::c_int);
6595
6596    impl From<::std::os::raw::c_int> for BufferType {
6597        fn from(value: ::std::os::raw::c_int) -> Self {
6598            BufferType(value)
6599        }
6600    }
6601
6602    impl From<BufferType> for ::std::os::raw::c_int {
6603        fn from(value: BufferType) -> Self {
6604            value.0
6605        }
6606    }
6607
6608    impl BufferType {
6609        pub fn to_int(&self) -> ::std::os::raw::c_int {
6610            self.0
6611        }
6612    }
6613
6614    impl BufferType {
6615        /// C++ enum variant: <span style='color: green;'>```VertexBuffer = 34962```</span>
6616        #[allow(non_upper_case_globals)]
6617        pub const VertexBuffer: crate::q_buffer::BufferType = crate::q_buffer::BufferType(34962);
6618        /// C++ enum variant: <span style='color: green;'>```IndexBuffer = 34963```</span>
6619        #[allow(non_upper_case_globals)]
6620        pub const IndexBuffer: crate::q_buffer::BufferType = crate::q_buffer::BufferType(34963);
6621        /// C++ enum variant: <span style='color: green;'>```PixelPackBuffer = 35051```</span>
6622        #[allow(non_upper_case_globals)]
6623        pub const PixelPackBuffer: crate::q_buffer::BufferType = crate::q_buffer::BufferType(35051);
6624        /// C++ enum variant: <span style='color: green;'>```PixelUnpackBuffer = 35052```</span>
6625        #[allow(non_upper_case_globals)]
6626        pub const PixelUnpackBuffer: crate::q_buffer::BufferType =
6627            crate::q_buffer::BufferType(35052);
6628        /// C++ enum variant: <span style='color: green;'>```UniformBuffer = 35345```</span>
6629        #[allow(non_upper_case_globals)]
6630        pub const UniformBuffer: crate::q_buffer::BufferType = crate::q_buffer::BufferType(35345);
6631        /// C++ enum variant: <span style='color: green;'>```ShaderStorageBuffer = 37074```</span>
6632        #[allow(non_upper_case_globals)]
6633        pub const ShaderStorageBuffer: crate::q_buffer::BufferType =
6634            crate::q_buffer::BufferType(37074);
6635        /// C++ enum variant: <span style='color: green;'>```DrawIndirectBuffer = 36671```</span>
6636        #[allow(non_upper_case_globals)]
6637        pub const DrawIndirectBuffer: crate::q_buffer::BufferType =
6638            crate::q_buffer::BufferType(36671);
6639    }
6640
6641    /// C++ enum: <span style='color: green;'>```Qt3DRender::QBuffer::UsageType```</span>.
6642    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
6643    #[repr(transparent)]
6644    pub struct UsageType(::std::os::raw::c_int);
6645
6646    impl From<::std::os::raw::c_int> for UsageType {
6647        fn from(value: ::std::os::raw::c_int) -> Self {
6648            UsageType(value)
6649        }
6650    }
6651
6652    impl From<UsageType> for ::std::os::raw::c_int {
6653        fn from(value: UsageType) -> Self {
6654            value.0
6655        }
6656    }
6657
6658    impl UsageType {
6659        pub fn to_int(&self) -> ::std::os::raw::c_int {
6660            self.0
6661        }
6662    }
6663
6664    impl UsageType {
6665        /// C++ enum variant: <span style='color: green;'>```StreamDraw = 35040```</span>
6666        #[allow(non_upper_case_globals)]
6667        pub const StreamDraw: crate::q_buffer::UsageType = crate::q_buffer::UsageType(35040);
6668        /// C++ enum variant: <span style='color: green;'>```StreamRead = 35041```</span>
6669        #[allow(non_upper_case_globals)]
6670        pub const StreamRead: crate::q_buffer::UsageType = crate::q_buffer::UsageType(35041);
6671        /// C++ enum variant: <span style='color: green;'>```StreamCopy = 35042```</span>
6672        #[allow(non_upper_case_globals)]
6673        pub const StreamCopy: crate::q_buffer::UsageType = crate::q_buffer::UsageType(35042);
6674        /// C++ enum variant: <span style='color: green;'>```StaticDraw = 35044```</span>
6675        #[allow(non_upper_case_globals)]
6676        pub const StaticDraw: crate::q_buffer::UsageType = crate::q_buffer::UsageType(35044);
6677        /// C++ enum variant: <span style='color: green;'>```StaticRead = 35045```</span>
6678        #[allow(non_upper_case_globals)]
6679        pub const StaticRead: crate::q_buffer::UsageType = crate::q_buffer::UsageType(35045);
6680        /// C++ enum variant: <span style='color: green;'>```StaticCopy = 35046```</span>
6681        #[allow(non_upper_case_globals)]
6682        pub const StaticCopy: crate::q_buffer::UsageType = crate::q_buffer::UsageType(35046);
6683        /// C++ enum variant: <span style='color: green;'>```DynamicDraw = 35048```</span>
6684        #[allow(non_upper_case_globals)]
6685        pub const DynamicDraw: crate::q_buffer::UsageType = crate::q_buffer::UsageType(35048);
6686        /// C++ enum variant: <span style='color: green;'>```DynamicRead = 35049```</span>
6687        #[allow(non_upper_case_globals)]
6688        pub const DynamicRead: crate::q_buffer::UsageType = crate::q_buffer::UsageType(35049);
6689        /// C++ enum variant: <span style='color: green;'>```DynamicCopy = 35050```</span>
6690        #[allow(non_upper_case_globals)]
6691        pub const DynamicCopy: crate::q_buffer::UsageType = crate::q_buffer::UsageType(35050);
6692    }
6693
6694    /// C++ enum: <span style='color: green;'>```Qt3DRender::QBuffer::AccessType```</span>.
6695    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
6696    #[repr(transparent)]
6697    pub struct AccessType(::std::os::raw::c_int);
6698
6699    impl From<::std::os::raw::c_int> for AccessType {
6700        fn from(value: ::std::os::raw::c_int) -> Self {
6701            AccessType(value)
6702        }
6703    }
6704
6705    impl From<AccessType> for ::std::os::raw::c_int {
6706        fn from(value: AccessType) -> Self {
6707            value.0
6708        }
6709    }
6710
6711    impl AccessType {
6712        pub fn to_int(&self) -> ::std::os::raw::c_int {
6713            self.0
6714        }
6715    }
6716
6717    impl AccessType {
6718        /// C++ enum variant: <span style='color: green;'>```Write = 1```</span>
6719        #[allow(non_upper_case_globals)]
6720        pub const Write: crate::q_buffer::AccessType = crate::q_buffer::AccessType(1);
6721        /// C++ enum variant: <span style='color: green;'>```Read = 2```</span>
6722        #[allow(non_upper_case_globals)]
6723        pub const Read: crate::q_buffer::AccessType = crate::q_buffer::AccessType(2);
6724        /// C++ enum variant: <span style='color: green;'>```ReadWrite = 3```</span>
6725        #[allow(non_upper_case_globals)]
6726        pub const ReadWrite: crate::q_buffer::AccessType = crate::q_buffer::AccessType(3);
6727    }
6728}
6729/// <p>Provides a data store for raw data to later be used as vertices or uniforms.</p>
6730///
6731/// C++ class: <span style='color: green;'>```Qt3DRender::QBuffer```</span>.
6732///
6733/// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a data store for raw data to later be used as vertices or uniforms.</p>
6734/// <p>Data can either be provided directly using <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#setData">QBuffer::setData</a>() or by specifying a generator with <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#setDataGenerator">QBuffer::setDataGenerator</a>() and providing a <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#QBufferDataGeneratorPtr-typedef">Qt3DRender::QBufferDataGeneratorPtr</a>.</p>
6735/// <p>When using a generator the data will be loaded asynchronously in a job. The loaded data can be read back if the <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#syncData-prop">QBuffer::syncData</a> flag is set to true.</p></div>
6736#[repr(C)]
6737pub struct QBuffer {
6738    _unused: u8,
6739}
6740impl QBuffer {
6741    /// <p>Holds the buffer type.</p>
6742    ///
6743    /// Returns a built-in Qt slot `Qt3DRender::QBuffer::setType` that can be passed to `qt_core::Signal::connect`.
6744    ///
6745    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#type-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer type.</p>
6746    /// <p><b>Access functions:</b></p>
6747    /// <div class="table"><table class="alignedsummary">
6748    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BufferType </td><td class="memItemRight bottomAlign"><span class="name"><b>type</b></span>() const</td></tr>
6749    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setType</b></span>(BufferType <i>type</i>)</td></tr>
6750    /// </tbody></table></div>
6751    /// <p><b>Notifier signal:</b></p>
6752    /// <div class="table"><table class="alignedsummary">
6753    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>typeChanged</b></span>(BufferType <i>type</i>)</td></tr>
6754    /// </tbody></table></div></div>
6755    #[inline(always)]
6756    pub fn slot_set_type(&self) -> ::qt_core::Receiver<(crate::q_buffer::BufferType,)> {
6757        unsafe {
6758            ::qt_core::Receiver::new(
6759                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6760                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6761                    b"1setType(Qt3DRender::QBuffer::BufferType)\0",
6762                ),
6763            )
6764        }
6765    }
6766
6767    /// <p>Holds the buffer usage.</p>
6768    ///
6769    /// Returns a built-in Qt slot `Qt3DRender::QBuffer::setUsage` that can be passed to `qt_core::Signal::connect`.
6770    ///
6771    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#usage-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer usage.</p>
6772    /// <p><b>Access functions:</b></p>
6773    /// <div class="table"><table class="alignedsummary">
6774    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> UsageType </td><td class="memItemRight bottomAlign"><span class="name"><b>usage</b></span>() const</td></tr>
6775    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setUsage</b></span>(UsageType <i>usage</i>)</td></tr>
6776    /// </tbody></table></div>
6777    /// <p><b>Notifier signal:</b></p>
6778    /// <div class="table"><table class="alignedsummary">
6779    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>usageChanged</b></span>(UsageType <i>usage</i>)</td></tr>
6780    /// </tbody></table></div></div>
6781    #[inline(always)]
6782    pub fn slot_set_usage(&self) -> ::qt_core::Receiver<(crate::q_buffer::UsageType,)> {
6783        unsafe {
6784            ::qt_core::Receiver::new(
6785                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6786                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6787                    b"1setUsage(Qt3DRender::QBuffer::UsageType)\0",
6788                ),
6789            )
6790        }
6791    }
6792
6793    /// <p>Holds the syncData flag. When syncData is true, this will force data created by a <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">Qt3DRender::QBufferDataGenerator</a> to also be updated on the frontend <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a> node. By default syncData is false.</p>
6794    ///
6795    /// Returns a built-in Qt slot `Qt3DRender::QBuffer::setSyncData` that can be passed to `qt_core::Signal::connect`.
6796    ///
6797    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#syncData-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the syncData flag. When syncData is true, this will force data created by a <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">Qt3DRender::QBufferDataGenerator</a> to also be updated on the frontend <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a> node. By default syncData is false.</p>
6798    /// <p><b>Note: </b>: This has no effect if the buffer's data was set directly using the data property.</p><p><b>Access functions:</b></p>
6799    /// <div class="table"><table class="alignedsummary">
6800    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isSyncData</b></span>() const</td></tr>
6801    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSyncData</b></span>(bool <i>syncData</i>)</td></tr>
6802    /// </tbody></table></div>
6803    /// <p><b>Notifier signal:</b></p>
6804    /// <div class="table"><table class="alignedsummary">
6805    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>syncDataChanged</b></span>(bool <i>syncData</i>)</td></tr>
6806    /// </tbody></table></div></div>
6807    #[inline(always)]
6808    pub fn slot_set_sync_data(&self) -> ::qt_core::Receiver<(bool,)> {
6809        unsafe {
6810            ::qt_core::Receiver::new(
6811                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6812                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSyncData(bool)\0"),
6813            )
6814        }
6815    }
6816
6817    /// <p><b>Access functions:</b></p>
6818    ///
6819    /// Returns a built-in Qt slot `Qt3DRender::QBuffer::setAccessType` that can be passed to `qt_core::Signal::connect`.
6820    ///
6821    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#accessType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6822    /// <div class="table"><table class="alignedsummary">
6823    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AccessType </td><td class="memItemRight bottomAlign"><span class="name"><b>accessType</b></span>() const</td></tr>
6824    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAccessType</b></span>(AccessType <i>access</i>)</td></tr>
6825    /// </tbody></table></div>
6826    /// <p><b>Notifier signal:</b></p>
6827    /// <div class="table"><table class="alignedsummary">
6828    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>accessTypeChanged</b></span>(AccessType <i>access</i>)</td></tr>
6829    /// </tbody></table></div></div>
6830    #[inline(always)]
6831    pub fn slot_set_access_type(&self) -> ::qt_core::Receiver<(crate::q_buffer::AccessType,)> {
6832        unsafe {
6833            ::qt_core::Receiver::new(
6834                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6835                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6836                    b"1setAccessType(Qt3DRender::QBuffer::AccessType)\0",
6837                ),
6838            )
6839        }
6840    }
6841
6842    /// <p>This signal is emitted with <i>bytes</i> when data changes.</p>
6843    ///
6844    /// Returns a built-in Qt signal `Qt3DRender::QBuffer::dataChanged` that can be passed to `qt_core::Signal::connect`.
6845    ///
6846    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#dataChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted with <i>bytes</i> when data changes.</p></div>
6847    #[inline(always)]
6848    pub fn data_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QByteArray,)> {
6849        unsafe {
6850            ::qt_core::Signal::new(
6851                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6852                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6853                    b"2dataChanged(QByteArray const &)\0",
6854                ),
6855            )
6856        }
6857    }
6858
6859    /// <p>Holds the buffer type.</p>
6860    ///
6861    /// Returns a built-in Qt signal `Qt3DRender::QBuffer::typeChanged` that can be passed to `qt_core::Signal::connect`.
6862    ///
6863    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#type-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer type.</p>
6864    /// <p><b>Access functions:</b></p>
6865    /// <div class="table"><table class="alignedsummary">
6866    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BufferType </td><td class="memItemRight bottomAlign"><span class="name"><b>type</b></span>() const</td></tr>
6867    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setType</b></span>(BufferType <i>type</i>)</td></tr>
6868    /// </tbody></table></div>
6869    /// <p><b>Notifier signal:</b></p>
6870    /// <div class="table"><table class="alignedsummary">
6871    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>typeChanged</b></span>(BufferType <i>type</i>)</td></tr>
6872    /// </tbody></table></div></div>
6873    #[inline(always)]
6874    pub fn type_changed(&self) -> ::qt_core::Signal<(crate::q_buffer::BufferType,)> {
6875        unsafe {
6876            ::qt_core::Signal::new(
6877                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6878                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6879                    b"2typeChanged(Qt3DRender::QBuffer::BufferType)\0",
6880                ),
6881            )
6882        }
6883    }
6884
6885    /// <p>Holds the buffer usage.</p>
6886    ///
6887    /// Returns a built-in Qt signal `Qt3DRender::QBuffer::usageChanged` that can be passed to `qt_core::Signal::connect`.
6888    ///
6889    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#usage-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer usage.</p>
6890    /// <p><b>Access functions:</b></p>
6891    /// <div class="table"><table class="alignedsummary">
6892    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> UsageType </td><td class="memItemRight bottomAlign"><span class="name"><b>usage</b></span>() const</td></tr>
6893    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setUsage</b></span>(UsageType <i>usage</i>)</td></tr>
6894    /// </tbody></table></div>
6895    /// <p><b>Notifier signal:</b></p>
6896    /// <div class="table"><table class="alignedsummary">
6897    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>usageChanged</b></span>(UsageType <i>usage</i>)</td></tr>
6898    /// </tbody></table></div></div>
6899    #[inline(always)]
6900    pub fn usage_changed(&self) -> ::qt_core::Signal<(crate::q_buffer::UsageType,)> {
6901        unsafe {
6902            ::qt_core::Signal::new(
6903                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6904                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6905                    b"2usageChanged(Qt3DRender::QBuffer::UsageType)\0",
6906                ),
6907            )
6908        }
6909    }
6910
6911    /// <p>Holds the syncData flag. When syncData is true, this will force data created by a <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">Qt3DRender::QBufferDataGenerator</a> to also be updated on the frontend <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a> node. By default syncData is false.</p>
6912    ///
6913    /// Returns a built-in Qt signal `Qt3DRender::QBuffer::syncDataChanged` that can be passed to `qt_core::Signal::connect`.
6914    ///
6915    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#syncData-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the syncData flag. When syncData is true, this will force data created by a <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">Qt3DRender::QBufferDataGenerator</a> to also be updated on the frontend <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a> node. By default syncData is false.</p>
6916    /// <p><b>Note: </b>: This has no effect if the buffer's data was set directly using the data property.</p><p><b>Access functions:</b></p>
6917    /// <div class="table"><table class="alignedsummary">
6918    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isSyncData</b></span>() const</td></tr>
6919    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSyncData</b></span>(bool <i>syncData</i>)</td></tr>
6920    /// </tbody></table></div>
6921    /// <p><b>Notifier signal:</b></p>
6922    /// <div class="table"><table class="alignedsummary">
6923    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>syncDataChanged</b></span>(bool <i>syncData</i>)</td></tr>
6924    /// </tbody></table></div></div>
6925    #[inline(always)]
6926    pub fn sync_data_changed(&self) -> ::qt_core::Signal<(bool,)> {
6927        unsafe {
6928            ::qt_core::Signal::new(
6929                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6930                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2syncDataChanged(bool)\0"),
6931            )
6932        }
6933    }
6934
6935    /// <p><b>Access functions:</b></p>
6936    ///
6937    /// Returns a built-in Qt signal `Qt3DRender::QBuffer::accessTypeChanged` that can be passed to `qt_core::Signal::connect`.
6938    ///
6939    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#accessType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6940    /// <div class="table"><table class="alignedsummary">
6941    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AccessType </td><td class="memItemRight bottomAlign"><span class="name"><b>accessType</b></span>() const</td></tr>
6942    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAccessType</b></span>(AccessType <i>access</i>)</td></tr>
6943    /// </tbody></table></div>
6944    /// <p><b>Notifier signal:</b></p>
6945    /// <div class="table"><table class="alignedsummary">
6946    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>accessTypeChanged</b></span>(AccessType <i>access</i>)</td></tr>
6947    /// </tbody></table></div></div>
6948    #[inline(always)]
6949    pub fn access_type_changed(&self) -> ::qt_core::Signal<(crate::q_buffer::AccessType,)> {
6950        unsafe {
6951            ::qt_core::Signal::new(
6952                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6953                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
6954                    b"2accessTypeChanged(Qt3DRender::QBuffer::AccessType)\0",
6955                ),
6956            )
6957        }
6958    }
6959
6960    /// <p>This signal is emitted when data becomes available.</p>
6961    ///
6962    /// Returns a built-in Qt signal `Qt3DRender::QBuffer::dataAvailable` that can be passed to `qt_core::Signal::connect`.
6963    ///
6964    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#dataAvailable">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when data becomes available.</p></div>
6965    #[inline(always)]
6966    pub fn data_available(&self) -> ::qt_core::Signal<()> {
6967        unsafe {
6968            ::qt_core::Signal::new(
6969                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
6970                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2dataAvailable()\0"),
6971            )
6972        }
6973    }
6974
6975    /// <p><b>Access functions:</b></p>
6976    ///
6977    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBuffer::AccessType Qt3DRender::QBuffer::accessType() const```</span>.
6978    ///
6979    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#accessType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
6980    /// <div class="table"><table class="alignedsummary">
6981    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AccessType </td><td class="memItemRight bottomAlign"><span class="name"><b>accessType</b></span>() const</td></tr>
6982    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAccessType</b></span>(AccessType <i>access</i>)</td></tr>
6983    /// </tbody></table></div>
6984    /// <p><b>Notifier signal:</b></p>
6985    /// <div class="table"><table class="alignedsummary">
6986    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>accessTypeChanged</b></span>(AccessType <i>access</i>)</td></tr>
6987    /// </tbody></table></div></div>
6988    #[inline(always)]
6989    pub unsafe fn access_type(&self) -> crate::q_buffer::AccessType {
6990        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_accessType(
6991            self as *const crate::QBuffer,
6992        )
6993    }
6994
6995    /// <p>Returns the data.</p>
6996    ///
6997    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QBuffer::data() const```</span>.
6998    ///
6999    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the data.</p>
7000    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#setData">setData</a>().</p></div>
7001    #[inline(always)]
7002    pub unsafe fn data(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
7003        let ffi_result = {
7004            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_data(
7005                self as *const crate::QBuffer,
7006            )
7007        };
7008        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7009    }
7010
7011    /// <p>Holds the syncData flag. When syncData is true, this will force data created by a <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">Qt3DRender::QBufferDataGenerator</a> to also be updated on the frontend <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a> node. By default syncData is false.</p>
7012    ///
7013    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QBuffer::isSyncData() const```</span>.
7014    ///
7015    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#syncData-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the syncData flag. When syncData is true, this will force data created by a <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">Qt3DRender::QBufferDataGenerator</a> to also be updated on the frontend <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a> node. By default syncData is false.</p>
7016    /// <p><b>Note: </b>: This has no effect if the buffer's data was set directly using the data property.</p><p><b>Access functions:</b></p>
7017    /// <div class="table"><table class="alignedsummary">
7018    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isSyncData</b></span>() const</td></tr>
7019    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSyncData</b></span>(bool <i>syncData</i>)</td></tr>
7020    /// </tbody></table></div>
7021    /// <p><b>Notifier signal:</b></p>
7022    /// <div class="table"><table class="alignedsummary">
7023    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>syncDataChanged</b></span>(bool <i>syncData</i>)</td></tr>
7024    /// </tbody></table></div></div>
7025    #[inline(always)]
7026    pub unsafe fn is_sync_data(&self) -> bool {
7027        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_isSyncData(
7028            self as *const crate::QBuffer,
7029        )
7030    }
7031
7032    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QBuffer::metaObject() const```</span>.
7033    #[inline(always)]
7034    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
7035        let ffi_result = {
7036            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_metaObject(
7037                self as *const crate::QBuffer,
7038            )
7039        };
7040        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7041    }
7042
7043    /// <p>Default constructs an instance of QBuffer.</p>
7044    ///
7045    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType ty = …, Qt3DCore::QNode* parent = …)```</span>.
7046    ///
7047    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#QBuffer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QBuffer.</p></div>
7048    #[inline(always)]
7049    pub unsafe fn from_buffer_type_q_node(
7050        ty: crate::q_buffer::BufferType,
7051        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
7052    ) -> ::qt_core::QBox<crate::QBuffer> {
7053        let ffi_result = {
7054            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_QBuffer(
7055                ty,
7056                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
7057                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
7058            )
7059        };
7060        ::qt_core::QBox::from_raw(ffi_result)
7061    }
7062
7063    /// <p>Provides a data store for raw data to later be used as vertices or uniforms.</p>
7064    ///
7065    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBuffer::QBuffer()```</span>.
7066    ///
7067    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a data store for raw data to later be used as vertices or uniforms.</p>
7068    /// <p>Data can either be provided directly using <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#setData">QBuffer::setData</a>() or by specifying a generator with <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#setDataGenerator">QBuffer::setDataGenerator</a>() and providing a <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#QBufferDataGeneratorPtr-typedef">Qt3DRender::QBufferDataGeneratorPtr</a>.</p>
7069    /// <p>When using a generator the data will be loaded asynchronously in a job. The loaded data can be read back if the <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#syncData-prop">QBuffer::syncData</a> flag is set to true.</p></div>
7070    #[inline(always)]
7071    pub unsafe fn new() -> ::qt_core::QBox<crate::QBuffer> {
7072        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_QBuffer1() };
7073        ::qt_core::QBox::from_raw(ffi_result)
7074    }
7075
7076    /// <p>Default constructs an instance of QBuffer.</p>
7077    ///
7078    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType ty = …)```</span>.
7079    ///
7080    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#QBuffer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QBuffer.</p></div>
7081    #[inline(always)]
7082    pub unsafe fn from_buffer_type(
7083        ty: crate::q_buffer::BufferType,
7084    ) -> ::qt_core::QBox<crate::QBuffer> {
7085        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_QBuffer3(ty) };
7086        ::qt_core::QBox::from_raw(ffi_result)
7087    }
7088
7089    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">QBuffer</a> with <i>parent</i>.</p>
7090    ///
7091    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBuffer::QBuffer(Qt3DCore::QNode* parent = …)```</span>.
7092    ///
7093    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#QBuffer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">QBuffer</a> with <i>parent</i>.</p></div>
7094    #[inline(always)]
7095    #[cfg_attr(
7096        feature = "ritual_rustdoc_nightly",
7097        doc(cfg(any(
7098            cpp_lib_version = "5.11.3",
7099            cpp_lib_version = "5.12.2",
7100            cpp_lib_version = "5.13.0",
7101            cpp_lib_version = "5.14.0"
7102        )))
7103    )]
7104    #[cfg(any(
7105        any(
7106            cpp_lib_version = "5.11.3",
7107            cpp_lib_version = "5.12.2",
7108            cpp_lib_version = "5.13.0",
7109            cpp_lib_version = "5.14.0"
7110        ),
7111        feature = "ritual_rustdoc"
7112    ))]
7113    pub unsafe fn from_q_node(
7114        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
7115    ) -> ::qt_core::QBox<crate::QBuffer> {
7116        let ffi_result = {
7117            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_QBuffer8(
7118                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
7119                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
7120            )
7121        };
7122        ::qt_core::QBox::from_raw(ffi_result)
7123    }
7124
7125    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QBuffer::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
7126    #[inline(always)]
7127    pub unsafe fn qt_metacall(
7128        &self,
7129        arg1: ::qt_core::q_meta_object::Call,
7130        arg2: ::std::os::raw::c_int,
7131        arg3: *mut *mut ::std::ffi::c_void,
7132    ) -> ::std::os::raw::c_int {
7133        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_qt_metacall(
7134            self as *const crate::QBuffer as *mut crate::QBuffer,
7135            arg1,
7136            arg2,
7137            arg3,
7138        )
7139    }
7140
7141    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QBuffer::qt_metacast(const char* arg1)```</span>.
7142    #[inline(always)]
7143    pub unsafe fn qt_metacast(
7144        &self,
7145        arg1: *const ::std::os::raw::c_char,
7146    ) -> *mut ::std::ffi::c_void {
7147        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_qt_metacast(
7148            self as *const crate::QBuffer as *mut crate::QBuffer,
7149            arg1,
7150        )
7151    }
7152
7153    /// <p><b>Access functions:</b></p>
7154    ///
7155    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBuffer::setAccessType(Qt3DRender::QBuffer::AccessType access)```</span>.
7156    ///
7157    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#accessType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
7158    /// <div class="table"><table class="alignedsummary">
7159    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AccessType </td><td class="memItemRight bottomAlign"><span class="name"><b>accessType</b></span>() const</td></tr>
7160    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAccessType</b></span>(AccessType <i>access</i>)</td></tr>
7161    /// </tbody></table></div>
7162    /// <p><b>Notifier signal:</b></p>
7163    /// <div class="table"><table class="alignedsummary">
7164    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>accessTypeChanged</b></span>(AccessType <i>access</i>)</td></tr>
7165    /// </tbody></table></div></div>
7166    #[inline(always)]
7167    pub unsafe fn set_access_type(&self, access: crate::q_buffer::AccessType) {
7168        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_setAccessType(
7169            self as *const crate::QBuffer as *mut crate::QBuffer,
7170            access,
7171        )
7172    }
7173
7174    /// <p>Sets <i>bytes</i> as data.</p>
7175    ///
7176    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QBuffer::setData(const QByteArray& bytes)```</span>.
7177    ///
7178    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#setData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets <i>bytes</i> as data.</p>
7179    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#data">data</a>().</p></div>
7180    #[inline(always)]
7181    pub unsafe fn set_data(
7182        &self,
7183        bytes: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
7184    ) {
7185        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_setData(
7186            self as *const crate::QBuffer as *mut crate::QBuffer,
7187            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(bytes)
7188                .as_raw_ptr(),
7189        )
7190    }
7191
7192    /// <p>Holds the syncData flag. When syncData is true, this will force data created by a <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">Qt3DRender::QBufferDataGenerator</a> to also be updated on the frontend <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a> node. By default syncData is false.</p>
7193    ///
7194    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBuffer::setSyncData(bool syncData)```</span>.
7195    ///
7196    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#syncData-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the syncData flag. When syncData is true, this will force data created by a <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">Qt3DRender::QBufferDataGenerator</a> to also be updated on the frontend <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a> node. By default syncData is false.</p>
7197    /// <p><b>Note: </b>: This has no effect if the buffer's data was set directly using the data property.</p><p><b>Access functions:</b></p>
7198    /// <div class="table"><table class="alignedsummary">
7199    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isSyncData</b></span>() const</td></tr>
7200    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSyncData</b></span>(bool <i>syncData</i>)</td></tr>
7201    /// </tbody></table></div>
7202    /// <p><b>Notifier signal:</b></p>
7203    /// <div class="table"><table class="alignedsummary">
7204    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>syncDataChanged</b></span>(bool <i>syncData</i>)</td></tr>
7205    /// </tbody></table></div></div>
7206    #[inline(always)]
7207    pub unsafe fn set_sync_data(&self, sync_data: bool) {
7208        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_setSyncData(
7209            self as *const crate::QBuffer as *mut crate::QBuffer,
7210            sync_data,
7211        )
7212    }
7213
7214    /// <p>Holds the buffer type.</p>
7215    ///
7216    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBuffer::setType(Qt3DRender::QBuffer::BufferType type)```</span>.
7217    ///
7218    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#type-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer type.</p>
7219    /// <p><b>Access functions:</b></p>
7220    /// <div class="table"><table class="alignedsummary">
7221    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BufferType </td><td class="memItemRight bottomAlign"><span class="name"><b>type</b></span>() const</td></tr>
7222    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setType</b></span>(BufferType <i>type</i>)</td></tr>
7223    /// </tbody></table></div>
7224    /// <p><b>Notifier signal:</b></p>
7225    /// <div class="table"><table class="alignedsummary">
7226    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>typeChanged</b></span>(BufferType <i>type</i>)</td></tr>
7227    /// </tbody></table></div></div>
7228    #[inline(always)]
7229    pub unsafe fn set_type(&self, type_: crate::q_buffer::BufferType) {
7230        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_setType(
7231            self as *const crate::QBuffer as *mut crate::QBuffer,
7232            type_,
7233        )
7234    }
7235
7236    /// <p>Holds the buffer usage.</p>
7237    ///
7238    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QBuffer::setUsage(Qt3DRender::QBuffer::UsageType usage)```</span>.
7239    ///
7240    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#usage-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer usage.</p>
7241    /// <p><b>Access functions:</b></p>
7242    /// <div class="table"><table class="alignedsummary">
7243    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> UsageType </td><td class="memItemRight bottomAlign"><span class="name"><b>usage</b></span>() const</td></tr>
7244    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setUsage</b></span>(UsageType <i>usage</i>)</td></tr>
7245    /// </tbody></table></div>
7246    /// <p><b>Notifier signal:</b></p>
7247    /// <div class="table"><table class="alignedsummary">
7248    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>usageChanged</b></span>(UsageType <i>usage</i>)</td></tr>
7249    /// </tbody></table></div></div>
7250    #[inline(always)]
7251    pub unsafe fn set_usage(&self, usage: crate::q_buffer::UsageType) {
7252        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_setUsage(
7253            self as *const crate::QBuffer as *mut crate::QBuffer,
7254            usage,
7255        )
7256    }
7257
7258    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
7259    #[inline(always)]
7260    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
7261        let ffi_result =
7262            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_staticMetaObject() };
7263        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7264            .expect("attempted to construct a null Ref")
7265    }
7266
7267    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBuffer::tr(const char* s, const char* c, int n)```</span>.
7268    #[inline(always)]
7269    pub unsafe fn tr(
7270        s: *const ::std::os::raw::c_char,
7271        c: *const ::std::os::raw::c_char,
7272        n: ::std::os::raw::c_int,
7273    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7274        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_tr(s, c, n) };
7275        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7276    }
7277
7278    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBuffer::trUtf8(const char* s, const char* c, int n)```</span>.
7279    #[inline(always)]
7280    pub unsafe fn tr_utf8(
7281        s: *const ::std::os::raw::c_char,
7282        c: *const ::std::os::raw::c_char,
7283        n: ::std::os::raw::c_int,
7284    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7285        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_trUtf8(s, c, n) };
7286        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7287    }
7288
7289    /// <p>Holds the buffer type.</p>
7290    ///
7291    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBuffer::BufferType Qt3DRender::QBuffer::type() const```</span>.
7292    ///
7293    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#type-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer type.</p>
7294    /// <p><b>Access functions:</b></p>
7295    /// <div class="table"><table class="alignedsummary">
7296    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BufferType </td><td class="memItemRight bottomAlign"><span class="name"><b>type</b></span>() const</td></tr>
7297    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setType</b></span>(BufferType <i>type</i>)</td></tr>
7298    /// </tbody></table></div>
7299    /// <p><b>Notifier signal:</b></p>
7300    /// <div class="table"><table class="alignedsummary">
7301    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>typeChanged</b></span>(BufferType <i>type</i>)</td></tr>
7302    /// </tbody></table></div></div>
7303    #[inline(always)]
7304    pub unsafe fn type_(&self) -> crate::q_buffer::BufferType {
7305        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_type(self as *const crate::QBuffer)
7306    }
7307
7308    /// <p>Updates the data by replacing it with <i>bytes</i> at <i>offset</i>.</p>
7309    ///
7310    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QBuffer::updateData(int offset, const QByteArray& bytes)```</span>.
7311    ///
7312    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#updateData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Updates the data by replacing it with <i>bytes</i> at <i>offset</i>.</p></div>
7313    #[inline(always)]
7314    pub unsafe fn update_data(
7315        &self,
7316        offset: ::std::os::raw::c_int,
7317        bytes: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
7318    ) {
7319        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_updateData(
7320            self as *const crate::QBuffer as *mut crate::QBuffer,
7321            offset,
7322            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(bytes)
7323                .as_raw_ptr(),
7324        )
7325    }
7326
7327    /// <p>Holds the buffer usage.</p>
7328    ///
7329    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBuffer::UsageType Qt3DRender::QBuffer::usage() const```</span>.
7330    ///
7331    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html#usage-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the buffer usage.</p>
7332    /// <p><b>Access functions:</b></p>
7333    /// <div class="table"><table class="alignedsummary">
7334    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> UsageType </td><td class="memItemRight bottomAlign"><span class="name"><b>usage</b></span>() const</td></tr>
7335    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setUsage</b></span>(UsageType <i>usage</i>)</td></tr>
7336    /// </tbody></table></div>
7337    /// <p><b>Notifier signal:</b></p>
7338    /// <div class="table"><table class="alignedsummary">
7339    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>usageChanged</b></span>(UsageType <i>usage</i>)</td></tr>
7340    /// </tbody></table></div></div>
7341    #[inline(always)]
7342    pub unsafe fn usage(&self) -> crate::q_buffer::UsageType {
7343        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_usage(self as *const crate::QBuffer)
7344    }
7345}
7346
7347/// <p>Base class of all FrameGraph configuration nodes.</p>
7348///
7349/// C++ class: <span style='color: green;'>```Qt3DRender::QFrameGraphNode```</span>.
7350///
7351/// <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Base class of all FrameGraph configuration nodes.</p>
7352/// <p>This class is rarely instanced directly since it doesn't provide any frame graph specific behavior, although it can be convenient to use for grouping other nodes together in dynamic frame graphs. The actual behavior comes from the subclasses.</p>
7353/// <p>The subclasses are:</p>
7354/// <div class="table"><table class="generic">
7355///  <thead><tr class="qt-style"><th>class</th><th>description</th></tr></thead>
7356/// <tbody><tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">Qt3DRender::QCameraSelector</a></td><td>Select camera from all available cameras in the scene</td></tr>
7357/// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">Qt3DRender::QClearBuffers</a></td><td>Specify which buffers to clear and to what values</td></tr>
7358/// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">Qt3DRender::QDispatchCompute</a></td><td>Specify Compute operation kernels</td></tr>
7359/// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">Qt3DRender::QFrustumCulling</a></td><td>Enable frustum culling</td></tr>
7360/// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">Qt3DRender::QLayerFilter</a></td><td>Select which layers to draw</td></tr>
7361/// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a></td><td>Disable drawing</td></tr>
7362/// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">Qt3DRender::QRenderPassFilter</a></td><td>Select which render passes to draw</td></tr>
7363/// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">Qt3DRender::QRenderStateSet</a></td><td>Set render states</td></tr>
7364/// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">Qt3DRender::QRenderSurfaceSelector</a></td><td>Select which surface to draw to</td></tr>
7365/// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a></td><td>Select which <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> to draw to</td></tr>
7366/// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">Qt3DRender::QSortPolicy</a></td><td>Specify how entities are sorted to determine draw order</td></tr>
7367/// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">Qt3DRender::QTechniqueFilter</a></td><td>Select which techniques to draw</td></tr>
7368/// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">Qt3DRender::QViewport</a></td><td>Specify viewport</td></tr>
7369/// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html">Qt3DRender::QMemoryBarrier</a></td><td>Places a memory barrier</td></tr>
7370/// </tbody></table></div></div>
7371#[repr(C)]
7372pub struct QFrameGraphNode {
7373    _unused: u8,
7374}
7375impl QFrameGraphNode {
7376    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QFrameGraphNode::metaObject() const```</span>.
7377    #[inline(always)]
7378    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
7379        let ffi_result = {
7380            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_metaObject(
7381                self as *const crate::QFrameGraphNode,
7382            )
7383        };
7384        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7385    }
7386
7387    /// <p>Default constructs an instance of QFrameGraphNode.</p>
7388    ///
7389    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QFrameGraphNode::QFrameGraphNode(Qt3DCore::QNode* parent = …)```</span>.
7390    ///
7391    /// <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html#QFrameGraphNode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QFrameGraphNode.</p></div>
7392    #[inline(always)]
7393    pub unsafe fn new_1a(
7394        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
7395    ) -> ::qt_core::QBox<crate::QFrameGraphNode> {
7396        let ffi_result = {
7397            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_QFrameGraphNode(
7398                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
7399                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
7400            )
7401        };
7402        ::qt_core::QBox::from_raw(ffi_result)
7403    }
7404
7405    /// <p>Base class of all FrameGraph configuration nodes.</p>
7406    ///
7407    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QFrameGraphNode::QFrameGraphNode()```</span>.
7408    ///
7409    /// <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Base class of all FrameGraph configuration nodes.</p>
7410    /// <p>This class is rarely instanced directly since it doesn't provide any frame graph specific behavior, although it can be convenient to use for grouping other nodes together in dynamic frame graphs. The actual behavior comes from the subclasses.</p>
7411    /// <p>The subclasses are:</p>
7412    /// <div class="table"><table class="generic">
7413    ///  <thead><tr class="qt-style"><th>class</th><th>description</th></tr></thead>
7414    /// <tbody><tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">Qt3DRender::QCameraSelector</a></td><td>Select camera from all available cameras in the scene</td></tr>
7415    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">Qt3DRender::QClearBuffers</a></td><td>Specify which buffers to clear and to what values</td></tr>
7416    /// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">Qt3DRender::QDispatchCompute</a></td><td>Specify Compute operation kernels</td></tr>
7417    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">Qt3DRender::QFrustumCulling</a></td><td>Enable frustum culling</td></tr>
7418    /// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">Qt3DRender::QLayerFilter</a></td><td>Select which layers to draw</td></tr>
7419    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a></td><td>Disable drawing</td></tr>
7420    /// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">Qt3DRender::QRenderPassFilter</a></td><td>Select which render passes to draw</td></tr>
7421    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">Qt3DRender::QRenderStateSet</a></td><td>Set render states</td></tr>
7422    /// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">Qt3DRender::QRenderSurfaceSelector</a></td><td>Select which surface to draw to</td></tr>
7423    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a></td><td>Select which <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> to draw to</td></tr>
7424    /// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">Qt3DRender::QSortPolicy</a></td><td>Specify how entities are sorted to determine draw order</td></tr>
7425    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">Qt3DRender::QTechniqueFilter</a></td><td>Select which techniques to draw</td></tr>
7426    /// <tr valign="top" class="odd"><td><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">Qt3DRender::QViewport</a></td><td>Specify viewport</td></tr>
7427    /// <tr valign="top" class="even"><td><a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html">Qt3DRender::QMemoryBarrier</a></td><td>Places a memory barrier</td></tr>
7428    /// </tbody></table></div></div>
7429    #[inline(always)]
7430    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QFrameGraphNode> {
7431        let ffi_result =
7432            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_QFrameGraphNode1() };
7433        ::qt_core::QBox::from_raw(ffi_result)
7434    }
7435
7436    /// <p>Returns a pointer to the parent.</p>
7437    ///
7438    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* Qt3DRender::QFrameGraphNode::parentFrameGraphNode() const```</span>.
7439    ///
7440    /// <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html#parentFrameGraphNode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the parent.</p></div>
7441    #[inline(always)]
7442    pub unsafe fn parent_frame_graph_node(&self) -> ::qt_core::QPtr<crate::QFrameGraphNode> {
7443        let ffi_result = {
7444            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_parentFrameGraphNode(
7445                self as *const crate::QFrameGraphNode,
7446            )
7447        };
7448        ::qt_core::QPtr::from_raw(ffi_result)
7449    }
7450
7451    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QFrameGraphNode::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
7452    #[inline(always)]
7453    pub unsafe fn qt_metacall(
7454        &self,
7455        arg1: ::qt_core::q_meta_object::Call,
7456        arg2: ::std::os::raw::c_int,
7457        arg3: *mut *mut ::std::ffi::c_void,
7458    ) -> ::std::os::raw::c_int {
7459        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_qt_metacall(
7460            self as *const crate::QFrameGraphNode as *mut crate::QFrameGraphNode,
7461            arg1,
7462            arg2,
7463            arg3,
7464        )
7465    }
7466
7467    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QFrameGraphNode::qt_metacast(const char* arg1)```</span>.
7468    #[inline(always)]
7469    pub unsafe fn qt_metacast(
7470        &self,
7471        arg1: *const ::std::os::raw::c_char,
7472    ) -> *mut ::std::ffi::c_void {
7473        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_qt_metacast(
7474            self as *const crate::QFrameGraphNode as *mut crate::QFrameGraphNode,
7475            arg1,
7476        )
7477    }
7478
7479    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
7480    #[inline(always)]
7481    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
7482        let ffi_result =
7483            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_staticMetaObject() };
7484        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7485            .expect("attempted to construct a null Ref")
7486    }
7487
7488    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QFrameGraphNode::tr(const char* s, const char* c, int n)```</span>.
7489    #[inline(always)]
7490    pub unsafe fn tr(
7491        s: *const ::std::os::raw::c_char,
7492        c: *const ::std::os::raw::c_char,
7493        n: ::std::os::raw::c_int,
7494    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7495        let ffi_result =
7496            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_tr(s, c, n) };
7497        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7498    }
7499
7500    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QFrameGraphNode::trUtf8(const char* s, const char* c, int n)```</span>.
7501    #[inline(always)]
7502    pub unsafe fn tr_utf8(
7503        s: *const ::std::os::raw::c_char,
7504        c: *const ::std::os::raw::c_char,
7505        n: ::std::os::raw::c_int,
7506    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7507        let ffi_result =
7508            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_trUtf8(s, c, n) };
7509        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7510    }
7511}
7512
7513/// <p>Exchanges buffer data between GPU and CPU.</p>
7514///
7515/// C++ class: <span style='color: green;'>```Qt3DRender::QBufferCapture```</span>.
7516///
7517/// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffercapture.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchanges buffer data between GPU and CPU.</p></div>
7518#[repr(C)]
7519pub struct QBufferCapture {
7520    _unused: u8,
7521}
7522impl QBufferCapture {
7523    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QBufferCapture::metaObject() const```</span>.
7524    #[inline(always)]
7525    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
7526        let ffi_result = {
7527            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferCapture_metaObject(
7528                self as *const crate::QBufferCapture,
7529            )
7530        };
7531        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7532    }
7533
7534    /// <p>Default constructs an instance of QBufferCapture.</p>
7535    ///
7536    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBufferCapture::QBufferCapture(Qt3DCore::QNode* parent = …)```</span>.
7537    ///
7538    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffercapture.html#QBufferCapture">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QBufferCapture.</p></div>
7539    #[inline(always)]
7540    pub unsafe fn new_1a(
7541        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
7542    ) -> ::qt_core::QBox<crate::QBufferCapture> {
7543        let ffi_result = {
7544            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferCapture_QBufferCapture(
7545                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
7546                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
7547            )
7548        };
7549        ::qt_core::QBox::from_raw(ffi_result)
7550    }
7551
7552    /// <p>Exchanges buffer data between GPU and CPU.</p>
7553    ///
7554    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBufferCapture::QBufferCapture()```</span>.
7555    ///
7556    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffercapture.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchanges buffer data between GPU and CPU.</p></div>
7557    #[inline(always)]
7558    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QBufferCapture> {
7559        let ffi_result =
7560            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferCapture_QBufferCapture1() };
7561        ::qt_core::QBox::from_raw(ffi_result)
7562    }
7563
7564    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QBufferCapture::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
7565    #[inline(always)]
7566    pub unsafe fn qt_metacall(
7567        &self,
7568        arg1: ::qt_core::q_meta_object::Call,
7569        arg2: ::std::os::raw::c_int,
7570        arg3: *mut *mut ::std::ffi::c_void,
7571    ) -> ::std::os::raw::c_int {
7572        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferCapture_qt_metacall(
7573            self as *const crate::QBufferCapture as *mut crate::QBufferCapture,
7574            arg1,
7575            arg2,
7576            arg3,
7577        )
7578    }
7579
7580    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QBufferCapture::qt_metacast(const char* arg1)```</span>.
7581    #[inline(always)]
7582    pub unsafe fn qt_metacast(
7583        &self,
7584        arg1: *const ::std::os::raw::c_char,
7585    ) -> *mut ::std::ffi::c_void {
7586        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferCapture_qt_metacast(
7587            self as *const crate::QBufferCapture as *mut crate::QBufferCapture,
7588            arg1,
7589        )
7590    }
7591
7592    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
7593    #[inline(always)]
7594    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
7595        let ffi_result =
7596            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferCapture_staticMetaObject() };
7597        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
7598            .expect("attempted to construct a null Ref")
7599    }
7600
7601    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBufferCapture::tr(const char* s, const char* c, int n)```</span>.
7602    #[inline(always)]
7603    pub unsafe fn tr(
7604        s: *const ::std::os::raw::c_char,
7605        c: *const ::std::os::raw::c_char,
7606        n: ::std::os::raw::c_int,
7607    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7608        let ffi_result =
7609            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferCapture_tr(s, c, n) };
7610        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7611    }
7612
7613    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBufferCapture::trUtf8(const char* s, const char* c, int n)```</span>.
7614    #[inline(always)]
7615    pub unsafe fn tr_utf8(
7616        s: *const ::std::os::raw::c_char,
7617        c: *const ::std::os::raw::c_char,
7618        n: ::std::os::raw::c_int,
7619    ) -> ::cpp_core::CppBox<::qt_core::QString> {
7620        let ffi_result =
7621            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferCapture_trUtf8(s, c, n) };
7622        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7623    }
7624}
7625
7626/// <p>Provides a mechanism to generate buffer data from a job.</p>
7627///
7628/// C++ class: <span style='color: green;'>```Qt3DRender::QBufferDataGenerator```</span>.
7629///
7630/// <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a mechanism to generate buffer data from a job.</p>
7631/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">Qt3DRender::QBufferDataGenerator</a> should be subclassed to provide a way to fill the data of a <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a>. Such functors are executed at runtime in a Qt 3D job (likely in parallel with many other jobs). When providing a functor you must implement the <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html#operator-28-29">operator</a>() which will be called to generate the actual data. You must make sure that you have stored copies of anything you might need for it to execute properly. You should also implement the operator==. It will be used to compare with other functors and based on that allow the renderer to decide if a new functor should be executed or not.</p>
7632/// <p><b>Note: </b>functors are useful when you can build data from a few set of attributes (e.g: building a sphere from a radius property). If you already have access to the buffer data, using Qt3DRender::QBuffer::setData() is likely more efficient.</p><pre class="cpp">
7633///
7634///   <span class="type"><a href="http://doc.qt.io/qt-5/qbytearray.html">QByteArray</a></span> createSphereMeshVertexData(<span class="type">float</span> radius<span class="operator">,</span> <span class="type">int</span> rings<span class="operator">,</span> <span class="type">int</span> slices)
7635///   {
7636/// &#32;     <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
7637///   }
7638///
7639///   <span class="keyword">class</span> SphereVertexDataFunctor : <span class="keyword">public</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">QBufferDataGenerator</a></span>
7640///   {
7641///   <span class="keyword">public</span>:
7642/// &#32;     SphereVertexDataFunctor(<span class="type">int</span> rings<span class="operator">,</span> <span class="type">int</span> slices<span class="operator">,</span> <span class="type">float</span> radius)
7643/// &#32;   &#32;     : m_rings(rings)
7644/// &#32;   &#32;     <span class="operator">,</span> m_slices(slices)
7645/// &#32;   &#32;     <span class="operator">,</span> m_radius(radius)
7646/// &#32;     {}
7647///
7648/// &#32;     <span class="type"><a href="http://doc.qt.io/qt-5/qbytearray.html">QByteArray</a></span> <span class="keyword">operator</span> ()() Q_DECL_OVERRIDE
7649/// &#32;     {
7650/// &#32;   &#32;     <span class="keyword">return</span> createSphereMeshVertexData(m_radius<span class="operator">,</span> m_rings<span class="operator">,</span> m_slices);
7651/// &#32;     }
7652///
7653/// &#32;     bool <span class="keyword">operator</span> <span class="operator">=</span><span class="operator">=</span>(<span class="keyword">const</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html">QBufferDataGenerator</a></span> <span class="operator">&amp;</span>other) <span class="keyword">const</span> Q_DECL_OVERRIDE
7654/// &#32;     {
7655/// &#32;   &#32;     <span class="keyword">const</span> SphereVertexDataFunctor <span class="operator">*</span>otherFunctor <span class="operator">=</span> functor_cast<span class="operator">&lt;</span>SphereVertexDataFunctor<span class="operator">&gt;</span>(<span class="operator">&amp;</span>other);
7656/// &#32;   &#32;     <span class="keyword">if</span> (otherFunctor <span class="operator">!</span><span class="operator">=</span> nullptr)
7657/// &#32;   &#32;   &#32;     <span class="keyword">return</span> (otherFunctor<span class="operator">-</span><span class="operator">&gt;</span>m_rings <span class="operator">=</span><span class="operator">=</span> m_rings <span class="operator">&amp;</span><span class="operator">&amp;</span>
7658/// &#32;   &#32;   &#32;   &#32;   &#32;     otherFunctor<span class="operator">-</span><span class="operator">&gt;</span>m_slices <span class="operator">=</span><span class="operator">=</span> m_slices <span class="operator">&amp;</span><span class="operator">&amp;</span>
7659/// &#32;   &#32;   &#32;   &#32;   &#32;     otherFunctor<span class="operator">-</span><span class="operator">&gt;</span>m_radius <span class="operator">=</span><span class="operator">=</span> m_radius);
7660/// &#32;   &#32;     <span class="keyword">return</span> <span class="keyword">false</span>;
7661/// &#32;     }
7662///
7663/// &#32;     QT3D_FUNCTOR(SphereVertexDataFunctor)
7664///
7665///   <span class="keyword">private</span>:
7666/// &#32;     <span class="type">int</span> m_rings;
7667/// &#32;     <span class="type">int</span> m_slices;
7668/// &#32;     <span class="type">float</span> m_radius;
7669///   };
7670///
7671/// </pre>
7672/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qabstractfunctor.html#QT3D_FUNCTOR">QT3D_FUNCTOR</a> macro should be added when subclassing. This allows you to use <a href="http://doc.qt.io/qt-5/qt3drender-qabstractfunctor.html#functor_cast">functor_cast</a> in your comparison operator to make sure that the other functor is of the same type as the one your are trying to compare against.</p></div>
7673#[repr(C)]
7674pub struct QBufferDataGenerator {
7675    _unused: u8,
7676}
7677impl QBufferDataGenerator {
7678    /// <p>Should be implemented to return the buffer data as a <a href="http://doc.qt.io/qt-5/qbytearray.html">QByteArray</a> when called.</p>
7679    ///
7680    /// Calls C++ function: <span style='color: green;'>```pure virtual QByteArray Qt3DRender::QBufferDataGenerator::operator()()```</span>.
7681    ///
7682    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html#operator-28-29">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Should be implemented to return the buffer data as a <a href="http://doc.qt.io/qt-5/qbytearray.html">QByteArray</a> when called.</p></div>
7683    #[inline(always)]
7684    pub unsafe fn call(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
7685        let ffi_result = {
7686            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferDataGenerator_operator__(
7687                self as *const crate::QBufferDataGenerator as *mut crate::QBufferDataGenerator,
7688            )
7689        };
7690        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
7691    }
7692}
7693
7694pub mod q_camera_lens {
7695    //! C++ type: <span style='color: green;'>```Qt3DRender::QCameraLens```</span>
7696
7697    /// C++ enum: <span style='color: green;'>```Qt3DRender::QCameraLens::ProjectionType```</span>.
7698    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
7699    #[repr(transparent)]
7700    pub struct ProjectionType(::std::os::raw::c_int);
7701
7702    impl From<::std::os::raw::c_int> for ProjectionType {
7703        fn from(value: ::std::os::raw::c_int) -> Self {
7704            ProjectionType(value)
7705        }
7706    }
7707
7708    impl From<ProjectionType> for ::std::os::raw::c_int {
7709        fn from(value: ProjectionType) -> Self {
7710            value.0
7711        }
7712    }
7713
7714    impl ProjectionType {
7715        pub fn to_int(&self) -> ::std::os::raw::c_int {
7716            self.0
7717        }
7718    }
7719
7720    impl ProjectionType {
7721        /// C++ enum variant: <span style='color: green;'>```OrthographicProjection = 0```</span>
7722        #[allow(non_upper_case_globals)]
7723        pub const OrthographicProjection: crate::q_camera_lens::ProjectionType =
7724            crate::q_camera_lens::ProjectionType(0);
7725        /// C++ enum variant: <span style='color: green;'>```PerspectiveProjection = 1```</span>
7726        #[allow(non_upper_case_globals)]
7727        pub const PerspectiveProjection: crate::q_camera_lens::ProjectionType =
7728            crate::q_camera_lens::ProjectionType(1);
7729        /// C++ enum variant: <span style='color: green;'>```FrustumProjection = 2```</span>
7730        #[allow(non_upper_case_globals)]
7731        pub const FrustumProjection: crate::q_camera_lens::ProjectionType =
7732            crate::q_camera_lens::ProjectionType(2);
7733        /// C++ enum variant: <span style='color: green;'>```CustomProjection = 3```</span>
7734        #[allow(non_upper_case_globals)]
7735        pub const CustomProjection: crate::q_camera_lens::ProjectionType =
7736            crate::q_camera_lens::ProjectionType(3);
7737    }
7738}
7739/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html">Qt3DRender::QCameraLens</a> specifies the projection matrix that will be used to define a Camera for a 3D scene.</p>
7740///
7741/// C++ class: <span style='color: green;'>```Qt3DRender::QCameraLens```</span>.
7742///
7743/// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html">Qt3DRender::QCameraLens</a> specifies the projection matrix that will be used to define a Camera for a 3D scene.</p></div>
7744#[repr(C)]
7745pub struct QCameraLens {
7746    _unused: u8,
7747}
7748impl QCameraLens {
7749    /// <p>Sets the lens' projection type <i>projectionType</i>.</p>
7750    ///
7751    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setProjectionType` that can be passed to `qt_core::Signal::connect`.
7752    ///
7753    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setProjectionType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the lens' projection type <i>projectionType</i>.</p>
7754    /// <p><b>Note: </b>Qt3DRender::QCameraLens::Frustum and <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a> are two different ways of specifying the same projection.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionType-prop">projectionType</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionType-prop">projectionType</a>().</p></div>
7755    #[inline(always)]
7756    pub fn slot_set_projection_type(
7757        &self,
7758    ) -> ::qt_core::Receiver<(crate::q_camera_lens::ProjectionType,)> {
7759        unsafe {
7760            ::qt_core::Receiver::new(
7761                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7762                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
7763                    b"1setProjectionType(Qt3DRender::QCameraLens::ProjectionType)\0",
7764                ),
7765            )
7766        }
7767    }
7768
7769    /// <p>Sets the projection's near plane to <i>nearPlane</i>. This triggers a projection matrix update.</p>
7770    ///
7771    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setNearPlane` that can be passed to `qt_core::Signal::connect`.
7772    ///
7773    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setNearPlane">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's near plane to <i>nearPlane</i>. This triggers a projection matrix update.</p>
7774    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#nearPlane-prop">nearPlane</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#nearPlane-prop">nearPlane</a>().</p></div>
7775    #[inline(always)]
7776    pub fn slot_set_near_plane(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
7777        unsafe {
7778            ::qt_core::Receiver::new(
7779                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7780                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setNearPlane(float)\0"),
7781            )
7782        }
7783    }
7784
7785    /// <p>Sets the projection's far plane to <i>farPlane</i>. This triggers a projection matrix update.</p>
7786    ///
7787    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setFarPlane` that can be passed to `qt_core::Signal::connect`.
7788    ///
7789    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setFarPlane">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's far plane to <i>farPlane</i>. This triggers a projection matrix update.</p>
7790    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#farPlane-prop">farPlane</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#farPlane-prop">farPlane</a>().</p></div>
7791    #[inline(always)]
7792    pub fn slot_set_far_plane(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
7793        unsafe {
7794            ::qt_core::Receiver::new(
7795                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7796                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setFarPlane(float)\0"),
7797            )
7798        }
7799    }
7800
7801    /// <p>Sets the projection's field of view to <i>fieldOfView</i> degrees. This triggers a projection matrix update.</p>
7802    ///
7803    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setFieldOfView` that can be passed to `qt_core::Signal::connect`.
7804    ///
7805    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setFieldOfView">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's field of view to <i>fieldOfView</i> degrees. This triggers a projection matrix update.</p>
7806    /// <p><b>Note: </b>this has no effect if the projection type is not <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#fieldOfView-prop">fieldOfView</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#fieldOfView-prop">fieldOfView</a>().</p></div>
7807    #[inline(always)]
7808    pub fn slot_set_field_of_view(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
7809        unsafe {
7810            ::qt_core::Receiver::new(
7811                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7812                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setFieldOfView(float)\0"),
7813            )
7814        }
7815    }
7816
7817    /// <p>Sets the projection's aspect ratio to <i>aspectRatio</i>. This triggers a projection matrix update.</p>
7818    ///
7819    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setAspectRatio` that can be passed to `qt_core::Signal::connect`.
7820    ///
7821    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setAspectRatio">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's aspect ratio to <i>aspectRatio</i>. This triggers a projection matrix update.</p>
7822    /// <p><b>Note: </b>this has no effect if the projection type is not <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#aspectRatio-prop">aspectRatio</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#aspectRatio-prop">aspectRatio</a>().</p></div>
7823    #[inline(always)]
7824    pub fn slot_set_aspect_ratio(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
7825        unsafe {
7826            ::qt_core::Receiver::new(
7827                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7828                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setAspectRatio(float)\0"),
7829            )
7830        }
7831    }
7832
7833    /// <p>Sets the projection's lower left window coordinate to <i>left</i>. This triggers a projection matrix update.</p>
7834    ///
7835    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setLeft` that can be passed to `qt_core::Signal::connect`.
7836    ///
7837    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setLeft">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's lower left window coordinate to <i>left</i>. This triggers a projection matrix update.</p>
7838    /// <p><b>Note: </b>this has no effect if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#left-prop">left</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#left-prop">left</a>().</p></div>
7839    #[inline(always)]
7840    pub fn slot_set_left(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
7841        unsafe {
7842            ::qt_core::Receiver::new(
7843                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7844                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLeft(float)\0"),
7845            )
7846        }
7847    }
7848
7849    /// <p>Sets the projection's upper right window coordinate to <i>right</i>. This triggers a projection matrix update.</p>
7850    ///
7851    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setRight` that can be passed to `qt_core::Signal::connect`.
7852    ///
7853    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setRight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's upper right window coordinate to <i>right</i>. This triggers a projection matrix update.</p>
7854    /// <p><b>Note: </b>this has no effect if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#right-prop">right</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#right-prop">right</a>().</p></div>
7855    #[inline(always)]
7856    pub fn slot_set_right(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
7857        unsafe {
7858            ::qt_core::Receiver::new(
7859                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7860                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setRight(float)\0"),
7861            )
7862        }
7863    }
7864
7865    /// <p>Sets the projection's bottom window coordinate to <i>bottom</i>. This triggers a projection matrix update.</p>
7866    ///
7867    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setBottom` that can be passed to `qt_core::Signal::connect`.
7868    ///
7869    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setBottom">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's bottom window coordinate to <i>bottom</i>. This triggers a projection matrix update.</p>
7870    /// <p><b>Note: </b>this has no effect if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#bottom-prop">bottom</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#bottom-prop">bottom</a>().</p></div>
7871    #[inline(always)]
7872    pub fn slot_set_bottom(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
7873        unsafe {
7874            ::qt_core::Receiver::new(
7875                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7876                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setBottom(float)\0"),
7877            )
7878        }
7879    }
7880
7881    /// <p>Sets the projection's top window coordinate to <i>top</i>. This triggers a projection matrix update.</p>
7882    ///
7883    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setTop` that can be passed to `qt_core::Signal::connect`.
7884    ///
7885    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setTop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's top window coordinate to <i>top</i>. This triggers a projection matrix update.</p>
7886    /// <p><b>Note: </b>this has no effect if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#top-prop">top</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#top-prop">top</a>().</p></div>
7887    #[inline(always)]
7888    pub fn slot_set_top(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
7889        unsafe {
7890            ::qt_core::Receiver::new(
7891                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7892                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setTop(float)\0"),
7893            )
7894        }
7895    }
7896
7897    /// <p>Sets the project matrix to <i>projectionMatrix</i>.</p>
7898    ///
7899    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setProjectionMatrix` that can be passed to `qt_core::Signal::connect`.
7900    ///
7901    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setProjectionMatrix">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the project matrix to <i>projectionMatrix</i>.</p>
7902    /// <p><b>Note: </b>This will set the projection type to <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::CustomProjection</a> and thus ignore all other camera parameters that might have been specified.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionMatrix-prop">projectionMatrix</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionMatrix-prop">projectionMatrix</a>().</p></div>
7903    #[inline(always)]
7904    pub fn slot_set_projection_matrix(
7905        &self,
7906    ) -> ::qt_core::Receiver<(*const ::qt_gui::QMatrix4X4,)> {
7907        unsafe {
7908            ::qt_core::Receiver::new(
7909                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7910                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
7911                    b"1setProjectionMatrix(QMatrix4x4 const &)\0",
7912                ),
7913            )
7914        }
7915    }
7916
7917    /// <p>Sets the camera lens' <i>exposure</i></p>
7918    ///
7919    /// Returns a built-in Qt slot `Qt3DRender::QCameraLens::setExposure` that can be passed to `qt_core::Signal::connect`.
7920    ///
7921    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setExposure">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera lens' <i>exposure</i></p>
7922    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#exposure-prop">exposure</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#exposure-prop">exposure</a>().</p></div>
7923    #[inline(always)]
7924    pub fn slot_set_exposure(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
7925        unsafe {
7926            ::qt_core::Receiver::new(
7927                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7928                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setExposure(float)\0"),
7929            )
7930        }
7931    }
7932
7933    /// <p>Holds the type of the camera projection.</p>
7934    ///
7935    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::projectionTypeChanged` that can be passed to `qt_core::Signal::connect`.
7936    ///
7937    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the type of the camera projection.</p>
7938    /// <p><b>Access functions:</b></p>
7939    /// <div class="table"><table class="alignedsummary">
7940    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> ProjectionType </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionType</b></span>() const</td></tr>
7941    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setProjectionType">setProjectionType</a></b></span>(ProjectionType <i>projectionType</i>)</td></tr>
7942    /// </tbody></table></div>
7943    /// <p><b>Notifier signal:</b></p>
7944    /// <div class="table"><table class="alignedsummary">
7945    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionTypeChanged</b></span>(QCameraLens::ProjectionType <i>projectionType</i>)</td></tr>
7946    /// </tbody></table></div>
7947    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::ProjectionType</a>.</p></div>
7948    #[inline(always)]
7949    pub fn projection_type_changed(
7950        &self,
7951    ) -> ::qt_core::Signal<(crate::q_camera_lens::ProjectionType,)> {
7952        unsafe {
7953            ::qt_core::Signal::new(
7954                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7955                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
7956                    b"2projectionTypeChanged(Qt3DRender::QCameraLens::ProjectionType)\0",
7957                ),
7958            )
7959        }
7960    }
7961
7962    /// <p>Holds the current near plane of the camera lens.</p>
7963    ///
7964    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::nearPlaneChanged` that can be passed to `qt_core::Signal::connect`.
7965    ///
7966    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#nearPlane-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current near plane of the camera lens.</p>
7967    /// <p><b>Access functions:</b></p>
7968    /// <div class="table"><table class="alignedsummary">
7969    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>nearPlane</b></span>() const</td></tr>
7970    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setNearPlane">setNearPlane</a></b></span>(float <i>nearPlane</i>)</td></tr>
7971    /// </tbody></table></div>
7972    /// <p><b>Notifier signal:</b></p>
7973    /// <div class="table"><table class="alignedsummary">
7974    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nearPlaneChanged</b></span>(float <i>nearPlane</i>)</td></tr>
7975    /// </tbody></table></div></div>
7976    #[inline(always)]
7977    pub fn near_plane_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
7978        unsafe {
7979            ::qt_core::Signal::new(
7980                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
7981                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2nearPlaneChanged(float)\0"),
7982            )
7983        }
7984    }
7985
7986    /// <p>Holds the current near plane of the camera lens.</p>
7987    ///
7988    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::farPlaneChanged` that can be passed to `qt_core::Signal::connect`.
7989    ///
7990    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#farPlane-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current near plane of the camera lens.</p>
7991    /// <p><b>Access functions:</b></p>
7992    /// <div class="table"><table class="alignedsummary">
7993    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>farPlane</b></span>() const</td></tr>
7994    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setFarPlane">setFarPlane</a></b></span>(float <i>farPlane</i>)</td></tr>
7995    /// </tbody></table></div>
7996    /// <p><b>Notifier signal:</b></p>
7997    /// <div class="table"><table class="alignedsummary">
7998    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>farPlaneChanged</b></span>(float <i>farPlane</i>)</td></tr>
7999    /// </tbody></table></div></div>
8000    #[inline(always)]
8001    pub fn far_plane_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
8002        unsafe {
8003            ::qt_core::Signal::new(
8004                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8005                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2farPlaneChanged(float)\0"),
8006            )
8007        }
8008    }
8009
8010    /// <p>Holds the current field of view of the camera lens.</p>
8011    ///
8012    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::fieldOfViewChanged` that can be passed to `qt_core::Signal::connect`.
8013    ///
8014    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#fieldOfView-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current field of view of the camera lens.</p>
8015    /// <p><b>Note: </b>: The return value may be undefined if the projection type is not <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8016    /// <div class="table"><table class="alignedsummary">
8017    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>fieldOfView</b></span>() const</td></tr>
8018    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setFieldOfView">setFieldOfView</a></b></span>(float <i>fieldOfView</i>)</td></tr>
8019    /// </tbody></table></div>
8020    /// <p><b>Notifier signal:</b></p>
8021    /// <div class="table"><table class="alignedsummary">
8022    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fieldOfViewChanged</b></span>(float <i>fieldOfView</i>)</td></tr>
8023    /// </tbody></table></div></div>
8024    #[inline(always)]
8025    pub fn field_of_view_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
8026        unsafe {
8027            ::qt_core::Signal::new(
8028                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8029                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2fieldOfViewChanged(float)\0"),
8030            )
8031        }
8032    }
8033
8034    /// <p>Holds the current aspect ratio of the camera lens.</p>
8035    ///
8036    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::aspectRatioChanged` that can be passed to `qt_core::Signal::connect`.
8037    ///
8038    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#aspectRatio-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current aspect ratio of the camera lens.</p>
8039    /// <p><b>Note: </b>: The return value may be undefined if the projection type is not <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8040    /// <div class="table"><table class="alignedsummary">
8041    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>aspectRatio</b></span>() const</td></tr>
8042    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setAspectRatio">setAspectRatio</a></b></span>(float <i>aspectRatio</i>)</td></tr>
8043    /// </tbody></table></div>
8044    /// <p><b>Notifier signal:</b></p>
8045    /// <div class="table"><table class="alignedsummary">
8046    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>aspectRatioChanged</b></span>(float <i>aspectRatio</i>)</td></tr>
8047    /// </tbody></table></div></div>
8048    #[inline(always)]
8049    pub fn aspect_ratio_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
8050        unsafe {
8051            ::qt_core::Signal::new(
8052                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8053                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2aspectRatioChanged(float)\0"),
8054            )
8055        }
8056    }
8057
8058    /// <p>Holds the current left plane of the camera lens.</p>
8059    ///
8060    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::leftChanged` that can be passed to `qt_core::Signal::connect`.
8061    ///
8062    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#left-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current left plane of the camera lens.</p>
8063    /// <p><b>Note: </b>The return value may be undefined if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8064    /// <div class="table"><table class="alignedsummary">
8065    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>left</b></span>() const</td></tr>
8066    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setLeft">setLeft</a></b></span>(float <i>left</i>)</td></tr>
8067    /// </tbody></table></div>
8068    /// <p><b>Notifier signal:</b></p>
8069    /// <div class="table"><table class="alignedsummary">
8070    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>leftChanged</b></span>(float <i>left</i>)</td></tr>
8071    /// </tbody></table></div></div>
8072    #[inline(always)]
8073    pub fn left_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
8074        unsafe {
8075            ::qt_core::Signal::new(
8076                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8077                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2leftChanged(float)\0"),
8078            )
8079        }
8080    }
8081
8082    /// <p>Holds the current right plane of the camera lens.</p>
8083    ///
8084    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::rightChanged` that can be passed to `qt_core::Signal::connect`.
8085    ///
8086    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#right-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current right plane of the camera lens.</p>
8087    /// <p><b>Note: </b>The return value may be undefined if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8088    /// <div class="table"><table class="alignedsummary">
8089    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>right</b></span>() const</td></tr>
8090    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setRight">setRight</a></b></span>(float <i>right</i>)</td></tr>
8091    /// </tbody></table></div>
8092    /// <p><b>Notifier signal:</b></p>
8093    /// <div class="table"><table class="alignedsummary">
8094    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>rightChanged</b></span>(float <i>right</i>)</td></tr>
8095    /// </tbody></table></div></div>
8096    #[inline(always)]
8097    pub fn right_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
8098        unsafe {
8099            ::qt_core::Signal::new(
8100                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8101                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2rightChanged(float)\0"),
8102            )
8103        }
8104    }
8105
8106    /// <p>Holds the current bottom plane of the camera lens.</p>
8107    ///
8108    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::bottomChanged` that can be passed to `qt_core::Signal::connect`.
8109    ///
8110    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#bottom-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current bottom plane of the camera lens.</p>
8111    /// <p><b>Note: </b>The return value may be undefined if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8112    /// <div class="table"><table class="alignedsummary">
8113    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>bottom</b></span>() const</td></tr>
8114    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setBottom">setBottom</a></b></span>(float <i>bottom</i>)</td></tr>
8115    /// </tbody></table></div>
8116    /// <p><b>Notifier signal:</b></p>
8117    /// <div class="table"><table class="alignedsummary">
8118    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bottomChanged</b></span>(float <i>bottom</i>)</td></tr>
8119    /// </tbody></table></div></div>
8120    #[inline(always)]
8121    pub fn bottom_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
8122        unsafe {
8123            ::qt_core::Signal::new(
8124                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8125                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2bottomChanged(float)\0"),
8126            )
8127        }
8128    }
8129
8130    /// <p>Holds the current top plane of the camera lens.</p>
8131    ///
8132    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::topChanged` that can be passed to `qt_core::Signal::connect`.
8133    ///
8134    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#top-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current top plane of the camera lens.</p>
8135    /// <p><b>Note: </b>The return value may be undefined if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8136    /// <div class="table"><table class="alignedsummary">
8137    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>top</b></span>() const</td></tr>
8138    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setTop">setTop</a></b></span>(float <i>top</i>)</td></tr>
8139    /// </tbody></table></div>
8140    /// <p><b>Notifier signal:</b></p>
8141    /// <div class="table"><table class="alignedsummary">
8142    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>topChanged</b></span>(float <i>top</i>)</td></tr>
8143    /// </tbody></table></div></div>
8144    #[inline(always)]
8145    pub fn top_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
8146        unsafe {
8147            ::qt_core::Signal::new(
8148                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8149                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2topChanged(float)\0"),
8150            )
8151        }
8152    }
8153
8154    /// <p>Holds the current projection matrix of the camera lens.</p>
8155    ///
8156    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::projectionMatrixChanged` that can be passed to `qt_core::Signal::connect`.
8157    ///
8158    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionMatrix-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current projection matrix of the camera lens.</p>
8159    /// <p><b>Access functions:</b></p>
8160    /// <div class="table"><table class="alignedsummary">
8161    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QMatrix4x4 </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionMatrix</b></span>() const</td></tr>
8162    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setProjectionMatrix">setProjectionMatrix</a></b></span>(const QMatrix4x4 &amp;<i>projectionMatrix</i>)</td></tr>
8163    /// </tbody></table></div>
8164    /// <p><b>Notifier signal:</b></p>
8165    /// <div class="table"><table class="alignedsummary">
8166    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionMatrixChanged</b></span>(const QMatrix4x4 &amp;<i>projectionMatrix</i>)</td></tr>
8167    /// </tbody></table></div></div>
8168    #[inline(always)]
8169    pub fn projection_matrix_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QMatrix4X4,)> {
8170        unsafe {
8171            ::qt_core::Signal::new(
8172                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8173                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
8174                    b"2projectionMatrixChanged(QMatrix4x4 const &)\0",
8175                ),
8176            )
8177        }
8178    }
8179
8180    /// <p>Holds the current exposure of the camera lens.</p>
8181    ///
8182    /// Returns a built-in Qt signal `Qt3DRender::QCameraLens::exposureChanged` that can be passed to `qt_core::Signal::connect`.
8183    ///
8184    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#exposure-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current exposure of the camera lens.</p>
8185    /// <p><b>Access functions:</b></p>
8186    /// <div class="table"><table class="alignedsummary">
8187    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>exposure</b></span>() const</td></tr>
8188    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setExposure">setExposure</a></b></span>(float <i>exposure</i>)</td></tr>
8189    /// </tbody></table></div>
8190    /// <p><b>Notifier signal:</b></p>
8191    /// <div class="table"><table class="alignedsummary">
8192    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>exposureChanged</b></span>(float <i>exposure</i>)</td></tr>
8193    /// </tbody></table></div></div>
8194    #[inline(always)]
8195    pub fn exposure_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
8196        unsafe {
8197            ::qt_core::Signal::new(
8198                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8199                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2exposureChanged(float)\0"),
8200            )
8201        }
8202    }
8203
8204    /// <p>Holds the current aspect ratio of the camera lens.</p>
8205    ///
8206    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCameraLens::aspectRatio() const```</span>.
8207    ///
8208    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#aspectRatio-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current aspect ratio of the camera lens.</p>
8209    /// <p><b>Note: </b>: The return value may be undefined if the projection type is not <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8210    /// <div class="table"><table class="alignedsummary">
8211    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>aspectRatio</b></span>() const</td></tr>
8212    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setAspectRatio">setAspectRatio</a></b></span>(float <i>aspectRatio</i>)</td></tr>
8213    /// </tbody></table></div>
8214    /// <p><b>Notifier signal:</b></p>
8215    /// <div class="table"><table class="alignedsummary">
8216    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>aspectRatioChanged</b></span>(float <i>aspectRatio</i>)</td></tr>
8217    /// </tbody></table></div></div>
8218    #[inline(always)]
8219    pub unsafe fn aspect_ratio(&self) -> ::std::os::raw::c_float {
8220        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_aspectRatio(
8221            self as *const crate::QCameraLens,
8222        )
8223    }
8224
8225    /// <p>Holds the current bottom plane of the camera lens.</p>
8226    ///
8227    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCameraLens::bottom() const```</span>.
8228    ///
8229    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#bottom-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current bottom plane of the camera lens.</p>
8230    /// <p><b>Note: </b>The return value may be undefined if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8231    /// <div class="table"><table class="alignedsummary">
8232    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>bottom</b></span>() const</td></tr>
8233    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setBottom">setBottom</a></b></span>(float <i>bottom</i>)</td></tr>
8234    /// </tbody></table></div>
8235    /// <p><b>Notifier signal:</b></p>
8236    /// <div class="table"><table class="alignedsummary">
8237    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bottomChanged</b></span>(float <i>bottom</i>)</td></tr>
8238    /// </tbody></table></div></div>
8239    #[inline(always)]
8240    pub unsafe fn bottom(&self) -> ::std::os::raw::c_float {
8241        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_bottom(
8242            self as *const crate::QCameraLens,
8243        )
8244    }
8245
8246    /// <p>Holds the current exposure of the camera lens.</p>
8247    ///
8248    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCameraLens::exposure() const```</span>.
8249    ///
8250    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#exposure-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current exposure of the camera lens.</p>
8251    /// <p><b>Access functions:</b></p>
8252    /// <div class="table"><table class="alignedsummary">
8253    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>exposure</b></span>() const</td></tr>
8254    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setExposure">setExposure</a></b></span>(float <i>exposure</i>)</td></tr>
8255    /// </tbody></table></div>
8256    /// <p><b>Notifier signal:</b></p>
8257    /// <div class="table"><table class="alignedsummary">
8258    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>exposureChanged</b></span>(float <i>exposure</i>)</td></tr>
8259    /// </tbody></table></div></div>
8260    #[inline(always)]
8261    pub unsafe fn exposure(&self) -> ::std::os::raw::c_float {
8262        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_exposure(
8263            self as *const crate::QCameraLens,
8264        )
8265    }
8266
8267    /// <p>Holds the current near plane of the camera lens.</p>
8268    ///
8269    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCameraLens::farPlane() const```</span>.
8270    ///
8271    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#farPlane-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current near plane of the camera lens.</p>
8272    /// <p><b>Access functions:</b></p>
8273    /// <div class="table"><table class="alignedsummary">
8274    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>farPlane</b></span>() const</td></tr>
8275    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setFarPlane">setFarPlane</a></b></span>(float <i>farPlane</i>)</td></tr>
8276    /// </tbody></table></div>
8277    /// <p><b>Notifier signal:</b></p>
8278    /// <div class="table"><table class="alignedsummary">
8279    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>farPlaneChanged</b></span>(float <i>farPlane</i>)</td></tr>
8280    /// </tbody></table></div></div>
8281    #[inline(always)]
8282    pub unsafe fn far_plane(&self) -> ::std::os::raw::c_float {
8283        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_farPlane(
8284            self as *const crate::QCameraLens,
8285        )
8286    }
8287
8288    /// <p>Holds the current field of view of the camera lens.</p>
8289    ///
8290    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCameraLens::fieldOfView() const```</span>.
8291    ///
8292    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#fieldOfView-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current field of view of the camera lens.</p>
8293    /// <p><b>Note: </b>: The return value may be undefined if the projection type is not <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8294    /// <div class="table"><table class="alignedsummary">
8295    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>fieldOfView</b></span>() const</td></tr>
8296    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setFieldOfView">setFieldOfView</a></b></span>(float <i>fieldOfView</i>)</td></tr>
8297    /// </tbody></table></div>
8298    /// <p><b>Notifier signal:</b></p>
8299    /// <div class="table"><table class="alignedsummary">
8300    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fieldOfViewChanged</b></span>(float <i>fieldOfView</i>)</td></tr>
8301    /// </tbody></table></div></div>
8302    #[inline(always)]
8303    pub unsafe fn field_of_view(&self) -> ::std::os::raw::c_float {
8304        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_fieldOfView(
8305            self as *const crate::QCameraLens,
8306        )
8307    }
8308
8309    /// <p>Holds the current left plane of the camera lens.</p>
8310    ///
8311    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCameraLens::left() const```</span>.
8312    ///
8313    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#left-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current left plane of the camera lens.</p>
8314    /// <p><b>Note: </b>The return value may be undefined if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8315    /// <div class="table"><table class="alignedsummary">
8316    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>left</b></span>() const</td></tr>
8317    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setLeft">setLeft</a></b></span>(float <i>left</i>)</td></tr>
8318    /// </tbody></table></div>
8319    /// <p><b>Notifier signal:</b></p>
8320    /// <div class="table"><table class="alignedsummary">
8321    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>leftChanged</b></span>(float <i>left</i>)</td></tr>
8322    /// </tbody></table></div></div>
8323    #[inline(always)]
8324    pub unsafe fn left(&self) -> ::std::os::raw::c_float {
8325        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_left(
8326            self as *const crate::QCameraLens,
8327        )
8328    }
8329
8330    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QCameraLens::metaObject() const```</span>.
8331    #[inline(always)]
8332    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
8333        let ffi_result = {
8334            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_metaObject(
8335                self as *const crate::QCameraLens,
8336            )
8337        };
8338        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
8339    }
8340
8341    /// <p>Holds the current near plane of the camera lens.</p>
8342    ///
8343    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCameraLens::nearPlane() const```</span>.
8344    ///
8345    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#nearPlane-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current near plane of the camera lens.</p>
8346    /// <p><b>Access functions:</b></p>
8347    /// <div class="table"><table class="alignedsummary">
8348    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>nearPlane</b></span>() const</td></tr>
8349    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setNearPlane">setNearPlane</a></b></span>(float <i>nearPlane</i>)</td></tr>
8350    /// </tbody></table></div>
8351    /// <p><b>Notifier signal:</b></p>
8352    /// <div class="table"><table class="alignedsummary">
8353    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nearPlaneChanged</b></span>(float <i>nearPlane</i>)</td></tr>
8354    /// </tbody></table></div></div>
8355    #[inline(always)]
8356    pub unsafe fn near_plane(&self) -> ::std::os::raw::c_float {
8357        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_nearPlane(
8358            self as *const crate::QCameraLens,
8359        )
8360    }
8361
8362    /// <p>Constructs a <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html">QCameraLens</a> with given <i>parent</i></p>
8363    ///
8364    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QCameraLens::QCameraLens(Qt3DCore::QNode* parent = …)```</span>.
8365    ///
8366    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#QCameraLens">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html">QCameraLens</a> with given <i>parent</i></p></div>
8367    #[inline(always)]
8368    pub unsafe fn new_1a(
8369        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
8370    ) -> ::qt_core::QBox<crate::QCameraLens> {
8371        let ffi_result = {
8372            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_QCameraLens(
8373                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
8374                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
8375            )
8376        };
8377        ::qt_core::QBox::from_raw(ffi_result)
8378    }
8379
8380    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html">Qt3DRender::QCameraLens</a> specifies the projection matrix that will be used to define a Camera for a 3D scene.</p>
8381    ///
8382    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QCameraLens::QCameraLens()```</span>.
8383    ///
8384    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html">Qt3DRender::QCameraLens</a> specifies the projection matrix that will be used to define a Camera for a 3D scene.</p></div>
8385    #[inline(always)]
8386    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QCameraLens> {
8387        let ffi_result =
8388            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_QCameraLens1() };
8389        ::qt_core::QBox::from_raw(ffi_result)
8390    }
8391
8392    /// <p>Holds the current projection matrix of the camera lens.</p>
8393    ///
8394    /// Calls C++ function: <span style='color: green;'>```QMatrix4x4 Qt3DRender::QCameraLens::projectionMatrix() const```</span>.
8395    ///
8396    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionMatrix-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current projection matrix of the camera lens.</p>
8397    /// <p><b>Access functions:</b></p>
8398    /// <div class="table"><table class="alignedsummary">
8399    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QMatrix4x4 </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionMatrix</b></span>() const</td></tr>
8400    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setProjectionMatrix">setProjectionMatrix</a></b></span>(const QMatrix4x4 &amp;<i>projectionMatrix</i>)</td></tr>
8401    /// </tbody></table></div>
8402    /// <p><b>Notifier signal:</b></p>
8403    /// <div class="table"><table class="alignedsummary">
8404    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionMatrixChanged</b></span>(const QMatrix4x4 &amp;<i>projectionMatrix</i>)</td></tr>
8405    /// </tbody></table></div></div>
8406    #[inline(always)]
8407    pub unsafe fn projection_matrix(&self) -> ::cpp_core::CppBox<::qt_gui::QMatrix4X4> {
8408        let ffi_result = {
8409            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_projectionMatrix(
8410                self as *const crate::QCameraLens,
8411            )
8412        };
8413        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8414    }
8415
8416    /// <p>Holds the type of the camera projection.</p>
8417    ///
8418    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraLens::ProjectionType Qt3DRender::QCameraLens::projectionType() const```</span>.
8419    ///
8420    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the type of the camera projection.</p>
8421    /// <p><b>Access functions:</b></p>
8422    /// <div class="table"><table class="alignedsummary">
8423    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> ProjectionType </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionType</b></span>() const</td></tr>
8424    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setProjectionType">setProjectionType</a></b></span>(ProjectionType <i>projectionType</i>)</td></tr>
8425    /// </tbody></table></div>
8426    /// <p><b>Notifier signal:</b></p>
8427    /// <div class="table"><table class="alignedsummary">
8428    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionTypeChanged</b></span>(QCameraLens::ProjectionType <i>projectionType</i>)</td></tr>
8429    /// </tbody></table></div>
8430    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::ProjectionType</a>.</p></div>
8431    #[inline(always)]
8432    pub unsafe fn projection_type(&self) -> crate::q_camera_lens::ProjectionType {
8433        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_projectionType(
8434            self as *const crate::QCameraLens,
8435        )
8436    }
8437
8438    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QCameraLens::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
8439    #[inline(always)]
8440    pub unsafe fn qt_metacall(
8441        &self,
8442        arg1: ::qt_core::q_meta_object::Call,
8443        arg2: ::std::os::raw::c_int,
8444        arg3: *mut *mut ::std::ffi::c_void,
8445    ) -> ::std::os::raw::c_int {
8446        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_qt_metacall(
8447            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8448            arg1,
8449            arg2,
8450            arg3,
8451        )
8452    }
8453
8454    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QCameraLens::qt_metacast(const char* arg1)```</span>.
8455    #[inline(always)]
8456    pub unsafe fn qt_metacast(
8457        &self,
8458        arg1: *const ::std::os::raw::c_char,
8459    ) -> *mut ::std::ffi::c_void {
8460        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_qt_metacast(
8461            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8462            arg1,
8463        )
8464    }
8465
8466    /// <p>Holds the current right plane of the camera lens.</p>
8467    ///
8468    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCameraLens::right() const```</span>.
8469    ///
8470    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#right-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current right plane of the camera lens.</p>
8471    /// <p><b>Note: </b>The return value may be undefined if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8472    /// <div class="table"><table class="alignedsummary">
8473    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>right</b></span>() const</td></tr>
8474    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setRight">setRight</a></b></span>(float <i>right</i>)</td></tr>
8475    /// </tbody></table></div>
8476    /// <p><b>Notifier signal:</b></p>
8477    /// <div class="table"><table class="alignedsummary">
8478    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>rightChanged</b></span>(float <i>right</i>)</td></tr>
8479    /// </tbody></table></div></div>
8480    #[inline(always)]
8481    pub unsafe fn right(&self) -> ::std::os::raw::c_float {
8482        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_right(
8483            self as *const crate::QCameraLens,
8484        )
8485    }
8486
8487    /// <p>Sets the projection's aspect ratio to <i>aspectRatio</i>. This triggers a projection matrix update.</p>
8488    ///
8489    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setAspectRatio(float aspectRatio)```</span>.
8490    ///
8491    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setAspectRatio">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's aspect ratio to <i>aspectRatio</i>. This triggers a projection matrix update.</p>
8492    /// <p><b>Note: </b>this has no effect if the projection type is not <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#aspectRatio-prop">aspectRatio</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#aspectRatio-prop">aspectRatio</a>().</p></div>
8493    #[inline(always)]
8494    pub unsafe fn set_aspect_ratio(&self, aspect_ratio: ::std::os::raw::c_float) {
8495        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setAspectRatio(
8496            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8497            aspect_ratio,
8498        )
8499    }
8500
8501    /// <p>Sets the projection's bottom window coordinate to <i>bottom</i>. This triggers a projection matrix update.</p>
8502    ///
8503    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setBottom(float bottom)```</span>.
8504    ///
8505    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setBottom">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's bottom window coordinate to <i>bottom</i>. This triggers a projection matrix update.</p>
8506    /// <p><b>Note: </b>this has no effect if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#bottom-prop">bottom</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#bottom-prop">bottom</a>().</p></div>
8507    #[inline(always)]
8508    pub unsafe fn set_bottom(&self, bottom: ::std::os::raw::c_float) {
8509        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setBottom(
8510            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8511            bottom,
8512        )
8513    }
8514
8515    /// <p>Sets the camera lens' <i>exposure</i></p>
8516    ///
8517    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setExposure(float exposure)```</span>.
8518    ///
8519    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setExposure">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera lens' <i>exposure</i></p>
8520    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#exposure-prop">exposure</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#exposure-prop">exposure</a>().</p></div>
8521    #[inline(always)]
8522    pub unsafe fn set_exposure(&self, exposure: ::std::os::raw::c_float) {
8523        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setExposure(
8524            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8525            exposure,
8526        )
8527    }
8528
8529    /// <p>Sets the projection's far plane to <i>farPlane</i>. This triggers a projection matrix update.</p>
8530    ///
8531    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setFarPlane(float farPlane)```</span>.
8532    ///
8533    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setFarPlane">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's far plane to <i>farPlane</i>. This triggers a projection matrix update.</p>
8534    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#farPlane-prop">farPlane</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#farPlane-prop">farPlane</a>().</p></div>
8535    #[inline(always)]
8536    pub unsafe fn set_far_plane(&self, far_plane: ::std::os::raw::c_float) {
8537        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setFarPlane(
8538            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8539            far_plane,
8540        )
8541    }
8542
8543    /// <p>Sets the projection's field of view to <i>fieldOfView</i> degrees. This triggers a projection matrix update.</p>
8544    ///
8545    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setFieldOfView(float fieldOfView)```</span>.
8546    ///
8547    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setFieldOfView">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's field of view to <i>fieldOfView</i> degrees. This triggers a projection matrix update.</p>
8548    /// <p><b>Note: </b>this has no effect if the projection type is not <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#fieldOfView-prop">fieldOfView</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#fieldOfView-prop">fieldOfView</a>().</p></div>
8549    #[inline(always)]
8550    pub unsafe fn set_field_of_view(&self, field_of_view: ::std::os::raw::c_float) {
8551        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setFieldOfView(
8552            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8553            field_of_view,
8554        )
8555    }
8556
8557    /// <p>Defines an orthographic projection based on <i>left</i>, <i>right</i>, <i>bottom</i>, <i>top</i>, <i>nearPlane</i>, <i>farPlane</i>.</p>
8558    ///
8559    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCameraLens::setFrustumProjection(float left, float right, float bottom, float top, float nearPlane, float farPlane)```</span>.
8560    ///
8561    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setFrustumProjection">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines an orthographic projection based on <i>left</i>, <i>right</i>, <i>bottom</i>, <i>top</i>, <i>nearPlane</i>, <i>farPlane</i>.</p></div>
8562    #[inline(always)]
8563    pub unsafe fn set_frustum_projection(
8564        &self,
8565        left: ::std::os::raw::c_float,
8566        right: ::std::os::raw::c_float,
8567        bottom: ::std::os::raw::c_float,
8568        top: ::std::os::raw::c_float,
8569        near_plane: ::std::os::raw::c_float,
8570        far_plane: ::std::os::raw::c_float,
8571    ) {
8572        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setFrustumProjection(
8573            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8574            left,
8575            right,
8576            bottom,
8577            top,
8578            near_plane,
8579            far_plane,
8580        )
8581    }
8582
8583    /// <p>Sets the projection's lower left window coordinate to <i>left</i>. This triggers a projection matrix update.</p>
8584    ///
8585    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setLeft(float left)```</span>.
8586    ///
8587    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setLeft">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's lower left window coordinate to <i>left</i>. This triggers a projection matrix update.</p>
8588    /// <p><b>Note: </b>this has no effect if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#left-prop">left</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#left-prop">left</a>().</p></div>
8589    #[inline(always)]
8590    pub unsafe fn set_left(&self, left: ::std::os::raw::c_float) {
8591        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setLeft(
8592            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8593            left,
8594        )
8595    }
8596
8597    /// <p>Sets the projection's near plane to <i>nearPlane</i>. This triggers a projection matrix update.</p>
8598    ///
8599    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setNearPlane(float nearPlane)```</span>.
8600    ///
8601    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setNearPlane">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's near plane to <i>nearPlane</i>. This triggers a projection matrix update.</p>
8602    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#nearPlane-prop">nearPlane</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#nearPlane-prop">nearPlane</a>().</p></div>
8603    #[inline(always)]
8604    pub unsafe fn set_near_plane(&self, near_plane: ::std::os::raw::c_float) {
8605        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setNearPlane(
8606            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8607            near_plane,
8608        )
8609    }
8610
8611    /// <p>Defines an orthographic projection based on <i>left</i>, <i>right</i>, <i>bottom</i>, <i>top</i>, <i>nearPlane</i>, <i>farPlane</i>.</p>
8612    ///
8613    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCameraLens::setOrthographicProjection(float left, float right, float bottom, float top, float nearPlane, float farPlane)```</span>.
8614    ///
8615    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setOrthographicProjection">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines an orthographic projection based on <i>left</i>, <i>right</i>, <i>bottom</i>, <i>top</i>, <i>nearPlane</i>, <i>farPlane</i>.</p></div>
8616    #[inline(always)]
8617    pub unsafe fn set_orthographic_projection(
8618        &self,
8619        left: ::std::os::raw::c_float,
8620        right: ::std::os::raw::c_float,
8621        bottom: ::std::os::raw::c_float,
8622        top: ::std::os::raw::c_float,
8623        near_plane: ::std::os::raw::c_float,
8624        far_plane: ::std::os::raw::c_float,
8625    ) {
8626        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setOrthographicProjection(
8627            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8628            left,
8629            right,
8630            bottom,
8631            top,
8632            near_plane,
8633            far_plane,
8634        )
8635    }
8636
8637    /// <p>Defines a perspective projection based on <i>fieldOfView</i>, <i>aspectRatio</i>, <i>nearPlane</i>, <i>farPlane</i>.</p>
8638    ///
8639    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCameraLens::setPerspectiveProjection(float fieldOfView, float aspect, float nearPlane, float farPlane)```</span>.
8640    ///
8641    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setPerspectiveProjection">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines a perspective projection based on <i>fieldOfView</i>, <i>aspectRatio</i>, <i>nearPlane</i>, <i>farPlane</i>.</p></div>
8642    #[inline(always)]
8643    pub unsafe fn set_perspective_projection(
8644        &self,
8645        field_of_view: ::std::os::raw::c_float,
8646        aspect: ::std::os::raw::c_float,
8647        near_plane: ::std::os::raw::c_float,
8648        far_plane: ::std::os::raw::c_float,
8649    ) {
8650        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setPerspectiveProjection(
8651            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8652            field_of_view,
8653            aspect,
8654            near_plane,
8655            far_plane,
8656        )
8657    }
8658
8659    /// <p>Sets the project matrix to <i>projectionMatrix</i>.</p>
8660    ///
8661    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setProjectionMatrix(const QMatrix4x4& projectionMatrix)```</span>.
8662    ///
8663    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setProjectionMatrix">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the project matrix to <i>projectionMatrix</i>.</p>
8664    /// <p><b>Note: </b>This will set the projection type to <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::CustomProjection</a> and thus ignore all other camera parameters that might have been specified.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionMatrix-prop">projectionMatrix</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionMatrix-prop">projectionMatrix</a>().</p></div>
8665    #[inline(always)]
8666    pub unsafe fn set_projection_matrix(
8667        &self,
8668        projection_matrix: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QMatrix4X4>>,
8669    ) {
8670        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setProjectionMatrix(
8671            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8672            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QMatrix4X4>>::cast_into(
8673                projection_matrix,
8674            )
8675            .as_raw_ptr(),
8676        )
8677    }
8678
8679    /// <p>Sets the lens' projection type <i>projectionType</i>.</p>
8680    ///
8681    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setProjectionType(Qt3DRender::QCameraLens::ProjectionType projectionType)```</span>.
8682    ///
8683    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setProjectionType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the lens' projection type <i>projectionType</i>.</p>
8684    /// <p><b>Note: </b>Qt3DRender::QCameraLens::Frustum and <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a> are two different ways of specifying the same projection.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionType-prop">projectionType</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#projectionType-prop">projectionType</a>().</p></div>
8685    #[inline(always)]
8686    pub unsafe fn set_projection_type(
8687        &self,
8688        projection_type: crate::q_camera_lens::ProjectionType,
8689    ) {
8690        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setProjectionType(
8691            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8692            projection_type,
8693        )
8694    }
8695
8696    /// <p>Sets the projection's upper right window coordinate to <i>right</i>. This triggers a projection matrix update.</p>
8697    ///
8698    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setRight(float right)```</span>.
8699    ///
8700    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setRight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's upper right window coordinate to <i>right</i>. This triggers a projection matrix update.</p>
8701    /// <p><b>Note: </b>this has no effect if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#right-prop">right</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#right-prop">right</a>().</p></div>
8702    #[inline(always)]
8703    pub unsafe fn set_right(&self, right: ::std::os::raw::c_float) {
8704        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setRight(
8705            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8706            right,
8707        )
8708    }
8709
8710    /// <p>Sets the projection's top window coordinate to <i>top</i>. This triggers a projection matrix update.</p>
8711    ///
8712    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraLens::setTop(float top)```</span>.
8713    ///
8714    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setTop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the projection's top window coordinate to <i>top</i>. This triggers a projection matrix update.</p>
8715    /// <p><b>Note: </b>this has no effect if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#top-prop">top</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#top-prop">top</a>().</p></div>
8716    #[inline(always)]
8717    pub unsafe fn set_top(&self, top: ::std::os::raw::c_float) {
8718        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_setTop(
8719            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8720            top,
8721        )
8722    }
8723
8724    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
8725    #[inline(always)]
8726    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
8727        let ffi_result =
8728            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_staticMetaObject() };
8729        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
8730            .expect("attempted to construct a null Ref")
8731    }
8732
8733    /// <p>Holds the current top plane of the camera lens.</p>
8734    ///
8735    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCameraLens::top() const```</span>.
8736    ///
8737    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#top-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current top plane of the camera lens.</p>
8738    /// <p><b>Note: </b>The return value may be undefined if the projection type is <a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::PerspectiveProjection</a>.</p><p><b>Access functions:</b></p>
8739    /// <div class="table"><table class="alignedsummary">
8740    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>top</b></span>() const</td></tr>
8741    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#setTop">setTop</a></b></span>(float <i>top</i>)</td></tr>
8742    /// </tbody></table></div>
8743    /// <p><b>Notifier signal:</b></p>
8744    /// <div class="table"><table class="alignedsummary">
8745    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>topChanged</b></span>(float <i>top</i>)</td></tr>
8746    /// </tbody></table></div></div>
8747    #[inline(always)]
8748    pub unsafe fn top(&self) -> ::std::os::raw::c_float {
8749        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_top(
8750            self as *const crate::QCameraLens,
8751        )
8752    }
8753
8754    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QCameraLens::tr(const char* s, const char* c, int n)```</span>.
8755    #[inline(always)]
8756    pub unsafe fn tr(
8757        s: *const ::std::os::raw::c_char,
8758        c: *const ::std::os::raw::c_char,
8759        n: ::std::os::raw::c_int,
8760    ) -> ::cpp_core::CppBox<::qt_core::QString> {
8761        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_tr(s, c, n) };
8762        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8763    }
8764
8765    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QCameraLens::trUtf8(const char* s, const char* c, int n)```</span>.
8766    #[inline(always)]
8767    pub unsafe fn tr_utf8(
8768        s: *const ::std::os::raw::c_char,
8769        c: *const ::std::os::raw::c_char,
8770        n: ::std::os::raw::c_int,
8771    ) -> ::cpp_core::CppBox<::qt_core::QString> {
8772        let ffi_result =
8773            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_trUtf8(s, c, n) };
8774        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
8775    }
8776
8777    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCameraLens::viewAll(Qt3DCore::QNodeId cameraId)```</span>.
8778    #[inline(always)]
8779    #[cfg_attr(
8780        feature = "ritual_rustdoc_nightly",
8781        doc(cfg(any(
8782            cpp_lib_version = "5.11.3",
8783            cpp_lib_version = "5.12.2",
8784            cpp_lib_version = "5.13.0",
8785            cpp_lib_version = "5.14.0"
8786        )))
8787    )]
8788    #[cfg(any(
8789        any(
8790            cpp_lib_version = "5.11.3",
8791            cpp_lib_version = "5.12.2",
8792            cpp_lib_version = "5.13.0",
8793            cpp_lib_version = "5.14.0"
8794        ),
8795        feature = "ritual_rustdoc"
8796    ))]
8797    pub unsafe fn view_all(
8798        &self,
8799        camera_id: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_3d_core::QNodeId>>,
8800    ) {
8801        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_viewAll(
8802            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8803            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_3d_core::QNodeId>>::cast_into(camera_id)
8804                .as_raw_ptr(),
8805        )
8806    }
8807
8808    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCameraLens::viewEntity(Qt3DCore::QNodeId entityId, Qt3DCore::QNodeId cameraId)```</span>.
8809    #[inline(always)]
8810    #[cfg_attr(
8811        feature = "ritual_rustdoc_nightly",
8812        doc(cfg(any(
8813            cpp_lib_version = "5.11.3",
8814            cpp_lib_version = "5.12.2",
8815            cpp_lib_version = "5.13.0",
8816            cpp_lib_version = "5.14.0"
8817        )))
8818    )]
8819    #[cfg(any(
8820        any(
8821            cpp_lib_version = "5.11.3",
8822            cpp_lib_version = "5.12.2",
8823            cpp_lib_version = "5.13.0",
8824            cpp_lib_version = "5.14.0"
8825        ),
8826        feature = "ritual_rustdoc"
8827    ))]
8828    pub unsafe fn view_entity(
8829        &self,
8830        entity_id: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_3d_core::QNodeId>>,
8831        camera_id: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_3d_core::QNodeId>>,
8832    ) {
8833        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_viewEntity(
8834            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8835            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_3d_core::QNodeId>>::cast_into(entity_id)
8836                .as_raw_ptr(),
8837            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_3d_core::QNodeId>>::cast_into(camera_id)
8838                .as_raw_ptr(),
8839        )
8840    }
8841
8842    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCameraLens::viewSphere(const QVector3D& center, float radius)```</span>.
8843    #[inline(always)]
8844    #[cfg_attr(
8845        feature = "ritual_rustdoc_nightly",
8846        doc(cfg(any(
8847            cpp_lib_version = "5.11.3",
8848            cpp_lib_version = "5.12.2",
8849            cpp_lib_version = "5.13.0",
8850            cpp_lib_version = "5.14.0"
8851        )))
8852    )]
8853    #[cfg(any(
8854        any(
8855            cpp_lib_version = "5.11.3",
8856            cpp_lib_version = "5.12.2",
8857            cpp_lib_version = "5.13.0",
8858            cpp_lib_version = "5.14.0"
8859        ),
8860        feature = "ritual_rustdoc"
8861    ))]
8862    pub unsafe fn view_sphere(
8863        &self,
8864        center: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
8865        radius: ::std::os::raw::c_float,
8866    ) {
8867        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_viewSphere(
8868            self as *const crate::QCameraLens as *mut crate::QCameraLens,
8869            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(center)
8870                .as_raw_ptr(),
8871            radius,
8872        )
8873    }
8874}
8875
8876pub mod q_camera {
8877    //! C++ type: <span style='color: green;'>```Qt3DRender::QCamera```</span>
8878
8879    /// C++ enum: <span style='color: green;'>```Qt3DRender::QCamera::CameraTranslationOption```</span>.
8880    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
8881    #[repr(transparent)]
8882    pub struct CameraTranslationOption(::std::os::raw::c_int);
8883
8884    impl From<::std::os::raw::c_int> for CameraTranslationOption {
8885        fn from(value: ::std::os::raw::c_int) -> Self {
8886            CameraTranslationOption(value)
8887        }
8888    }
8889
8890    impl From<CameraTranslationOption> for ::std::os::raw::c_int {
8891        fn from(value: CameraTranslationOption) -> Self {
8892            value.0
8893        }
8894    }
8895
8896    impl CameraTranslationOption {
8897        pub fn to_int(&self) -> ::std::os::raw::c_int {
8898            self.0
8899        }
8900    }
8901
8902    impl CameraTranslationOption {
8903        /// C++ enum variant: <span style='color: green;'>```TranslateViewCenter = 0```</span>
8904        #[allow(non_upper_case_globals)]
8905        pub const TranslateViewCenter: crate::q_camera::CameraTranslationOption =
8906            crate::q_camera::CameraTranslationOption(0);
8907        /// C++ enum variant: <span style='color: green;'>```DontTranslateViewCenter = 1```</span>
8908        #[allow(non_upper_case_globals)]
8909        pub const DontTranslateViewCenter: crate::q_camera::CameraTranslationOption =
8910            crate::q_camera::CameraTranslationOption(1);
8911    }
8912}
8913/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html">QCamera</a> class defines a view point through which the scene will be rendered.</p>
8914///
8915/// C++ class: <span style='color: green;'>```Qt3DRender::QCamera```</span>.
8916///
8917/// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html">QCamera</a> class defines a view point through which the scene will be rendered.</p></div>
8918#[repr(C)]
8919pub struct QCamera {
8920    _unused: u8,
8921}
8922impl QCamera {
8923    /// <p>Sets the camera's projection type to <i>type</i>.</p>
8924    ///
8925    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setProjectionType` that can be passed to `qt_core::Signal::connect`.
8926    ///
8927    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setProjectionType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's projection type to <i>type</i>.</p>
8928    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionType-prop">projectionType</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionType-prop">projectionType</a>().</p></div>
8929    #[inline(always)]
8930    pub fn slot_set_projection_type(
8931        &self,
8932    ) -> ::qt_core::Receiver<(crate::q_camera_lens::ProjectionType,)> {
8933        unsafe {
8934            ::qt_core::Receiver::new(
8935                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8936                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
8937                    b"1setProjectionType(Qt3DRender::QCameraLens::ProjectionType)\0",
8938                ),
8939            )
8940        }
8941    }
8942
8943    /// <p>Sets the camera's near plane to <i>nearPlane</i>.</p>
8944    ///
8945    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setNearPlane` that can be passed to `qt_core::Signal::connect`.
8946    ///
8947    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setNearPlane">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's near plane to <i>nearPlane</i>.</p>
8948    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#nearPlane-prop">nearPlane</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#nearPlane-prop">nearPlane</a>().</p></div>
8949    #[inline(always)]
8950    pub fn slot_set_near_plane(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
8951        unsafe {
8952            ::qt_core::Receiver::new(
8953                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8954                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setNearPlane(float)\0"),
8955            )
8956        }
8957    }
8958
8959    /// <p>Sets the camera's far plane to <i>farPlane</i></p>
8960    ///
8961    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setFarPlane` that can be passed to `qt_core::Signal::connect`.
8962    ///
8963    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setFarPlane">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's far plane to <i>farPlane</i></p>
8964    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#farPlane-prop">farPlane</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#farPlane-prop">farPlane</a>().</p></div>
8965    #[inline(always)]
8966    pub fn slot_set_far_plane(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
8967        unsafe {
8968            ::qt_core::Receiver::new(
8969                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8970                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setFarPlane(float)\0"),
8971            )
8972        }
8973    }
8974
8975    /// <p>Sets the camera's field of view to <i>fieldOfView</i> in degrees.</p>
8976    ///
8977    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setFieldOfView` that can be passed to `qt_core::Signal::connect`.
8978    ///
8979    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setFieldOfView">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's field of view to <i>fieldOfView</i> in degrees.</p>
8980    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#fieldOfView-prop">fieldOfView</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#fieldOfView-prop">fieldOfView</a>().</p></div>
8981    #[inline(always)]
8982    pub fn slot_set_field_of_view(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
8983        unsafe {
8984            ::qt_core::Receiver::new(
8985                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
8986                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setFieldOfView(float)\0"),
8987            )
8988        }
8989    }
8990
8991    /// <p>Sets the camera's aspect ratio to <i>aspectRatio</i>.</p>
8992    ///
8993    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setAspectRatio` that can be passed to `qt_core::Signal::connect`.
8994    ///
8995    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setAspectRatio">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's aspect ratio to <i>aspectRatio</i>.</p>
8996    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#aspectRatio-prop">aspectRatio</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#aspectRatio-prop">aspectRatio</a>().</p></div>
8997    #[inline(always)]
8998    pub fn slot_set_aspect_ratio(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
8999        unsafe {
9000            ::qt_core::Receiver::new(
9001                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9002                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setAspectRatio(float)\0"),
9003            )
9004        }
9005    }
9006
9007    /// <p>Sets the left of the camera to <i>left</i>.</p>
9008    ///
9009    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setLeft` that can be passed to `qt_core::Signal::connect`.
9010    ///
9011    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setLeft">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the left of the camera to <i>left</i>.</p>
9012    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#left-prop">left</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#left-prop">left</a>().</p></div>
9013    #[inline(always)]
9014    pub fn slot_set_left(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
9015        unsafe {
9016            ::qt_core::Receiver::new(
9017                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9018                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLeft(float)\0"),
9019            )
9020        }
9021    }
9022
9023    /// <p>Sets the right of the camera to <i>right</i>.</p>
9024    ///
9025    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setRight` that can be passed to `qt_core::Signal::connect`.
9026    ///
9027    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setRight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the right of the camera to <i>right</i>.</p>
9028    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#right-prop">right</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#right-prop">right</a>().</p></div>
9029    #[inline(always)]
9030    pub fn slot_set_right(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
9031        unsafe {
9032            ::qt_core::Receiver::new(
9033                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9034                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setRight(float)\0"),
9035            )
9036        }
9037    }
9038
9039    /// <p>Sets the bottom of the camera to <i>bottom</i>.</p>
9040    ///
9041    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setBottom` that can be passed to `qt_core::Signal::connect`.
9042    ///
9043    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setBottom">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the bottom of the camera to <i>bottom</i>.</p>
9044    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#bottom-prop">bottom</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#bottom-prop">bottom</a>().</p></div>
9045    #[inline(always)]
9046    pub fn slot_set_bottom(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
9047        unsafe {
9048            ::qt_core::Receiver::new(
9049                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9050                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setBottom(float)\0"),
9051            )
9052        }
9053    }
9054
9055    /// <p>Sets the top of the camera to <i>top</i>.</p>
9056    ///
9057    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setTop` that can be passed to `qt_core::Signal::connect`.
9058    ///
9059    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setTop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the top of the camera to <i>top</i>.</p>
9060    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#top-prop">top</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#top-prop">top</a>().</p></div>
9061    #[inline(always)]
9062    pub fn slot_set_top(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
9063        unsafe {
9064            ::qt_core::Receiver::new(
9065                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9066                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setTop(float)\0"),
9067            )
9068        }
9069    }
9070
9071    /// <p>Sets the camera's projection matrix to <i>projectionMatrix</i>.</p>
9072    ///
9073    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setProjectionMatrix` that can be passed to `qt_core::Signal::connect`.
9074    ///
9075    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setProjectionMatrix">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's projection matrix to <i>projectionMatrix</i>.</p>
9076    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionMatrix-prop">projectionMatrix</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionMatrix-prop">projectionMatrix</a>().</p></div>
9077    #[inline(always)]
9078    pub fn slot_set_projection_matrix(
9079        &self,
9080    ) -> ::qt_core::Receiver<(*const ::qt_gui::QMatrix4X4,)> {
9081        unsafe {
9082            ::qt_core::Receiver::new(
9083                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9084                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9085                    b"1setProjectionMatrix(QMatrix4x4 const &)\0",
9086                ),
9087            )
9088        }
9089    }
9090
9091    /// <p>Sets the camera's exposure to <i>exposure</i>.</p>
9092    ///
9093    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setExposure` that can be passed to `qt_core::Signal::connect`.
9094    ///
9095    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setExposure">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's exposure to <i>exposure</i>.</p>
9096    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#exposure-prop">exposure</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#exposure-prop">exposure</a>().</p></div>
9097    #[inline(always)]
9098    pub fn slot_set_exposure(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
9099        unsafe {
9100            ::qt_core::Receiver::new(
9101                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9102                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setExposure(float)\0"),
9103            )
9104        }
9105    }
9106
9107    /// <p>Sets the camera's position in 3D space to <i>position</i>.</p>
9108    ///
9109    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setPosition` that can be passed to `qt_core::Signal::connect`.
9110    ///
9111    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setPosition">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's position in 3D space to <i>position</i>.</p>
9112    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#position-prop">position</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#position-prop">position</a>().</p></div>
9113    #[inline(always)]
9114    pub fn slot_set_position(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QVector3D,)> {
9115        unsafe {
9116            ::qt_core::Receiver::new(
9117                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9118                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9119                    b"1setPosition(QVector3D const &)\0",
9120                ),
9121            )
9122        }
9123    }
9124
9125    /// <p>Sets the camera's up vector to <i>upVector</i>.</p>
9126    ///
9127    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setUpVector` that can be passed to `qt_core::Signal::connect`.
9128    ///
9129    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setUpVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's up vector to <i>upVector</i>.</p>
9130    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#upVector-prop">upVector</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#upVector-prop">upVector</a>().</p></div>
9131    #[inline(always)]
9132    pub fn slot_set_up_vector(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QVector3D,)> {
9133        unsafe {
9134            ::qt_core::Receiver::new(
9135                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9136                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9137                    b"1setUpVector(QVector3D const &)\0",
9138                ),
9139            )
9140        }
9141    }
9142
9143    /// <p>Sets the camera's view center to <i>viewCenter</i>.</p>
9144    ///
9145    /// Returns a built-in Qt slot `Qt3DRender::QCamera::setViewCenter` that can be passed to `qt_core::Signal::connect`.
9146    ///
9147    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setViewCenter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's view center to <i>viewCenter</i>.</p>
9148    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a>().</p></div>
9149    #[inline(always)]
9150    pub fn slot_set_view_center(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QVector3D,)> {
9151        unsafe {
9152            ::qt_core::Receiver::new(
9153                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9154                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9155                    b"1setViewCenter(QVector3D const &)\0",
9156                ),
9157            )
9158        }
9159    }
9160
9161    /// <p>Holds the type of the camera projection.</p>
9162    ///
9163    /// Returns a built-in Qt signal `Qt3DRender::QCamera::projectionTypeChanged` that can be passed to `qt_core::Signal::connect`.
9164    ///
9165    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the type of the camera projection.</p>
9166    /// <ul>
9167    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-cameralens.html">CameraLens</a>.OrthographicProjection</li>
9168    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-cameralens.html">CameraLens</a>.PerspectiveProjection</li>
9169    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-cameralens.html">CameraLens</a>.FrustumProjection</li>
9170    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-cameralens.html">CameraLens</a>.CustomProjection</li>
9171    /// </ul>
9172    /// <p><b>Access functions:</b></p>
9173    /// <div class="table"><table class="alignedsummary">
9174    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QCameraLens::ProjectionType </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionType</b></span>() const</td></tr>
9175    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setProjectionType">setProjectionType</a></b></span>(QCameraLens::ProjectionType <i>type</i>)</td></tr>
9176    /// </tbody></table></div>
9177    /// <p><b>Notifier signal:</b></p>
9178    /// <div class="table"><table class="alignedsummary">
9179    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionTypeChanged</b></span>(QCameraLens::ProjectionType <i>projectionType</i>)</td></tr>
9180    /// </tbody></table></div>
9181    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::ProjectionType</a>.</p></div>
9182    #[inline(always)]
9183    pub fn projection_type_changed(
9184        &self,
9185    ) -> ::qt_core::Signal<(crate::q_camera_lens::ProjectionType,)> {
9186        unsafe {
9187            ::qt_core::Signal::new(
9188                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9189                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9190                    b"2projectionTypeChanged(Qt3DRender::QCameraLens::ProjectionType)\0",
9191                ),
9192            )
9193        }
9194    }
9195
9196    /// <p>Holds the current camera near plane.</p>
9197    ///
9198    /// Returns a built-in Qt signal `Qt3DRender::QCamera::nearPlaneChanged` that can be passed to `qt_core::Signal::connect`.
9199    ///
9200    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#nearPlane-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current camera near plane.</p>
9201    /// <p><b>Access functions:</b></p>
9202    /// <div class="table"><table class="alignedsummary">
9203    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>nearPlane</b></span>() const</td></tr>
9204    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setNearPlane">setNearPlane</a></b></span>(float <i>nearPlane</i>)</td></tr>
9205    /// </tbody></table></div>
9206    /// <p><b>Notifier signal:</b></p>
9207    /// <div class="table"><table class="alignedsummary">
9208    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nearPlaneChanged</b></span>(float <i>nearPlane</i>)</td></tr>
9209    /// </tbody></table></div></div>
9210    #[inline(always)]
9211    pub fn near_plane_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
9212        unsafe {
9213            ::qt_core::Signal::new(
9214                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9215                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2nearPlaneChanged(float)\0"),
9216            )
9217        }
9218    }
9219
9220    /// <p>Holds the current camera far plane.</p>
9221    ///
9222    /// Returns a built-in Qt signal `Qt3DRender::QCamera::farPlaneChanged` that can be passed to `qt_core::Signal::connect`.
9223    ///
9224    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#farPlane-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current camera far plane.</p>
9225    /// <p><b>Access functions:</b></p>
9226    /// <div class="table"><table class="alignedsummary">
9227    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>farPlane</b></span>() const</td></tr>
9228    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setFarPlane">setFarPlane</a></b></span>(float <i>farPlane</i>)</td></tr>
9229    /// </tbody></table></div>
9230    /// <p><b>Notifier signal:</b></p>
9231    /// <div class="table"><table class="alignedsummary">
9232    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>farPlaneChanged</b></span>(float <i>farPlane</i>)</td></tr>
9233    /// </tbody></table></div></div>
9234    #[inline(always)]
9235    pub fn far_plane_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
9236        unsafe {
9237            ::qt_core::Signal::new(
9238                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9239                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2farPlaneChanged(float)\0"),
9240            )
9241        }
9242    }
9243
9244    /// <p>Holds the current field of view in degrees.</p>
9245    ///
9246    /// Returns a built-in Qt signal `Qt3DRender::QCamera::fieldOfViewChanged` that can be passed to `qt_core::Signal::connect`.
9247    ///
9248    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#fieldOfView-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current field of view in degrees.</p>
9249    /// <p><b>Access functions:</b></p>
9250    /// <div class="table"><table class="alignedsummary">
9251    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>fieldOfView</b></span>() const</td></tr>
9252    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setFieldOfView">setFieldOfView</a></b></span>(float <i>fieldOfView</i>)</td></tr>
9253    /// </tbody></table></div>
9254    /// <p><b>Notifier signal:</b></p>
9255    /// <div class="table"><table class="alignedsummary">
9256    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fieldOfViewChanged</b></span>(float <i>fieldOfView</i>)</td></tr>
9257    /// </tbody></table></div></div>
9258    #[inline(always)]
9259    pub fn field_of_view_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
9260        unsafe {
9261            ::qt_core::Signal::new(
9262                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9263                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2fieldOfViewChanged(float)\0"),
9264            )
9265        }
9266    }
9267
9268    /// <p>Holds the current aspect ratio.</p>
9269    ///
9270    /// Returns a built-in Qt signal `Qt3DRender::QCamera::aspectRatioChanged` that can be passed to `qt_core::Signal::connect`.
9271    ///
9272    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#aspectRatio-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current aspect ratio.</p>
9273    /// <p><b>Access functions:</b></p>
9274    /// <div class="table"><table class="alignedsummary">
9275    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>aspectRatio</b></span>() const</td></tr>
9276    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setAspectRatio">setAspectRatio</a></b></span>(float <i>aspectRatio</i>)</td></tr>
9277    /// </tbody></table></div>
9278    /// <p><b>Notifier signal:</b></p>
9279    /// <div class="table"><table class="alignedsummary">
9280    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>aspectRatioChanged</b></span>(float <i>aspectRatio</i>)</td></tr>
9281    /// </tbody></table></div></div>
9282    #[inline(always)]
9283    pub fn aspect_ratio_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
9284        unsafe {
9285            ::qt_core::Signal::new(
9286                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9287                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2aspectRatioChanged(float)\0"),
9288            )
9289        }
9290    }
9291
9292    /// <p>Holds the current left of the camera.</p>
9293    ///
9294    /// Returns a built-in Qt signal `Qt3DRender::QCamera::leftChanged` that can be passed to `qt_core::Signal::connect`.
9295    ///
9296    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#left-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current left of the camera.</p>
9297    /// <p><b>Access functions:</b></p>
9298    /// <div class="table"><table class="alignedsummary">
9299    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>left</b></span>() const</td></tr>
9300    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setLeft">setLeft</a></b></span>(float <i>left</i>)</td></tr>
9301    /// </tbody></table></div>
9302    /// <p><b>Notifier signal:</b></p>
9303    /// <div class="table"><table class="alignedsummary">
9304    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>leftChanged</b></span>(float <i>left</i>)</td></tr>
9305    /// </tbody></table></div></div>
9306    #[inline(always)]
9307    pub fn left_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
9308        unsafe {
9309            ::qt_core::Signal::new(
9310                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9311                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2leftChanged(float)\0"),
9312            )
9313        }
9314    }
9315
9316    /// <p>Holds the current right of the camera.</p>
9317    ///
9318    /// Returns a built-in Qt signal `Qt3DRender::QCamera::rightChanged` that can be passed to `qt_core::Signal::connect`.
9319    ///
9320    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#right-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current right of the camera.</p>
9321    /// <p><b>Access functions:</b></p>
9322    /// <div class="table"><table class="alignedsummary">
9323    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>right</b></span>() const</td></tr>
9324    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setRight">setRight</a></b></span>(float <i>right</i>)</td></tr>
9325    /// </tbody></table></div>
9326    /// <p><b>Notifier signal:</b></p>
9327    /// <div class="table"><table class="alignedsummary">
9328    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>rightChanged</b></span>(float <i>right</i>)</td></tr>
9329    /// </tbody></table></div></div>
9330    #[inline(always)]
9331    pub fn right_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
9332        unsafe {
9333            ::qt_core::Signal::new(
9334                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9335                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2rightChanged(float)\0"),
9336            )
9337        }
9338    }
9339
9340    /// <p>Holds the current bottom of the camera.</p>
9341    ///
9342    /// Returns a built-in Qt signal `Qt3DRender::QCamera::bottomChanged` that can be passed to `qt_core::Signal::connect`.
9343    ///
9344    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#bottom-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current bottom of the camera.</p>
9345    /// <p><b>Access functions:</b></p>
9346    /// <div class="table"><table class="alignedsummary">
9347    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>bottom</b></span>() const</td></tr>
9348    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setBottom">setBottom</a></b></span>(float <i>bottom</i>)</td></tr>
9349    /// </tbody></table></div>
9350    /// <p><b>Notifier signal:</b></p>
9351    /// <div class="table"><table class="alignedsummary">
9352    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bottomChanged</b></span>(float <i>bottom</i>)</td></tr>
9353    /// </tbody></table></div></div>
9354    #[inline(always)]
9355    pub fn bottom_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
9356        unsafe {
9357            ::qt_core::Signal::new(
9358                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9359                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2bottomChanged(float)\0"),
9360            )
9361        }
9362    }
9363
9364    /// <p>Holds the current top of the camera.</p>
9365    ///
9366    /// Returns a built-in Qt signal `Qt3DRender::QCamera::topChanged` that can be passed to `qt_core::Signal::connect`.
9367    ///
9368    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#top-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current top of the camera.</p>
9369    /// <p><b>Access functions:</b></p>
9370    /// <div class="table"><table class="alignedsummary">
9371    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>top</b></span>() const</td></tr>
9372    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setTop">setTop</a></b></span>(float <i>top</i>)</td></tr>
9373    /// </tbody></table></div>
9374    /// <p><b>Notifier signal:</b></p>
9375    /// <div class="table"><table class="alignedsummary">
9376    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>topChanged</b></span>(float <i>top</i>)</td></tr>
9377    /// </tbody></table></div></div>
9378    #[inline(always)]
9379    pub fn top_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
9380        unsafe {
9381            ::qt_core::Signal::new(
9382                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9383                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2topChanged(float)\0"),
9384            )
9385        }
9386    }
9387
9388    /// <p>Holds the current projection matrix of the camera.</p>
9389    ///
9390    /// Returns a built-in Qt signal `Qt3DRender::QCamera::projectionMatrixChanged` that can be passed to `qt_core::Signal::connect`.
9391    ///
9392    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionMatrix-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current projection matrix of the camera.</p>
9393    /// <p><b>Access functions:</b></p>
9394    /// <div class="table"><table class="alignedsummary">
9395    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QMatrix4x4 </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionMatrix</b></span>() const</td></tr>
9396    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setProjectionMatrix">setProjectionMatrix</a></b></span>(const QMatrix4x4 &amp;<i>projectionMatrix</i>)</td></tr>
9397    /// </tbody></table></div>
9398    /// <p><b>Notifier signal:</b></p>
9399    /// <div class="table"><table class="alignedsummary">
9400    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionMatrixChanged</b></span>(const QMatrix4x4 &amp;<i>projectionMatrix</i>)</td></tr>
9401    /// </tbody></table></div></div>
9402    #[inline(always)]
9403    pub fn projection_matrix_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QMatrix4X4,)> {
9404        unsafe {
9405            ::qt_core::Signal::new(
9406                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9407                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9408                    b"2projectionMatrixChanged(QMatrix4x4 const &)\0",
9409                ),
9410            )
9411        }
9412    }
9413
9414    /// <p>Holds the current exposure of the camera.</p>
9415    ///
9416    /// Returns a built-in Qt signal `Qt3DRender::QCamera::exposureChanged` that can be passed to `qt_core::Signal::connect`.
9417    ///
9418    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#exposure-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current exposure of the camera.</p>
9419    /// <p><b>Access functions:</b></p>
9420    /// <div class="table"><table class="alignedsummary">
9421    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>exposure</b></span>() const</td></tr>
9422    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setExposure">setExposure</a></b></span>(float <i>exposure</i>)</td></tr>
9423    /// </tbody></table></div>
9424    /// <p><b>Notifier signal:</b></p>
9425    /// <div class="table"><table class="alignedsummary">
9426    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>exposureChanged</b></span>(float <i>exposure</i>)</td></tr>
9427    /// </tbody></table></div></div>
9428    #[inline(always)]
9429    pub fn exposure_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
9430        unsafe {
9431            ::qt_core::Signal::new(
9432                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9433                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2exposureChanged(float)\0"),
9434            )
9435        }
9436    }
9437
9438    /// <p>Holds the camera's position in coordinates relative to the parent entity.</p>
9439    ///
9440    /// Returns a built-in Qt signal `Qt3DRender::QCamera::positionChanged` that can be passed to `qt_core::Signal::connect`.
9441    ///
9442    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#position-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's position in coordinates relative to the parent entity.</p>
9443    /// <p><b>Access functions:</b></p>
9444    /// <div class="table"><table class="alignedsummary">
9445    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>position</b></span>() const</td></tr>
9446    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setPosition">setPosition</a></b></span>(const QVector3D &amp;<i>position</i>)</td></tr>
9447    /// </tbody></table></div>
9448    /// <p><b>Notifier signal:</b></p>
9449    /// <div class="table"><table class="alignedsummary">
9450    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>positionChanged</b></span>(const QVector3D &amp;<i>position</i>)</td></tr>
9451    /// </tbody></table></div></div>
9452    #[inline(always)]
9453    pub fn position_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
9454        unsafe {
9455            ::qt_core::Signal::new(
9456                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9457                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9458                    b"2positionChanged(QVector3D const &)\0",
9459                ),
9460            )
9461        }
9462    }
9463
9464    /// <p>Holds the camera's up vector in coordinates relative to the parent entity.</p>
9465    ///
9466    /// Returns a built-in Qt signal `Qt3DRender::QCamera::upVectorChanged` that can be passed to `qt_core::Signal::connect`.
9467    ///
9468    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#upVector-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's up vector in coordinates relative to the parent entity.</p>
9469    /// <p><b>Access functions:</b></p>
9470    /// <div class="table"><table class="alignedsummary">
9471    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>upVector</b></span>() const</td></tr>
9472    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setUpVector">setUpVector</a></b></span>(const QVector3D &amp;<i>upVector</i>)</td></tr>
9473    /// </tbody></table></div>
9474    /// <p><b>Notifier signal:</b></p>
9475    /// <div class="table"><table class="alignedsummary">
9476    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>upVectorChanged</b></span>(const QVector3D &amp;<i>upVector</i>)</td></tr>
9477    /// </tbody></table></div></div>
9478    #[inline(always)]
9479    pub fn up_vector_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
9480        unsafe {
9481            ::qt_core::Signal::new(
9482                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9483                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9484                    b"2upVectorChanged(QVector3D const &)\0",
9485                ),
9486            )
9487        }
9488    }
9489
9490    /// <p>Holds the camera's view center in coordinates relative to the parent entity.</p>
9491    ///
9492    /// Returns a built-in Qt signal `Qt3DRender::QCamera::viewCenterChanged` that can be passed to `qt_core::Signal::connect`.
9493    ///
9494    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's view center in coordinates relative to the parent entity.</p>
9495    /// <p><b>Access functions:</b></p>
9496    /// <div class="table"><table class="alignedsummary">
9497    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>viewCenter</b></span>() const</td></tr>
9498    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setViewCenter">setViewCenter</a></b></span>(const QVector3D &amp;<i>viewCenter</i>)</td></tr>
9499    /// </tbody></table></div>
9500    /// <p><b>Notifier signal:</b></p>
9501    /// <div class="table"><table class="alignedsummary">
9502    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>viewCenterChanged</b></span>(const QVector3D &amp;<i>viewCenter</i>)</td></tr>
9503    /// </tbody></table></div></div>
9504    #[inline(always)]
9505    pub fn view_center_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
9506        unsafe {
9507            ::qt_core::Signal::new(
9508                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9509                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9510                    b"2viewCenterChanged(QVector3D const &)\0",
9511                ),
9512            )
9513        }
9514    }
9515
9516    /// <p>Holds the camera's view vector in coordinates relative to the parent entity.</p>
9517    ///
9518    /// Returns a built-in Qt signal `Qt3DRender::QCamera::viewVectorChanged` that can be passed to `qt_core::Signal::connect`.
9519    ///
9520    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewVector-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's view vector in coordinates relative to the parent entity.</p>
9521    /// <p><b>Access functions:</b></p>
9522    /// <div class="table"><table class="alignedsummary">
9523    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>viewVector</b></span>() const</td></tr>
9524    /// </tbody></table></div>
9525    /// <p><b>Notifier signal:</b></p>
9526    /// <div class="table"><table class="alignedsummary">
9527    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>viewVectorChanged</b></span>(const QVector3D &amp;<i>viewVector</i>)</td></tr>
9528    /// </tbody></table></div></div>
9529    #[inline(always)]
9530    pub fn view_vector_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
9531        unsafe {
9532            ::qt_core::Signal::new(
9533                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9534                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
9535                    b"2viewVectorChanged(QVector3D const &)\0",
9536                ),
9537            )
9538        }
9539    }
9540
9541    /// <p>Holds the camera's view matrix in coordinates relative to the parent entity.</p>
9542    ///
9543    /// Returns a built-in Qt signal `Qt3DRender::QCamera::viewMatrixChanged` that can be passed to `qt_core::Signal::connect`.
9544    ///
9545    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera-obsolete.html#viewMatrix-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's view matrix in coordinates relative to the parent entity.</p>
9546    /// <p><b>Access functions:</b></p>
9547    /// <div class="table"><table class="alignedsummary">
9548    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QMatrix4x4 </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewMatrix-prop">viewMatrix</a></b></span>() const</td></tr>
9549    /// </tbody></table></div>
9550    /// <p><b>Notifier signal:</b></p>
9551    /// <div class="table"><table class="alignedsummary">
9552    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewMatrix-prop">viewMatrixChanged</a></b></span>()</td></tr>
9553    /// </tbody></table></div></div>
9554    #[inline(always)]
9555    pub fn view_matrix_changed(&self) -> ::qt_core::Signal<()> {
9556        unsafe {
9557            ::qt_core::Signal::new(
9558                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
9559                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2viewMatrixChanged()\0"),
9560            )
9561        }
9562    }
9563
9564    /// <p>Holds the current aspect ratio.</p>
9565    ///
9566    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCamera::aspectRatio() const```</span>.
9567    ///
9568    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#aspectRatio-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current aspect ratio.</p>
9569    /// <p><b>Access functions:</b></p>
9570    /// <div class="table"><table class="alignedsummary">
9571    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>aspectRatio</b></span>() const</td></tr>
9572    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setAspectRatio">setAspectRatio</a></b></span>(float <i>aspectRatio</i>)</td></tr>
9573    /// </tbody></table></div>
9574    /// <p><b>Notifier signal:</b></p>
9575    /// <div class="table"><table class="alignedsummary">
9576    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>aspectRatioChanged</b></span>(float <i>aspectRatio</i>)</td></tr>
9577    /// </tbody></table></div></div>
9578    #[inline(always)]
9579    pub unsafe fn aspect_ratio(&self) -> ::std::os::raw::c_float {
9580        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_aspectRatio(
9581            self as *const crate::QCamera,
9582        )
9583    }
9584
9585    /// <p>Holds the current bottom of the camera.</p>
9586    ///
9587    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCamera::bottom() const```</span>.
9588    ///
9589    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#bottom-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current bottom of the camera.</p>
9590    /// <p><b>Access functions:</b></p>
9591    /// <div class="table"><table class="alignedsummary">
9592    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>bottom</b></span>() const</td></tr>
9593    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setBottom">setBottom</a></b></span>(float <i>bottom</i>)</td></tr>
9594    /// </tbody></table></div>
9595    /// <p><b>Notifier signal:</b></p>
9596    /// <div class="table"><table class="alignedsummary">
9597    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bottomChanged</b></span>(float <i>bottom</i>)</td></tr>
9598    /// </tbody></table></div></div>
9599    #[inline(always)]
9600    pub unsafe fn bottom(&self) -> ::std::os::raw::c_float {
9601        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_bottom(self as *const crate::QCamera)
9602    }
9603
9604    /// <p>Holds the current exposure of the camera.</p>
9605    ///
9606    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCamera::exposure() const```</span>.
9607    ///
9608    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#exposure-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current exposure of the camera.</p>
9609    /// <p><b>Access functions:</b></p>
9610    /// <div class="table"><table class="alignedsummary">
9611    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>exposure</b></span>() const</td></tr>
9612    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setExposure">setExposure</a></b></span>(float <i>exposure</i>)</td></tr>
9613    /// </tbody></table></div>
9614    /// <p><b>Notifier signal:</b></p>
9615    /// <div class="table"><table class="alignedsummary">
9616    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>exposureChanged</b></span>(float <i>exposure</i>)</td></tr>
9617    /// </tbody></table></div></div>
9618    #[inline(always)]
9619    pub unsafe fn exposure(&self) -> ::std::os::raw::c_float {
9620        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_exposure(
9621            self as *const crate::QCamera,
9622        )
9623    }
9624
9625    /// <p>Holds the current camera far plane.</p>
9626    ///
9627    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCamera::farPlane() const```</span>.
9628    ///
9629    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#farPlane-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current camera far plane.</p>
9630    /// <p><b>Access functions:</b></p>
9631    /// <div class="table"><table class="alignedsummary">
9632    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>farPlane</b></span>() const</td></tr>
9633    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setFarPlane">setFarPlane</a></b></span>(float <i>farPlane</i>)</td></tr>
9634    /// </tbody></table></div>
9635    /// <p><b>Notifier signal:</b></p>
9636    /// <div class="table"><table class="alignedsummary">
9637    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>farPlaneChanged</b></span>(float <i>farPlane</i>)</td></tr>
9638    /// </tbody></table></div></div>
9639    #[inline(always)]
9640    pub unsafe fn far_plane(&self) -> ::std::os::raw::c_float {
9641        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_farPlane(
9642            self as *const crate::QCamera,
9643        )
9644    }
9645
9646    /// <p>Holds the current field of view in degrees.</p>
9647    ///
9648    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCamera::fieldOfView() const```</span>.
9649    ///
9650    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#fieldOfView-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current field of view in degrees.</p>
9651    /// <p><b>Access functions:</b></p>
9652    /// <div class="table"><table class="alignedsummary">
9653    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>fieldOfView</b></span>() const</td></tr>
9654    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setFieldOfView">setFieldOfView</a></b></span>(float <i>fieldOfView</i>)</td></tr>
9655    /// </tbody></table></div>
9656    /// <p><b>Notifier signal:</b></p>
9657    /// <div class="table"><table class="alignedsummary">
9658    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fieldOfViewChanged</b></span>(float <i>fieldOfView</i>)</td></tr>
9659    /// </tbody></table></div></div>
9660    #[inline(always)]
9661    pub unsafe fn field_of_view(&self) -> ::std::os::raw::c_float {
9662        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_fieldOfView(
9663            self as *const crate::QCamera,
9664        )
9665    }
9666
9667    /// <p>Holds the current left of the camera.</p>
9668    ///
9669    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCamera::left() const```</span>.
9670    ///
9671    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#left-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current left of the camera.</p>
9672    /// <p><b>Access functions:</b></p>
9673    /// <div class="table"><table class="alignedsummary">
9674    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>left</b></span>() const</td></tr>
9675    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setLeft">setLeft</a></b></span>(float <i>left</i>)</td></tr>
9676    /// </tbody></table></div>
9677    /// <p><b>Notifier signal:</b></p>
9678    /// <div class="table"><table class="alignedsummary">
9679    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>leftChanged</b></span>(float <i>left</i>)</td></tr>
9680    /// </tbody></table></div></div>
9681    #[inline(always)]
9682    pub unsafe fn left(&self) -> ::std::os::raw::c_float {
9683        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_left(self as *const crate::QCamera)
9684    }
9685
9686    /// <p>Returns the current lens.</p>
9687    ///
9688    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraLens* Qt3DRender::QCamera::lens() const```</span>.
9689    ///
9690    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#lens">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current lens.</p></div>
9691    #[inline(always)]
9692    pub unsafe fn lens(&self) -> ::qt_core::QPtr<crate::QCameraLens> {
9693        let ffi_result = {
9694            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_lens(
9695                self as *const crate::QCamera,
9696            )
9697        };
9698        ::qt_core::QPtr::from_raw(ffi_result)
9699    }
9700
9701    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QCamera::metaObject() const```</span>.
9702    #[inline(always)]
9703    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
9704        let ffi_result = {
9705            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_metaObject(
9706                self as *const crate::QCamera,
9707            )
9708        };
9709        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
9710    }
9711
9712    /// <p>Holds the current camera near plane.</p>
9713    ///
9714    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCamera::nearPlane() const```</span>.
9715    ///
9716    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#nearPlane-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current camera near plane.</p>
9717    /// <p><b>Access functions:</b></p>
9718    /// <div class="table"><table class="alignedsummary">
9719    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>nearPlane</b></span>() const</td></tr>
9720    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setNearPlane">setNearPlane</a></b></span>(float <i>nearPlane</i>)</td></tr>
9721    /// </tbody></table></div>
9722    /// <p><b>Notifier signal:</b></p>
9723    /// <div class="table"><table class="alignedsummary">
9724    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nearPlaneChanged</b></span>(float <i>nearPlane</i>)</td></tr>
9725    /// </tbody></table></div></div>
9726    #[inline(always)]
9727    pub unsafe fn near_plane(&self) -> ::std::os::raw::c_float {
9728        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_nearPlane(
9729            self as *const crate::QCamera,
9730        )
9731    }
9732
9733    /// <p>Default constructs an instance of QCamera.</p>
9734    ///
9735    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QCamera::QCamera(Qt3DCore::QNode* parent = …)```</span>.
9736    ///
9737    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#QCamera">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QCamera.</p></div>
9738    #[inline(always)]
9739    pub unsafe fn new_1a(
9740        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
9741    ) -> ::qt_core::QBox<crate::QCamera> {
9742        let ffi_result = {
9743            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_QCamera(
9744                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
9745                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
9746            )
9747        };
9748        ::qt_core::QBox::from_raw(ffi_result)
9749    }
9750
9751    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html">QCamera</a> class defines a view point through which the scene will be rendered.</p>
9752    ///
9753    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QCamera::QCamera()```</span>.
9754    ///
9755    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html">QCamera</a> class defines a view point through which the scene will be rendered.</p></div>
9756    #[inline(always)]
9757    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QCamera> {
9758        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_QCamera1() };
9759        ::qt_core::QBox::from_raw(ffi_result)
9760    }
9761
9762    /// <p>Adjusts the pan angle of the camera by <i>angle</i> in degrees.</p>
9763    ///
9764    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::pan(float angle)```</span>.
9765    ///
9766    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#pan">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adjusts the pan angle of the camera by <i>angle</i> in degrees.</p></div>
9767    #[inline(always)]
9768    pub unsafe fn pan_1a(&self, angle: ::std::os::raw::c_float) {
9769        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_pan(
9770            self as *const crate::QCamera as *mut crate::QCamera,
9771            angle,
9772        )
9773    }
9774
9775    /// <p>Adjusts the pan angle of the camera by <i>angle</i> in degrees on a chosen <i>axis</i>.</p>
9776    ///
9777    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::pan(float angle, const QVector3D& axis)```</span>.
9778    ///
9779    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#pan-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adjusts the pan angle of the camera by <i>angle</i> in degrees on a chosen <i>axis</i>.</p></div>
9780    #[inline(always)]
9781    pub unsafe fn pan_2a(
9782        &self,
9783        angle: ::std::os::raw::c_float,
9784        axis: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
9785    ) {
9786        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_pan1(
9787            self as *const crate::QCamera as *mut crate::QCamera,
9788            angle,
9789            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(axis)
9790                .as_raw_ptr(),
9791        )
9792    }
9793
9794    /// <p>Adjusts the camera pan about view center by <i>angle</i> in degrees.</p>
9795    ///
9796    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::panAboutViewCenter(float angle)```</span>.
9797    ///
9798    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#panAboutViewCenter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adjusts the camera pan about view center by <i>angle</i> in degrees.</p></div>
9799    #[inline(always)]
9800    pub unsafe fn pan_about_view_center_1a(&self, angle: ::std::os::raw::c_float) {
9801        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_panAboutViewCenter(
9802            self as *const crate::QCamera as *mut crate::QCamera,
9803            angle,
9804        )
9805    }
9806
9807    /// <p>Adjusts the camera pan about view center by <i>angle</i> in degrees on <i>axis</i>.</p>
9808    ///
9809    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::panAboutViewCenter(float angle, const QVector3D& axis)```</span>.
9810    ///
9811    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#panAboutViewCenter-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adjusts the camera pan about view center by <i>angle</i> in degrees on <i>axis</i>.</p></div>
9812    #[inline(always)]
9813    pub unsafe fn pan_about_view_center_2a(
9814        &self,
9815        angle: ::std::os::raw::c_float,
9816        axis: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
9817    ) {
9818        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_panAboutViewCenter1(
9819            self as *const crate::QCamera as *mut crate::QCamera,
9820            angle,
9821            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(axis)
9822                .as_raw_ptr(),
9823        )
9824    }
9825
9826    /// <p>Returns the calculated pan rotation in relation to the <i>angle</i> in degrees taken in to adjust the camera's pan or left/right rotation on the Y axis.</p>
9827    ///
9828    /// Calls C++ function: <span style='color: green;'>```QQuaternion Qt3DRender::QCamera::panRotation(float angle) const```</span>.
9829    ///
9830    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#panRotation">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the calculated pan rotation in relation to the <i>angle</i> in degrees taken in to adjust the camera's pan or left/right rotation on the Y axis.</p></div>
9831    #[inline(always)]
9832    pub unsafe fn pan_rotation(
9833        &self,
9834        angle: ::std::os::raw::c_float,
9835    ) -> ::cpp_core::CppBox<::qt_gui::QQuaternion> {
9836        let ffi_result = {
9837            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_panRotation(
9838                self as *const crate::QCamera,
9839                angle,
9840            )
9841        };
9842        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9843    }
9844
9845    /// <p>Holds the camera's position in coordinates relative to the parent entity.</p>
9846    ///
9847    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QCamera::position() const```</span>.
9848    ///
9849    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#position-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's position in coordinates relative to the parent entity.</p>
9850    /// <p><b>Access functions:</b></p>
9851    /// <div class="table"><table class="alignedsummary">
9852    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>position</b></span>() const</td></tr>
9853    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setPosition">setPosition</a></b></span>(const QVector3D &amp;<i>position</i>)</td></tr>
9854    /// </tbody></table></div>
9855    /// <p><b>Notifier signal:</b></p>
9856    /// <div class="table"><table class="alignedsummary">
9857    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>positionChanged</b></span>(const QVector3D &amp;<i>position</i>)</td></tr>
9858    /// </tbody></table></div></div>
9859    #[inline(always)]
9860    pub unsafe fn position(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
9861        let ffi_result = {
9862            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_position(
9863                self as *const crate::QCamera,
9864            )
9865        };
9866        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9867    }
9868
9869    /// <p>Holds the current projection matrix of the camera.</p>
9870    ///
9871    /// Calls C++ function: <span style='color: green;'>```QMatrix4x4 Qt3DRender::QCamera::projectionMatrix() const```</span>.
9872    ///
9873    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionMatrix-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current projection matrix of the camera.</p>
9874    /// <p><b>Access functions:</b></p>
9875    /// <div class="table"><table class="alignedsummary">
9876    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QMatrix4x4 </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionMatrix</b></span>() const</td></tr>
9877    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setProjectionMatrix">setProjectionMatrix</a></b></span>(const QMatrix4x4 &amp;<i>projectionMatrix</i>)</td></tr>
9878    /// </tbody></table></div>
9879    /// <p><b>Notifier signal:</b></p>
9880    /// <div class="table"><table class="alignedsummary">
9881    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionMatrixChanged</b></span>(const QMatrix4x4 &amp;<i>projectionMatrix</i>)</td></tr>
9882    /// </tbody></table></div></div>
9883    #[inline(always)]
9884    pub unsafe fn projection_matrix(&self) -> ::cpp_core::CppBox<::qt_gui::QMatrix4X4> {
9885        let ffi_result = {
9886            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_projectionMatrix(
9887                self as *const crate::QCamera,
9888            )
9889        };
9890        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
9891    }
9892
9893    /// <p>Holds the type of the camera projection.</p>
9894    ///
9895    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraLens::ProjectionType Qt3DRender::QCamera::projectionType() const```</span>.
9896    ///
9897    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the type of the camera projection.</p>
9898    /// <ul>
9899    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-cameralens.html">CameraLens</a>.OrthographicProjection</li>
9900    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-cameralens.html">CameraLens</a>.PerspectiveProjection</li>
9901    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-cameralens.html">CameraLens</a>.FrustumProjection</li>
9902    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-cameralens.html">CameraLens</a>.CustomProjection</li>
9903    /// </ul>
9904    /// <p><b>Access functions:</b></p>
9905    /// <div class="table"><table class="alignedsummary">
9906    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QCameraLens::ProjectionType </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionType</b></span>() const</td></tr>
9907    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setProjectionType">setProjectionType</a></b></span>(QCameraLens::ProjectionType <i>type</i>)</td></tr>
9908    /// </tbody></table></div>
9909    /// <p><b>Notifier signal:</b></p>
9910    /// <div class="table"><table class="alignedsummary">
9911    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>projectionTypeChanged</b></span>(QCameraLens::ProjectionType <i>projectionType</i>)</td></tr>
9912    /// </tbody></table></div>
9913    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcameralens.html#ProjectionType-enum">Qt3DRender::QCameraLens::ProjectionType</a>.</p></div>
9914    #[inline(always)]
9915    pub unsafe fn projection_type(&self) -> crate::q_camera_lens::ProjectionType {
9916        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_projectionType(
9917            self as *const crate::QCamera,
9918        )
9919    }
9920
9921    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QCamera::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
9922    #[inline(always)]
9923    pub unsafe fn qt_metacall(
9924        &self,
9925        arg1: ::qt_core::q_meta_object::Call,
9926        arg2: ::std::os::raw::c_int,
9927        arg3: *mut *mut ::std::ffi::c_void,
9928    ) -> ::std::os::raw::c_int {
9929        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_qt_metacall(
9930            self as *const crate::QCamera as *mut crate::QCamera,
9931            arg1,
9932            arg2,
9933            arg3,
9934        )
9935    }
9936
9937    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QCamera::qt_metacast(const char* arg1)```</span>.
9938    #[inline(always)]
9939    pub unsafe fn qt_metacast(
9940        &self,
9941        arg1: *const ::std::os::raw::c_char,
9942    ) -> *mut ::std::ffi::c_void {
9943        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_qt_metacast(
9944            self as *const crate::QCamera as *mut crate::QCamera,
9945            arg1,
9946        )
9947    }
9948
9949    /// <p>Holds the current right of the camera.</p>
9950    ///
9951    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCamera::right() const```</span>.
9952    ///
9953    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#right-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current right of the camera.</p>
9954    /// <p><b>Access functions:</b></p>
9955    /// <div class="table"><table class="alignedsummary">
9956    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>right</b></span>() const</td></tr>
9957    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setRight">setRight</a></b></span>(float <i>right</i>)</td></tr>
9958    /// </tbody></table></div>
9959    /// <p><b>Notifier signal:</b></p>
9960    /// <div class="table"><table class="alignedsummary">
9961    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>rightChanged</b></span>(float <i>right</i>)</td></tr>
9962    /// </tbody></table></div></div>
9963    #[inline(always)]
9964    pub unsafe fn right(&self) -> ::std::os::raw::c_float {
9965        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_right(self as *const crate::QCamera)
9966    }
9967
9968    /// <p>Adjusts the camera roll by <i>angle</i> in degrees.</p>
9969    ///
9970    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::roll(float angle)```</span>.
9971    ///
9972    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#roll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adjusts the camera roll by <i>angle</i> in degrees.</p></div>
9973    #[inline(always)]
9974    pub unsafe fn roll(&self, angle: ::std::os::raw::c_float) {
9975        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_roll(
9976            self as *const crate::QCamera as *mut crate::QCamera,
9977            angle,
9978        )
9979    }
9980
9981    /// <p>Adjusts the camera roll about view center by <i>angle</i> in degrees.</p>
9982    ///
9983    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::rollAboutViewCenter(float angle)```</span>.
9984    ///
9985    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#rollAboutViewCenter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adjusts the camera roll about view center by <i>angle</i> in degrees.</p></div>
9986    #[inline(always)]
9987    pub unsafe fn roll_about_view_center(&self, angle: ::std::os::raw::c_float) {
9988        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_rollAboutViewCenter(
9989            self as *const crate::QCamera as *mut crate::QCamera,
9990            angle,
9991        )
9992    }
9993
9994    /// <p>Returns the calculated roll rotation in relation to the <i>angle</i> in degrees taken in to adjust the camera's roll or lean left/right rotation on the Z axis.</p>
9995    ///
9996    /// Calls C++ function: <span style='color: green;'>```QQuaternion Qt3DRender::QCamera::rollRotation(float angle) const```</span>.
9997    ///
9998    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#rollRotation">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the calculated roll rotation in relation to the <i>angle</i> in degrees taken in to adjust the camera's roll or lean left/right rotation on the Z axis.</p></div>
9999    #[inline(always)]
10000    pub unsafe fn roll_rotation(
10001        &self,
10002        angle: ::std::os::raw::c_float,
10003    ) -> ::cpp_core::CppBox<::qt_gui::QQuaternion> {
10004        let ffi_result = {
10005            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_rollRotation(
10006                self as *const crate::QCamera,
10007                angle,
10008            )
10009        };
10010        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10011    }
10012
10013    /// <p>Rotates the camera with the use of a Quaternion in <i>q</i>.</p>
10014    ///
10015    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::rotate(const QQuaternion& q)```</span>.
10016    ///
10017    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#rotate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Rotates the camera with the use of a Quaternion in <i>q</i>.</p></div>
10018    #[inline(always)]
10019    pub unsafe fn rotate(
10020        &self,
10021        q: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QQuaternion>>,
10022    ) {
10023        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_rotate(
10024            self as *const crate::QCamera as *mut crate::QCamera,
10025            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QQuaternion>>::cast_into(q)
10026                .as_raw_ptr(),
10027        )
10028    }
10029
10030    /// <p>Rotates the camera about the view center with the use of a Quaternion in <i>q</i>.</p>
10031    ///
10032    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::rotateAboutViewCenter(const QQuaternion& q)```</span>.
10033    ///
10034    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#rotateAboutViewCenter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Rotates the camera about the view center with the use of a Quaternion in <i>q</i>.</p></div>
10035    #[inline(always)]
10036    pub unsafe fn rotate_about_view_center(
10037        &self,
10038        q: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QQuaternion>>,
10039    ) {
10040        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_rotateAboutViewCenter(
10041            self as *const crate::QCamera as *mut crate::QCamera,
10042            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QQuaternion>>::cast_into(q)
10043                .as_raw_ptr(),
10044        )
10045    }
10046
10047    /// <p>Returns the calculated rotation in relation to the <i>angle</i> in degrees and chosen <i>axis</i> taken in.</p>
10048    ///
10049    /// Calls C++ function: <span style='color: green;'>```QQuaternion Qt3DRender::QCamera::rotation(float angle, const QVector3D& axis) const```</span>.
10050    ///
10051    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#rotation">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the calculated rotation in relation to the <i>angle</i> in degrees and chosen <i>axis</i> taken in.</p></div>
10052    #[inline(always)]
10053    pub unsafe fn rotation(
10054        &self,
10055        angle: ::std::os::raw::c_float,
10056        axis: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
10057    ) -> ::cpp_core::CppBox<::qt_gui::QQuaternion> {
10058        let ffi_result = {
10059            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_rotation(
10060                self as *const crate::QCamera,
10061                angle,
10062                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(axis)
10063                    .as_raw_ptr(),
10064            )
10065        };
10066        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10067    }
10068
10069    /// <p>Sets the camera's aspect ratio to <i>aspectRatio</i>.</p>
10070    ///
10071    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setAspectRatio(float aspectRatio)```</span>.
10072    ///
10073    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setAspectRatio">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's aspect ratio to <i>aspectRatio</i>.</p>
10074    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#aspectRatio-prop">aspectRatio</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#aspectRatio-prop">aspectRatio</a>().</p></div>
10075    #[inline(always)]
10076    pub unsafe fn set_aspect_ratio(&self, aspect_ratio: ::std::os::raw::c_float) {
10077        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setAspectRatio(
10078            self as *const crate::QCamera as *mut crate::QCamera,
10079            aspect_ratio,
10080        )
10081    }
10082
10083    /// <p>Sets the bottom of the camera to <i>bottom</i>.</p>
10084    ///
10085    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setBottom(float bottom)```</span>.
10086    ///
10087    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setBottom">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the bottom of the camera to <i>bottom</i>.</p>
10088    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#bottom-prop">bottom</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#bottom-prop">bottom</a>().</p></div>
10089    #[inline(always)]
10090    pub unsafe fn set_bottom(&self, bottom: ::std::os::raw::c_float) {
10091        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setBottom(
10092            self as *const crate::QCamera as *mut crate::QCamera,
10093            bottom,
10094        )
10095    }
10096
10097    /// <p>Sets the camera's exposure to <i>exposure</i>.</p>
10098    ///
10099    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setExposure(float exposure)```</span>.
10100    ///
10101    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setExposure">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's exposure to <i>exposure</i>.</p>
10102    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#exposure-prop">exposure</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#exposure-prop">exposure</a>().</p></div>
10103    #[inline(always)]
10104    pub unsafe fn set_exposure(&self, exposure: ::std::os::raw::c_float) {
10105        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setExposure(
10106            self as *const crate::QCamera as *mut crate::QCamera,
10107            exposure,
10108        )
10109    }
10110
10111    /// <p>Sets the camera's far plane to <i>farPlane</i></p>
10112    ///
10113    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setFarPlane(float farPlane)```</span>.
10114    ///
10115    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setFarPlane">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's far plane to <i>farPlane</i></p>
10116    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#farPlane-prop">farPlane</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#farPlane-prop">farPlane</a>().</p></div>
10117    #[inline(always)]
10118    pub unsafe fn set_far_plane(&self, far_plane: ::std::os::raw::c_float) {
10119        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setFarPlane(
10120            self as *const crate::QCamera as *mut crate::QCamera,
10121            far_plane,
10122        )
10123    }
10124
10125    /// <p>Sets the camera's field of view to <i>fieldOfView</i> in degrees.</p>
10126    ///
10127    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setFieldOfView(float fieldOfView)```</span>.
10128    ///
10129    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setFieldOfView">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's field of view to <i>fieldOfView</i> in degrees.</p>
10130    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#fieldOfView-prop">fieldOfView</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#fieldOfView-prop">fieldOfView</a>().</p></div>
10131    #[inline(always)]
10132    pub unsafe fn set_field_of_view(&self, field_of_view: ::std::os::raw::c_float) {
10133        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setFieldOfView(
10134            self as *const crate::QCamera as *mut crate::QCamera,
10135            field_of_view,
10136        )
10137    }
10138
10139    /// <p>Sets the left of the camera to <i>left</i>.</p>
10140    ///
10141    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setLeft(float left)```</span>.
10142    ///
10143    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setLeft">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the left of the camera to <i>left</i>.</p>
10144    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#left-prop">left</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#left-prop">left</a>().</p></div>
10145    #[inline(always)]
10146    pub unsafe fn set_left(&self, left: ::std::os::raw::c_float) {
10147        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setLeft(
10148            self as *const crate::QCamera as *mut crate::QCamera,
10149            left,
10150        )
10151    }
10152
10153    /// <p>Sets the camera's near plane to <i>nearPlane</i>.</p>
10154    ///
10155    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setNearPlane(float nearPlane)```</span>.
10156    ///
10157    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setNearPlane">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's near plane to <i>nearPlane</i>.</p>
10158    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#nearPlane-prop">nearPlane</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#nearPlane-prop">nearPlane</a>().</p></div>
10159    #[inline(always)]
10160    pub unsafe fn set_near_plane(&self, near_plane: ::std::os::raw::c_float) {
10161        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setNearPlane(
10162            self as *const crate::QCamera as *mut crate::QCamera,
10163            near_plane,
10164        )
10165    }
10166
10167    /// <p>Sets the camera's position in 3D space to <i>position</i>.</p>
10168    ///
10169    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setPosition(const QVector3D& position)```</span>.
10170    ///
10171    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setPosition">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's position in 3D space to <i>position</i>.</p>
10172    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#position-prop">position</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#position-prop">position</a>().</p></div>
10173    #[inline(always)]
10174    pub unsafe fn set_position(
10175        &self,
10176        position: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
10177    ) {
10178        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setPosition(
10179            self as *const crate::QCamera as *mut crate::QCamera,
10180            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(position)
10181                .as_raw_ptr(),
10182        )
10183    }
10184
10185    /// <p>Sets the camera's projection matrix to <i>projectionMatrix</i>.</p>
10186    ///
10187    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setProjectionMatrix(const QMatrix4x4& projectionMatrix)```</span>.
10188    ///
10189    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setProjectionMatrix">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's projection matrix to <i>projectionMatrix</i>.</p>
10190    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionMatrix-prop">projectionMatrix</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionMatrix-prop">projectionMatrix</a>().</p></div>
10191    #[inline(always)]
10192    pub unsafe fn set_projection_matrix(
10193        &self,
10194        projection_matrix: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QMatrix4X4>>,
10195    ) {
10196        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setProjectionMatrix(
10197            self as *const crate::QCamera as *mut crate::QCamera,
10198            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QMatrix4X4>>::cast_into(
10199                projection_matrix,
10200            )
10201            .as_raw_ptr(),
10202        )
10203    }
10204
10205    /// <p>Sets the camera's projection type to <i>type</i>.</p>
10206    ///
10207    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setProjectionType(Qt3DRender::QCameraLens::ProjectionType type)```</span>.
10208    ///
10209    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setProjectionType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's projection type to <i>type</i>.</p>
10210    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionType-prop">projectionType</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#projectionType-prop">projectionType</a>().</p></div>
10211    #[inline(always)]
10212    pub unsafe fn set_projection_type(&self, type_: crate::q_camera_lens::ProjectionType) {
10213        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setProjectionType(
10214            self as *const crate::QCamera as *mut crate::QCamera,
10215            type_,
10216        )
10217    }
10218
10219    /// <p>Sets the right of the camera to <i>right</i>.</p>
10220    ///
10221    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setRight(float right)```</span>.
10222    ///
10223    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setRight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the right of the camera to <i>right</i>.</p>
10224    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#right-prop">right</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#right-prop">right</a>().</p></div>
10225    #[inline(always)]
10226    pub unsafe fn set_right(&self, right: ::std::os::raw::c_float) {
10227        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setRight(
10228            self as *const crate::QCamera as *mut crate::QCamera,
10229            right,
10230        )
10231    }
10232
10233    /// <p>Sets the top of the camera to <i>top</i>.</p>
10234    ///
10235    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setTop(float top)```</span>.
10236    ///
10237    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setTop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the top of the camera to <i>top</i>.</p>
10238    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#top-prop">top</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#top-prop">top</a>().</p></div>
10239    #[inline(always)]
10240    pub unsafe fn set_top(&self, top: ::std::os::raw::c_float) {
10241        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setTop(
10242            self as *const crate::QCamera as *mut crate::QCamera,
10243            top,
10244        )
10245    }
10246
10247    /// <p>Sets the camera's up vector to <i>upVector</i>.</p>
10248    ///
10249    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setUpVector(const QVector3D& upVector)```</span>.
10250    ///
10251    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setUpVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's up vector to <i>upVector</i>.</p>
10252    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#upVector-prop">upVector</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#upVector-prop">upVector</a>().</p></div>
10253    #[inline(always)]
10254    pub unsafe fn set_up_vector(
10255        &self,
10256        up_vector: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
10257    ) {
10258        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setUpVector(
10259            self as *const crate::QCamera as *mut crate::QCamera,
10260            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(up_vector)
10261                .as_raw_ptr(),
10262        )
10263    }
10264
10265    /// <p>Sets the camera's view center to <i>viewCenter</i>.</p>
10266    ///
10267    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCamera::setViewCenter(const QVector3D& viewCenter)```</span>.
10268    ///
10269    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setViewCenter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the camera's view center to <i>viewCenter</i>.</p>
10270    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a>().</p></div>
10271    #[inline(always)]
10272    pub unsafe fn set_view_center(
10273        &self,
10274        view_center: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
10275    ) {
10276        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_setViewCenter(
10277            self as *const crate::QCamera as *mut crate::QCamera,
10278            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(view_center)
10279                .as_raw_ptr(),
10280        )
10281    }
10282
10283    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
10284    #[inline(always)]
10285    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
10286        let ffi_result =
10287            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_staticMetaObject() };
10288        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
10289            .expect("attempted to construct a null Ref")
10290    }
10291
10292    /// <p>Adjusts the tilt angle of the camera by <i>angle</i> in degrees.</p>
10293    ///
10294    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::tilt(float angle)```</span>.
10295    ///
10296    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#tilt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adjusts the tilt angle of the camera by <i>angle</i> in degrees.</p></div>
10297    #[inline(always)]
10298    pub unsafe fn tilt(&self, angle: ::std::os::raw::c_float) {
10299        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_tilt(
10300            self as *const crate::QCamera as *mut crate::QCamera,
10301            angle,
10302        )
10303    }
10304
10305    /// <p>Adjusts the camera tilt about view center by <i>angle</i> in degrees.</p>
10306    ///
10307    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::tiltAboutViewCenter(float angle)```</span>.
10308    ///
10309    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#tiltAboutViewCenter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adjusts the camera tilt about view center by <i>angle</i> in degrees.</p></div>
10310    #[inline(always)]
10311    pub unsafe fn tilt_about_view_center(&self, angle: ::std::os::raw::c_float) {
10312        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_tiltAboutViewCenter(
10313            self as *const crate::QCamera as *mut crate::QCamera,
10314            angle,
10315        )
10316    }
10317
10318    /// <p>Returns the calculated tilt rotation in relation to the <i>angle</i> in degrees taken in to adjust the camera's tilt or up/down rotation on the X axis.</p>
10319    ///
10320    /// Calls C++ function: <span style='color: green;'>```QQuaternion Qt3DRender::QCamera::tiltRotation(float angle) const```</span>.
10321    ///
10322    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#tiltRotation">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the calculated tilt rotation in relation to the <i>angle</i> in degrees taken in to adjust the camera's tilt or up/down rotation on the X axis.</p></div>
10323    #[inline(always)]
10324    pub unsafe fn tilt_rotation(
10325        &self,
10326        angle: ::std::os::raw::c_float,
10327    ) -> ::cpp_core::CppBox<::qt_gui::QQuaternion> {
10328        let ffi_result = {
10329            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_tiltRotation(
10330                self as *const crate::QCamera,
10331                angle,
10332            )
10333        };
10334        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10335    }
10336
10337    /// <p>Holds the current top of the camera.</p>
10338    ///
10339    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QCamera::top() const```</span>.
10340    ///
10341    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#top-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current top of the camera.</p>
10342    /// <p><b>Access functions:</b></p>
10343    /// <div class="table"><table class="alignedsummary">
10344    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>top</b></span>() const</td></tr>
10345    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setTop">setTop</a></b></span>(float <i>top</i>)</td></tr>
10346    /// </tbody></table></div>
10347    /// <p><b>Notifier signal:</b></p>
10348    /// <div class="table"><table class="alignedsummary">
10349    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>topChanged</b></span>(float <i>top</i>)</td></tr>
10350    /// </tbody></table></div></div>
10351    #[inline(always)]
10352    pub unsafe fn top(&self) -> ::std::os::raw::c_float {
10353        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_top(self as *const crate::QCamera)
10354    }
10355
10356    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QCamera::tr(const char* s, const char* c, int n)```</span>.
10357    #[inline(always)]
10358    pub unsafe fn tr(
10359        s: *const ::std::os::raw::c_char,
10360        c: *const ::std::os::raw::c_char,
10361        n: ::std::os::raw::c_int,
10362    ) -> ::cpp_core::CppBox<::qt_core::QString> {
10363        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_tr(s, c, n) };
10364        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10365    }
10366
10367    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QCamera::trUtf8(const char* s, const char* c, int n)```</span>.
10368    #[inline(always)]
10369    pub unsafe fn tr_utf8(
10370        s: *const ::std::os::raw::c_char,
10371        c: *const ::std::os::raw::c_char,
10372        n: ::std::os::raw::c_int,
10373    ) -> ::cpp_core::CppBox<::qt_core::QString> {
10374        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_trUtf8(s, c, n) };
10375        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10376    }
10377
10378    /// <p>Returns the camera's position via transform.</p>
10379    ///
10380    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QTransform* Qt3DRender::QCamera::transform() const```</span>.
10381    ///
10382    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#transform">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the camera's position via transform.</p></div>
10383    #[inline(always)]
10384    pub unsafe fn transform(&self) -> ::qt_core::QPtr<::qt_3d_core::QTransform> {
10385        let ffi_result = {
10386            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_transform(
10387                self as *const crate::QCamera,
10388            )
10389        };
10390        ::qt_core::QPtr::from_raw(ffi_result)
10391    }
10392
10393    /// <p>Translates the camera's position and its view vector by <i>vLocal</i> in local coordinates. The <i>option</i> allows for toggling whether the view center should be translated.</p>
10394    ///
10395    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::translate(const QVector3D& vLocal, Qt3DRender::QCamera::CameraTranslationOption option = …)```</span>.
10396    ///
10397    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#translate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Translates the camera's position and its view vector by <i>vLocal</i> in local coordinates. The <i>option</i> allows for toggling whether the view center should be translated.</p></div>
10398    #[inline(always)]
10399    pub unsafe fn translate_2a(
10400        &self,
10401        v_local: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
10402        option: crate::q_camera::CameraTranslationOption,
10403    ) {
10404        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_translate(
10405            self as *const crate::QCamera as *mut crate::QCamera,
10406            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(v_local)
10407                .as_raw_ptr(),
10408            option,
10409        )
10410    }
10411
10412    /// <p>Translates the camera's position and its view vector by <i>vLocal</i> in local coordinates. The <i>option</i> allows for toggling whether the view center should be translated.</p>
10413    ///
10414    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::translate(const QVector3D& vLocal)```</span>.
10415    ///
10416    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#translate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Translates the camera's position and its view vector by <i>vLocal</i> in local coordinates. The <i>option</i> allows for toggling whether the view center should be translated.</p></div>
10417    #[inline(always)]
10418    pub unsafe fn translate_1a(
10419        &self,
10420        v_local: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
10421    ) {
10422        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_translate1(
10423            self as *const crate::QCamera as *mut crate::QCamera,
10424            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(v_local)
10425                .as_raw_ptr(),
10426        )
10427    }
10428
10429    /// <p>Translates the camera's position and its view vector by <i>vWorld</i> in world coordinates. The <i>option</i> allows for toggling whether the view center should be translated.</p>
10430    ///
10431    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::translateWorld(const QVector3D& vWorld, Qt3DRender::QCamera::CameraTranslationOption option = …)```</span>.
10432    ///
10433    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#translateWorld">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Translates the camera's position and its view vector by <i>vWorld</i> in world coordinates. The <i>option</i> allows for toggling whether the view center should be translated.</p></div>
10434    #[inline(always)]
10435    pub unsafe fn translate_world_2a(
10436        &self,
10437        v_world: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
10438        option: crate::q_camera::CameraTranslationOption,
10439    ) {
10440        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_translateWorld(
10441            self as *const crate::QCamera as *mut crate::QCamera,
10442            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(v_world)
10443                .as_raw_ptr(),
10444            option,
10445        )
10446    }
10447
10448    /// <p>Translates the camera's position and its view vector by <i>vWorld</i> in world coordinates. The <i>option</i> allows for toggling whether the view center should be translated.</p>
10449    ///
10450    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::translateWorld(const QVector3D& vWorld)```</span>.
10451    ///
10452    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#translateWorld">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Translates the camera's position and its view vector by <i>vWorld</i> in world coordinates. The <i>option</i> allows for toggling whether the view center should be translated.</p></div>
10453    #[inline(always)]
10454    pub unsafe fn translate_world_1a(
10455        &self,
10456        v_world: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
10457    ) {
10458        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_translateWorld1(
10459            self as *const crate::QCamera as *mut crate::QCamera,
10460            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(v_world)
10461                .as_raw_ptr(),
10462        )
10463    }
10464
10465    /// <p>Holds the camera's up vector in coordinates relative to the parent entity.</p>
10466    ///
10467    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QCamera::upVector() const```</span>.
10468    ///
10469    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#upVector-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's up vector in coordinates relative to the parent entity.</p>
10470    /// <p><b>Access functions:</b></p>
10471    /// <div class="table"><table class="alignedsummary">
10472    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>upVector</b></span>() const</td></tr>
10473    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setUpVector">setUpVector</a></b></span>(const QVector3D &amp;<i>upVector</i>)</td></tr>
10474    /// </tbody></table></div>
10475    /// <p><b>Notifier signal:</b></p>
10476    /// <div class="table"><table class="alignedsummary">
10477    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>upVectorChanged</b></span>(const QVector3D &amp;<i>upVector</i>)</td></tr>
10478    /// </tbody></table></div></div>
10479    #[inline(always)]
10480    pub unsafe fn up_vector(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
10481        let ffi_result = {
10482            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_upVector(
10483                self as *const crate::QCamera,
10484            )
10485        };
10486        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10487    }
10488
10489    /// <p>Rotates and moves the camera so that it's <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a> is the center of the scene's bounding volume and the entire scene fits in the view port.</p>
10490    ///
10491    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::viewAll()```</span>.
10492    ///
10493    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Rotates and moves the camera so that it's <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a> is the center of the scene's bounding volume and the entire scene fits in the view port.</p>
10494    /// <p><b>Note: </b>Only works if the lens is in perspective projection mode.</p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qml-qt3d-render-camera.html#projectionType-prop">Qt3D.Render::Camera::projectionType</a>.</p></div>
10495    #[inline(always)]
10496    #[cfg_attr(
10497        feature = "ritual_rustdoc_nightly",
10498        doc(cfg(any(
10499            cpp_lib_version = "5.11.3",
10500            cpp_lib_version = "5.12.2",
10501            cpp_lib_version = "5.13.0",
10502            cpp_lib_version = "5.14.0"
10503        )))
10504    )]
10505    #[cfg(any(
10506        any(
10507            cpp_lib_version = "5.11.3",
10508            cpp_lib_version = "5.12.2",
10509            cpp_lib_version = "5.13.0",
10510            cpp_lib_version = "5.14.0"
10511        ),
10512        feature = "ritual_rustdoc"
10513    ))]
10514    pub unsafe fn view_all(&self) {
10515        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_viewAll(
10516            self as *const crate::QCamera as *mut crate::QCamera,
10517        )
10518    }
10519
10520    /// <p>Holds the camera's view center in coordinates relative to the parent entity.</p>
10521    ///
10522    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QCamera::viewCenter() const```</span>.
10523    ///
10524    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's view center in coordinates relative to the parent entity.</p>
10525    /// <p><b>Access functions:</b></p>
10526    /// <div class="table"><table class="alignedsummary">
10527    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>viewCenter</b></span>() const</td></tr>
10528    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#setViewCenter">setViewCenter</a></b></span>(const QVector3D &amp;<i>viewCenter</i>)</td></tr>
10529    /// </tbody></table></div>
10530    /// <p><b>Notifier signal:</b></p>
10531    /// <div class="table"><table class="alignedsummary">
10532    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>viewCenterChanged</b></span>(const QVector3D &amp;<i>viewCenter</i>)</td></tr>
10533    /// </tbody></table></div></div>
10534    #[inline(always)]
10535    pub unsafe fn view_center(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
10536        let ffi_result = {
10537            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_viewCenter(
10538                self as *const crate::QCamera,
10539            )
10540        };
10541        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10542    }
10543
10544    /// <p>Rotates and moves the camera so that it's <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a> is the center of the <i>entity</i>'s bounding volume and the entire entity fits in the view port.</p>
10545    ///
10546    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::viewEntity(Qt3DCore::QEntity* entity)```</span>.
10547    ///
10548    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewEntity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Rotates and moves the camera so that it's <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a> is the center of the <i>entity</i>'s bounding volume and the entire entity fits in the view port.</p>
10549    /// <p><b>Note: </b>Only works if the lens is in perspective projection mode.</p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qml-qt3d-render-camera.html#projectionType-prop">Camera.projectionType</a>.</p></div>
10550    #[inline(always)]
10551    #[cfg_attr(
10552        feature = "ritual_rustdoc_nightly",
10553        doc(cfg(any(
10554            cpp_lib_version = "5.11.3",
10555            cpp_lib_version = "5.12.2",
10556            cpp_lib_version = "5.13.0",
10557            cpp_lib_version = "5.14.0"
10558        )))
10559    )]
10560    #[cfg(any(
10561        any(
10562            cpp_lib_version = "5.11.3",
10563            cpp_lib_version = "5.12.2",
10564            cpp_lib_version = "5.13.0",
10565            cpp_lib_version = "5.14.0"
10566        ),
10567        feature = "ritual_rustdoc"
10568    ))]
10569    pub unsafe fn view_entity(
10570        &self,
10571        entity: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QEntity>>,
10572    ) {
10573        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_viewEntity(
10574            self as *const crate::QCamera as *mut crate::QCamera,
10575            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QEntity>>::cast_into(entity)
10576                .as_raw_ptr() as *mut ::qt_3d_core::QEntity,
10577        )
10578    }
10579
10580    /// <p>Holds the camera's view matrix in coordinates relative to the parent entity.</p>
10581    ///
10582    /// Calls C++ function: <span style='color: green;'>```QMatrix4x4 Qt3DRender::QCamera::viewMatrix() const```</span>.
10583    ///
10584    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera-obsolete.html#viewMatrix-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's view matrix in coordinates relative to the parent entity.</p>
10585    /// <p><b>Access functions:</b></p>
10586    /// <div class="table"><table class="alignedsummary">
10587    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QMatrix4x4 </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewMatrix-prop">viewMatrix</a></b></span>() const</td></tr>
10588    /// </tbody></table></div>
10589    /// <p><b>Notifier signal:</b></p>
10590    /// <div class="table"><table class="alignedsummary">
10591    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewMatrix-prop">viewMatrixChanged</a></b></span>()</td></tr>
10592    /// </tbody></table></div></div>
10593    #[inline(always)]
10594    pub unsafe fn view_matrix(&self) -> ::cpp_core::CppBox<::qt_gui::QMatrix4X4> {
10595        let ffi_result = {
10596            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_viewMatrix(
10597                self as *const crate::QCamera,
10598            )
10599        };
10600        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10601    }
10602
10603    /// <p>Rotates and moves the camera so that it's <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a> is <i>center</i> and a sphere of <i>radius</i> fits in the view port.</p>
10604    ///
10605    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QCamera::viewSphere(const QVector3D& center, float radius)```</span>.
10606    ///
10607    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewSphere">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Rotates and moves the camera so that it's <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewCenter-prop">viewCenter</a> is <i>center</i> and a sphere of <i>radius</i> fits in the view port.</p>
10608    /// <p><b>Note: </b>Only works if the lens is in perspective projection mode.</p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qml-qt3d-render-camera.html#projectionType-prop">Qt3D.Render::Camera::projectionType</a>.</p></div>
10609    #[inline(always)]
10610    #[cfg_attr(
10611        feature = "ritual_rustdoc_nightly",
10612        doc(cfg(any(
10613            cpp_lib_version = "5.11.3",
10614            cpp_lib_version = "5.12.2",
10615            cpp_lib_version = "5.13.0",
10616            cpp_lib_version = "5.14.0"
10617        )))
10618    )]
10619    #[cfg(any(
10620        any(
10621            cpp_lib_version = "5.11.3",
10622            cpp_lib_version = "5.12.2",
10623            cpp_lib_version = "5.13.0",
10624            cpp_lib_version = "5.14.0"
10625        ),
10626        feature = "ritual_rustdoc"
10627    ))]
10628    pub unsafe fn view_sphere(
10629        &self,
10630        center: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
10631        radius: ::std::os::raw::c_float,
10632    ) {
10633        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_viewSphere(
10634            self as *const crate::QCamera as *mut crate::QCamera,
10635            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(center)
10636                .as_raw_ptr(),
10637            radius,
10638        )
10639    }
10640
10641    /// <p>Holds the camera's view vector in coordinates relative to the parent entity.</p>
10642    ///
10643    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QCamera::viewVector() const```</span>.
10644    ///
10645    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcamera.html#viewVector-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the camera's view vector in coordinates relative to the parent entity.</p>
10646    /// <p><b>Access functions:</b></p>
10647    /// <div class="table"><table class="alignedsummary">
10648    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>viewVector</b></span>() const</td></tr>
10649    /// </tbody></table></div>
10650    /// <p><b>Notifier signal:</b></p>
10651    /// <div class="table"><table class="alignedsummary">
10652    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>viewVectorChanged</b></span>(const QVector3D &amp;<i>viewVector</i>)</td></tr>
10653    /// </tbody></table></div></div>
10654    #[inline(always)]
10655    pub unsafe fn view_vector(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
10656        let ffi_result = {
10657            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_viewVector(
10658                self as *const crate::QCamera,
10659            )
10660        };
10661        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10662    }
10663}
10664
10665/// <p>Class to allow for selection of camera to be used</p>
10666///
10667/// C++ class: <span style='color: green;'>```Qt3DRender::QCameraSelector```</span>.
10668///
10669/// <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Class to allow for selection of camera to be used</p>
10670/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">Qt3DRender::QCameraSelector</a> can be used to select the camera, which is used by the FrameGraph when drawing the entities.</p></div>
10671#[repr(C)]
10672pub struct QCameraSelector {
10673    _unused: u8,
10674}
10675impl QCameraSelector {
10676    /// <p>Holds the currently selected camera.</p>
10677    ///
10678    /// Returns a built-in Qt slot `Qt3DRender::QCameraSelector::setCamera` that can be passed to `qt_core::Signal::connect`.
10679    ///
10680    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html#camera-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the currently selected camera.</p>
10681    /// <p><b>Access functions:</b></p>
10682    /// <div class="table"><table class="alignedsummary">
10683    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DCore::QEntity *</td><td class="memItemRight bottomAlign"><span class="name"><b>camera</b></span>() const</td></tr>
10684    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCamera</b></span>(Qt3DCore::QEntity *<i>camera</i>)</td></tr>
10685    /// </tbody></table></div>
10686    /// <p><b>Notifier signal:</b></p>
10687    /// <div class="table"><table class="alignedsummary">
10688    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cameraChanged</b></span>(Qt3DCore::QEntity *<i>camera</i>)</td></tr>
10689    /// </tbody></table></div></div>
10690    #[inline(always)]
10691    pub fn slot_set_camera(&self) -> ::qt_core::Receiver<(*mut ::qt_3d_core::QEntity,)> {
10692        unsafe {
10693            ::qt_core::Receiver::new(
10694                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
10695                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
10696                    b"1setCamera(Qt3DCore::QEntity *)\0",
10697                ),
10698            )
10699        }
10700    }
10701
10702    /// <p>Holds the currently selected camera.</p>
10703    ///
10704    /// Returns a built-in Qt signal `Qt3DRender::QCameraSelector::cameraChanged` that can be passed to `qt_core::Signal::connect`.
10705    ///
10706    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html#camera-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the currently selected camera.</p>
10707    /// <p><b>Access functions:</b></p>
10708    /// <div class="table"><table class="alignedsummary">
10709    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DCore::QEntity *</td><td class="memItemRight bottomAlign"><span class="name"><b>camera</b></span>() const</td></tr>
10710    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCamera</b></span>(Qt3DCore::QEntity *<i>camera</i>)</td></tr>
10711    /// </tbody></table></div>
10712    /// <p><b>Notifier signal:</b></p>
10713    /// <div class="table"><table class="alignedsummary">
10714    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cameraChanged</b></span>(Qt3DCore::QEntity *<i>camera</i>)</td></tr>
10715    /// </tbody></table></div></div>
10716    #[inline(always)]
10717    pub fn camera_changed(&self) -> ::qt_core::Signal<(*mut ::qt_3d_core::QEntity,)> {
10718        unsafe {
10719            ::qt_core::Signal::new(
10720                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
10721                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
10722                    b"2cameraChanged(Qt3DCore::QEntity *)\0",
10723                ),
10724            )
10725        }
10726    }
10727
10728    /// <p>Holds the currently selected camera.</p>
10729    ///
10730    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QEntity* Qt3DRender::QCameraSelector::camera() const```</span>.
10731    ///
10732    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html#camera-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the currently selected camera.</p>
10733    /// <p><b>Access functions:</b></p>
10734    /// <div class="table"><table class="alignedsummary">
10735    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DCore::QEntity *</td><td class="memItemRight bottomAlign"><span class="name"><b>camera</b></span>() const</td></tr>
10736    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCamera</b></span>(Qt3DCore::QEntity *<i>camera</i>)</td></tr>
10737    /// </tbody></table></div>
10738    /// <p><b>Notifier signal:</b></p>
10739    /// <div class="table"><table class="alignedsummary">
10740    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cameraChanged</b></span>(Qt3DCore::QEntity *<i>camera</i>)</td></tr>
10741    /// </tbody></table></div></div>
10742    #[inline(always)]
10743    pub unsafe fn camera(&self) -> ::qt_core::QPtr<::qt_3d_core::QEntity> {
10744        let ffi_result = {
10745            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_camera(
10746                self as *const crate::QCameraSelector,
10747            )
10748        };
10749        ::qt_core::QPtr::from_raw(ffi_result)
10750    }
10751
10752    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QCameraSelector::metaObject() const```</span>.
10753    #[inline(always)]
10754    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
10755        let ffi_result = {
10756            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_metaObject(
10757                self as *const crate::QCameraSelector,
10758            )
10759        };
10760        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
10761    }
10762
10763    /// <p>The constructor creates an instance with the specified <i>parent</i>.</p>
10764    ///
10765    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QCameraSelector::QCameraSelector(Qt3DCore::QNode* parent = …)```</span>.
10766    ///
10767    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html#QCameraSelector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The constructor creates an instance with the specified <i>parent</i>.</p></div>
10768    #[inline(always)]
10769    pub unsafe fn new_1a(
10770        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
10771    ) -> ::qt_core::QBox<crate::QCameraSelector> {
10772        let ffi_result = {
10773            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_QCameraSelector(
10774                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
10775                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
10776            )
10777        };
10778        ::qt_core::QBox::from_raw(ffi_result)
10779    }
10780
10781    /// <p>Class to allow for selection of camera to be used</p>
10782    ///
10783    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QCameraSelector::QCameraSelector()```</span>.
10784    ///
10785    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Class to allow for selection of camera to be used</p>
10786    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">Qt3DRender::QCameraSelector</a> can be used to select the camera, which is used by the FrameGraph when drawing the entities.</p></div>
10787    #[inline(always)]
10788    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QCameraSelector> {
10789        let ffi_result =
10790            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_QCameraSelector1() };
10791        ::qt_core::QBox::from_raw(ffi_result)
10792    }
10793
10794    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QCameraSelector::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
10795    #[inline(always)]
10796    pub unsafe fn qt_metacall(
10797        &self,
10798        arg1: ::qt_core::q_meta_object::Call,
10799        arg2: ::std::os::raw::c_int,
10800        arg3: *mut *mut ::std::ffi::c_void,
10801    ) -> ::std::os::raw::c_int {
10802        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_qt_metacall(
10803            self as *const crate::QCameraSelector as *mut crate::QCameraSelector,
10804            arg1,
10805            arg2,
10806            arg3,
10807        )
10808    }
10809
10810    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QCameraSelector::qt_metacast(const char* arg1)```</span>.
10811    #[inline(always)]
10812    pub unsafe fn qt_metacast(
10813        &self,
10814        arg1: *const ::std::os::raw::c_char,
10815    ) -> *mut ::std::ffi::c_void {
10816        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_qt_metacast(
10817            self as *const crate::QCameraSelector as *mut crate::QCameraSelector,
10818            arg1,
10819        )
10820    }
10821
10822    /// <p>Holds the currently selected camera.</p>
10823    ///
10824    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCameraSelector::setCamera(Qt3DCore::QEntity* camera)```</span>.
10825    ///
10826    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html#camera-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the currently selected camera.</p>
10827    /// <p><b>Access functions:</b></p>
10828    /// <div class="table"><table class="alignedsummary">
10829    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DCore::QEntity *</td><td class="memItemRight bottomAlign"><span class="name"><b>camera</b></span>() const</td></tr>
10830    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCamera</b></span>(Qt3DCore::QEntity *<i>camera</i>)</td></tr>
10831    /// </tbody></table></div>
10832    /// <p><b>Notifier signal:</b></p>
10833    /// <div class="table"><table class="alignedsummary">
10834    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cameraChanged</b></span>(Qt3DCore::QEntity *<i>camera</i>)</td></tr>
10835    /// </tbody></table></div></div>
10836    #[inline(always)]
10837    pub unsafe fn set_camera(
10838        &self,
10839        camera: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QEntity>>,
10840    ) {
10841        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_setCamera(
10842            self as *const crate::QCameraSelector as *mut crate::QCameraSelector,
10843            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QEntity>>::cast_into(camera)
10844                .as_raw_ptr() as *mut ::qt_3d_core::QEntity,
10845        )
10846    }
10847
10848    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
10849    #[inline(always)]
10850    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
10851        let ffi_result =
10852            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_staticMetaObject() };
10853        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
10854            .expect("attempted to construct a null Ref")
10855    }
10856
10857    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QCameraSelector::tr(const char* s, const char* c, int n)```</span>.
10858    #[inline(always)]
10859    pub unsafe fn tr(
10860        s: *const ::std::os::raw::c_char,
10861        c: *const ::std::os::raw::c_char,
10862        n: ::std::os::raw::c_int,
10863    ) -> ::cpp_core::CppBox<::qt_core::QString> {
10864        let ffi_result =
10865            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_tr(s, c, n) };
10866        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10867    }
10868
10869    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QCameraSelector::trUtf8(const char* s, const char* c, int n)```</span>.
10870    #[inline(always)]
10871    pub unsafe fn tr_utf8(
10872        s: *const ::std::os::raw::c_char,
10873        c: *const ::std::os::raw::c_char,
10874        n: ::std::os::raw::c_int,
10875    ) -> ::cpp_core::CppBox<::qt_core::QString> {
10876        let ffi_result =
10877            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_trUtf8(s, c, n) };
10878        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
10879    }
10880}
10881
10882pub mod q_render_target_output {
10883    //! C++ type: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput```</span>
10884
10885    /// C++ enum: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint```</span>.
10886    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
10887    #[repr(transparent)]
10888    pub struct AttachmentPoint(::std::os::raw::c_int);
10889
10890    impl From<::std::os::raw::c_int> for AttachmentPoint {
10891        fn from(value: ::std::os::raw::c_int) -> Self {
10892            AttachmentPoint(value)
10893        }
10894    }
10895
10896    impl From<AttachmentPoint> for ::std::os::raw::c_int {
10897        fn from(value: AttachmentPoint) -> Self {
10898            value.0
10899        }
10900    }
10901
10902    impl AttachmentPoint {
10903        pub fn to_int(&self) -> ::std::os::raw::c_int {
10904            self.0
10905        }
10906    }
10907
10908    impl AttachmentPoint {
10909        /// C++ enum variant: <span style='color: green;'>```Color0 = 0```</span>
10910        #[allow(non_upper_case_globals)]
10911        pub const Color0: crate::q_render_target_output::AttachmentPoint =
10912            crate::q_render_target_output::AttachmentPoint(0);
10913        /// C++ enum variant: <span style='color: green;'>```Color1 = 1```</span>
10914        #[allow(non_upper_case_globals)]
10915        pub const Color1: crate::q_render_target_output::AttachmentPoint =
10916            crate::q_render_target_output::AttachmentPoint(1);
10917        /// C++ enum variant: <span style='color: green;'>```Color2 = 2```</span>
10918        #[allow(non_upper_case_globals)]
10919        pub const Color2: crate::q_render_target_output::AttachmentPoint =
10920            crate::q_render_target_output::AttachmentPoint(2);
10921        /// C++ enum variant: <span style='color: green;'>```Color3 = 3```</span>
10922        #[allow(non_upper_case_globals)]
10923        pub const Color3: crate::q_render_target_output::AttachmentPoint =
10924            crate::q_render_target_output::AttachmentPoint(3);
10925        /// C++ enum variant: <span style='color: green;'>```Color4 = 4```</span>
10926        #[allow(non_upper_case_globals)]
10927        pub const Color4: crate::q_render_target_output::AttachmentPoint =
10928            crate::q_render_target_output::AttachmentPoint(4);
10929        /// C++ enum variant: <span style='color: green;'>```Color5 = 5```</span>
10930        #[allow(non_upper_case_globals)]
10931        pub const Color5: crate::q_render_target_output::AttachmentPoint =
10932            crate::q_render_target_output::AttachmentPoint(5);
10933        /// C++ enum variant: <span style='color: green;'>```Color6 = 6```</span>
10934        #[allow(non_upper_case_globals)]
10935        pub const Color6: crate::q_render_target_output::AttachmentPoint =
10936            crate::q_render_target_output::AttachmentPoint(6);
10937        /// C++ enum variant: <span style='color: green;'>```Color7 = 7```</span>
10938        #[allow(non_upper_case_globals)]
10939        pub const Color7: crate::q_render_target_output::AttachmentPoint =
10940            crate::q_render_target_output::AttachmentPoint(7);
10941        /// C++ enum variant: <span style='color: green;'>```Color8 = 8```</span>
10942        #[allow(non_upper_case_globals)]
10943        pub const Color8: crate::q_render_target_output::AttachmentPoint =
10944            crate::q_render_target_output::AttachmentPoint(8);
10945        /// C++ enum variant: <span style='color: green;'>```Color9 = 9```</span>
10946        #[allow(non_upper_case_globals)]
10947        pub const Color9: crate::q_render_target_output::AttachmentPoint =
10948            crate::q_render_target_output::AttachmentPoint(9);
10949        /// C++ enum variant: <span style='color: green;'>```Color10 = 10```</span>
10950        #[allow(non_upper_case_globals)]
10951        pub const Color10: crate::q_render_target_output::AttachmentPoint =
10952            crate::q_render_target_output::AttachmentPoint(10);
10953        /// C++ enum variant: <span style='color: green;'>```Color11 = 11```</span>
10954        #[allow(non_upper_case_globals)]
10955        pub const Color11: crate::q_render_target_output::AttachmentPoint =
10956            crate::q_render_target_output::AttachmentPoint(11);
10957        /// C++ enum variant: <span style='color: green;'>```Color12 = 12```</span>
10958        #[allow(non_upper_case_globals)]
10959        pub const Color12: crate::q_render_target_output::AttachmentPoint =
10960            crate::q_render_target_output::AttachmentPoint(12);
10961        /// C++ enum variant: <span style='color: green;'>```Color13 = 13```</span>
10962        #[allow(non_upper_case_globals)]
10963        pub const Color13: crate::q_render_target_output::AttachmentPoint =
10964            crate::q_render_target_output::AttachmentPoint(13);
10965        /// C++ enum variant: <span style='color: green;'>```Color14 = 14```</span>
10966        #[allow(non_upper_case_globals)]
10967        pub const Color14: crate::q_render_target_output::AttachmentPoint =
10968            crate::q_render_target_output::AttachmentPoint(14);
10969        /// C++ enum variant: <span style='color: green;'>```Color15 = 15```</span>
10970        #[allow(non_upper_case_globals)]
10971        pub const Color15: crate::q_render_target_output::AttachmentPoint =
10972            crate::q_render_target_output::AttachmentPoint(15);
10973        /// C++ enum variant: <span style='color: green;'>```Depth = 16```</span>
10974        #[allow(non_upper_case_globals)]
10975        pub const Depth: crate::q_render_target_output::AttachmentPoint =
10976            crate::q_render_target_output::AttachmentPoint(16);
10977        /// C++ enum variant: <span style='color: green;'>```Stencil = 17```</span>
10978        #[allow(non_upper_case_globals)]
10979        pub const Stencil: crate::q_render_target_output::AttachmentPoint =
10980            crate::q_render_target_output::AttachmentPoint(17);
10981        /// C++ enum variant: <span style='color: green;'>```DepthStencil = 18```</span>
10982        #[allow(non_upper_case_globals)]
10983        pub const DepthStencil: crate::q_render_target_output::AttachmentPoint =
10984            crate::q_render_target_output::AttachmentPoint(18);
10985    }
10986}
10987/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a> class allows the specification of an attachment of a render target (whether it is a color texture, a depth texture, etc... ).</p>
10988///
10989/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput```</span>.
10990///
10991/// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a> class allows the specification of an attachment of a render target (whether it is a color texture, a depth texture, etc... ).</p>
10992/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a> specifies the attachment point and parameters for texture that is attached to render target. In addition to the attachment point, texture miplevel, layer and cubemap face can be specified. The texture attached to the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a> must be compatible with the given parameters.</p></div>
10993#[repr(C)]
10994pub struct QRenderTargetOutput {
10995    _unused: u8,
10996}
10997impl QRenderTargetOutput {
10998    /// <p>Holds the attachment point of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a>.</p>
10999    ///
11000    /// Returns a built-in Qt slot `Qt3DRender::QRenderTargetOutput::setAttachmentPoint` that can be passed to `qt_core::Signal::connect`.
11001    ///
11002    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#attachmentPoint-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attachment point of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a>.</p>
11003    /// <p><b>Access functions:</b></p>
11004    /// <div class="table"><table class="alignedsummary">
11005    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AttachmentPoint </td><td class="memItemRight bottomAlign"><span class="name"><b>attachmentPoint</b></span>() const</td></tr>
11006    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAttachmentPoint</b></span>(AttachmentPoint <i>attachmentPoint</i>)</td></tr>
11007    /// </tbody></table></div>
11008    /// <p><b>Notifier signal:</b></p>
11009    /// <div class="table"><table class="alignedsummary">
11010    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>attachmentPointChanged</b></span>(AttachmentPoint <i>attachmentPoint</i>)</td></tr>
11011    /// </tbody></table></div></div>
11012    #[inline(always)]
11013    pub fn slot_set_attachment_point(
11014        &self,
11015    ) -> ::qt_core::Receiver<(crate::q_render_target_output::AttachmentPoint,)> {
11016        unsafe {
11017            ::qt_core::Receiver::new(
11018                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11019                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11020                    b"1setAttachmentPoint(Qt3DRender::QRenderTargetOutput::AttachmentPoint)\0",
11021                ),
11022            )
11023        }
11024    }
11025
11026    /// <p>Holds the texture attached to the attachment point.</p>
11027    ///
11028    /// Returns a built-in Qt slot `Qt3DRender::QRenderTargetOutput::setTexture` that can be passed to `qt_core::Signal::connect`.
11029    ///
11030    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#texture-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the texture attached to the attachment point.</p>
11031    /// <p><b>Access functions:</b></p>
11032    /// <div class="table"><table class="alignedsummary">
11033    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>texture</b></span>() const</td></tr>
11034    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTexture</b></span>(QAbstractTexture *<i>texture</i>)</td></tr>
11035    /// </tbody></table></div>
11036    /// <p><b>Notifier signal:</b></p>
11037    /// <div class="table"><table class="alignedsummary">
11038    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>textureChanged</b></span>(QAbstractTexture *<i>texture</i>)</td></tr>
11039    /// </tbody></table></div></div>
11040    #[inline(always)]
11041    pub fn slot_set_texture(&self) -> ::qt_core::Receiver<(*mut crate::QAbstractTexture,)> {
11042        unsafe {
11043            ::qt_core::Receiver::new(
11044                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11045                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11046                    b"1setTexture(Qt3DRender::QAbstractTexture *)\0",
11047                ),
11048            )
11049        }
11050    }
11051
11052    /// <p>Holds the miplevel of the attached texture the rendering is directed to.</p>
11053    ///
11054    /// Returns a built-in Qt slot `Qt3DRender::QRenderTargetOutput::setMipLevel` that can be passed to `qt_core::Signal::connect`.
11055    ///
11056    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the miplevel of the attached texture the rendering is directed to.</p>
11057    /// <p><b>Access functions:</b></p>
11058    /// <div class="table"><table class="alignedsummary">
11059    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
11060    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMipLevel</b></span>(int <i>level</i>)</td></tr>
11061    /// </tbody></table></div>
11062    /// <p><b>Notifier signal:</b></p>
11063    /// <div class="table"><table class="alignedsummary">
11064    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
11065    /// </tbody></table></div></div>
11066    #[inline(always)]
11067    pub fn slot_set_mip_level(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
11068        unsafe {
11069            ::qt_core::Receiver::new(
11070                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11071                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setMipLevel(int)\0"),
11072            )
11073        }
11074    }
11075
11076    /// <p>Holds the layer of the attached texture the rendering is directed to.</p>
11077    ///
11078    /// Returns a built-in Qt slot `Qt3DRender::QRenderTargetOutput::setLayer` that can be passed to `qt_core::Signal::connect`.
11079    ///
11080    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the layer of the attached texture the rendering is directed to.</p>
11081    /// <p><b>Access functions:</b></p>
11082    /// <div class="table"><table class="alignedsummary">
11083    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
11084    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayer</b></span>(int <i>layer</i>)</td></tr>
11085    /// </tbody></table></div>
11086    /// <p><b>Notifier signal:</b></p>
11087    /// <div class="table"><table class="alignedsummary">
11088    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
11089    /// </tbody></table></div></div>
11090    #[inline(always)]
11091    pub fn slot_set_layer(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
11092        unsafe {
11093            ::qt_core::Receiver::new(
11094                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11095                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLayer(int)\0"),
11096            )
11097        }
11098    }
11099
11100    /// <p>Holds the face of the attached cubemap texture the rendering is directed to.</p>
11101    ///
11102    /// Returns a built-in Qt slot `Qt3DRender::QRenderTargetOutput::setFace` that can be passed to `qt_core::Signal::connect`.
11103    ///
11104    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#face-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the face of the attached cubemap texture the rendering is directed to.</p>
11105    /// <p><b>Access functions:</b></p>
11106    /// <div class="table"><table class="alignedsummary">
11107    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture::CubeMapFace </td><td class="memItemRight bottomAlign"><span class="name"><b>face</b></span>() const</td></tr>
11108    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFace</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
11109    /// </tbody></table></div>
11110    /// <p><b>Notifier signal:</b></p>
11111    /// <div class="table"><table class="alignedsummary">
11112    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceChanged</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
11113    /// </tbody></table></div></div>
11114    #[inline(always)]
11115    pub fn slot_set_face(&self) -> ::qt_core::Receiver<(crate::q_abstract_texture::CubeMapFace,)> {
11116        unsafe {
11117            ::qt_core::Receiver::new(
11118                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11119                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11120                    b"1setFace(Qt3DRender::QAbstractTexture::CubeMapFace)\0",
11121                ),
11122            )
11123        }
11124    }
11125
11126    /// <p>Holds the attachment point of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a>.</p>
11127    ///
11128    /// Returns a built-in Qt signal `Qt3DRender::QRenderTargetOutput::attachmentPointChanged` that can be passed to `qt_core::Signal::connect`.
11129    ///
11130    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#attachmentPoint-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attachment point of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a>.</p>
11131    /// <p><b>Access functions:</b></p>
11132    /// <div class="table"><table class="alignedsummary">
11133    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AttachmentPoint </td><td class="memItemRight bottomAlign"><span class="name"><b>attachmentPoint</b></span>() const</td></tr>
11134    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAttachmentPoint</b></span>(AttachmentPoint <i>attachmentPoint</i>)</td></tr>
11135    /// </tbody></table></div>
11136    /// <p><b>Notifier signal:</b></p>
11137    /// <div class="table"><table class="alignedsummary">
11138    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>attachmentPointChanged</b></span>(AttachmentPoint <i>attachmentPoint</i>)</td></tr>
11139    /// </tbody></table></div></div>
11140    #[inline(always)]
11141    pub fn attachment_point_changed(
11142        &self,
11143    ) -> ::qt_core::Signal<(crate::q_render_target_output::AttachmentPoint,)> {
11144        unsafe {
11145            ::qt_core::Signal::new(
11146                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11147                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11148                    b"2attachmentPointChanged(Qt3DRender::QRenderTargetOutput::AttachmentPoint)\0",
11149                ),
11150            )
11151        }
11152    }
11153
11154    /// <p>Holds the texture attached to the attachment point.</p>
11155    ///
11156    /// Returns a built-in Qt signal `Qt3DRender::QRenderTargetOutput::textureChanged` that can be passed to `qt_core::Signal::connect`.
11157    ///
11158    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#texture-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the texture attached to the attachment point.</p>
11159    /// <p><b>Access functions:</b></p>
11160    /// <div class="table"><table class="alignedsummary">
11161    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>texture</b></span>() const</td></tr>
11162    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTexture</b></span>(QAbstractTexture *<i>texture</i>)</td></tr>
11163    /// </tbody></table></div>
11164    /// <p><b>Notifier signal:</b></p>
11165    /// <div class="table"><table class="alignedsummary">
11166    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>textureChanged</b></span>(QAbstractTexture *<i>texture</i>)</td></tr>
11167    /// </tbody></table></div></div>
11168    #[inline(always)]
11169    pub fn texture_changed(&self) -> ::qt_core::Signal<(*mut crate::QAbstractTexture,)> {
11170        unsafe {
11171            ::qt_core::Signal::new(
11172                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11173                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11174                    b"2textureChanged(Qt3DRender::QAbstractTexture *)\0",
11175                ),
11176            )
11177        }
11178    }
11179
11180    /// <p>Holds the miplevel of the attached texture the rendering is directed to.</p>
11181    ///
11182    /// Returns a built-in Qt signal `Qt3DRender::QRenderTargetOutput::mipLevelChanged` that can be passed to `qt_core::Signal::connect`.
11183    ///
11184    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the miplevel of the attached texture the rendering is directed to.</p>
11185    /// <p><b>Access functions:</b></p>
11186    /// <div class="table"><table class="alignedsummary">
11187    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
11188    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMipLevel</b></span>(int <i>level</i>)</td></tr>
11189    /// </tbody></table></div>
11190    /// <p><b>Notifier signal:</b></p>
11191    /// <div class="table"><table class="alignedsummary">
11192    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
11193    /// </tbody></table></div></div>
11194    #[inline(always)]
11195    pub fn mip_level_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
11196        unsafe {
11197            ::qt_core::Signal::new(
11198                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11199                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2mipLevelChanged(int)\0"),
11200            )
11201        }
11202    }
11203
11204    /// <p>Holds the layer of the attached texture the rendering is directed to.</p>
11205    ///
11206    /// Returns a built-in Qt signal `Qt3DRender::QRenderTargetOutput::layerChanged` that can be passed to `qt_core::Signal::connect`.
11207    ///
11208    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the layer of the attached texture the rendering is directed to.</p>
11209    /// <p><b>Access functions:</b></p>
11210    /// <div class="table"><table class="alignedsummary">
11211    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
11212    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayer</b></span>(int <i>layer</i>)</td></tr>
11213    /// </tbody></table></div>
11214    /// <p><b>Notifier signal:</b></p>
11215    /// <div class="table"><table class="alignedsummary">
11216    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
11217    /// </tbody></table></div></div>
11218    #[inline(always)]
11219    pub fn layer_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
11220        unsafe {
11221            ::qt_core::Signal::new(
11222                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11223                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2layerChanged(int)\0"),
11224            )
11225        }
11226    }
11227
11228    /// <p>Holds the face of the attached cubemap texture the rendering is directed to.</p>
11229    ///
11230    /// Returns a built-in Qt signal `Qt3DRender::QRenderTargetOutput::faceChanged` that can be passed to `qt_core::Signal::connect`.
11231    ///
11232    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#face-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the face of the attached cubemap texture the rendering is directed to.</p>
11233    /// <p><b>Access functions:</b></p>
11234    /// <div class="table"><table class="alignedsummary">
11235    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture::CubeMapFace </td><td class="memItemRight bottomAlign"><span class="name"><b>face</b></span>() const</td></tr>
11236    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFace</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
11237    /// </tbody></table></div>
11238    /// <p><b>Notifier signal:</b></p>
11239    /// <div class="table"><table class="alignedsummary">
11240    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceChanged</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
11241    /// </tbody></table></div></div>
11242    #[inline(always)]
11243    pub fn face_changed(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::CubeMapFace,)> {
11244        unsafe {
11245            ::qt_core::Signal::new(
11246                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11247                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11248                    b"2faceChanged(Qt3DRender::QAbstractTexture::CubeMapFace)\0",
11249                ),
11250            )
11251        }
11252    }
11253
11254    /// <p>Holds the attachment point of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a>.</p>
11255    ///
11256    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint Qt3DRender::QRenderTargetOutput::attachmentPoint() const```</span>.
11257    ///
11258    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#attachmentPoint-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attachment point of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a>.</p>
11259    /// <p><b>Access functions:</b></p>
11260    /// <div class="table"><table class="alignedsummary">
11261    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AttachmentPoint </td><td class="memItemRight bottomAlign"><span class="name"><b>attachmentPoint</b></span>() const</td></tr>
11262    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAttachmentPoint</b></span>(AttachmentPoint <i>attachmentPoint</i>)</td></tr>
11263    /// </tbody></table></div>
11264    /// <p><b>Notifier signal:</b></p>
11265    /// <div class="table"><table class="alignedsummary">
11266    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>attachmentPointChanged</b></span>(AttachmentPoint <i>attachmentPoint</i>)</td></tr>
11267    /// </tbody></table></div></div>
11268    #[inline(always)]
11269    pub unsafe fn attachment_point(&self) -> crate::q_render_target_output::AttachmentPoint {
11270        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_attachmentPoint(
11271            self as *const crate::QRenderTargetOutput,
11272        )
11273    }
11274
11275    /// <p>Holds the face of the attached cubemap texture the rendering is directed to.</p>
11276    ///
11277    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::CubeMapFace Qt3DRender::QRenderTargetOutput::face() const```</span>.
11278    ///
11279    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#face-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the face of the attached cubemap texture the rendering is directed to.</p>
11280    /// <p><b>Access functions:</b></p>
11281    /// <div class="table"><table class="alignedsummary">
11282    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture::CubeMapFace </td><td class="memItemRight bottomAlign"><span class="name"><b>face</b></span>() const</td></tr>
11283    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFace</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
11284    /// </tbody></table></div>
11285    /// <p><b>Notifier signal:</b></p>
11286    /// <div class="table"><table class="alignedsummary">
11287    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceChanged</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
11288    /// </tbody></table></div></div>
11289    #[inline(always)]
11290    pub unsafe fn face(&self) -> crate::q_abstract_texture::CubeMapFace {
11291        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_face(
11292            self as *const crate::QRenderTargetOutput,
11293        )
11294    }
11295
11296    /// <p>Holds the layer of the attached texture the rendering is directed to.</p>
11297    ///
11298    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QRenderTargetOutput::layer() const```</span>.
11299    ///
11300    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the layer of the attached texture the rendering is directed to.</p>
11301    /// <p><b>Access functions:</b></p>
11302    /// <div class="table"><table class="alignedsummary">
11303    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
11304    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayer</b></span>(int <i>layer</i>)</td></tr>
11305    /// </tbody></table></div>
11306    /// <p><b>Notifier signal:</b></p>
11307    /// <div class="table"><table class="alignedsummary">
11308    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
11309    /// </tbody></table></div></div>
11310    #[inline(always)]
11311    pub unsafe fn layer(&self) -> ::std::os::raw::c_int {
11312        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_layer(
11313            self as *const crate::QRenderTargetOutput,
11314        )
11315    }
11316
11317    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderTargetOutput::metaObject() const```</span>.
11318    #[inline(always)]
11319    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
11320        let ffi_result = {
11321            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_metaObject(
11322                self as *const crate::QRenderTargetOutput,
11323            )
11324        };
11325        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
11326    }
11327
11328    /// <p>Holds the miplevel of the attached texture the rendering is directed to.</p>
11329    ///
11330    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QRenderTargetOutput::mipLevel() const```</span>.
11331    ///
11332    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the miplevel of the attached texture the rendering is directed to.</p>
11333    /// <p><b>Access functions:</b></p>
11334    /// <div class="table"><table class="alignedsummary">
11335    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
11336    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMipLevel</b></span>(int <i>level</i>)</td></tr>
11337    /// </tbody></table></div>
11338    /// <p><b>Notifier signal:</b></p>
11339    /// <div class="table"><table class="alignedsummary">
11340    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
11341    /// </tbody></table></div></div>
11342    #[inline(always)]
11343    pub unsafe fn mip_level(&self) -> ::std::os::raw::c_int {
11344        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_mipLevel(
11345            self as *const crate::QRenderTargetOutput,
11346        )
11347    }
11348
11349    /// <p>Default constructs an instance of QRenderTargetOutput.</p>
11350    ///
11351    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderTargetOutput::QRenderTargetOutput(Qt3DCore::QNode* parent = …)```</span>.
11352    ///
11353    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#QRenderTargetOutput">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRenderTargetOutput.</p></div>
11354    #[inline(always)]
11355    pub unsafe fn new_1a(
11356        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
11357    ) -> ::qt_core::QBox<crate::QRenderTargetOutput> {
11358        let ffi_result = {
11359            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_QRenderTargetOutput(
11360                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
11361                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
11362            )
11363        };
11364        ::qt_core::QBox::from_raw(ffi_result)
11365    }
11366
11367    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a> class allows the specification of an attachment of a render target (whether it is a color texture, a depth texture, etc... ).</p>
11368    ///
11369    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderTargetOutput::QRenderTargetOutput()```</span>.
11370    ///
11371    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a> class allows the specification of an attachment of a render target (whether it is a color texture, a depth texture, etc... ).</p>
11372    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a> specifies the attachment point and parameters for texture that is attached to render target. In addition to the attachment point, texture miplevel, layer and cubemap face can be specified. The texture attached to the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a> must be compatible with the given parameters.</p></div>
11373    #[inline(always)]
11374    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRenderTargetOutput> {
11375        let ffi_result = {
11376            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_QRenderTargetOutput1()
11377        };
11378        ::qt_core::QBox::from_raw(ffi_result)
11379    }
11380
11381    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderTargetOutput::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
11382    #[inline(always)]
11383    pub unsafe fn qt_metacall(
11384        &self,
11385        arg1: ::qt_core::q_meta_object::Call,
11386        arg2: ::std::os::raw::c_int,
11387        arg3: *mut *mut ::std::ffi::c_void,
11388    ) -> ::std::os::raw::c_int {
11389        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_qt_metacall(
11390            self as *const crate::QRenderTargetOutput as *mut crate::QRenderTargetOutput,
11391            arg1,
11392            arg2,
11393            arg3,
11394        )
11395    }
11396
11397    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderTargetOutput::qt_metacast(const char* arg1)```</span>.
11398    #[inline(always)]
11399    pub unsafe fn qt_metacast(
11400        &self,
11401        arg1: *const ::std::os::raw::c_char,
11402    ) -> *mut ::std::ffi::c_void {
11403        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_qt_metacast(
11404            self as *const crate::QRenderTargetOutput as *mut crate::QRenderTargetOutput,
11405            arg1,
11406        )
11407    }
11408
11409    /// <p>Holds the attachment point of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a>.</p>
11410    ///
11411    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderTargetOutput::setAttachmentPoint(Qt3DRender::QRenderTargetOutput::AttachmentPoint attachmentPoint)```</span>.
11412    ///
11413    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#attachmentPoint-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attachment point of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">QRenderTargetOutput</a>.</p>
11414    /// <p><b>Access functions:</b></p>
11415    /// <div class="table"><table class="alignedsummary">
11416    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> AttachmentPoint </td><td class="memItemRight bottomAlign"><span class="name"><b>attachmentPoint</b></span>() const</td></tr>
11417    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAttachmentPoint</b></span>(AttachmentPoint <i>attachmentPoint</i>)</td></tr>
11418    /// </tbody></table></div>
11419    /// <p><b>Notifier signal:</b></p>
11420    /// <div class="table"><table class="alignedsummary">
11421    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>attachmentPointChanged</b></span>(AttachmentPoint <i>attachmentPoint</i>)</td></tr>
11422    /// </tbody></table></div></div>
11423    #[inline(always)]
11424    pub unsafe fn set_attachment_point(
11425        &self,
11426        attachment_point: crate::q_render_target_output::AttachmentPoint,
11427    ) {
11428        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_setAttachmentPoint(
11429            self as *const crate::QRenderTargetOutput as *mut crate::QRenderTargetOutput,
11430            attachment_point,
11431        )
11432    }
11433
11434    /// <p>Holds the face of the attached cubemap texture the rendering is directed to.</p>
11435    ///
11436    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderTargetOutput::setFace(Qt3DRender::QAbstractTexture::CubeMapFace face)```</span>.
11437    ///
11438    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#face-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the face of the attached cubemap texture the rendering is directed to.</p>
11439    /// <p><b>Access functions:</b></p>
11440    /// <div class="table"><table class="alignedsummary">
11441    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture::CubeMapFace </td><td class="memItemRight bottomAlign"><span class="name"><b>face</b></span>() const</td></tr>
11442    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFace</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
11443    /// </tbody></table></div>
11444    /// <p><b>Notifier signal:</b></p>
11445    /// <div class="table"><table class="alignedsummary">
11446    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceChanged</b></span>(QAbstractTexture::CubeMapFace <i>face</i>)</td></tr>
11447    /// </tbody></table></div></div>
11448    #[inline(always)]
11449    pub unsafe fn set_face(&self, face: crate::q_abstract_texture::CubeMapFace) {
11450        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_setFace(
11451            self as *const crate::QRenderTargetOutput as *mut crate::QRenderTargetOutput,
11452            face,
11453        )
11454    }
11455
11456    /// <p>Holds the layer of the attached texture the rendering is directed to.</p>
11457    ///
11458    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderTargetOutput::setLayer(int layer)```</span>.
11459    ///
11460    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the layer of the attached texture the rendering is directed to.</p>
11461    /// <p><b>Access functions:</b></p>
11462    /// <div class="table"><table class="alignedsummary">
11463    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
11464    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayer</b></span>(int <i>layer</i>)</td></tr>
11465    /// </tbody></table></div>
11466    /// <p><b>Notifier signal:</b></p>
11467    /// <div class="table"><table class="alignedsummary">
11468    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
11469    /// </tbody></table></div></div>
11470    #[inline(always)]
11471    pub unsafe fn set_layer(&self, layer: ::std::os::raw::c_int) {
11472        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_setLayer(
11473            self as *const crate::QRenderTargetOutput as *mut crate::QRenderTargetOutput,
11474            layer,
11475        )
11476    }
11477
11478    /// <p>Holds the miplevel of the attached texture the rendering is directed to.</p>
11479    ///
11480    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderTargetOutput::setMipLevel(int level)```</span>.
11481    ///
11482    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the miplevel of the attached texture the rendering is directed to.</p>
11483    /// <p><b>Access functions:</b></p>
11484    /// <div class="table"><table class="alignedsummary">
11485    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
11486    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMipLevel</b></span>(int <i>level</i>)</td></tr>
11487    /// </tbody></table></div>
11488    /// <p><b>Notifier signal:</b></p>
11489    /// <div class="table"><table class="alignedsummary">
11490    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
11491    /// </tbody></table></div></div>
11492    #[inline(always)]
11493    pub unsafe fn set_mip_level(&self, level: ::std::os::raw::c_int) {
11494        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_setMipLevel(
11495            self as *const crate::QRenderTargetOutput as *mut crate::QRenderTargetOutput,
11496            level,
11497        )
11498    }
11499
11500    /// <p>Holds the texture attached to the attachment point.</p>
11501    ///
11502    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderTargetOutput::setTexture(Qt3DRender::QAbstractTexture* texture)```</span>.
11503    ///
11504    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#texture-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the texture attached to the attachment point.</p>
11505    /// <p><b>Access functions:</b></p>
11506    /// <div class="table"><table class="alignedsummary">
11507    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>texture</b></span>() const</td></tr>
11508    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTexture</b></span>(QAbstractTexture *<i>texture</i>)</td></tr>
11509    /// </tbody></table></div>
11510    /// <p><b>Notifier signal:</b></p>
11511    /// <div class="table"><table class="alignedsummary">
11512    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>textureChanged</b></span>(QAbstractTexture *<i>texture</i>)</td></tr>
11513    /// </tbody></table></div></div>
11514    #[inline(always)]
11515    pub unsafe fn set_texture(
11516        &self,
11517        texture: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTexture>>,
11518    ) {
11519        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_setTexture(
11520            self as *const crate::QRenderTargetOutput as *mut crate::QRenderTargetOutput,
11521            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTexture>>::cast_into(texture)
11522                .as_raw_ptr() as *mut crate::QAbstractTexture,
11523        )
11524    }
11525
11526    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
11527    #[inline(always)]
11528    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
11529        let ffi_result = {
11530            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_staticMetaObject()
11531        };
11532        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
11533            .expect("attempted to construct a null Ref")
11534    }
11535
11536    /// <p>Holds the texture attached to the attachment point.</p>
11537    ///
11538    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* Qt3DRender::QRenderTargetOutput::texture() const```</span>.
11539    ///
11540    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#texture-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the texture attached to the attachment point.</p>
11541    /// <p><b>Access functions:</b></p>
11542    /// <div class="table"><table class="alignedsummary">
11543    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>texture</b></span>() const</td></tr>
11544    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTexture</b></span>(QAbstractTexture *<i>texture</i>)</td></tr>
11545    /// </tbody></table></div>
11546    /// <p><b>Notifier signal:</b></p>
11547    /// <div class="table"><table class="alignedsummary">
11548    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>textureChanged</b></span>(QAbstractTexture *<i>texture</i>)</td></tr>
11549    /// </tbody></table></div></div>
11550    #[inline(always)]
11551    pub unsafe fn texture(&self) -> ::qt_core::QPtr<crate::QAbstractTexture> {
11552        let ffi_result = {
11553            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_texture(
11554                self as *const crate::QRenderTargetOutput,
11555            )
11556        };
11557        ::qt_core::QPtr::from_raw(ffi_result)
11558    }
11559
11560    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderTargetOutput::tr(const char* s, const char* c, int n)```</span>.
11561    #[inline(always)]
11562    pub unsafe fn tr(
11563        s: *const ::std::os::raw::c_char,
11564        c: *const ::std::os::raw::c_char,
11565        n: ::std::os::raw::c_int,
11566    ) -> ::cpp_core::CppBox<::qt_core::QString> {
11567        let ffi_result =
11568            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_tr(s, c, n) };
11569        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11570    }
11571
11572    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderTargetOutput::trUtf8(const char* s, const char* c, int n)```</span>.
11573    #[inline(always)]
11574    pub unsafe fn tr_utf8(
11575        s: *const ::std::os::raw::c_char,
11576        c: *const ::std::os::raw::c_char,
11577        n: ::std::os::raw::c_int,
11578    ) -> ::cpp_core::CppBox<::qt_core::QString> {
11579        let ffi_result =
11580            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_trUtf8(s, c, n) };
11581        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11582    }
11583}
11584
11585pub mod q_clear_buffers {
11586    //! C++ type: <span style='color: green;'>```Qt3DRender::QClearBuffers```</span>
11587
11588    /// C++ enum: <span style='color: green;'>```Qt3DRender::QClearBuffers::BufferType```</span>.
11589    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
11590    #[repr(transparent)]
11591    pub struct BufferType(::std::os::raw::c_int);
11592
11593    impl From<::std::os::raw::c_int> for BufferType {
11594        fn from(value: ::std::os::raw::c_int) -> Self {
11595            BufferType(value)
11596        }
11597    }
11598
11599    impl From<BufferType> for ::std::os::raw::c_int {
11600        fn from(value: BufferType) -> Self {
11601            value.0
11602        }
11603    }
11604
11605    impl BufferType {
11606        pub fn to_int(&self) -> ::std::os::raw::c_int {
11607            self.0
11608        }
11609    }
11610
11611    impl BufferType {
11612        /// C++ enum variant: <span style='color: green;'>```None = 0```</span>
11613        #[allow(non_upper_case_globals)]
11614        pub const None: crate::q_clear_buffers::BufferType = crate::q_clear_buffers::BufferType(0);
11615        /// C++ enum variant: <span style='color: green;'>```ColorBuffer = 1```</span>
11616        #[allow(non_upper_case_globals)]
11617        pub const ColorBuffer: crate::q_clear_buffers::BufferType =
11618            crate::q_clear_buffers::BufferType(1);
11619        /// C++ enum variant: <span style='color: green;'>```DepthBuffer = 2```</span>
11620        #[allow(non_upper_case_globals)]
11621        pub const DepthBuffer: crate::q_clear_buffers::BufferType =
11622            crate::q_clear_buffers::BufferType(2);
11623        /// C++ enum variant: <span style='color: green;'>```StencilBuffer = 4```</span>
11624        #[allow(non_upper_case_globals)]
11625        pub const StencilBuffer: crate::q_clear_buffers::BufferType =
11626            crate::q_clear_buffers::BufferType(4);
11627        /// C++ enum variant: <span style='color: green;'>```DepthStencilBuffer = 6```</span>
11628        #[allow(non_upper_case_globals)]
11629        pub const DepthStencilBuffer: crate::q_clear_buffers::BufferType =
11630            crate::q_clear_buffers::BufferType(6);
11631        /// C++ enum variant: <span style='color: green;'>```ColorDepthBuffer = 3```</span>
11632        #[allow(non_upper_case_globals)]
11633        pub const ColorDepthBuffer: crate::q_clear_buffers::BufferType =
11634            crate::q_clear_buffers::BufferType(3);
11635        /// C++ enum variant: <span style='color: green;'>```ColorDepthStencilBuffer = 7```</span>
11636        #[allow(non_upper_case_globals)]
11637        pub const ColorDepthStencilBuffer: crate::q_clear_buffers::BufferType =
11638            crate::q_clear_buffers::BufferType(7);
11639        /// C++ enum variant: <span style='color: green;'>```AllBuffers = -1```</span>
11640        #[allow(non_upper_case_globals)]
11641        pub const AllBuffers: crate::q_clear_buffers::BufferType =
11642            crate::q_clear_buffers::BufferType(-1);
11643    }
11644}
11645/// <p>Class to clear buffers</p>
11646///
11647/// C++ class: <span style='color: green;'>```Qt3DRender::QClearBuffers```</span>.
11648///
11649/// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Class to clear buffers</p>
11650/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">Qt3DRender::QClearBuffers</a> FrameGraph node enables clearing of the specific render target buffers with specific values.</p></div>
11651#[repr(C)]
11652pub struct QClearBuffers {
11653    _unused: u8,
11654}
11655impl QClearBuffers {
11656    /// <p>Specifies the buffer type to be used.</p>
11657    ///
11658    /// Returns a built-in Qt slot `Qt3DRender::QClearBuffers::setBuffers` that can be passed to `qt_core::Signal::connect`.
11659    ///
11660    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#buffers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the buffer type to be used.</p>
11661    /// <p><b>Access functions:</b></p>
11662    /// <div class="table"><table class="alignedsummary">
11663    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BufferType </td><td class="memItemRight bottomAlign"><span class="name"><b>buffers</b></span>() const</td></tr>
11664    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBuffers</b></span>(BufferType <i>buffers</i>)</td></tr>
11665    /// </tbody></table></div>
11666    /// <p><b>Notifier signal:</b></p>
11667    /// <div class="table"><table class="alignedsummary">
11668    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>buffersChanged</b></span>(BufferType <i>buffers</i>)</td></tr>
11669    /// </tbody></table></div></div>
11670    #[inline(always)]
11671    pub fn slot_set_buffers(&self) -> ::qt_core::Receiver<(crate::q_clear_buffers::BufferType,)> {
11672        unsafe {
11673            ::qt_core::Receiver::new(
11674                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11675                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11676                    b"1setBuffers(Qt3DRender::QClearBuffers::BufferType)\0",
11677                ),
11678            )
11679        }
11680    }
11681
11682    /// <p>Specifies the clear color to be used.</p>
11683    ///
11684    /// Returns a built-in Qt slot `Qt3DRender::QClearBuffers::setClearColor` that can be passed to `qt_core::Signal::connect`.
11685    ///
11686    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearColor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the clear color to be used.</p>
11687    /// <p><b>Access functions:</b></p>
11688    /// <div class="table"><table class="alignedsummary">
11689    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QColor </td><td class="memItemRight bottomAlign"><span class="name"><b>clearColor</b></span>() const</td></tr>
11690    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearColor</b></span>(const QColor &amp;<i>color</i>)</td></tr>
11691    /// </tbody></table></div>
11692    /// <p><b>Notifier signal:</b></p>
11693    /// <div class="table"><table class="alignedsummary">
11694    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearColorChanged</b></span>(const QColor &amp;<i>color</i>)</td></tr>
11695    /// </tbody></table></div></div>
11696    #[inline(always)]
11697    pub fn slot_set_clear_color(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QColor,)> {
11698        unsafe {
11699            ::qt_core::Receiver::new(
11700                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11701                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11702                    b"1setClearColor(QColor const &)\0",
11703                ),
11704            )
11705        }
11706    }
11707
11708    /// <p>Specifies the clear depth value to be used.</p>
11709    ///
11710    /// Returns a built-in Qt slot `Qt3DRender::QClearBuffers::setClearDepthValue` that can be passed to `qt_core::Signal::connect`.
11711    ///
11712    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearDepthValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the clear depth value to be used.</p>
11713    /// <p><b>Access functions:</b></p>
11714    /// <div class="table"><table class="alignedsummary">
11715    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>clearDepthValue</b></span>() const</td></tr>
11716    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearDepthValue</b></span>(float <i>clearDepthValue</i>)</td></tr>
11717    /// </tbody></table></div>
11718    /// <p><b>Notifier signal:</b></p>
11719    /// <div class="table"><table class="alignedsummary">
11720    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearDepthValueChanged</b></span>(float <i>clearDepthValue</i>)</td></tr>
11721    /// </tbody></table></div></div>
11722    #[inline(always)]
11723    pub fn slot_set_clear_depth_value(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
11724        unsafe {
11725            ::qt_core::Receiver::new(
11726                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11727                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setClearDepthValue(float)\0"),
11728            )
11729        }
11730    }
11731
11732    /// <p>Specifies the stencil value to be used.</p>
11733    ///
11734    /// Returns a built-in Qt slot `Qt3DRender::QClearBuffers::setClearStencilValue` that can be passed to `qt_core::Signal::connect`.
11735    ///
11736    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearStencilValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the stencil value to be used.</p>
11737    /// <p><b>Access functions:</b></p>
11738    /// <div class="table"><table class="alignedsummary">
11739    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>clearStencilValue</b></span>() const</td></tr>
11740    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearStencilValue</b></span>(int <i>clearStencilValue</i>)</td></tr>
11741    /// </tbody></table></div>
11742    /// <p><b>Notifier signal:</b></p>
11743    /// <div class="table"><table class="alignedsummary">
11744    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearStencilValueChanged</b></span>(int <i>clearStencilValue</i>)</td></tr>
11745    /// </tbody></table></div></div>
11746    #[inline(always)]
11747    pub fn slot_set_clear_stencil_value(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
11748        unsafe {
11749            ::qt_core::Receiver::new(
11750                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11751                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setClearStencilValue(int)\0"),
11752            )
11753        }
11754    }
11755
11756    /// <p>Specifies a specific color buffer to clear. If set to NULL (default), and <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#BufferType-enum">ColorBuffer</a> flag is set, all color buffers will be cleared.</p>
11757    ///
11758    /// Returns a built-in Qt slot `Qt3DRender::QClearBuffers::setColorBuffer` that can be passed to `qt_core::Signal::connect`.
11759    ///
11760    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#colorBuffer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies a specific color buffer to clear. If set to NULL (default), and <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#BufferType-enum">ColorBuffer</a> flag is set, all color buffers will be cleared.</p>
11761    /// <p><b>Access functions:</b></p>
11762    /// <div class="table"><table class="alignedsummary">
11763    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRenderTargetOutput *</td><td class="memItemRight bottomAlign"><span class="name"><b>colorBuffer</b></span>() const</td></tr>
11764    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setColorBuffer</b></span>(QRenderTargetOutput *<i>buffer</i>)</td></tr>
11765    /// </tbody></table></div>
11766    /// <p><b>Notifier signal:</b></p>
11767    /// <div class="table"><table class="alignedsummary">
11768    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>colorBufferChanged</b></span>(QRenderTargetOutput *<i>buffer</i>)</td></tr>
11769    /// </tbody></table></div></div>
11770    #[inline(always)]
11771    pub fn slot_set_color_buffer(&self) -> ::qt_core::Receiver<(*mut crate::QRenderTargetOutput,)> {
11772        unsafe {
11773            ::qt_core::Receiver::new(
11774                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11775                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11776                    b"1setColorBuffer(Qt3DRender::QRenderTargetOutput *)\0",
11777                ),
11778            )
11779        }
11780    }
11781
11782    /// <p>Specifies the buffer type to be used.</p>
11783    ///
11784    /// Returns a built-in Qt signal `Qt3DRender::QClearBuffers::buffersChanged` that can be passed to `qt_core::Signal::connect`.
11785    ///
11786    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#buffers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the buffer type to be used.</p>
11787    /// <p><b>Access functions:</b></p>
11788    /// <div class="table"><table class="alignedsummary">
11789    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BufferType </td><td class="memItemRight bottomAlign"><span class="name"><b>buffers</b></span>() const</td></tr>
11790    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBuffers</b></span>(BufferType <i>buffers</i>)</td></tr>
11791    /// </tbody></table></div>
11792    /// <p><b>Notifier signal:</b></p>
11793    /// <div class="table"><table class="alignedsummary">
11794    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>buffersChanged</b></span>(BufferType <i>buffers</i>)</td></tr>
11795    /// </tbody></table></div></div>
11796    #[inline(always)]
11797    pub fn buffers_changed(&self) -> ::qt_core::Signal<(crate::q_clear_buffers::BufferType,)> {
11798        unsafe {
11799            ::qt_core::Signal::new(
11800                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11801                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11802                    b"2buffersChanged(Qt3DRender::QClearBuffers::BufferType)\0",
11803                ),
11804            )
11805        }
11806    }
11807
11808    /// <p>Specifies the clear color to be used.</p>
11809    ///
11810    /// Returns a built-in Qt signal `Qt3DRender::QClearBuffers::clearColorChanged` that can be passed to `qt_core::Signal::connect`.
11811    ///
11812    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearColor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the clear color to be used.</p>
11813    /// <p><b>Access functions:</b></p>
11814    /// <div class="table"><table class="alignedsummary">
11815    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QColor </td><td class="memItemRight bottomAlign"><span class="name"><b>clearColor</b></span>() const</td></tr>
11816    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearColor</b></span>(const QColor &amp;<i>color</i>)</td></tr>
11817    /// </tbody></table></div>
11818    /// <p><b>Notifier signal:</b></p>
11819    /// <div class="table"><table class="alignedsummary">
11820    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearColorChanged</b></span>(const QColor &amp;<i>color</i>)</td></tr>
11821    /// </tbody></table></div></div>
11822    #[inline(always)]
11823    pub fn clear_color_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QColor,)> {
11824        unsafe {
11825            ::qt_core::Signal::new(
11826                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11827                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11828                    b"2clearColorChanged(QColor const &)\0",
11829                ),
11830            )
11831        }
11832    }
11833
11834    /// <p>Specifies the clear depth value to be used.</p>
11835    ///
11836    /// Returns a built-in Qt signal `Qt3DRender::QClearBuffers::clearDepthValueChanged` that can be passed to `qt_core::Signal::connect`.
11837    ///
11838    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearDepthValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the clear depth value to be used.</p>
11839    /// <p><b>Access functions:</b></p>
11840    /// <div class="table"><table class="alignedsummary">
11841    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>clearDepthValue</b></span>() const</td></tr>
11842    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearDepthValue</b></span>(float <i>clearDepthValue</i>)</td></tr>
11843    /// </tbody></table></div>
11844    /// <p><b>Notifier signal:</b></p>
11845    /// <div class="table"><table class="alignedsummary">
11846    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearDepthValueChanged</b></span>(float <i>clearDepthValue</i>)</td></tr>
11847    /// </tbody></table></div></div>
11848    #[inline(always)]
11849    pub fn clear_depth_value_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
11850        unsafe {
11851            ::qt_core::Signal::new(
11852                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11853                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11854                    b"2clearDepthValueChanged(float)\0",
11855                ),
11856            )
11857        }
11858    }
11859
11860    /// <p>Specifies the stencil value to be used.</p>
11861    ///
11862    /// Returns a built-in Qt signal `Qt3DRender::QClearBuffers::clearStencilValueChanged` that can be passed to `qt_core::Signal::connect`.
11863    ///
11864    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearStencilValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the stencil value to be used.</p>
11865    /// <p><b>Access functions:</b></p>
11866    /// <div class="table"><table class="alignedsummary">
11867    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>clearStencilValue</b></span>() const</td></tr>
11868    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearStencilValue</b></span>(int <i>clearStencilValue</i>)</td></tr>
11869    /// </tbody></table></div>
11870    /// <p><b>Notifier signal:</b></p>
11871    /// <div class="table"><table class="alignedsummary">
11872    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearStencilValueChanged</b></span>(int <i>clearStencilValue</i>)</td></tr>
11873    /// </tbody></table></div></div>
11874    #[inline(always)]
11875    pub fn clear_stencil_value_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
11876        unsafe {
11877            ::qt_core::Signal::new(
11878                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11879                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11880                    b"2clearStencilValueChanged(int)\0",
11881                ),
11882            )
11883        }
11884    }
11885
11886    /// <p>Specifies a specific color buffer to clear. If set to NULL (default), and <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#BufferType-enum">ColorBuffer</a> flag is set, all color buffers will be cleared.</p>
11887    ///
11888    /// Returns a built-in Qt signal `Qt3DRender::QClearBuffers::colorBufferChanged` that can be passed to `qt_core::Signal::connect`.
11889    ///
11890    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#colorBuffer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies a specific color buffer to clear. If set to NULL (default), and <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#BufferType-enum">ColorBuffer</a> flag is set, all color buffers will be cleared.</p>
11891    /// <p><b>Access functions:</b></p>
11892    /// <div class="table"><table class="alignedsummary">
11893    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRenderTargetOutput *</td><td class="memItemRight bottomAlign"><span class="name"><b>colorBuffer</b></span>() const</td></tr>
11894    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setColorBuffer</b></span>(QRenderTargetOutput *<i>buffer</i>)</td></tr>
11895    /// </tbody></table></div>
11896    /// <p><b>Notifier signal:</b></p>
11897    /// <div class="table"><table class="alignedsummary">
11898    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>colorBufferChanged</b></span>(QRenderTargetOutput *<i>buffer</i>)</td></tr>
11899    /// </tbody></table></div></div>
11900    #[inline(always)]
11901    pub fn color_buffer_changed(&self) -> ::qt_core::Signal<(*mut crate::QRenderTargetOutput,)> {
11902        unsafe {
11903            ::qt_core::Signal::new(
11904                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
11905                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
11906                    b"2colorBufferChanged(Qt3DRender::QRenderTargetOutput *)\0",
11907                ),
11908            )
11909        }
11910    }
11911
11912    /// <p>Specifies the buffer type to be used.</p>
11913    ///
11914    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClearBuffers::BufferType Qt3DRender::QClearBuffers::buffers() const```</span>.
11915    ///
11916    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#buffers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the buffer type to be used.</p>
11917    /// <p><b>Access functions:</b></p>
11918    /// <div class="table"><table class="alignedsummary">
11919    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BufferType </td><td class="memItemRight bottomAlign"><span class="name"><b>buffers</b></span>() const</td></tr>
11920    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBuffers</b></span>(BufferType <i>buffers</i>)</td></tr>
11921    /// </tbody></table></div>
11922    /// <p><b>Notifier signal:</b></p>
11923    /// <div class="table"><table class="alignedsummary">
11924    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>buffersChanged</b></span>(BufferType <i>buffers</i>)</td></tr>
11925    /// </tbody></table></div></div>
11926    #[inline(always)]
11927    pub unsafe fn buffers(&self) -> crate::q_clear_buffers::BufferType {
11928        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_buffers(
11929            self as *const crate::QClearBuffers,
11930        )
11931    }
11932
11933    /// <p>Specifies the clear color to be used.</p>
11934    ///
11935    /// Calls C++ function: <span style='color: green;'>```QColor Qt3DRender::QClearBuffers::clearColor() const```</span>.
11936    ///
11937    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearColor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the clear color to be used.</p>
11938    /// <p><b>Access functions:</b></p>
11939    /// <div class="table"><table class="alignedsummary">
11940    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QColor </td><td class="memItemRight bottomAlign"><span class="name"><b>clearColor</b></span>() const</td></tr>
11941    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearColor</b></span>(const QColor &amp;<i>color</i>)</td></tr>
11942    /// </tbody></table></div>
11943    /// <p><b>Notifier signal:</b></p>
11944    /// <div class="table"><table class="alignedsummary">
11945    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearColorChanged</b></span>(const QColor &amp;<i>color</i>)</td></tr>
11946    /// </tbody></table></div></div>
11947    #[inline(always)]
11948    pub unsafe fn clear_color(&self) -> ::cpp_core::CppBox<::qt_gui::QColor> {
11949        let ffi_result = {
11950            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_clearColor(
11951                self as *const crate::QClearBuffers,
11952            )
11953        };
11954        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
11955    }
11956
11957    /// <p>Specifies the clear depth value to be used.</p>
11958    ///
11959    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QClearBuffers::clearDepthValue() const```</span>.
11960    ///
11961    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearDepthValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the clear depth value to be used.</p>
11962    /// <p><b>Access functions:</b></p>
11963    /// <div class="table"><table class="alignedsummary">
11964    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>clearDepthValue</b></span>() const</td></tr>
11965    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearDepthValue</b></span>(float <i>clearDepthValue</i>)</td></tr>
11966    /// </tbody></table></div>
11967    /// <p><b>Notifier signal:</b></p>
11968    /// <div class="table"><table class="alignedsummary">
11969    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearDepthValueChanged</b></span>(float <i>clearDepthValue</i>)</td></tr>
11970    /// </tbody></table></div></div>
11971    #[inline(always)]
11972    pub unsafe fn clear_depth_value(&self) -> ::std::os::raw::c_float {
11973        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_clearDepthValue(
11974            self as *const crate::QClearBuffers,
11975        )
11976    }
11977
11978    /// <p>Specifies the stencil value to be used.</p>
11979    ///
11980    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QClearBuffers::clearStencilValue() const```</span>.
11981    ///
11982    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearStencilValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the stencil value to be used.</p>
11983    /// <p><b>Access functions:</b></p>
11984    /// <div class="table"><table class="alignedsummary">
11985    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>clearStencilValue</b></span>() const</td></tr>
11986    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearStencilValue</b></span>(int <i>clearStencilValue</i>)</td></tr>
11987    /// </tbody></table></div>
11988    /// <p><b>Notifier signal:</b></p>
11989    /// <div class="table"><table class="alignedsummary">
11990    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearStencilValueChanged</b></span>(int <i>clearStencilValue</i>)</td></tr>
11991    /// </tbody></table></div></div>
11992    #[inline(always)]
11993    pub unsafe fn clear_stencil_value(&self) -> ::std::os::raw::c_int {
11994        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_clearStencilValue(
11995            self as *const crate::QClearBuffers,
11996        )
11997    }
11998
11999    /// <p>Specifies a specific color buffer to clear. If set to NULL (default), and <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#BufferType-enum">ColorBuffer</a> flag is set, all color buffers will be cleared.</p>
12000    ///
12001    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* Qt3DRender::QClearBuffers::colorBuffer() const```</span>.
12002    ///
12003    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#colorBuffer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies a specific color buffer to clear. If set to NULL (default), and <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#BufferType-enum">ColorBuffer</a> flag is set, all color buffers will be cleared.</p>
12004    /// <p><b>Access functions:</b></p>
12005    /// <div class="table"><table class="alignedsummary">
12006    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRenderTargetOutput *</td><td class="memItemRight bottomAlign"><span class="name"><b>colorBuffer</b></span>() const</td></tr>
12007    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setColorBuffer</b></span>(QRenderTargetOutput *<i>buffer</i>)</td></tr>
12008    /// </tbody></table></div>
12009    /// <p><b>Notifier signal:</b></p>
12010    /// <div class="table"><table class="alignedsummary">
12011    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>colorBufferChanged</b></span>(QRenderTargetOutput *<i>buffer</i>)</td></tr>
12012    /// </tbody></table></div></div>
12013    #[inline(always)]
12014    pub unsafe fn color_buffer(&self) -> ::qt_core::QPtr<crate::QRenderTargetOutput> {
12015        let ffi_result = {
12016            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_colorBuffer(
12017                self as *const crate::QClearBuffers,
12018            )
12019        };
12020        ::qt_core::QPtr::from_raw(ffi_result)
12021    }
12022
12023    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QClearBuffers::metaObject() const```</span>.
12024    #[inline(always)]
12025    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
12026        let ffi_result = {
12027            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_metaObject(
12028                self as *const crate::QClearBuffers,
12029            )
12030        };
12031        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
12032    }
12033
12034    /// <p>Default constructs an instance of QClearBuffers.</p>
12035    ///
12036    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QClearBuffers::QClearBuffers(Qt3DCore::QNode* parent = …)```</span>.
12037    ///
12038    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#QClearBuffers">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QClearBuffers.</p></div>
12039    #[inline(always)]
12040    pub unsafe fn new_1a(
12041        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
12042    ) -> ::qt_core::QBox<crate::QClearBuffers> {
12043        let ffi_result = {
12044            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_QClearBuffers(
12045                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
12046                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
12047            )
12048        };
12049        ::qt_core::QBox::from_raw(ffi_result)
12050    }
12051
12052    /// <p>Class to clear buffers</p>
12053    ///
12054    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QClearBuffers::QClearBuffers()```</span>.
12055    ///
12056    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Class to clear buffers</p>
12057    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">Qt3DRender::QClearBuffers</a> FrameGraph node enables clearing of the specific render target buffers with specific values.</p></div>
12058    #[inline(always)]
12059    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QClearBuffers> {
12060        let ffi_result =
12061            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_QClearBuffers1() };
12062        ::qt_core::QBox::from_raw(ffi_result)
12063    }
12064
12065    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QClearBuffers::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
12066    #[inline(always)]
12067    pub unsafe fn qt_metacall(
12068        &self,
12069        arg1: ::qt_core::q_meta_object::Call,
12070        arg2: ::std::os::raw::c_int,
12071        arg3: *mut *mut ::std::ffi::c_void,
12072    ) -> ::std::os::raw::c_int {
12073        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_qt_metacall(
12074            self as *const crate::QClearBuffers as *mut crate::QClearBuffers,
12075            arg1,
12076            arg2,
12077            arg3,
12078        )
12079    }
12080
12081    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QClearBuffers::qt_metacast(const char* arg1)```</span>.
12082    #[inline(always)]
12083    pub unsafe fn qt_metacast(
12084        &self,
12085        arg1: *const ::std::os::raw::c_char,
12086    ) -> *mut ::std::ffi::c_void {
12087        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_qt_metacast(
12088            self as *const crate::QClearBuffers as *mut crate::QClearBuffers,
12089            arg1,
12090        )
12091    }
12092
12093    /// <p>Specifies the buffer type to be used.</p>
12094    ///
12095    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QClearBuffers::setBuffers(Qt3DRender::QClearBuffers::BufferType buffers)```</span>.
12096    ///
12097    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#buffers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the buffer type to be used.</p>
12098    /// <p><b>Access functions:</b></p>
12099    /// <div class="table"><table class="alignedsummary">
12100    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> BufferType </td><td class="memItemRight bottomAlign"><span class="name"><b>buffers</b></span>() const</td></tr>
12101    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBuffers</b></span>(BufferType <i>buffers</i>)</td></tr>
12102    /// </tbody></table></div>
12103    /// <p><b>Notifier signal:</b></p>
12104    /// <div class="table"><table class="alignedsummary">
12105    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>buffersChanged</b></span>(BufferType <i>buffers</i>)</td></tr>
12106    /// </tbody></table></div></div>
12107    #[inline(always)]
12108    pub unsafe fn set_buffers(&self, buffers: crate::q_clear_buffers::BufferType) {
12109        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_setBuffers(
12110            self as *const crate::QClearBuffers as *mut crate::QClearBuffers,
12111            buffers,
12112        )
12113    }
12114
12115    /// <p>Specifies the clear color to be used.</p>
12116    ///
12117    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QClearBuffers::setClearColor(const QColor& color)```</span>.
12118    ///
12119    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearColor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the clear color to be used.</p>
12120    /// <p><b>Access functions:</b></p>
12121    /// <div class="table"><table class="alignedsummary">
12122    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QColor </td><td class="memItemRight bottomAlign"><span class="name"><b>clearColor</b></span>() const</td></tr>
12123    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearColor</b></span>(const QColor &amp;<i>color</i>)</td></tr>
12124    /// </tbody></table></div>
12125    /// <p><b>Notifier signal:</b></p>
12126    /// <div class="table"><table class="alignedsummary">
12127    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearColorChanged</b></span>(const QColor &amp;<i>color</i>)</td></tr>
12128    /// </tbody></table></div></div>
12129    #[inline(always)]
12130    pub unsafe fn set_clear_color(
12131        &self,
12132        color: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QColor>>,
12133    ) {
12134        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_setClearColor(
12135            self as *const crate::QClearBuffers as *mut crate::QClearBuffers,
12136            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QColor>>::cast_into(color)
12137                .as_raw_ptr(),
12138        )
12139    }
12140
12141    /// <p>Specifies the clear depth value to be used.</p>
12142    ///
12143    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QClearBuffers::setClearDepthValue(float clearDepthValue)```</span>.
12144    ///
12145    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearDepthValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the clear depth value to be used.</p>
12146    /// <p><b>Access functions:</b></p>
12147    /// <div class="table"><table class="alignedsummary">
12148    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>clearDepthValue</b></span>() const</td></tr>
12149    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearDepthValue</b></span>(float <i>clearDepthValue</i>)</td></tr>
12150    /// </tbody></table></div>
12151    /// <p><b>Notifier signal:</b></p>
12152    /// <div class="table"><table class="alignedsummary">
12153    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearDepthValueChanged</b></span>(float <i>clearDepthValue</i>)</td></tr>
12154    /// </tbody></table></div></div>
12155    #[inline(always)]
12156    pub unsafe fn set_clear_depth_value(&self, clear_depth_value: ::std::os::raw::c_float) {
12157        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_setClearDepthValue(
12158            self as *const crate::QClearBuffers as *mut crate::QClearBuffers,
12159            clear_depth_value,
12160        )
12161    }
12162
12163    /// <p>Specifies the stencil value to be used.</p>
12164    ///
12165    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QClearBuffers::setClearStencilValue(int clearStencilValue)```</span>.
12166    ///
12167    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#clearStencilValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the stencil value to be used.</p>
12168    /// <p><b>Access functions:</b></p>
12169    /// <div class="table"><table class="alignedsummary">
12170    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>clearStencilValue</b></span>() const</td></tr>
12171    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setClearStencilValue</b></span>(int <i>clearStencilValue</i>)</td></tr>
12172    /// </tbody></table></div>
12173    /// <p><b>Notifier signal:</b></p>
12174    /// <div class="table"><table class="alignedsummary">
12175    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>clearStencilValueChanged</b></span>(int <i>clearStencilValue</i>)</td></tr>
12176    /// </tbody></table></div></div>
12177    #[inline(always)]
12178    pub unsafe fn set_clear_stencil_value(&self, clear_stencil_value: ::std::os::raw::c_int) {
12179        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_setClearStencilValue(
12180            self as *const crate::QClearBuffers as *mut crate::QClearBuffers,
12181            clear_stencil_value,
12182        )
12183    }
12184
12185    /// <p>Specifies a specific color buffer to clear. If set to NULL (default), and <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#BufferType-enum">ColorBuffer</a> flag is set, all color buffers will be cleared.</p>
12186    ///
12187    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QClearBuffers::setColorBuffer(Qt3DRender::QRenderTargetOutput* buffer)```</span>.
12188    ///
12189    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#colorBuffer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies a specific color buffer to clear. If set to NULL (default), and <a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html#BufferType-enum">ColorBuffer</a> flag is set, all color buffers will be cleared.</p>
12190    /// <p><b>Access functions:</b></p>
12191    /// <div class="table"><table class="alignedsummary">
12192    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRenderTargetOutput *</td><td class="memItemRight bottomAlign"><span class="name"><b>colorBuffer</b></span>() const</td></tr>
12193    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setColorBuffer</b></span>(QRenderTargetOutput *<i>buffer</i>)</td></tr>
12194    /// </tbody></table></div>
12195    /// <p><b>Notifier signal:</b></p>
12196    /// <div class="table"><table class="alignedsummary">
12197    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>colorBufferChanged</b></span>(QRenderTargetOutput *<i>buffer</i>)</td></tr>
12198    /// </tbody></table></div></div>
12199    #[inline(always)]
12200    pub unsafe fn set_color_buffer(
12201        &self,
12202        buffer: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTargetOutput>>,
12203    ) {
12204        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_setColorBuffer(
12205            self as *const crate::QClearBuffers as *mut crate::QClearBuffers,
12206            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTargetOutput>>::cast_into(buffer)
12207                .as_raw_ptr() as *mut crate::QRenderTargetOutput,
12208        )
12209    }
12210
12211    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
12212    #[inline(always)]
12213    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
12214        let ffi_result =
12215            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_staticMetaObject() };
12216        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
12217            .expect("attempted to construct a null Ref")
12218    }
12219
12220    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QClearBuffers::tr(const char* s, const char* c, int n)```</span>.
12221    #[inline(always)]
12222    pub unsafe fn tr(
12223        s: *const ::std::os::raw::c_char,
12224        c: *const ::std::os::raw::c_char,
12225        n: ::std::os::raw::c_int,
12226    ) -> ::cpp_core::CppBox<::qt_core::QString> {
12227        let ffi_result =
12228            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_tr(s, c, n) };
12229        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12230    }
12231
12232    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QClearBuffers::trUtf8(const char* s, const char* c, int n)```</span>.
12233    #[inline(always)]
12234    pub unsafe fn tr_utf8(
12235        s: *const ::std::os::raw::c_char,
12236        c: *const ::std::os::raw::c_char,
12237        n: ::std::os::raw::c_int,
12238    ) -> ::cpp_core::CppBox<::qt_core::QString> {
12239        let ffi_result =
12240            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_trUtf8(s, c, n) };
12241        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12242    }
12243}
12244
12245/// <p>Enables an additional OpenGL clipping plane that can be in shaders using gl_ClipDistance</p>
12246///
12247/// C++ class: <span style='color: green;'>```Qt3DRender::QClipPlane```</span>.
12248///
12249/// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables an additional OpenGL clipping plane that can be in shaders using gl_ClipDistance</p>
12250/// <p>By default, OpenGL supports up to 8 additional clipping planes. Qt3DCore::QClipPlane allows to enable one of these additional planes. These planes can then be manipulated in the shaders using gl_ClipDistance[i] where i varies between 0 and 7. The underlying implementation may support more than 8 clip planes, but it is not guaranteed.</p></div>
12251#[repr(C)]
12252pub struct QClipPlane {
12253    _unused: u8,
12254}
12255impl QClipPlane {
12256    /// <p>Holds the index of the plane.</p>
12257    ///
12258    /// Returns a built-in Qt slot `Qt3DRender::QClipPlane::setPlaneIndex` that can be passed to `qt_core::Signal::connect`.
12259    ///
12260    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#planeIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the index of the plane.</p>
12261    /// <p><b>Note: </b>Usually between 0-7.</p><p><b>Access functions:</b></p>
12262    /// <div class="table"><table class="alignedsummary">
12263    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>planeIndex</b></span>() const</td></tr>
12264    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPlaneIndex</b></span>(<i>int</i>)</td></tr>
12265    /// </tbody></table></div>
12266    /// <p><b>Notifier signal:</b></p>
12267    /// <div class="table"><table class="alignedsummary">
12268    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>planeIndexChanged</b></span>(int <i>planeIndex</i>)</td></tr>
12269    /// </tbody></table></div></div>
12270    #[inline(always)]
12271    pub fn slot_set_plane_index(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
12272        unsafe {
12273            ::qt_core::Receiver::new(
12274                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12275                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setPlaneIndex(int)\0"),
12276            )
12277        }
12278    }
12279
12280    /// <p>Holds the normal of the plane.</p>
12281    ///
12282    /// Returns a built-in Qt slot `Qt3DRender::QClipPlane::setNormal` that can be passed to `qt_core::Signal::connect`.
12283    ///
12284    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#normal-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the normal of the plane.</p>
12285    /// <p><b>Access functions:</b></p>
12286    /// <div class="table"><table class="alignedsummary">
12287    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>normal</b></span>() const</td></tr>
12288    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNormal</b></span>(<i>QVector3D</i>)</td></tr>
12289    /// </tbody></table></div>
12290    /// <p><b>Notifier signal:</b></p>
12291    /// <div class="table"><table class="alignedsummary">
12292    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>normalChanged</b></span>(QVector3D <i>normal</i>)</td></tr>
12293    /// </tbody></table></div></div>
12294    #[inline(always)]
12295    pub fn slot_set_normal(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QVector3D,)> {
12296        unsafe {
12297            ::qt_core::Receiver::new(
12298                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12299                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setNormal(QVector3D)\0"),
12300            )
12301        }
12302    }
12303
12304    /// <p>Holds the distance of the plane from the world origin.</p>
12305    ///
12306    /// Returns a built-in Qt slot `Qt3DRender::QClipPlane::setDistance` that can be passed to `qt_core::Signal::connect`.
12307    ///
12308    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#distance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the distance of the plane from the world origin.</p>
12309    /// <p><b>Access functions:</b></p>
12310    /// <div class="table"><table class="alignedsummary">
12311    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>distance</b></span>() const</td></tr>
12312    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDistance</b></span>(<i>float</i>)</td></tr>
12313    /// </tbody></table></div>
12314    /// <p><b>Notifier signal:</b></p>
12315    /// <div class="table"><table class="alignedsummary">
12316    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceChanged</b></span>(float <i>distance</i>)</td></tr>
12317    /// </tbody></table></div></div>
12318    #[inline(always)]
12319    pub fn slot_set_distance(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
12320        unsafe {
12321            ::qt_core::Receiver::new(
12322                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12323                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setDistance(float)\0"),
12324            )
12325        }
12326    }
12327
12328    /// <p>Holds the index of the plane.</p>
12329    ///
12330    /// Returns a built-in Qt signal `Qt3DRender::QClipPlane::planeIndexChanged` that can be passed to `qt_core::Signal::connect`.
12331    ///
12332    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#planeIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the index of the plane.</p>
12333    /// <p><b>Note: </b>Usually between 0-7.</p><p><b>Access functions:</b></p>
12334    /// <div class="table"><table class="alignedsummary">
12335    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>planeIndex</b></span>() const</td></tr>
12336    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPlaneIndex</b></span>(<i>int</i>)</td></tr>
12337    /// </tbody></table></div>
12338    /// <p><b>Notifier signal:</b></p>
12339    /// <div class="table"><table class="alignedsummary">
12340    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>planeIndexChanged</b></span>(int <i>planeIndex</i>)</td></tr>
12341    /// </tbody></table></div></div>
12342    #[inline(always)]
12343    pub fn plane_index_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
12344        unsafe {
12345            ::qt_core::Signal::new(
12346                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12347                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2planeIndexChanged(int)\0"),
12348            )
12349        }
12350    }
12351
12352    /// <p>Holds the normal of the plane.</p>
12353    ///
12354    /// Returns a built-in Qt signal `Qt3DRender::QClipPlane::normalChanged` that can be passed to `qt_core::Signal::connect`.
12355    ///
12356    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#normal-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the normal of the plane.</p>
12357    /// <p><b>Access functions:</b></p>
12358    /// <div class="table"><table class="alignedsummary">
12359    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>normal</b></span>() const</td></tr>
12360    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNormal</b></span>(<i>QVector3D</i>)</td></tr>
12361    /// </tbody></table></div>
12362    /// <p><b>Notifier signal:</b></p>
12363    /// <div class="table"><table class="alignedsummary">
12364    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>normalChanged</b></span>(QVector3D <i>normal</i>)</td></tr>
12365    /// </tbody></table></div></div>
12366    #[inline(always)]
12367    pub fn normal_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
12368        unsafe {
12369            ::qt_core::Signal::new(
12370                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12371                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2normalChanged(QVector3D)\0"),
12372            )
12373        }
12374    }
12375
12376    /// <p>Holds the distance of the plane from the world origin.</p>
12377    ///
12378    /// Returns a built-in Qt signal `Qt3DRender::QClipPlane::distanceChanged` that can be passed to `qt_core::Signal::connect`.
12379    ///
12380    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#distance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the distance of the plane from the world origin.</p>
12381    /// <p><b>Access functions:</b></p>
12382    /// <div class="table"><table class="alignedsummary">
12383    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>distance</b></span>() const</td></tr>
12384    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDistance</b></span>(<i>float</i>)</td></tr>
12385    /// </tbody></table></div>
12386    /// <p><b>Notifier signal:</b></p>
12387    /// <div class="table"><table class="alignedsummary">
12388    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceChanged</b></span>(float <i>distance</i>)</td></tr>
12389    /// </tbody></table></div></div>
12390    #[inline(always)]
12391    pub fn distance_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
12392        unsafe {
12393            ::qt_core::Signal::new(
12394                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12395                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2distanceChanged(float)\0"),
12396            )
12397        }
12398    }
12399
12400    /// <p>Holds the distance of the plane from the world origin.</p>
12401    ///
12402    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QClipPlane::distance() const```</span>.
12403    ///
12404    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#distance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the distance of the plane from the world origin.</p>
12405    /// <p><b>Access functions:</b></p>
12406    /// <div class="table"><table class="alignedsummary">
12407    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>distance</b></span>() const</td></tr>
12408    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDistance</b></span>(<i>float</i>)</td></tr>
12409    /// </tbody></table></div>
12410    /// <p><b>Notifier signal:</b></p>
12411    /// <div class="table"><table class="alignedsummary">
12412    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceChanged</b></span>(float <i>distance</i>)</td></tr>
12413    /// </tbody></table></div></div>
12414    #[inline(always)]
12415    pub unsafe fn distance(&self) -> ::std::os::raw::c_float {
12416        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_distance(
12417            self as *const crate::QClipPlane,
12418        )
12419    }
12420
12421    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QClipPlane::metaObject() const```</span>.
12422    #[inline(always)]
12423    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
12424        let ffi_result = {
12425            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_metaObject(
12426                self as *const crate::QClipPlane,
12427            )
12428        };
12429        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
12430    }
12431
12432    /// <p>Default constructs an instance of QClipPlane.</p>
12433    ///
12434    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QClipPlane::QClipPlane(Qt3DCore::QNode* parent = …)```</span>.
12435    ///
12436    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#QClipPlane">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QClipPlane.</p></div>
12437    #[inline(always)]
12438    pub unsafe fn new_1a(
12439        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
12440    ) -> ::qt_core::QBox<crate::QClipPlane> {
12441        let ffi_result = {
12442            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_QClipPlane(
12443                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
12444                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
12445            )
12446        };
12447        ::qt_core::QBox::from_raw(ffi_result)
12448    }
12449
12450    /// <p>Enables an additional OpenGL clipping plane that can be in shaders using gl_ClipDistance</p>
12451    ///
12452    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QClipPlane::QClipPlane()```</span>.
12453    ///
12454    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables an additional OpenGL clipping plane that can be in shaders using gl_ClipDistance</p>
12455    /// <p>By default, OpenGL supports up to 8 additional clipping planes. Qt3DCore::QClipPlane allows to enable one of these additional planes. These planes can then be manipulated in the shaders using gl_ClipDistance[i] where i varies between 0 and 7. The underlying implementation may support more than 8 clip planes, but it is not guaranteed.</p></div>
12456    #[inline(always)]
12457    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QClipPlane> {
12458        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_QClipPlane1() };
12459        ::qt_core::QBox::from_raw(ffi_result)
12460    }
12461
12462    /// <p>Holds the normal of the plane.</p>
12463    ///
12464    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QClipPlane::normal() const```</span>.
12465    ///
12466    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#normal-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the normal of the plane.</p>
12467    /// <p><b>Access functions:</b></p>
12468    /// <div class="table"><table class="alignedsummary">
12469    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>normal</b></span>() const</td></tr>
12470    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNormal</b></span>(<i>QVector3D</i>)</td></tr>
12471    /// </tbody></table></div>
12472    /// <p><b>Notifier signal:</b></p>
12473    /// <div class="table"><table class="alignedsummary">
12474    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>normalChanged</b></span>(QVector3D <i>normal</i>)</td></tr>
12475    /// </tbody></table></div></div>
12476    #[inline(always)]
12477    pub unsafe fn normal(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
12478        let ffi_result = {
12479            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_normal(
12480                self as *const crate::QClipPlane,
12481            )
12482        };
12483        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12484    }
12485
12486    /// <p>Holds the index of the plane.</p>
12487    ///
12488    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QClipPlane::planeIndex() const```</span>.
12489    ///
12490    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#planeIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the index of the plane.</p>
12491    /// <p><b>Note: </b>Usually between 0-7.</p><p><b>Access functions:</b></p>
12492    /// <div class="table"><table class="alignedsummary">
12493    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>planeIndex</b></span>() const</td></tr>
12494    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPlaneIndex</b></span>(<i>int</i>)</td></tr>
12495    /// </tbody></table></div>
12496    /// <p><b>Notifier signal:</b></p>
12497    /// <div class="table"><table class="alignedsummary">
12498    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>planeIndexChanged</b></span>(int <i>planeIndex</i>)</td></tr>
12499    /// </tbody></table></div></div>
12500    #[inline(always)]
12501    pub unsafe fn plane_index(&self) -> ::std::os::raw::c_int {
12502        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_planeIndex(
12503            self as *const crate::QClipPlane,
12504        )
12505    }
12506
12507    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QClipPlane::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
12508    #[inline(always)]
12509    pub unsafe fn qt_metacall(
12510        &self,
12511        arg1: ::qt_core::q_meta_object::Call,
12512        arg2: ::std::os::raw::c_int,
12513        arg3: *mut *mut ::std::ffi::c_void,
12514    ) -> ::std::os::raw::c_int {
12515        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_qt_metacall(
12516            self as *const crate::QClipPlane as *mut crate::QClipPlane,
12517            arg1,
12518            arg2,
12519            arg3,
12520        )
12521    }
12522
12523    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QClipPlane::qt_metacast(const char* arg1)```</span>.
12524    #[inline(always)]
12525    pub unsafe fn qt_metacast(
12526        &self,
12527        arg1: *const ::std::os::raw::c_char,
12528    ) -> *mut ::std::ffi::c_void {
12529        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_qt_metacast(
12530            self as *const crate::QClipPlane as *mut crate::QClipPlane,
12531            arg1,
12532        )
12533    }
12534
12535    /// <p>Holds the distance of the plane from the world origin.</p>
12536    ///
12537    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QClipPlane::setDistance(float arg1)```</span>.
12538    ///
12539    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#distance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the distance of the plane from the world origin.</p>
12540    /// <p><b>Access functions:</b></p>
12541    /// <div class="table"><table class="alignedsummary">
12542    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>distance</b></span>() const</td></tr>
12543    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDistance</b></span>(<i>float</i>)</td></tr>
12544    /// </tbody></table></div>
12545    /// <p><b>Notifier signal:</b></p>
12546    /// <div class="table"><table class="alignedsummary">
12547    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceChanged</b></span>(float <i>distance</i>)</td></tr>
12548    /// </tbody></table></div></div>
12549    #[inline(always)]
12550    pub unsafe fn set_distance(&self, arg1: ::std::os::raw::c_float) {
12551        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_setDistance(
12552            self as *const crate::QClipPlane as *mut crate::QClipPlane,
12553            arg1,
12554        )
12555    }
12556
12557    /// <p>Holds the normal of the plane.</p>
12558    ///
12559    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QClipPlane::setNormal(QVector3D arg1)```</span>.
12560    ///
12561    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#normal-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the normal of the plane.</p>
12562    /// <p><b>Access functions:</b></p>
12563    /// <div class="table"><table class="alignedsummary">
12564    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>normal</b></span>() const</td></tr>
12565    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNormal</b></span>(<i>QVector3D</i>)</td></tr>
12566    /// </tbody></table></div>
12567    /// <p><b>Notifier signal:</b></p>
12568    /// <div class="table"><table class="alignedsummary">
12569    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>normalChanged</b></span>(QVector3D <i>normal</i>)</td></tr>
12570    /// </tbody></table></div></div>
12571    #[inline(always)]
12572    pub unsafe fn set_normal(
12573        &self,
12574        arg1: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
12575    ) {
12576        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_setNormal(
12577            self as *const crate::QClipPlane as *mut crate::QClipPlane,
12578            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(arg1)
12579                .as_raw_ptr(),
12580        )
12581    }
12582
12583    /// <p>Holds the index of the plane.</p>
12584    ///
12585    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QClipPlane::setPlaneIndex(int arg1)```</span>.
12586    ///
12587    /// <a href="http://doc.qt.io/qt-5/qt3drender-qclipplane.html#planeIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the index of the plane.</p>
12588    /// <p><b>Note: </b>Usually between 0-7.</p><p><b>Access functions:</b></p>
12589    /// <div class="table"><table class="alignedsummary">
12590    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>planeIndex</b></span>() const</td></tr>
12591    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPlaneIndex</b></span>(<i>int</i>)</td></tr>
12592    /// </tbody></table></div>
12593    /// <p><b>Notifier signal:</b></p>
12594    /// <div class="table"><table class="alignedsummary">
12595    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>planeIndexChanged</b></span>(int <i>planeIndex</i>)</td></tr>
12596    /// </tbody></table></div></div>
12597    #[inline(always)]
12598    pub unsafe fn set_plane_index(&self, arg1: ::std::os::raw::c_int) {
12599        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_setPlaneIndex(
12600            self as *const crate::QClipPlane as *mut crate::QClipPlane,
12601            arg1,
12602        )
12603    }
12604
12605    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
12606    #[inline(always)]
12607    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
12608        let ffi_result =
12609            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_staticMetaObject() };
12610        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
12611            .expect("attempted to construct a null Ref")
12612    }
12613
12614    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QClipPlane::tr(const char* s, const char* c, int n)```</span>.
12615    #[inline(always)]
12616    pub unsafe fn tr(
12617        s: *const ::std::os::raw::c_char,
12618        c: *const ::std::os::raw::c_char,
12619        n: ::std::os::raw::c_int,
12620    ) -> ::cpp_core::CppBox<::qt_core::QString> {
12621        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_tr(s, c, n) };
12622        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12623    }
12624
12625    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QClipPlane::trUtf8(const char* s, const char* c, int n)```</span>.
12626    #[inline(always)]
12627    pub unsafe fn tr_utf8(
12628        s: *const ::std::os::raw::c_char,
12629        c: *const ::std::os::raw::c_char,
12630        n: ::std::os::raw::c_int,
12631    ) -> ::cpp_core::CppBox<::qt_core::QString> {
12632        let ffi_result =
12633            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_trUtf8(s, c, n) };
12634        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
12635    }
12636}
12637
12638/// <p>Allows specifying which color components should be written to the currently bound frame buffer.</p>
12639///
12640/// C++ class: <span style='color: green;'>```Qt3DRender::QColorMask```</span>.
12641///
12642/// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Allows specifying which color components should be written to the currently bound frame buffer.</p>
12643/// <p>By default, the property for each color component (red, green, blue, alpha) is set to <code>true</code> which means they will be written to the frame buffer. Setting any of the color component to <code>false</code> will prevent it from being written into the frame buffer.</p></div>
12644#[repr(C)]
12645pub struct QColorMask {
12646    _unused: u8,
12647}
12648impl QColorMask {
12649    /// <p>Holds whether the red color component should be written to the frame buffer.</p>
12650    ///
12651    /// Returns a built-in Qt slot `Qt3DRender::QColorMask::setRedMasked` that can be passed to `qt_core::Signal::connect`.
12652    ///
12653    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#redMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the red color component should be written to the frame buffer.</p>
12654    /// <p><b>Access functions:</b></p>
12655    /// <div class="table"><table class="alignedsummary">
12656    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isRedMasked</b></span>() const</td></tr>
12657    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRedMasked</b></span>(bool <i>redMasked</i>)</td></tr>
12658    /// </tbody></table></div>
12659    /// <p><b>Notifier signal:</b></p>
12660    /// <div class="table"><table class="alignedsummary">
12661    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>redMaskedChanged</b></span>(bool <i>redMasked</i>)</td></tr>
12662    /// </tbody></table></div></div>
12663    #[inline(always)]
12664    pub fn slot_set_red_masked(&self) -> ::qt_core::Receiver<(bool,)> {
12665        unsafe {
12666            ::qt_core::Receiver::new(
12667                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12668                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setRedMasked(bool)\0"),
12669            )
12670        }
12671    }
12672
12673    /// <p>Holds whether the green color component should be written to the frame buffer.</p>
12674    ///
12675    /// Returns a built-in Qt slot `Qt3DRender::QColorMask::setGreenMasked` that can be passed to `qt_core::Signal::connect`.
12676    ///
12677    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#greenMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the green color component should be written to the frame buffer.</p>
12678    /// <p><b>Access functions:</b></p>
12679    /// <div class="table"><table class="alignedsummary">
12680    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isGreenMasked</b></span>() const</td></tr>
12681    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGreenMasked</b></span>(bool <i>greenMasked</i>)</td></tr>
12682    /// </tbody></table></div>
12683    /// <p><b>Notifier signal:</b></p>
12684    /// <div class="table"><table class="alignedsummary">
12685    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>greenMaskedChanged</b></span>(bool <i>greenMasked</i>)</td></tr>
12686    /// </tbody></table></div></div>
12687    #[inline(always)]
12688    pub fn slot_set_green_masked(&self) -> ::qt_core::Receiver<(bool,)> {
12689        unsafe {
12690            ::qt_core::Receiver::new(
12691                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12692                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setGreenMasked(bool)\0"),
12693            )
12694        }
12695    }
12696
12697    /// <p>Holds whether the blue color component should be written to the frame buffer.</p>
12698    ///
12699    /// Returns a built-in Qt slot `Qt3DRender::QColorMask::setBlueMasked` that can be passed to `qt_core::Signal::connect`.
12700    ///
12701    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#blueMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the blue color component should be written to the frame buffer.</p>
12702    /// <p><b>Access functions:</b></p>
12703    /// <div class="table"><table class="alignedsummary">
12704    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isBlueMasked</b></span>() const</td></tr>
12705    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBlueMasked</b></span>(bool <i>blueMasked</i>)</td></tr>
12706    /// </tbody></table></div>
12707    /// <p><b>Notifier signal:</b></p>
12708    /// <div class="table"><table class="alignedsummary">
12709    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>blueMaskedChanged</b></span>(bool <i>blueMasked</i>)</td></tr>
12710    /// </tbody></table></div></div>
12711    #[inline(always)]
12712    pub fn slot_set_blue_masked(&self) -> ::qt_core::Receiver<(bool,)> {
12713        unsafe {
12714            ::qt_core::Receiver::new(
12715                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12716                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setBlueMasked(bool)\0"),
12717            )
12718        }
12719    }
12720
12721    /// <p>Holds whether the alphaMasked component should be written to the frame buffer.</p>
12722    ///
12723    /// Returns a built-in Qt slot `Qt3DRender::QColorMask::setAlphaMasked` that can be passed to `qt_core::Signal::connect`.
12724    ///
12725    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#alphaMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the alphaMasked component should be written to the frame buffer.</p>
12726    /// <p><b>Access functions:</b></p>
12727    /// <div class="table"><table class="alignedsummary">
12728    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isAlphaMasked</b></span>() const</td></tr>
12729    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAlphaMasked</b></span>(bool <i>alphaMasked</i>)</td></tr>
12730    /// </tbody></table></div>
12731    /// <p><b>Notifier signal:</b></p>
12732    /// <div class="table"><table class="alignedsummary">
12733    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaMaskedChanged</b></span>(bool <i>alphaMasked</i>)</td></tr>
12734    /// </tbody></table></div></div>
12735    #[inline(always)]
12736    pub fn slot_set_alpha_masked(&self) -> ::qt_core::Receiver<(bool,)> {
12737        unsafe {
12738            ::qt_core::Receiver::new(
12739                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12740                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setAlphaMasked(bool)\0"),
12741            )
12742        }
12743    }
12744
12745    /// <p>Holds whether the red color component should be written to the frame buffer.</p>
12746    ///
12747    /// Returns a built-in Qt signal `Qt3DRender::QColorMask::redMaskedChanged` that can be passed to `qt_core::Signal::connect`.
12748    ///
12749    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#redMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the red color component should be written to the frame buffer.</p>
12750    /// <p><b>Access functions:</b></p>
12751    /// <div class="table"><table class="alignedsummary">
12752    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isRedMasked</b></span>() const</td></tr>
12753    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRedMasked</b></span>(bool <i>redMasked</i>)</td></tr>
12754    /// </tbody></table></div>
12755    /// <p><b>Notifier signal:</b></p>
12756    /// <div class="table"><table class="alignedsummary">
12757    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>redMaskedChanged</b></span>(bool <i>redMasked</i>)</td></tr>
12758    /// </tbody></table></div></div>
12759    #[inline(always)]
12760    pub fn red_masked_changed(&self) -> ::qt_core::Signal<(bool,)> {
12761        unsafe {
12762            ::qt_core::Signal::new(
12763                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12764                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2redMaskedChanged(bool)\0"),
12765            )
12766        }
12767    }
12768
12769    /// <p>Holds whether the green color component should be written to the frame buffer.</p>
12770    ///
12771    /// Returns a built-in Qt signal `Qt3DRender::QColorMask::greenMaskedChanged` that can be passed to `qt_core::Signal::connect`.
12772    ///
12773    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#greenMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the green color component should be written to the frame buffer.</p>
12774    /// <p><b>Access functions:</b></p>
12775    /// <div class="table"><table class="alignedsummary">
12776    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isGreenMasked</b></span>() const</td></tr>
12777    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGreenMasked</b></span>(bool <i>greenMasked</i>)</td></tr>
12778    /// </tbody></table></div>
12779    /// <p><b>Notifier signal:</b></p>
12780    /// <div class="table"><table class="alignedsummary">
12781    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>greenMaskedChanged</b></span>(bool <i>greenMasked</i>)</td></tr>
12782    /// </tbody></table></div></div>
12783    #[inline(always)]
12784    pub fn green_masked_changed(&self) -> ::qt_core::Signal<(bool,)> {
12785        unsafe {
12786            ::qt_core::Signal::new(
12787                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12788                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2greenMaskedChanged(bool)\0"),
12789            )
12790        }
12791    }
12792
12793    /// <p>Holds whether the blue color component should be written to the frame buffer.</p>
12794    ///
12795    /// Returns a built-in Qt signal `Qt3DRender::QColorMask::blueMaskedChanged` that can be passed to `qt_core::Signal::connect`.
12796    ///
12797    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#blueMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the blue color component should be written to the frame buffer.</p>
12798    /// <p><b>Access functions:</b></p>
12799    /// <div class="table"><table class="alignedsummary">
12800    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isBlueMasked</b></span>() const</td></tr>
12801    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBlueMasked</b></span>(bool <i>blueMasked</i>)</td></tr>
12802    /// </tbody></table></div>
12803    /// <p><b>Notifier signal:</b></p>
12804    /// <div class="table"><table class="alignedsummary">
12805    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>blueMaskedChanged</b></span>(bool <i>blueMasked</i>)</td></tr>
12806    /// </tbody></table></div></div>
12807    #[inline(always)]
12808    pub fn blue_masked_changed(&self) -> ::qt_core::Signal<(bool,)> {
12809        unsafe {
12810            ::qt_core::Signal::new(
12811                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12812                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2blueMaskedChanged(bool)\0"),
12813            )
12814        }
12815    }
12816
12817    /// <p>Holds whether the alphaMasked component should be written to the frame buffer.</p>
12818    ///
12819    /// Returns a built-in Qt signal `Qt3DRender::QColorMask::alphaMaskedChanged` that can be passed to `qt_core::Signal::connect`.
12820    ///
12821    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#alphaMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the alphaMasked component should be written to the frame buffer.</p>
12822    /// <p><b>Access functions:</b></p>
12823    /// <div class="table"><table class="alignedsummary">
12824    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isAlphaMasked</b></span>() const</td></tr>
12825    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAlphaMasked</b></span>(bool <i>alphaMasked</i>)</td></tr>
12826    /// </tbody></table></div>
12827    /// <p><b>Notifier signal:</b></p>
12828    /// <div class="table"><table class="alignedsummary">
12829    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaMaskedChanged</b></span>(bool <i>alphaMasked</i>)</td></tr>
12830    /// </tbody></table></div></div>
12831    #[inline(always)]
12832    pub fn alpha_masked_changed(&self) -> ::qt_core::Signal<(bool,)> {
12833        unsafe {
12834            ::qt_core::Signal::new(
12835                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
12836                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2alphaMaskedChanged(bool)\0"),
12837            )
12838        }
12839    }
12840
12841    /// <p>Holds whether the alphaMasked component should be written to the frame buffer.</p>
12842    ///
12843    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QColorMask::isAlphaMasked() const```</span>.
12844    ///
12845    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#alphaMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the alphaMasked component should be written to the frame buffer.</p>
12846    /// <p><b>Access functions:</b></p>
12847    /// <div class="table"><table class="alignedsummary">
12848    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isAlphaMasked</b></span>() const</td></tr>
12849    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAlphaMasked</b></span>(bool <i>alphaMasked</i>)</td></tr>
12850    /// </tbody></table></div>
12851    /// <p><b>Notifier signal:</b></p>
12852    /// <div class="table"><table class="alignedsummary">
12853    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaMaskedChanged</b></span>(bool <i>alphaMasked</i>)</td></tr>
12854    /// </tbody></table></div></div>
12855    #[inline(always)]
12856    pub unsafe fn is_alpha_masked(&self) -> bool {
12857        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_isAlphaMasked(
12858            self as *const crate::QColorMask,
12859        )
12860    }
12861
12862    /// <p>Holds whether the blue color component should be written to the frame buffer.</p>
12863    ///
12864    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QColorMask::isBlueMasked() const```</span>.
12865    ///
12866    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#blueMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the blue color component should be written to the frame buffer.</p>
12867    /// <p><b>Access functions:</b></p>
12868    /// <div class="table"><table class="alignedsummary">
12869    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isBlueMasked</b></span>() const</td></tr>
12870    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBlueMasked</b></span>(bool <i>blueMasked</i>)</td></tr>
12871    /// </tbody></table></div>
12872    /// <p><b>Notifier signal:</b></p>
12873    /// <div class="table"><table class="alignedsummary">
12874    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>blueMaskedChanged</b></span>(bool <i>blueMasked</i>)</td></tr>
12875    /// </tbody></table></div></div>
12876    #[inline(always)]
12877    pub unsafe fn is_blue_masked(&self) -> bool {
12878        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_isBlueMasked(
12879            self as *const crate::QColorMask,
12880        )
12881    }
12882
12883    /// <p>Holds whether the green color component should be written to the frame buffer.</p>
12884    ///
12885    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QColorMask::isGreenMasked() const```</span>.
12886    ///
12887    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#greenMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the green color component should be written to the frame buffer.</p>
12888    /// <p><b>Access functions:</b></p>
12889    /// <div class="table"><table class="alignedsummary">
12890    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isGreenMasked</b></span>() const</td></tr>
12891    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGreenMasked</b></span>(bool <i>greenMasked</i>)</td></tr>
12892    /// </tbody></table></div>
12893    /// <p><b>Notifier signal:</b></p>
12894    /// <div class="table"><table class="alignedsummary">
12895    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>greenMaskedChanged</b></span>(bool <i>greenMasked</i>)</td></tr>
12896    /// </tbody></table></div></div>
12897    #[inline(always)]
12898    pub unsafe fn is_green_masked(&self) -> bool {
12899        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_isGreenMasked(
12900            self as *const crate::QColorMask,
12901        )
12902    }
12903
12904    /// <p>Holds whether the red color component should be written to the frame buffer.</p>
12905    ///
12906    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QColorMask::isRedMasked() const```</span>.
12907    ///
12908    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#redMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the red color component should be written to the frame buffer.</p>
12909    /// <p><b>Access functions:</b></p>
12910    /// <div class="table"><table class="alignedsummary">
12911    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isRedMasked</b></span>() const</td></tr>
12912    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRedMasked</b></span>(bool <i>redMasked</i>)</td></tr>
12913    /// </tbody></table></div>
12914    /// <p><b>Notifier signal:</b></p>
12915    /// <div class="table"><table class="alignedsummary">
12916    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>redMaskedChanged</b></span>(bool <i>redMasked</i>)</td></tr>
12917    /// </tbody></table></div></div>
12918    #[inline(always)]
12919    pub unsafe fn is_red_masked(&self) -> bool {
12920        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_isRedMasked(
12921            self as *const crate::QColorMask,
12922        )
12923    }
12924
12925    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QColorMask::metaObject() const```</span>.
12926    #[inline(always)]
12927    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
12928        let ffi_result = {
12929            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_metaObject(
12930                self as *const crate::QColorMask,
12931            )
12932        };
12933        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
12934    }
12935
12936    /// <p>Default constructs an instance of QColorMask.</p>
12937    ///
12938    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QColorMask::QColorMask(Qt3DCore::QNode* parent = …)```</span>.
12939    ///
12940    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#QColorMask">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QColorMask.</p></div>
12941    #[inline(always)]
12942    pub unsafe fn new_1a(
12943        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
12944    ) -> ::qt_core::QBox<crate::QColorMask> {
12945        let ffi_result = {
12946            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_QColorMask(
12947                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
12948                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
12949            )
12950        };
12951        ::qt_core::QBox::from_raw(ffi_result)
12952    }
12953
12954    /// <p>Allows specifying which color components should be written to the currently bound frame buffer.</p>
12955    ///
12956    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QColorMask::QColorMask()```</span>.
12957    ///
12958    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Allows specifying which color components should be written to the currently bound frame buffer.</p>
12959    /// <p>By default, the property for each color component (red, green, blue, alpha) is set to <code>true</code> which means they will be written to the frame buffer. Setting any of the color component to <code>false</code> will prevent it from being written into the frame buffer.</p></div>
12960    #[inline(always)]
12961    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QColorMask> {
12962        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_QColorMask1() };
12963        ::qt_core::QBox::from_raw(ffi_result)
12964    }
12965
12966    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QColorMask::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
12967    #[inline(always)]
12968    pub unsafe fn qt_metacall(
12969        &self,
12970        arg1: ::qt_core::q_meta_object::Call,
12971        arg2: ::std::os::raw::c_int,
12972        arg3: *mut *mut ::std::ffi::c_void,
12973    ) -> ::std::os::raw::c_int {
12974        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_qt_metacall(
12975            self as *const crate::QColorMask as *mut crate::QColorMask,
12976            arg1,
12977            arg2,
12978            arg3,
12979        )
12980    }
12981
12982    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QColorMask::qt_metacast(const char* arg1)```</span>.
12983    #[inline(always)]
12984    pub unsafe fn qt_metacast(
12985        &self,
12986        arg1: *const ::std::os::raw::c_char,
12987    ) -> *mut ::std::ffi::c_void {
12988        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_qt_metacast(
12989            self as *const crate::QColorMask as *mut crate::QColorMask,
12990            arg1,
12991        )
12992    }
12993
12994    /// <p>Holds whether the alphaMasked component should be written to the frame buffer.</p>
12995    ///
12996    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QColorMask::setAlphaMasked(bool alphaMasked)```</span>.
12997    ///
12998    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#alphaMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the alphaMasked component should be written to the frame buffer.</p>
12999    /// <p><b>Access functions:</b></p>
13000    /// <div class="table"><table class="alignedsummary">
13001    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isAlphaMasked</b></span>() const</td></tr>
13002    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAlphaMasked</b></span>(bool <i>alphaMasked</i>)</td></tr>
13003    /// </tbody></table></div>
13004    /// <p><b>Notifier signal:</b></p>
13005    /// <div class="table"><table class="alignedsummary">
13006    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>alphaMaskedChanged</b></span>(bool <i>alphaMasked</i>)</td></tr>
13007    /// </tbody></table></div></div>
13008    #[inline(always)]
13009    pub unsafe fn set_alpha_masked(&self, alpha_masked: bool) {
13010        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_setAlphaMasked(
13011            self as *const crate::QColorMask as *mut crate::QColorMask,
13012            alpha_masked,
13013        )
13014    }
13015
13016    /// <p>Holds whether the blue color component should be written to the frame buffer.</p>
13017    ///
13018    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QColorMask::setBlueMasked(bool blueMasked)```</span>.
13019    ///
13020    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#blueMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the blue color component should be written to the frame buffer.</p>
13021    /// <p><b>Access functions:</b></p>
13022    /// <div class="table"><table class="alignedsummary">
13023    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isBlueMasked</b></span>() const</td></tr>
13024    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBlueMasked</b></span>(bool <i>blueMasked</i>)</td></tr>
13025    /// </tbody></table></div>
13026    /// <p><b>Notifier signal:</b></p>
13027    /// <div class="table"><table class="alignedsummary">
13028    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>blueMaskedChanged</b></span>(bool <i>blueMasked</i>)</td></tr>
13029    /// </tbody></table></div></div>
13030    #[inline(always)]
13031    pub unsafe fn set_blue_masked(&self, blue_masked: bool) {
13032        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_setBlueMasked(
13033            self as *const crate::QColorMask as *mut crate::QColorMask,
13034            blue_masked,
13035        )
13036    }
13037
13038    /// <p>Holds whether the green color component should be written to the frame buffer.</p>
13039    ///
13040    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QColorMask::setGreenMasked(bool greenMasked)```</span>.
13041    ///
13042    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#greenMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the green color component should be written to the frame buffer.</p>
13043    /// <p><b>Access functions:</b></p>
13044    /// <div class="table"><table class="alignedsummary">
13045    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isGreenMasked</b></span>() const</td></tr>
13046    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGreenMasked</b></span>(bool <i>greenMasked</i>)</td></tr>
13047    /// </tbody></table></div>
13048    /// <p><b>Notifier signal:</b></p>
13049    /// <div class="table"><table class="alignedsummary">
13050    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>greenMaskedChanged</b></span>(bool <i>greenMasked</i>)</td></tr>
13051    /// </tbody></table></div></div>
13052    #[inline(always)]
13053    pub unsafe fn set_green_masked(&self, green_masked: bool) {
13054        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_setGreenMasked(
13055            self as *const crate::QColorMask as *mut crate::QColorMask,
13056            green_masked,
13057        )
13058    }
13059
13060    /// <p>Holds whether the red color component should be written to the frame buffer.</p>
13061    ///
13062    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QColorMask::setRedMasked(bool redMasked)```</span>.
13063    ///
13064    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcolormask.html#redMasked-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds whether the red color component should be written to the frame buffer.</p>
13065    /// <p><b>Access functions:</b></p>
13066    /// <div class="table"><table class="alignedsummary">
13067    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isRedMasked</b></span>() const</td></tr>
13068    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRedMasked</b></span>(bool <i>redMasked</i>)</td></tr>
13069    /// </tbody></table></div>
13070    /// <p><b>Notifier signal:</b></p>
13071    /// <div class="table"><table class="alignedsummary">
13072    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>redMaskedChanged</b></span>(bool <i>redMasked</i>)</td></tr>
13073    /// </tbody></table></div></div>
13074    #[inline(always)]
13075    pub unsafe fn set_red_masked(&self, red_masked: bool) {
13076        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_setRedMasked(
13077            self as *const crate::QColorMask as *mut crate::QColorMask,
13078            red_masked,
13079        )
13080    }
13081
13082    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
13083    #[inline(always)]
13084    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
13085        let ffi_result =
13086            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_staticMetaObject() };
13087        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
13088            .expect("attempted to construct a null Ref")
13089    }
13090
13091    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QColorMask::tr(const char* s, const char* c, int n)```</span>.
13092    #[inline(always)]
13093    pub unsafe fn tr(
13094        s: *const ::std::os::raw::c_char,
13095        c: *const ::std::os::raw::c_char,
13096        n: ::std::os::raw::c_int,
13097    ) -> ::cpp_core::CppBox<::qt_core::QString> {
13098        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_tr(s, c, n) };
13099        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13100    }
13101
13102    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QColorMask::trUtf8(const char* s, const char* c, int n)```</span>.
13103    #[inline(always)]
13104    pub unsafe fn tr_utf8(
13105        s: *const ::std::os::raw::c_char,
13106        c: *const ::std::os::raw::c_char,
13107        n: ::std::os::raw::c_int,
13108    ) -> ::cpp_core::CppBox<::qt_core::QString> {
13109        let ffi_result =
13110            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_trUtf8(s, c, n) };
13111        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13112    }
13113}
13114
13115pub mod q_compute_command {
13116    //! C++ type: <span style='color: green;'>```Qt3DRender::QComputeCommand```</span>
13117
13118    /// C++ enum: <span style='color: green;'>```Qt3DRender::QComputeCommand::RunType```</span>.
13119    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
13120    #[repr(transparent)]
13121    pub struct RunType(::std::os::raw::c_int);
13122
13123    impl From<::std::os::raw::c_int> for RunType {
13124        fn from(value: ::std::os::raw::c_int) -> Self {
13125            RunType(value)
13126        }
13127    }
13128
13129    impl From<RunType> for ::std::os::raw::c_int {
13130        fn from(value: RunType) -> Self {
13131            value.0
13132        }
13133    }
13134
13135    impl RunType {
13136        pub fn to_int(&self) -> ::std::os::raw::c_int {
13137            self.0
13138        }
13139    }
13140
13141    impl RunType {
13142        /// C++ enum variant: <span style='color: green;'>```Continuous = 0```</span>
13143        #[allow(non_upper_case_globals)]
13144        pub const Continuous: crate::q_compute_command::RunType =
13145            crate::q_compute_command::RunType(0);
13146        /// C++ enum variant: <span style='color: green;'>```Manual = 1```</span>
13147        #[allow(non_upper_case_globals)]
13148        pub const Manual: crate::q_compute_command::RunType = crate::q_compute_command::RunType(1);
13149    }
13150}
13151/// <p><a href="http://doc.qt.io/qt-5/qt3dcore-qcomponent.html">QComponent</a> to issue work for the compute shader on GPU</p>
13152///
13153/// C++ class: <span style='color: green;'>```Qt3DRender::QComputeCommand```</span>.
13154///
13155/// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3dcore-qcomponent.html">QComponent</a> to issue work for the compute shader on GPU</p>
13156/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">Qt3DRender::QComputeCommand</a> is used to issue work for the compute shader. The compute shader is specified in the <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> component of the same entity the <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">QComputeCommand</a> is added to. The <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupX-prop">workGroupX</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupY-prop">workGroupY</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupZ-prop">workGroupZ</a> properties specify the work group sizes for the compute shader invocation. <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">Qt3DRender::QDispatchCompute</a> node needs to be present in the FrameGraph to actually issue the commands.</p>
13157/// <p><b>Note: </b>If the rendering policy is set to <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#RenderPolicy-enum">Qt3DRender::QRenderSettings::OnDemand</a> and there are no changes to the scene, the <a href="http://doc.qt.io/qt-5/qml-computecommand.html">ComputeCommand</a> will not be invoked repeatedly. The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#RenderPolicy-enum">Qt3DRender::QRenderSettings::Always</a> render policy must be set for the <a href="http://doc.qt.io/qt-5/qml-computecommand.html">ComputeCommand</a> to be repeatedly invoked if there are no other changes to the scene that triggers rendering a new frame.</p></div>
13158#[repr(C)]
13159pub struct QComputeCommand {
13160    _unused: u8,
13161}
13162impl QComputeCommand {
13163    /// <p>Sets the workgroup for the first dimension to <i>workGroupX</i>.</p>
13164    ///
13165    /// Returns a built-in Qt slot `Qt3DRender::QComputeCommand::setWorkGroupX` that can be passed to `qt_core::Signal::connect`.
13166    ///
13167    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupX">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the workgroup for the first dimension to <i>workGroupX</i>.</p>
13168    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupX-prop">workGroupX</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupX-prop">workGroupX</a>().</p></div>
13169    #[inline(always)]
13170    pub fn slot_set_work_group_x(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
13171        unsafe {
13172            ::qt_core::Receiver::new(
13173                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
13174                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setWorkGroupX(int)\0"),
13175            )
13176        }
13177    }
13178
13179    /// <p>Sets the workgroup for the second dimension to <i>workGroupY</i>.</p>
13180    ///
13181    /// Returns a built-in Qt slot `Qt3DRender::QComputeCommand::setWorkGroupY` that can be passed to `qt_core::Signal::connect`.
13182    ///
13183    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupY">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the workgroup for the second dimension to <i>workGroupY</i>.</p>
13184    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupY-prop">workGroupY</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupY-prop">workGroupY</a>().</p></div>
13185    #[inline(always)]
13186    pub fn slot_set_work_group_y(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
13187        unsafe {
13188            ::qt_core::Receiver::new(
13189                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
13190                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setWorkGroupY(int)\0"),
13191            )
13192        }
13193    }
13194
13195    /// <p>Sets the workgroup for the third dimension to <i>workGroupZ</i>.</p>
13196    ///
13197    /// Returns a built-in Qt slot `Qt3DRender::QComputeCommand::setWorkGroupZ` that can be passed to `qt_core::Signal::connect`.
13198    ///
13199    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupZ">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the workgroup for the third dimension to <i>workGroupZ</i>.</p>
13200    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupZ-prop">workGroupZ</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupZ-prop">workGroupZ</a>().</p></div>
13201    #[inline(always)]
13202    pub fn slot_set_work_group_z(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
13203        unsafe {
13204            ::qt_core::Receiver::new(
13205                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
13206                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setWorkGroupZ(int)\0"),
13207            )
13208        }
13209    }
13210
13211    /// <p>Specifies X workgroup size.</p>
13212    ///
13213    /// Returns a built-in Qt signal `Qt3DRender::QComputeCommand::workGroupXChanged` that can be passed to `qt_core::Signal::connect`.
13214    ///
13215    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupX-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies X workgroup size.</p>
13216    /// <p><b>Access functions:</b></p>
13217    /// <div class="table"><table class="alignedsummary">
13218    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupX</b></span>() const</td></tr>
13219    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupX">setWorkGroupX</a></b></span>(int <i>workGroupX</i>)</td></tr>
13220    /// </tbody></table></div>
13221    /// <p><b>Notifier signal:</b></p>
13222    /// <div class="table"><table class="alignedsummary">
13223    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupXChanged</b></span>()</td></tr>
13224    /// </tbody></table></div></div>
13225    #[inline(always)]
13226    pub fn work_group_x_changed(&self) -> ::qt_core::Signal<()> {
13227        unsafe {
13228            ::qt_core::Signal::new(
13229                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
13230                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2workGroupXChanged()\0"),
13231            )
13232        }
13233    }
13234
13235    /// <p>Specifies Y workgroup size.</p>
13236    ///
13237    /// Returns a built-in Qt signal `Qt3DRender::QComputeCommand::workGroupYChanged` that can be passed to `qt_core::Signal::connect`.
13238    ///
13239    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupY-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Y workgroup size.</p>
13240    /// <p><b>Access functions:</b></p>
13241    /// <div class="table"><table class="alignedsummary">
13242    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupY</b></span>() const</td></tr>
13243    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupY">setWorkGroupY</a></b></span>(int <i>workGroupY</i>)</td></tr>
13244    /// </tbody></table></div>
13245    /// <p><b>Notifier signal:</b></p>
13246    /// <div class="table"><table class="alignedsummary">
13247    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupYChanged</b></span>()</td></tr>
13248    /// </tbody></table></div></div>
13249    #[inline(always)]
13250    pub fn work_group_y_changed(&self) -> ::qt_core::Signal<()> {
13251        unsafe {
13252            ::qt_core::Signal::new(
13253                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
13254                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2workGroupYChanged()\0"),
13255            )
13256        }
13257    }
13258
13259    /// <p>Specifies Z workgroup size.</p>
13260    ///
13261    /// Returns a built-in Qt signal `Qt3DRender::QComputeCommand::workGroupZChanged` that can be passed to `qt_core::Signal::connect`.
13262    ///
13263    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupZ-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Z workgroup size.</p>
13264    /// <p><b>Access functions:</b></p>
13265    /// <div class="table"><table class="alignedsummary">
13266    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZ</b></span>() const</td></tr>
13267    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupZ">setWorkGroupZ</a></b></span>(int <i>workGroupZ</i>)</td></tr>
13268    /// </tbody></table></div>
13269    /// <p><b>Notifier signal:</b></p>
13270    /// <div class="table"><table class="alignedsummary">
13271    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZChanged</b></span>()</td></tr>
13272    /// </tbody></table></div></div>
13273    #[inline(always)]
13274    pub fn work_group_z_changed(&self) -> ::qt_core::Signal<()> {
13275        unsafe {
13276            ::qt_core::Signal::new(
13277                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
13278                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2workGroupZChanged()\0"),
13279            )
13280        }
13281    }
13282
13283    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QComputeCommand::metaObject() const```</span>.
13284    #[inline(always)]
13285    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
13286        let ffi_result = {
13287            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_metaObject(
13288                self as *const crate::QComputeCommand,
13289            )
13290        };
13291        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
13292    }
13293
13294    /// <p>The constructor creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">Qt3DRender::QComputeCommand</a> instance with the specified <i>parent</i>.</p>
13295    ///
13296    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QComputeCommand::QComputeCommand(Qt3DCore::QNode* parent = …)```</span>.
13297    ///
13298    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#QComputeCommand">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The constructor creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">Qt3DRender::QComputeCommand</a> instance with the specified <i>parent</i>.</p></div>
13299    #[inline(always)]
13300    pub unsafe fn new_1a(
13301        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
13302    ) -> ::qt_core::QBox<crate::QComputeCommand> {
13303        let ffi_result = {
13304            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_QComputeCommand(
13305                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
13306                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
13307            )
13308        };
13309        ::qt_core::QBox::from_raw(ffi_result)
13310    }
13311
13312    /// <p><a href="http://doc.qt.io/qt-5/qt3dcore-qcomponent.html">QComponent</a> to issue work for the compute shader on GPU</p>
13313    ///
13314    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QComputeCommand::QComputeCommand()```</span>.
13315    ///
13316    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3dcore-qcomponent.html">QComponent</a> to issue work for the compute shader on GPU</p>
13317    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">Qt3DRender::QComputeCommand</a> is used to issue work for the compute shader. The compute shader is specified in the <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> component of the same entity the <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">QComputeCommand</a> is added to. The <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupX-prop">workGroupX</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupY-prop">workGroupY</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupZ-prop">workGroupZ</a> properties specify the work group sizes for the compute shader invocation. <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">Qt3DRender::QDispatchCompute</a> node needs to be present in the FrameGraph to actually issue the commands.</p>
13318    /// <p><b>Note: </b>If the rendering policy is set to <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#RenderPolicy-enum">Qt3DRender::QRenderSettings::OnDemand</a> and there are no changes to the scene, the <a href="http://doc.qt.io/qt-5/qml-computecommand.html">ComputeCommand</a> will not be invoked repeatedly. The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#RenderPolicy-enum">Qt3DRender::QRenderSettings::Always</a> render policy must be set for the <a href="http://doc.qt.io/qt-5/qml-computecommand.html">ComputeCommand</a> to be repeatedly invoked if there are no other changes to the scene that triggers rendering a new frame.</p></div>
13319    #[inline(always)]
13320    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QComputeCommand> {
13321        let ffi_result =
13322            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_QComputeCommand1() };
13323        ::qt_core::QBox::from_raw(ffi_result)
13324    }
13325
13326    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QComputeCommand::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
13327    #[inline(always)]
13328    pub unsafe fn qt_metacall(
13329        &self,
13330        arg1: ::qt_core::q_meta_object::Call,
13331        arg2: ::std::os::raw::c_int,
13332        arg3: *mut *mut ::std::ffi::c_void,
13333    ) -> ::std::os::raw::c_int {
13334        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_qt_metacall(
13335            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13336            arg1,
13337            arg2,
13338            arg3,
13339        )
13340    }
13341
13342    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QComputeCommand::qt_metacast(const char* arg1)```</span>.
13343    #[inline(always)]
13344    pub unsafe fn qt_metacast(
13345        &self,
13346        arg1: *const ::std::os::raw::c_char,
13347    ) -> *mut ::std::ffi::c_void {
13348        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_qt_metacast(
13349            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13350            arg1,
13351        )
13352    }
13353
13354    /// <p>Specifies whether the compute command should be performed every frame or manually triggered.</p>
13355    ///
13356    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QComputeCommand::RunType Qt3DRender::QComputeCommand::runType() const```</span>.
13357    ///
13358    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#runType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies whether the compute command should be performed every frame or manually triggered.</p>
13359    /// <p>If set to Continuous, Compute command is executed everyframe. This is the default.</p>
13360    /// <p>If set to Manual CompouteCommand is executed for a given number of frames and then the component disables itself.</p>
13361    /// <p><b>Access functions:</b></p>
13362    /// <div class="table"><table class="alignedsummary">
13363    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QComputeCommand::RunType </td><td class="memItemRight bottomAlign"><span class="name"><b>runType</b></span>() const</td></tr>
13364    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRunType</b></span>(Qt3DRender::QComputeCommand::RunType <i>runType</i>)</td></tr>
13365    /// </tbody></table></div>
13366    /// <p><b>Notifier signal:</b></p>
13367    /// <div class="table"><table class="alignedsummary">
13368    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>runTypeChanged</b></span>()</td></tr>
13369    /// </tbody></table></div></div>
13370    #[inline(always)]
13371    #[cfg_attr(
13372        feature = "ritual_rustdoc_nightly",
13373        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
13374    )]
13375    #[cfg(any(
13376        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
13377        feature = "ritual_rustdoc"
13378    ))]
13379    pub unsafe fn run_type(&self) -> crate::q_compute_command::RunType {
13380        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_runType(
13381            self as *const crate::QComputeCommand,
13382        )
13383    }
13384
13385    /// <p>Specifies whether the compute command should be performed every frame or manually triggered.</p>
13386    ///
13387    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QComputeCommand::runTypeChanged()```</span>.
13388    ///
13389    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#runType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies whether the compute command should be performed every frame or manually triggered.</p>
13390    /// <p>If set to Continuous, Compute command is executed everyframe. This is the default.</p>
13391    /// <p>If set to Manual CompouteCommand is executed for a given number of frames and then the component disables itself.</p>
13392    /// <p><b>Access functions:</b></p>
13393    /// <div class="table"><table class="alignedsummary">
13394    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QComputeCommand::RunType </td><td class="memItemRight bottomAlign"><span class="name"><b>runType</b></span>() const</td></tr>
13395    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRunType</b></span>(Qt3DRender::QComputeCommand::RunType <i>runType</i>)</td></tr>
13396    /// </tbody></table></div>
13397    /// <p><b>Notifier signal:</b></p>
13398    /// <div class="table"><table class="alignedsummary">
13399    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>runTypeChanged</b></span>()</td></tr>
13400    /// </tbody></table></div></div>
13401    #[inline(always)]
13402    #[cfg_attr(
13403        feature = "ritual_rustdoc_nightly",
13404        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
13405    )]
13406    #[cfg(any(
13407        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
13408        feature = "ritual_rustdoc"
13409    ))]
13410    pub unsafe fn run_type_changed(&self) {
13411        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_runTypeChanged(
13412            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13413        )
13414    }
13415
13416    /// <p>Specifies whether the compute command should be performed every frame or manually triggered.</p>
13417    ///
13418    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QComputeCommand::setRunType(Qt3DRender::QComputeCommand::RunType runType)```</span>.
13419    ///
13420    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#runType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies whether the compute command should be performed every frame or manually triggered.</p>
13421    /// <p>If set to Continuous, Compute command is executed everyframe. This is the default.</p>
13422    /// <p>If set to Manual CompouteCommand is executed for a given number of frames and then the component disables itself.</p>
13423    /// <p><b>Access functions:</b></p>
13424    /// <div class="table"><table class="alignedsummary">
13425    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QComputeCommand::RunType </td><td class="memItemRight bottomAlign"><span class="name"><b>runType</b></span>() const</td></tr>
13426    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRunType</b></span>(Qt3DRender::QComputeCommand::RunType <i>runType</i>)</td></tr>
13427    /// </tbody></table></div>
13428    /// <p><b>Notifier signal:</b></p>
13429    /// <div class="table"><table class="alignedsummary">
13430    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>runTypeChanged</b></span>()</td></tr>
13431    /// </tbody></table></div></div>
13432    #[inline(always)]
13433    #[cfg_attr(
13434        feature = "ritual_rustdoc_nightly",
13435        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
13436    )]
13437    #[cfg(any(
13438        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
13439        feature = "ritual_rustdoc"
13440    ))]
13441    pub unsafe fn set_run_type(&self, run_type: crate::q_compute_command::RunType) {
13442        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_setRunType(
13443            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13444            run_type,
13445        )
13446    }
13447
13448    /// <p>Sets the workgroup for the first dimension to <i>workGroupX</i>.</p>
13449    ///
13450    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QComputeCommand::setWorkGroupX(int workGroupX)```</span>.
13451    ///
13452    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupX">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the workgroup for the first dimension to <i>workGroupX</i>.</p>
13453    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupX-prop">workGroupX</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupX-prop">workGroupX</a>().</p></div>
13454    #[inline(always)]
13455    pub unsafe fn set_work_group_x(&self, work_group_x: ::std::os::raw::c_int) {
13456        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_setWorkGroupX(
13457            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13458            work_group_x,
13459        )
13460    }
13461
13462    /// <p>Sets the workgroup for the second dimension to <i>workGroupY</i>.</p>
13463    ///
13464    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QComputeCommand::setWorkGroupY(int workGroupY)```</span>.
13465    ///
13466    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupY">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the workgroup for the second dimension to <i>workGroupY</i>.</p>
13467    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupY-prop">workGroupY</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupY-prop">workGroupY</a>().</p></div>
13468    #[inline(always)]
13469    pub unsafe fn set_work_group_y(&self, work_group_y: ::std::os::raw::c_int) {
13470        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_setWorkGroupY(
13471            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13472            work_group_y,
13473        )
13474    }
13475
13476    /// <p>Sets the workgroup for the third dimension to <i>workGroupZ</i>.</p>
13477    ///
13478    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QComputeCommand::setWorkGroupZ(int workGroupZ)```</span>.
13479    ///
13480    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupZ">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the workgroup for the third dimension to <i>workGroupZ</i>.</p>
13481    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupZ-prop">workGroupZ</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupZ-prop">workGroupZ</a>().</p></div>
13482    #[inline(always)]
13483    pub unsafe fn set_work_group_z(&self, work_group_z: ::std::os::raw::c_int) {
13484        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_setWorkGroupZ(
13485            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13486            work_group_z,
13487        )
13488    }
13489
13490    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
13491    #[inline(always)]
13492    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
13493        let ffi_result =
13494            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_staticMetaObject() };
13495        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
13496            .expect("attempted to construct a null Ref")
13497    }
13498
13499    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QComputeCommand::tr(const char* s, const char* c, int n)```</span>.
13500    #[inline(always)]
13501    pub unsafe fn tr(
13502        s: *const ::std::os::raw::c_char,
13503        c: *const ::std::os::raw::c_char,
13504        n: ::std::os::raw::c_int,
13505    ) -> ::cpp_core::CppBox<::qt_core::QString> {
13506        let ffi_result =
13507            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_tr(s, c, n) };
13508        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13509    }
13510
13511    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QComputeCommand::trUtf8(const char* s, const char* c, int n)```</span>.
13512    #[inline(always)]
13513    pub unsafe fn tr_utf8(
13514        s: *const ::std::os::raw::c_char,
13515        c: *const ::std::os::raw::c_char,
13516        n: ::std::os::raw::c_int,
13517    ) -> ::cpp_core::CppBox<::qt_core::QString> {
13518        let ffi_result =
13519            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_trUtf8(s, c, n) };
13520        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13521    }
13522
13523    /// <p>When the run type is set to Manual, calling trigger will make the compute command be executed for the next <i>frameCount</i> frames. Upon completion of the execution, the enabled property will be set to false.</p>
13524    ///
13525    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QComputeCommand::trigger(int frameCount = …)```</span>.
13526    ///
13527    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#trigger">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>When the run type is set to Manual, calling trigger will make the compute command be executed for the next <i>frameCount</i> frames. Upon completion of the execution, the enabled property will be set to false.</p></div>
13528    #[inline(always)]
13529    #[cfg_attr(
13530        feature = "ritual_rustdoc_nightly",
13531        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
13532    )]
13533    #[cfg(any(
13534        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
13535        feature = "ritual_rustdoc"
13536    ))]
13537    pub unsafe fn trigger_1a(&self, frame_count: ::std::os::raw::c_int) {
13538        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_trigger(
13539            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13540            frame_count,
13541        )
13542    }
13543
13544    /// <p>When the run type is set to Manual, calling trigger will make the compute command be executed for the next <i>frameCount</i> frames. Upon completion of the execution, the enabled property will be set to false. The size of the workgroup previously set will be overridden with <i>workGroupX</i>, <i>workGroupY</i>, <i>workGroupZ</i>.</p>
13545    ///
13546    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QComputeCommand::trigger(int workGroupX, int workGroupY, int workGroupZ, int frameCount = …)```</span>.
13547    ///
13548    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#trigger-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>When the run type is set to Manual, calling trigger will make the compute command be executed for the next <i>frameCount</i> frames. Upon completion of the execution, the enabled property will be set to false. The size of the workgroup previously set will be overridden with <i>workGroupX</i>, <i>workGroupY</i>, <i>workGroupZ</i>.</p></div>
13549    #[inline(always)]
13550    #[cfg_attr(
13551        feature = "ritual_rustdoc_nightly",
13552        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
13553    )]
13554    #[cfg(any(
13555        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
13556        feature = "ritual_rustdoc"
13557    ))]
13558    pub unsafe fn trigger_4a(
13559        &self,
13560        work_group_x: ::std::os::raw::c_int,
13561        work_group_y: ::std::os::raw::c_int,
13562        work_group_z: ::std::os::raw::c_int,
13563        frame_count: ::std::os::raw::c_int,
13564    ) {
13565        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_trigger1(
13566            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13567            work_group_x,
13568            work_group_y,
13569            work_group_z,
13570            frame_count,
13571        )
13572    }
13573
13574    /// <p>When the run type is set to Manual, calling trigger will make the compute command be executed for the next <i>frameCount</i> frames. Upon completion of the execution, the enabled property will be set to false.</p>
13575    ///
13576    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QComputeCommand::trigger()```</span>.
13577    ///
13578    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#trigger">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>When the run type is set to Manual, calling trigger will make the compute command be executed for the next <i>frameCount</i> frames. Upon completion of the execution, the enabled property will be set to false.</p></div>
13579    #[inline(always)]
13580    #[cfg_attr(
13581        feature = "ritual_rustdoc_nightly",
13582        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
13583    )]
13584    #[cfg(any(
13585        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
13586        feature = "ritual_rustdoc"
13587    ))]
13588    pub unsafe fn trigger_0a(&self) {
13589        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_trigger2(
13590            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13591        )
13592    }
13593
13594    /// <p>When the run type is set to Manual, calling trigger will make the compute command be executed for the next <i>frameCount</i> frames. Upon completion of the execution, the enabled property will be set to false. The size of the workgroup previously set will be overridden with <i>workGroupX</i>, <i>workGroupY</i>, <i>workGroupZ</i>.</p>
13595    ///
13596    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QComputeCommand::trigger(int workGroupX, int workGroupY, int workGroupZ)```</span>.
13597    ///
13598    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#trigger-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>When the run type is set to Manual, calling trigger will make the compute command be executed for the next <i>frameCount</i> frames. Upon completion of the execution, the enabled property will be set to false. The size of the workgroup previously set will be overridden with <i>workGroupX</i>, <i>workGroupY</i>, <i>workGroupZ</i>.</p></div>
13599    #[inline(always)]
13600    #[cfg_attr(
13601        feature = "ritual_rustdoc_nightly",
13602        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
13603    )]
13604    #[cfg(any(
13605        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
13606        feature = "ritual_rustdoc"
13607    ))]
13608    pub unsafe fn trigger_3a(
13609        &self,
13610        work_group_x: ::std::os::raw::c_int,
13611        work_group_y: ::std::os::raw::c_int,
13612        work_group_z: ::std::os::raw::c_int,
13613    ) {
13614        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_trigger3(
13615            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
13616            work_group_x,
13617            work_group_y,
13618            work_group_z,
13619        )
13620    }
13621
13622    /// <p>Specifies X workgroup size.</p>
13623    ///
13624    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QComputeCommand::workGroupX() const```</span>.
13625    ///
13626    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupX-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies X workgroup size.</p>
13627    /// <p><b>Access functions:</b></p>
13628    /// <div class="table"><table class="alignedsummary">
13629    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupX</b></span>() const</td></tr>
13630    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupX">setWorkGroupX</a></b></span>(int <i>workGroupX</i>)</td></tr>
13631    /// </tbody></table></div>
13632    /// <p><b>Notifier signal:</b></p>
13633    /// <div class="table"><table class="alignedsummary">
13634    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupXChanged</b></span>()</td></tr>
13635    /// </tbody></table></div></div>
13636    #[inline(always)]
13637    pub unsafe fn work_group_x(&self) -> ::std::os::raw::c_int {
13638        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_workGroupX(
13639            self as *const crate::QComputeCommand,
13640        )
13641    }
13642
13643    /// <p>Specifies Y workgroup size.</p>
13644    ///
13645    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QComputeCommand::workGroupY() const```</span>.
13646    ///
13647    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupY-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Y workgroup size.</p>
13648    /// <p><b>Access functions:</b></p>
13649    /// <div class="table"><table class="alignedsummary">
13650    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupY</b></span>() const</td></tr>
13651    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupY">setWorkGroupY</a></b></span>(int <i>workGroupY</i>)</td></tr>
13652    /// </tbody></table></div>
13653    /// <p><b>Notifier signal:</b></p>
13654    /// <div class="table"><table class="alignedsummary">
13655    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupYChanged</b></span>()</td></tr>
13656    /// </tbody></table></div></div>
13657    #[inline(always)]
13658    pub unsafe fn work_group_y(&self) -> ::std::os::raw::c_int {
13659        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_workGroupY(
13660            self as *const crate::QComputeCommand,
13661        )
13662    }
13663
13664    /// <p>Specifies Z workgroup size.</p>
13665    ///
13666    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QComputeCommand::workGroupZ() const```</span>.
13667    ///
13668    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#workGroupZ-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Z workgroup size.</p>
13669    /// <p><b>Access functions:</b></p>
13670    /// <div class="table"><table class="alignedsummary">
13671    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZ</b></span>() const</td></tr>
13672    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html#setWorkGroupZ">setWorkGroupZ</a></b></span>(int <i>workGroupZ</i>)</td></tr>
13673    /// </tbody></table></div>
13674    /// <p><b>Notifier signal:</b></p>
13675    /// <div class="table"><table class="alignedsummary">
13676    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZChanged</b></span>()</td></tr>
13677    /// </tbody></table></div></div>
13678    #[inline(always)]
13679    pub unsafe fn work_group_z(&self) -> ::std::os::raw::c_int {
13680        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_workGroupZ(
13681            self as *const crate::QComputeCommand,
13682        )
13683    }
13684}
13685
13686pub mod q_cull_face {
13687    //! C++ type: <span style='color: green;'>```Qt3DRender::QCullFace```</span>
13688
13689    /// C++ enum: <span style='color: green;'>```Qt3DRender::QCullFace::CullingMode```</span>.
13690    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
13691    #[repr(transparent)]
13692    pub struct CullingMode(::std::os::raw::c_int);
13693
13694    impl From<::std::os::raw::c_int> for CullingMode {
13695        fn from(value: ::std::os::raw::c_int) -> Self {
13696            CullingMode(value)
13697        }
13698    }
13699
13700    impl From<CullingMode> for ::std::os::raw::c_int {
13701        fn from(value: CullingMode) -> Self {
13702            value.0
13703        }
13704    }
13705
13706    impl CullingMode {
13707        pub fn to_int(&self) -> ::std::os::raw::c_int {
13708            self.0
13709        }
13710    }
13711
13712    impl CullingMode {
13713        /// C++ enum variant: <span style='color: green;'>```NoCulling = 0```</span>
13714        #[allow(non_upper_case_globals)]
13715        pub const NoCulling: crate::q_cull_face::CullingMode = crate::q_cull_face::CullingMode(0);
13716        /// C++ enum variant: <span style='color: green;'>```Front = 1028```</span>
13717        #[allow(non_upper_case_globals)]
13718        pub const Front: crate::q_cull_face::CullingMode = crate::q_cull_face::CullingMode(1028);
13719        /// C++ enum variant: <span style='color: green;'>```Back = 1029```</span>
13720        #[allow(non_upper_case_globals)]
13721        pub const Back: crate::q_cull_face::CullingMode = crate::q_cull_face::CullingMode(1029);
13722        /// C++ enum variant: <span style='color: green;'>```FrontAndBack = 1032```</span>
13723        #[allow(non_upper_case_globals)]
13724        pub const FrontAndBack: crate::q_cull_face::CullingMode =
13725            crate::q_cull_face::CullingMode(1032);
13726    }
13727}
13728/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a> class specifies whether front or back face culling is enabled.</p>
13729///
13730/// C++ class: <span style='color: green;'>```Qt3DRender::QCullFace```</span>.
13731///
13732/// <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a> class specifies whether front or back face culling is enabled.</p>
13733/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a> sets whether the front or back facets are culled. Facets include triangles, quadrilaterals, polygons and rectangles.</p>
13734/// <p>It can be added by calling the addRenderState() method on a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>:</p>
13735/// <pre class="cpp">
13736///
13737///   <span class="comment">// using namespace Qt3DRender;</span>
13738///
13739///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>renderPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
13740///
13741///   <span class="comment">// Create a front face culling render state</span>
13742///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span> <span class="operator">*</span>cullFront <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span>();
13743///   cullFront<span class="operator">-</span><span class="operator">&gt;</span>setMode(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span><span class="operator">::</span>Front);
13744///
13745///   <span class="comment">// Add the render state to the render pass</span>
13746///   renderPass<span class="operator">-</span><span class="operator">&gt;</span>addRenderState(cullFront);
13747///
13748/// </pre>
13749/// <p>Or by calling the addRenderState() method on a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a>:</p>
13750/// <pre class="cpp">
13751///
13752///   <span class="comment">// using namespace Qt3DRender;</span>
13753///
13754///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a></span> <span class="operator">*</span>renderStateSet <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a></span>();
13755///
13756///   <span class="comment">// Create a front face culling render state</span>
13757///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span> <span class="operator">*</span>cullFront <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span>();
13758///   cullFront<span class="operator">-</span><span class="operator">&gt;</span>setMode(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span><span class="operator">::</span>Front);
13759///
13760///   <span class="comment">// Add the render state to the render pass</span>
13761///   renderStateSet<span class="operator">-</span><span class="operator">&gt;</span>addRenderState(cullFront);
13762///
13763/// </pre></div>
13764#[repr(C)]
13765pub struct QCullFace {
13766    _unused: u8,
13767}
13768impl QCullFace {
13769    /// <p>Holds the culling mode used by <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>. Default is set to <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>.Back.</p>
13770    ///
13771    /// Returns a built-in Qt slot `Qt3DRender::QCullFace::setMode` that can be passed to `qt_core::Signal::connect`.
13772    ///
13773    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#mode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the culling mode used by <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>. Default is set to <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>.Back.</p>
13774    /// <p><b>Access functions:</b></p>
13775    /// <div class="table"><table class="alignedsummary">
13776    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> CullingMode </td><td class="memItemRight bottomAlign"><span class="name"><b>mode</b></span>() const</td></tr>
13777    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMode</b></span>(CullingMode <i>mode</i>)</td></tr>
13778    /// </tbody></table></div>
13779    /// <p><b>Notifier signal:</b></p>
13780    /// <div class="table"><table class="alignedsummary">
13781    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>modeChanged</b></span>(CullingMode <i>mode</i>)</td></tr>
13782    /// </tbody></table></div></div>
13783    #[inline(always)]
13784    pub fn slot_set_mode(&self) -> ::qt_core::Receiver<(crate::q_cull_face::CullingMode,)> {
13785        unsafe {
13786            ::qt_core::Receiver::new(
13787                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
13788                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
13789                    b"1setMode(Qt3DRender::QCullFace::CullingMode)\0",
13790                ),
13791            )
13792        }
13793    }
13794
13795    /// <p>Holds the culling mode used by <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>. Default is set to <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>.Back.</p>
13796    ///
13797    /// Returns a built-in Qt signal `Qt3DRender::QCullFace::modeChanged` that can be passed to `qt_core::Signal::connect`.
13798    ///
13799    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#mode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the culling mode used by <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>. Default is set to <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>.Back.</p>
13800    /// <p><b>Access functions:</b></p>
13801    /// <div class="table"><table class="alignedsummary">
13802    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> CullingMode </td><td class="memItemRight bottomAlign"><span class="name"><b>mode</b></span>() const</td></tr>
13803    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMode</b></span>(CullingMode <i>mode</i>)</td></tr>
13804    /// </tbody></table></div>
13805    /// <p><b>Notifier signal:</b></p>
13806    /// <div class="table"><table class="alignedsummary">
13807    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>modeChanged</b></span>(CullingMode <i>mode</i>)</td></tr>
13808    /// </tbody></table></div></div>
13809    #[inline(always)]
13810    pub fn mode_changed(&self) -> ::qt_core::Signal<(crate::q_cull_face::CullingMode,)> {
13811        unsafe {
13812            ::qt_core::Signal::new(
13813                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
13814                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
13815                    b"2modeChanged(Qt3DRender::QCullFace::CullingMode)\0",
13816                ),
13817            )
13818        }
13819    }
13820
13821    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QCullFace::metaObject() const```</span>.
13822    #[inline(always)]
13823    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
13824        let ffi_result = {
13825            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_metaObject(
13826                self as *const crate::QCullFace,
13827            )
13828        };
13829        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
13830    }
13831
13832    /// <p>Holds the culling mode used by <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>. Default is set to <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>.Back.</p>
13833    ///
13834    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCullFace::CullingMode Qt3DRender::QCullFace::mode() const```</span>.
13835    ///
13836    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#mode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the culling mode used by <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>. Default is set to <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>.Back.</p>
13837    /// <p><b>Access functions:</b></p>
13838    /// <div class="table"><table class="alignedsummary">
13839    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> CullingMode </td><td class="memItemRight bottomAlign"><span class="name"><b>mode</b></span>() const</td></tr>
13840    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMode</b></span>(CullingMode <i>mode</i>)</td></tr>
13841    /// </tbody></table></div>
13842    /// <p><b>Notifier signal:</b></p>
13843    /// <div class="table"><table class="alignedsummary">
13844    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>modeChanged</b></span>(CullingMode <i>mode</i>)</td></tr>
13845    /// </tbody></table></div></div>
13846    #[inline(always)]
13847    pub unsafe fn mode(&self) -> crate::q_cull_face::CullingMode {
13848        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_mode(
13849            self as *const crate::QCullFace,
13850        )
13851    }
13852
13853    /// <p>Default constructs an instance of QCullFace.</p>
13854    ///
13855    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QCullFace::QCullFace(Qt3DCore::QNode* parent = …)```</span>.
13856    ///
13857    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QCullFace.</p></div>
13858    #[inline(always)]
13859    pub unsafe fn new_1a(
13860        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
13861    ) -> ::qt_core::QBox<crate::QCullFace> {
13862        let ffi_result = {
13863            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_QCullFace(
13864                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
13865                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
13866            )
13867        };
13868        ::qt_core::QBox::from_raw(ffi_result)
13869    }
13870
13871    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a> class specifies whether front or back face culling is enabled.</p>
13872    ///
13873    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QCullFace::QCullFace()```</span>.
13874    ///
13875    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a> class specifies whether front or back face culling is enabled.</p>
13876    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a> sets whether the front or back facets are culled. Facets include triangles, quadrilaterals, polygons and rectangles.</p>
13877    /// <p>It can be added by calling the addRenderState() method on a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>:</p>
13878    /// <pre class="cpp">
13879    ///
13880    ///   <span class="comment">// using namespace Qt3DRender;</span>
13881    ///
13882    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>renderPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
13883    ///
13884    ///   <span class="comment">// Create a front face culling render state</span>
13885    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span> <span class="operator">*</span>cullFront <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span>();
13886    ///   cullFront<span class="operator">-</span><span class="operator">&gt;</span>setMode(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span><span class="operator">::</span>Front);
13887    ///
13888    ///   <span class="comment">// Add the render state to the render pass</span>
13889    ///   renderPass<span class="operator">-</span><span class="operator">&gt;</span>addRenderState(cullFront);
13890    ///
13891    /// </pre>
13892    /// <p>Or by calling the addRenderState() method on a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a>:</p>
13893    /// <pre class="cpp">
13894    ///
13895    ///   <span class="comment">// using namespace Qt3DRender;</span>
13896    ///
13897    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a></span> <span class="operator">*</span>renderStateSet <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a></span>();
13898    ///
13899    ///   <span class="comment">// Create a front face culling render state</span>
13900    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span> <span class="operator">*</span>cullFront <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span>();
13901    ///   cullFront<span class="operator">-</span><span class="operator">&gt;</span>setMode(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#QCullFace">QCullFace</a></span><span class="operator">::</span>Front);
13902    ///
13903    ///   <span class="comment">// Add the render state to the render pass</span>
13904    ///   renderStateSet<span class="operator">-</span><span class="operator">&gt;</span>addRenderState(cullFront);
13905    ///
13906    /// </pre></div>
13907    #[inline(always)]
13908    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QCullFace> {
13909        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_QCullFace1() };
13910        ::qt_core::QBox::from_raw(ffi_result)
13911    }
13912
13913    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QCullFace::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
13914    #[inline(always)]
13915    pub unsafe fn qt_metacall(
13916        &self,
13917        arg1: ::qt_core::q_meta_object::Call,
13918        arg2: ::std::os::raw::c_int,
13919        arg3: *mut *mut ::std::ffi::c_void,
13920    ) -> ::std::os::raw::c_int {
13921        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_qt_metacall(
13922            self as *const crate::QCullFace as *mut crate::QCullFace,
13923            arg1,
13924            arg2,
13925            arg3,
13926        )
13927    }
13928
13929    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QCullFace::qt_metacast(const char* arg1)```</span>.
13930    #[inline(always)]
13931    pub unsafe fn qt_metacast(
13932        &self,
13933        arg1: *const ::std::os::raw::c_char,
13934    ) -> *mut ::std::ffi::c_void {
13935        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_qt_metacast(
13936            self as *const crate::QCullFace as *mut crate::QCullFace,
13937            arg1,
13938        )
13939    }
13940
13941    /// <p>Holds the culling mode used by <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>. Default is set to <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>.Back.</p>
13942    ///
13943    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QCullFace::setMode(Qt3DRender::QCullFace::CullingMode mode)```</span>.
13944    ///
13945    /// <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html#mode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the culling mode used by <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>. Default is set to <a href="http://doc.qt.io/qt-5/qt3drender-qcullface.html">QCullFace</a>.Back.</p>
13946    /// <p><b>Access functions:</b></p>
13947    /// <div class="table"><table class="alignedsummary">
13948    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> CullingMode </td><td class="memItemRight bottomAlign"><span class="name"><b>mode</b></span>() const</td></tr>
13949    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMode</b></span>(CullingMode <i>mode</i>)</td></tr>
13950    /// </tbody></table></div>
13951    /// <p><b>Notifier signal:</b></p>
13952    /// <div class="table"><table class="alignedsummary">
13953    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>modeChanged</b></span>(CullingMode <i>mode</i>)</td></tr>
13954    /// </tbody></table></div></div>
13955    #[inline(always)]
13956    pub unsafe fn set_mode(&self, mode: crate::q_cull_face::CullingMode) {
13957        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_setMode(
13958            self as *const crate::QCullFace as *mut crate::QCullFace,
13959            mode,
13960        )
13961    }
13962
13963    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
13964    #[inline(always)]
13965    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
13966        let ffi_result =
13967            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_staticMetaObject() };
13968        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
13969            .expect("attempted to construct a null Ref")
13970    }
13971
13972    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QCullFace::tr(const char* s, const char* c, int n)```</span>.
13973    #[inline(always)]
13974    pub unsafe fn tr(
13975        s: *const ::std::os::raw::c_char,
13976        c: *const ::std::os::raw::c_char,
13977        n: ::std::os::raw::c_int,
13978    ) -> ::cpp_core::CppBox<::qt_core::QString> {
13979        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_tr(s, c, n) };
13980        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13981    }
13982
13983    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QCullFace::trUtf8(const char* s, const char* c, int n)```</span>.
13984    #[inline(always)]
13985    pub unsafe fn tr_utf8(
13986        s: *const ::std::os::raw::c_char,
13987        c: *const ::std::os::raw::c_char,
13988        n: ::std::os::raw::c_int,
13989    ) -> ::cpp_core::CppBox<::qt_core::QString> {
13990        let ffi_result =
13991            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_trUtf8(s, c, n) };
13992        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
13993    }
13994}
13995
13996pub mod q_depth_test {
13997    //! C++ type: <span style='color: green;'>```Qt3DRender::QDepthTest```</span>
13998
13999    /// C++ enum: <span style='color: green;'>```Qt3DRender::QDepthTest::DepthFunction```</span>.
14000    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
14001    #[repr(transparent)]
14002    pub struct DepthFunction(::std::os::raw::c_int);
14003
14004    impl From<::std::os::raw::c_int> for DepthFunction {
14005        fn from(value: ::std::os::raw::c_int) -> Self {
14006            DepthFunction(value)
14007        }
14008    }
14009
14010    impl From<DepthFunction> for ::std::os::raw::c_int {
14011        fn from(value: DepthFunction) -> Self {
14012            value.0
14013        }
14014    }
14015
14016    impl DepthFunction {
14017        pub fn to_int(&self) -> ::std::os::raw::c_int {
14018            self.0
14019        }
14020    }
14021
14022    impl DepthFunction {
14023        /// C++ enum variant: <span style='color: green;'>```Never = 512```</span>
14024        #[allow(non_upper_case_globals)]
14025        pub const Never: crate::q_depth_test::DepthFunction =
14026            crate::q_depth_test::DepthFunction(512);
14027        /// C++ enum variant: <span style='color: green;'>```Always = 519```</span>
14028        #[allow(non_upper_case_globals)]
14029        pub const Always: crate::q_depth_test::DepthFunction =
14030            crate::q_depth_test::DepthFunction(519);
14031        /// C++ enum variant: <span style='color: green;'>```Less = 513```</span>
14032        #[allow(non_upper_case_globals)]
14033        pub const Less: crate::q_depth_test::DepthFunction =
14034            crate::q_depth_test::DepthFunction(513);
14035        /// C++ enum variant: <span style='color: green;'>```LessOrEqual = 515```</span>
14036        #[allow(non_upper_case_globals)]
14037        pub const LessOrEqual: crate::q_depth_test::DepthFunction =
14038            crate::q_depth_test::DepthFunction(515);
14039        /// C++ enum variant: <span style='color: green;'>```Equal = 514```</span>
14040        #[allow(non_upper_case_globals)]
14041        pub const Equal: crate::q_depth_test::DepthFunction =
14042            crate::q_depth_test::DepthFunction(514);
14043        /// C++ enum variant: <span style='color: green;'>```GreaterOrEqual = 518```</span>
14044        #[allow(non_upper_case_globals)]
14045        pub const GreaterOrEqual: crate::q_depth_test::DepthFunction =
14046            crate::q_depth_test::DepthFunction(518);
14047        /// C++ enum variant: <span style='color: green;'>```Greater = 516```</span>
14048        #[allow(non_upper_case_globals)]
14049        pub const Greater: crate::q_depth_test::DepthFunction =
14050            crate::q_depth_test::DepthFunction(516);
14051        /// C++ enum variant: <span style='color: green;'>```NotEqual = 517```</span>
14052        #[allow(non_upper_case_globals)]
14053        pub const NotEqual: crate::q_depth_test::DepthFunction =
14054            crate::q_depth_test::DepthFunction(517);
14055    }
14056}
14057/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a> class tests the fragment shader's depth value against the depth of a sample being written to.</p>
14058///
14059/// C++ class: <span style='color: green;'>```Qt3DRender::QDepthTest```</span>.
14060///
14061/// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a> class tests the fragment shader's depth value against the depth of a sample being written to.</p>
14062/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a> class is used to enable depth testing with a given depth test function. The depth test enables writing fragment color values when the depth test passes, and reject fragments which fail the test. The depth test uses the depth function to test the fragments depth value to the value against z-buffer. If the underlying surface does not have z-buffer, then <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a> does nothing.</p></div>
14063#[repr(C)]
14064pub struct QDepthTest {
14065    _unused: u8,
14066}
14067impl QDepthTest {
14068    /// <p>Holds the current function used by depth test. The default is Never.</p>
14069    ///
14070    /// Returns a built-in Qt slot `Qt3DRender::QDepthTest::setDepthFunction` that can be passed to `qt_core::Signal::connect`.
14071    ///
14072    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html#depthFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current function used by depth test. The default is Never.</p>
14073    /// <p><b>Access functions:</b></p>
14074    /// <div class="table"><table class="alignedsummary">
14075    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> DepthFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>depthFunction</b></span>() const</td></tr>
14076    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthFunction</b></span>(DepthFunction <i>depthFunction</i>)</td></tr>
14077    /// </tbody></table></div>
14078    /// <p><b>Notifier signal:</b></p>
14079    /// <div class="table"><table class="alignedsummary">
14080    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthFunctionChanged</b></span>(DepthFunction <i>depthFunction</i>)</td></tr>
14081    /// </tbody></table></div></div>
14082    #[inline(always)]
14083    pub fn slot_set_depth_function(
14084        &self,
14085    ) -> ::qt_core::Receiver<(crate::q_depth_test::DepthFunction,)> {
14086        unsafe {
14087            ::qt_core::Receiver::new(
14088                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14089                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
14090                    b"1setDepthFunction(Qt3DRender::QDepthTest::DepthFunction)\0",
14091                ),
14092            )
14093        }
14094    }
14095
14096    /// <p>Holds the current function used by depth test. The default is Never.</p>
14097    ///
14098    /// Returns a built-in Qt signal `Qt3DRender::QDepthTest::depthFunctionChanged` that can be passed to `qt_core::Signal::connect`.
14099    ///
14100    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html#depthFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current function used by depth test. The default is Never.</p>
14101    /// <p><b>Access functions:</b></p>
14102    /// <div class="table"><table class="alignedsummary">
14103    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> DepthFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>depthFunction</b></span>() const</td></tr>
14104    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthFunction</b></span>(DepthFunction <i>depthFunction</i>)</td></tr>
14105    /// </tbody></table></div>
14106    /// <p><b>Notifier signal:</b></p>
14107    /// <div class="table"><table class="alignedsummary">
14108    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthFunctionChanged</b></span>(DepthFunction <i>depthFunction</i>)</td></tr>
14109    /// </tbody></table></div></div>
14110    #[inline(always)]
14111    pub fn depth_function_changed(
14112        &self,
14113    ) -> ::qt_core::Signal<(crate::q_depth_test::DepthFunction,)> {
14114        unsafe {
14115            ::qt_core::Signal::new(
14116                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14117                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
14118                    b"2depthFunctionChanged(Qt3DRender::QDepthTest::DepthFunction)\0",
14119                ),
14120            )
14121        }
14122    }
14123
14124    /// <p>Holds the current function used by depth test. The default is Never.</p>
14125    ///
14126    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthTest::DepthFunction Qt3DRender::QDepthTest::depthFunction() const```</span>.
14127    ///
14128    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html#depthFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current function used by depth test. The default is Never.</p>
14129    /// <p><b>Access functions:</b></p>
14130    /// <div class="table"><table class="alignedsummary">
14131    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> DepthFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>depthFunction</b></span>() const</td></tr>
14132    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthFunction</b></span>(DepthFunction <i>depthFunction</i>)</td></tr>
14133    /// </tbody></table></div>
14134    /// <p><b>Notifier signal:</b></p>
14135    /// <div class="table"><table class="alignedsummary">
14136    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthFunctionChanged</b></span>(DepthFunction <i>depthFunction</i>)</td></tr>
14137    /// </tbody></table></div></div>
14138    #[inline(always)]
14139    pub unsafe fn depth_function(&self) -> crate::q_depth_test::DepthFunction {
14140        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_depthFunction(
14141            self as *const crate::QDepthTest,
14142        )
14143    }
14144
14145    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QDepthTest::metaObject() const```</span>.
14146    #[inline(always)]
14147    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
14148        let ffi_result = {
14149            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_metaObject(
14150                self as *const crate::QDepthTest,
14151            )
14152        };
14153        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
14154    }
14155
14156    /// <p>Default constructs an instance of QDepthTest.</p>
14157    ///
14158    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDepthTest::QDepthTest(Qt3DCore::QNode* parent = …)```</span>.
14159    ///
14160    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html#QDepthTest">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QDepthTest.</p></div>
14161    #[inline(always)]
14162    pub unsafe fn new_1a(
14163        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
14164    ) -> ::qt_core::QBox<crate::QDepthTest> {
14165        let ffi_result = {
14166            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_QDepthTest(
14167                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
14168                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
14169            )
14170        };
14171        ::qt_core::QBox::from_raw(ffi_result)
14172    }
14173
14174    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a> class tests the fragment shader's depth value against the depth of a sample being written to.</p>
14175    ///
14176    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDepthTest::QDepthTest()```</span>.
14177    ///
14178    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a> class tests the fragment shader's depth value against the depth of a sample being written to.</p>
14179    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a> class is used to enable depth testing with a given depth test function. The depth test enables writing fragment color values when the depth test passes, and reject fragments which fail the test. The depth test uses the depth function to test the fragments depth value to the value against z-buffer. If the underlying surface does not have z-buffer, then <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a> does nothing.</p></div>
14180    #[inline(always)]
14181    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QDepthTest> {
14182        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_QDepthTest1() };
14183        ::qt_core::QBox::from_raw(ffi_result)
14184    }
14185
14186    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QDepthTest::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
14187    #[inline(always)]
14188    pub unsafe fn qt_metacall(
14189        &self,
14190        arg1: ::qt_core::q_meta_object::Call,
14191        arg2: ::std::os::raw::c_int,
14192        arg3: *mut *mut ::std::ffi::c_void,
14193    ) -> ::std::os::raw::c_int {
14194        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_qt_metacall(
14195            self as *const crate::QDepthTest as *mut crate::QDepthTest,
14196            arg1,
14197            arg2,
14198            arg3,
14199        )
14200    }
14201
14202    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QDepthTest::qt_metacast(const char* arg1)```</span>.
14203    #[inline(always)]
14204    pub unsafe fn qt_metacast(
14205        &self,
14206        arg1: *const ::std::os::raw::c_char,
14207    ) -> *mut ::std::ffi::c_void {
14208        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_qt_metacast(
14209            self as *const crate::QDepthTest as *mut crate::QDepthTest,
14210            arg1,
14211        )
14212    }
14213
14214    /// <p>Holds the current function used by depth test. The default is Never.</p>
14215    ///
14216    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QDepthTest::setDepthFunction(Qt3DRender::QDepthTest::DepthFunction depthFunction)```</span>.
14217    ///
14218    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html#depthFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current function used by depth test. The default is Never.</p>
14219    /// <p><b>Access functions:</b></p>
14220    /// <div class="table"><table class="alignedsummary">
14221    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> DepthFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>depthFunction</b></span>() const</td></tr>
14222    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthFunction</b></span>(DepthFunction <i>depthFunction</i>)</td></tr>
14223    /// </tbody></table></div>
14224    /// <p><b>Notifier signal:</b></p>
14225    /// <div class="table"><table class="alignedsummary">
14226    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthFunctionChanged</b></span>(DepthFunction <i>depthFunction</i>)</td></tr>
14227    /// </tbody></table></div></div>
14228    #[inline(always)]
14229    pub unsafe fn set_depth_function(&self, depth_function: crate::q_depth_test::DepthFunction) {
14230        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_setDepthFunction(
14231            self as *const crate::QDepthTest as *mut crate::QDepthTest,
14232            depth_function,
14233        )
14234    }
14235
14236    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
14237    #[inline(always)]
14238    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
14239        let ffi_result =
14240            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_staticMetaObject() };
14241        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
14242            .expect("attempted to construct a null Ref")
14243    }
14244
14245    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDepthTest::tr(const char* s, const char* c, int n)```</span>.
14246    #[inline(always)]
14247    pub unsafe fn tr(
14248        s: *const ::std::os::raw::c_char,
14249        c: *const ::std::os::raw::c_char,
14250        n: ::std::os::raw::c_int,
14251    ) -> ::cpp_core::CppBox<::qt_core::QString> {
14252        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_tr(s, c, n) };
14253        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14254    }
14255
14256    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDepthTest::trUtf8(const char* s, const char* c, int n)```</span>.
14257    #[inline(always)]
14258    pub unsafe fn tr_utf8(
14259        s: *const ::std::os::raw::c_char,
14260        c: *const ::std::os::raw::c_char,
14261        n: ::std::os::raw::c_int,
14262    ) -> ::cpp_core::CppBox<::qt_core::QString> {
14263        let ffi_result =
14264            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_trUtf8(s, c, n) };
14265        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14266    }
14267}
14268
14269/// <p>Encapsulate a Directional Light object in a Qt 3D scene.</p>
14270///
14271/// C++ class: <span style='color: green;'>```Qt3DRender::QDirectionalLight```</span>.
14272///
14273/// <a href="http://doc.qt.io/qt-5/qt3drender-qdirectionallight.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulate a Directional Light object in a Qt 3D scene.</p></div>
14274#[repr(C)]
14275pub struct QDirectionalLight {
14276    _unused: u8,
14277}
14278impl QDirectionalLight {
14279    /// <p>Specifies the world direction of the directional light</p>
14280    ///
14281    /// Returns a built-in Qt slot `Qt3DRender::QDirectionalLight::setWorldDirection` that can be passed to `qt_core::Signal::connect`.
14282    ///
14283    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdirectionallight.html#worldDirection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the world direction of the directional light</p>
14284    /// <p><b>Access functions:</b></p>
14285    /// <div class="table"><table class="alignedsummary">
14286    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>worldDirection</b></span>() const</td></tr>
14287    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorldDirection</b></span>(const QVector3D &amp;<i>worldDirection</i>)</td></tr>
14288    /// </tbody></table></div>
14289    /// <p><b>Notifier signal:</b></p>
14290    /// <div class="table"><table class="alignedsummary">
14291    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>worldDirectionChanged</b></span>(const QVector3D &amp;<i>worldDirection</i>)</td></tr>
14292    /// </tbody></table></div></div>
14293    #[inline(always)]
14294    pub fn slot_set_world_direction(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QVector3D,)> {
14295        unsafe {
14296            ::qt_core::Receiver::new(
14297                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14298                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
14299                    b"1setWorldDirection(QVector3D const &)\0",
14300                ),
14301            )
14302        }
14303    }
14304
14305    /// <p>Specifies the world direction of the directional light</p>
14306    ///
14307    /// Returns a built-in Qt signal `Qt3DRender::QDirectionalLight::worldDirectionChanged` that can be passed to `qt_core::Signal::connect`.
14308    ///
14309    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdirectionallight.html#worldDirection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the world direction of the directional light</p>
14310    /// <p><b>Access functions:</b></p>
14311    /// <div class="table"><table class="alignedsummary">
14312    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>worldDirection</b></span>() const</td></tr>
14313    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorldDirection</b></span>(const QVector3D &amp;<i>worldDirection</i>)</td></tr>
14314    /// </tbody></table></div>
14315    /// <p><b>Notifier signal:</b></p>
14316    /// <div class="table"><table class="alignedsummary">
14317    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>worldDirectionChanged</b></span>(const QVector3D &amp;<i>worldDirection</i>)</td></tr>
14318    /// </tbody></table></div></div>
14319    #[inline(always)]
14320    pub fn world_direction_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
14321        unsafe {
14322            ::qt_core::Signal::new(
14323                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14324                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
14325                    b"2worldDirectionChanged(QVector3D const &)\0",
14326                ),
14327            )
14328        }
14329    }
14330
14331    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QDirectionalLight::metaObject() const```</span>.
14332    #[inline(always)]
14333    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
14334        let ffi_result = {
14335            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_metaObject(
14336                self as *const crate::QDirectionalLight,
14337            )
14338        };
14339        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
14340    }
14341
14342    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qdirectionallight.html">QDirectionalLight</a> with the specified <i>parent</i>.</p>
14343    ///
14344    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDirectionalLight::QDirectionalLight(Qt3DCore::QNode* parent = …)```</span>.
14345    ///
14346    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdirectionallight.html#QDirectionalLight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qdirectionallight.html">QDirectionalLight</a> with the specified <i>parent</i>.</p></div>
14347    #[inline(always)]
14348    pub unsafe fn new_1a(
14349        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
14350    ) -> ::qt_core::QBox<crate::QDirectionalLight> {
14351        let ffi_result = {
14352            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_QDirectionalLight(
14353                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
14354                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
14355            )
14356        };
14357        ::qt_core::QBox::from_raw(ffi_result)
14358    }
14359
14360    /// <p>Encapsulate a Directional Light object in a Qt 3D scene.</p>
14361    ///
14362    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDirectionalLight::QDirectionalLight()```</span>.
14363    ///
14364    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdirectionallight.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulate a Directional Light object in a Qt 3D scene.</p></div>
14365    #[inline(always)]
14366    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QDirectionalLight> {
14367        let ffi_result = {
14368            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_QDirectionalLight1()
14369        };
14370        ::qt_core::QBox::from_raw(ffi_result)
14371    }
14372
14373    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QDirectionalLight::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
14374    #[inline(always)]
14375    pub unsafe fn qt_metacall(
14376        &self,
14377        arg1: ::qt_core::q_meta_object::Call,
14378        arg2: ::std::os::raw::c_int,
14379        arg3: *mut *mut ::std::ffi::c_void,
14380    ) -> ::std::os::raw::c_int {
14381        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_qt_metacall(
14382            self as *const crate::QDirectionalLight as *mut crate::QDirectionalLight,
14383            arg1,
14384            arg2,
14385            arg3,
14386        )
14387    }
14388
14389    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QDirectionalLight::qt_metacast(const char* arg1)```</span>.
14390    #[inline(always)]
14391    pub unsafe fn qt_metacast(
14392        &self,
14393        arg1: *const ::std::os::raw::c_char,
14394    ) -> *mut ::std::ffi::c_void {
14395        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_qt_metacast(
14396            self as *const crate::QDirectionalLight as *mut crate::QDirectionalLight,
14397            arg1,
14398        )
14399    }
14400
14401    /// <p>Specifies the world direction of the directional light</p>
14402    ///
14403    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QDirectionalLight::setWorldDirection(const QVector3D& worldDirection)```</span>.
14404    ///
14405    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdirectionallight.html#worldDirection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the world direction of the directional light</p>
14406    /// <p><b>Access functions:</b></p>
14407    /// <div class="table"><table class="alignedsummary">
14408    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>worldDirection</b></span>() const</td></tr>
14409    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorldDirection</b></span>(const QVector3D &amp;<i>worldDirection</i>)</td></tr>
14410    /// </tbody></table></div>
14411    /// <p><b>Notifier signal:</b></p>
14412    /// <div class="table"><table class="alignedsummary">
14413    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>worldDirectionChanged</b></span>(const QVector3D &amp;<i>worldDirection</i>)</td></tr>
14414    /// </tbody></table></div></div>
14415    #[inline(always)]
14416    pub unsafe fn set_world_direction(
14417        &self,
14418        world_direction: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
14419    ) {
14420        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_setWorldDirection(
14421            self as *const crate::QDirectionalLight as *mut crate::QDirectionalLight,
14422            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
14423                world_direction,
14424            )
14425            .as_raw_ptr(),
14426        )
14427    }
14428
14429    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
14430    #[inline(always)]
14431    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
14432        let ffi_result =
14433            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_staticMetaObject() };
14434        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
14435            .expect("attempted to construct a null Ref")
14436    }
14437
14438    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDirectionalLight::tr(const char* s, const char* c, int n)```</span>.
14439    #[inline(always)]
14440    pub unsafe fn tr(
14441        s: *const ::std::os::raw::c_char,
14442        c: *const ::std::os::raw::c_char,
14443        n: ::std::os::raw::c_int,
14444    ) -> ::cpp_core::CppBox<::qt_core::QString> {
14445        let ffi_result =
14446            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_tr(s, c, n) };
14447        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14448    }
14449
14450    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDirectionalLight::trUtf8(const char* s, const char* c, int n)```</span>.
14451    #[inline(always)]
14452    pub unsafe fn tr_utf8(
14453        s: *const ::std::os::raw::c_char,
14454        c: *const ::std::os::raw::c_char,
14455        n: ::std::os::raw::c_int,
14456    ) -> ::cpp_core::CppBox<::qt_core::QString> {
14457        let ffi_result =
14458            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_trUtf8(s, c, n) };
14459        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14460    }
14461
14462    /// <p>Specifies the world direction of the directional light</p>
14463    ///
14464    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QDirectionalLight::worldDirection() const```</span>.
14465    ///
14466    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdirectionallight.html#worldDirection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the world direction of the directional light</p>
14467    /// <p><b>Access functions:</b></p>
14468    /// <div class="table"><table class="alignedsummary">
14469    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>worldDirection</b></span>() const</td></tr>
14470    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorldDirection</b></span>(const QVector3D &amp;<i>worldDirection</i>)</td></tr>
14471    /// </tbody></table></div>
14472    /// <p><b>Notifier signal:</b></p>
14473    /// <div class="table"><table class="alignedsummary">
14474    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>worldDirectionChanged</b></span>(const QVector3D &amp;<i>worldDirection</i>)</td></tr>
14475    /// </tbody></table></div></div>
14476    #[inline(always)]
14477    pub unsafe fn world_direction(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
14478        let ffi_result = {
14479            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_worldDirection(
14480                self as *const crate::QDirectionalLight,
14481            )
14482        };
14483        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14484    }
14485}
14486
14487/// <p>FrameGraph node to issue work for the compute shader on GPU</p>
14488///
14489/// C++ class: <span style='color: green;'>```Qt3DRender::QDispatchCompute```</span>.
14490///
14491/// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>FrameGraph node to issue work for the compute shader on GPU</p>
14492/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">Qt3DRender::QDispatchCompute</a> allows work to be issued for the compute shader to run on the GPU. The <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupX-prop">workGroupX</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupY-prop">workGroupY</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupZ-prop">workGroupZ</a> properties specify the work group sizes for the compute shader invocation. <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">QComputeCommand</a> components need to be added to entities to instruct Qt3D to select the materials and geometry from the entities for the compute invocation. The work group sizes for the shader invocation will be the maximum of the work group sizes specified in <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">QDispatchCompute</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">QComputeCommand</a>.</p></div>
14493#[repr(C)]
14494pub struct QDispatchCompute {
14495    _unused: u8,
14496}
14497impl QDispatchCompute {
14498    /// <p>Specifies X workgroup.</p>
14499    ///
14500    /// Returns a built-in Qt slot `Qt3DRender::QDispatchCompute::setWorkGroupX` that can be passed to `qt_core::Signal::connect`.
14501    ///
14502    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupX-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies X workgroup.</p>
14503    /// <p><b>Access functions:</b></p>
14504    /// <div class="table"><table class="alignedsummary">
14505    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupX</b></span>() const</td></tr>
14506    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupX</b></span>(int <i>workGroupX</i>)</td></tr>
14507    /// </tbody></table></div>
14508    /// <p><b>Notifier signal:</b></p>
14509    /// <div class="table"><table class="alignedsummary">
14510    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupXChanged</b></span>()</td></tr>
14511    /// </tbody></table></div></div>
14512    #[inline(always)]
14513    pub fn slot_set_work_group_x(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
14514        unsafe {
14515            ::qt_core::Receiver::new(
14516                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14517                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setWorkGroupX(int)\0"),
14518            )
14519        }
14520    }
14521
14522    /// <p>Specifies Y workgroup.</p>
14523    ///
14524    /// Returns a built-in Qt slot `Qt3DRender::QDispatchCompute::setWorkGroupY` that can be passed to `qt_core::Signal::connect`.
14525    ///
14526    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupY-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Y workgroup.</p>
14527    /// <p><b>Access functions:</b></p>
14528    /// <div class="table"><table class="alignedsummary">
14529    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupY</b></span>() const</td></tr>
14530    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupY</b></span>(int <i>workGroupY</i>)</td></tr>
14531    /// </tbody></table></div>
14532    /// <p><b>Notifier signal:</b></p>
14533    /// <div class="table"><table class="alignedsummary">
14534    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupYChanged</b></span>()</td></tr>
14535    /// </tbody></table></div></div>
14536    #[inline(always)]
14537    pub fn slot_set_work_group_y(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
14538        unsafe {
14539            ::qt_core::Receiver::new(
14540                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14541                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setWorkGroupY(int)\0"),
14542            )
14543        }
14544    }
14545
14546    /// <p>Specifies Z workgroup.</p>
14547    ///
14548    /// Returns a built-in Qt slot `Qt3DRender::QDispatchCompute::setWorkGroupZ` that can be passed to `qt_core::Signal::connect`.
14549    ///
14550    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupZ-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Z workgroup.</p>
14551    /// <p><b>Access functions:</b></p>
14552    /// <div class="table"><table class="alignedsummary">
14553    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZ</b></span>() const</td></tr>
14554    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupZ</b></span>(int <i>workGroupZ</i>)</td></tr>
14555    /// </tbody></table></div>
14556    /// <p><b>Notifier signal:</b></p>
14557    /// <div class="table"><table class="alignedsummary">
14558    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZChanged</b></span>()</td></tr>
14559    /// </tbody></table></div></div>
14560    #[inline(always)]
14561    pub fn slot_set_work_group_z(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
14562        unsafe {
14563            ::qt_core::Receiver::new(
14564                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14565                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setWorkGroupZ(int)\0"),
14566            )
14567        }
14568    }
14569
14570    /// <p>Specifies X workgroup.</p>
14571    ///
14572    /// Returns a built-in Qt signal `Qt3DRender::QDispatchCompute::workGroupXChanged` that can be passed to `qt_core::Signal::connect`.
14573    ///
14574    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupX-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies X workgroup.</p>
14575    /// <p><b>Access functions:</b></p>
14576    /// <div class="table"><table class="alignedsummary">
14577    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupX</b></span>() const</td></tr>
14578    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupX</b></span>(int <i>workGroupX</i>)</td></tr>
14579    /// </tbody></table></div>
14580    /// <p><b>Notifier signal:</b></p>
14581    /// <div class="table"><table class="alignedsummary">
14582    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupXChanged</b></span>()</td></tr>
14583    /// </tbody></table></div></div>
14584    #[inline(always)]
14585    pub fn work_group_x_changed(&self) -> ::qt_core::Signal<()> {
14586        unsafe {
14587            ::qt_core::Signal::new(
14588                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14589                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2workGroupXChanged()\0"),
14590            )
14591        }
14592    }
14593
14594    /// <p>Specifies Y workgroup.</p>
14595    ///
14596    /// Returns a built-in Qt signal `Qt3DRender::QDispatchCompute::workGroupYChanged` that can be passed to `qt_core::Signal::connect`.
14597    ///
14598    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupY-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Y workgroup.</p>
14599    /// <p><b>Access functions:</b></p>
14600    /// <div class="table"><table class="alignedsummary">
14601    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupY</b></span>() const</td></tr>
14602    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupY</b></span>(int <i>workGroupY</i>)</td></tr>
14603    /// </tbody></table></div>
14604    /// <p><b>Notifier signal:</b></p>
14605    /// <div class="table"><table class="alignedsummary">
14606    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupYChanged</b></span>()</td></tr>
14607    /// </tbody></table></div></div>
14608    #[inline(always)]
14609    pub fn work_group_y_changed(&self) -> ::qt_core::Signal<()> {
14610        unsafe {
14611            ::qt_core::Signal::new(
14612                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14613                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2workGroupYChanged()\0"),
14614            )
14615        }
14616    }
14617
14618    /// <p>Specifies Z workgroup.</p>
14619    ///
14620    /// Returns a built-in Qt signal `Qt3DRender::QDispatchCompute::workGroupZChanged` that can be passed to `qt_core::Signal::connect`.
14621    ///
14622    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupZ-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Z workgroup.</p>
14623    /// <p><b>Access functions:</b></p>
14624    /// <div class="table"><table class="alignedsummary">
14625    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZ</b></span>() const</td></tr>
14626    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupZ</b></span>(int <i>workGroupZ</i>)</td></tr>
14627    /// </tbody></table></div>
14628    /// <p><b>Notifier signal:</b></p>
14629    /// <div class="table"><table class="alignedsummary">
14630    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZChanged</b></span>()</td></tr>
14631    /// </tbody></table></div></div>
14632    #[inline(always)]
14633    pub fn work_group_z_changed(&self) -> ::qt_core::Signal<()> {
14634        unsafe {
14635            ::qt_core::Signal::new(
14636                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
14637                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2workGroupZChanged()\0"),
14638            )
14639        }
14640    }
14641
14642    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QDispatchCompute::metaObject() const```</span>.
14643    #[inline(always)]
14644    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
14645        let ffi_result = {
14646            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_metaObject(
14647                self as *const crate::QDispatchCompute,
14648            )
14649        };
14650        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
14651    }
14652
14653    /// <p>The constructor creates an instance with the specified <i>parent</i>.</p>
14654    ///
14655    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDispatchCompute::QDispatchCompute(Qt3DCore::QNode* parent = …)```</span>.
14656    ///
14657    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#QDispatchCompute">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The constructor creates an instance with the specified <i>parent</i>.</p></div>
14658    #[inline(always)]
14659    pub unsafe fn new_1a(
14660        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
14661    ) -> ::qt_core::QBox<crate::QDispatchCompute> {
14662        let ffi_result = {
14663            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_QDispatchCompute(
14664                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
14665                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
14666            )
14667        };
14668        ::qt_core::QBox::from_raw(ffi_result)
14669    }
14670
14671    /// <p>FrameGraph node to issue work for the compute shader on GPU</p>
14672    ///
14673    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDispatchCompute::QDispatchCompute()```</span>.
14674    ///
14675    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>FrameGraph node to issue work for the compute shader on GPU</p>
14676    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">Qt3DRender::QDispatchCompute</a> allows work to be issued for the compute shader to run on the GPU. The <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupX-prop">workGroupX</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupY-prop">workGroupY</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupZ-prop">workGroupZ</a> properties specify the work group sizes for the compute shader invocation. <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">QComputeCommand</a> components need to be added to entities to instruct Qt3D to select the materials and geometry from the entities for the compute invocation. The work group sizes for the shader invocation will be the maximum of the work group sizes specified in <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html">QDispatchCompute</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qcomputecommand.html">QComputeCommand</a>.</p></div>
14677    #[inline(always)]
14678    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QDispatchCompute> {
14679        let ffi_result =
14680            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_QDispatchCompute1() };
14681        ::qt_core::QBox::from_raw(ffi_result)
14682    }
14683
14684    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QDispatchCompute::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
14685    #[inline(always)]
14686    pub unsafe fn qt_metacall(
14687        &self,
14688        arg1: ::qt_core::q_meta_object::Call,
14689        arg2: ::std::os::raw::c_int,
14690        arg3: *mut *mut ::std::ffi::c_void,
14691    ) -> ::std::os::raw::c_int {
14692        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_qt_metacall(
14693            self as *const crate::QDispatchCompute as *mut crate::QDispatchCompute,
14694            arg1,
14695            arg2,
14696            arg3,
14697        )
14698    }
14699
14700    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QDispatchCompute::qt_metacast(const char* arg1)```</span>.
14701    #[inline(always)]
14702    pub unsafe fn qt_metacast(
14703        &self,
14704        arg1: *const ::std::os::raw::c_char,
14705    ) -> *mut ::std::ffi::c_void {
14706        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_qt_metacast(
14707            self as *const crate::QDispatchCompute as *mut crate::QDispatchCompute,
14708            arg1,
14709        )
14710    }
14711
14712    /// <p>Specifies X workgroup.</p>
14713    ///
14714    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QDispatchCompute::setWorkGroupX(int workGroupX)```</span>.
14715    ///
14716    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupX-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies X workgroup.</p>
14717    /// <p><b>Access functions:</b></p>
14718    /// <div class="table"><table class="alignedsummary">
14719    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupX</b></span>() const</td></tr>
14720    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupX</b></span>(int <i>workGroupX</i>)</td></tr>
14721    /// </tbody></table></div>
14722    /// <p><b>Notifier signal:</b></p>
14723    /// <div class="table"><table class="alignedsummary">
14724    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupXChanged</b></span>()</td></tr>
14725    /// </tbody></table></div></div>
14726    #[inline(always)]
14727    pub unsafe fn set_work_group_x(&self, work_group_x: ::std::os::raw::c_int) {
14728        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_setWorkGroupX(
14729            self as *const crate::QDispatchCompute as *mut crate::QDispatchCompute,
14730            work_group_x,
14731        )
14732    }
14733
14734    /// <p>Specifies Y workgroup.</p>
14735    ///
14736    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QDispatchCompute::setWorkGroupY(int workGroupY)```</span>.
14737    ///
14738    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupY-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Y workgroup.</p>
14739    /// <p><b>Access functions:</b></p>
14740    /// <div class="table"><table class="alignedsummary">
14741    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupY</b></span>() const</td></tr>
14742    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupY</b></span>(int <i>workGroupY</i>)</td></tr>
14743    /// </tbody></table></div>
14744    /// <p><b>Notifier signal:</b></p>
14745    /// <div class="table"><table class="alignedsummary">
14746    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupYChanged</b></span>()</td></tr>
14747    /// </tbody></table></div></div>
14748    #[inline(always)]
14749    pub unsafe fn set_work_group_y(&self, work_group_y: ::std::os::raw::c_int) {
14750        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_setWorkGroupY(
14751            self as *const crate::QDispatchCompute as *mut crate::QDispatchCompute,
14752            work_group_y,
14753        )
14754    }
14755
14756    /// <p>Specifies Z workgroup.</p>
14757    ///
14758    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QDispatchCompute::setWorkGroupZ(int workGroupZ)```</span>.
14759    ///
14760    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupZ-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Z workgroup.</p>
14761    /// <p><b>Access functions:</b></p>
14762    /// <div class="table"><table class="alignedsummary">
14763    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZ</b></span>() const</td></tr>
14764    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupZ</b></span>(int <i>workGroupZ</i>)</td></tr>
14765    /// </tbody></table></div>
14766    /// <p><b>Notifier signal:</b></p>
14767    /// <div class="table"><table class="alignedsummary">
14768    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZChanged</b></span>()</td></tr>
14769    /// </tbody></table></div></div>
14770    #[inline(always)]
14771    pub unsafe fn set_work_group_z(&self, work_group_z: ::std::os::raw::c_int) {
14772        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_setWorkGroupZ(
14773            self as *const crate::QDispatchCompute as *mut crate::QDispatchCompute,
14774            work_group_z,
14775        )
14776    }
14777
14778    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
14779    #[inline(always)]
14780    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
14781        let ffi_result =
14782            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_staticMetaObject() };
14783        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
14784            .expect("attempted to construct a null Ref")
14785    }
14786
14787    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDispatchCompute::tr(const char* s, const char* c, int n)```</span>.
14788    #[inline(always)]
14789    pub unsafe fn tr(
14790        s: *const ::std::os::raw::c_char,
14791        c: *const ::std::os::raw::c_char,
14792        n: ::std::os::raw::c_int,
14793    ) -> ::cpp_core::CppBox<::qt_core::QString> {
14794        let ffi_result =
14795            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_tr(s, c, n) };
14796        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14797    }
14798
14799    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDispatchCompute::trUtf8(const char* s, const char* c, int n)```</span>.
14800    #[inline(always)]
14801    pub unsafe fn tr_utf8(
14802        s: *const ::std::os::raw::c_char,
14803        c: *const ::std::os::raw::c_char,
14804        n: ::std::os::raw::c_int,
14805    ) -> ::cpp_core::CppBox<::qt_core::QString> {
14806        let ffi_result =
14807            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_trUtf8(s, c, n) };
14808        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14809    }
14810
14811    /// <p>Specifies X workgroup.</p>
14812    ///
14813    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QDispatchCompute::workGroupX() const```</span>.
14814    ///
14815    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupX-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies X workgroup.</p>
14816    /// <p><b>Access functions:</b></p>
14817    /// <div class="table"><table class="alignedsummary">
14818    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupX</b></span>() const</td></tr>
14819    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupX</b></span>(int <i>workGroupX</i>)</td></tr>
14820    /// </tbody></table></div>
14821    /// <p><b>Notifier signal:</b></p>
14822    /// <div class="table"><table class="alignedsummary">
14823    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupXChanged</b></span>()</td></tr>
14824    /// </tbody></table></div></div>
14825    #[inline(always)]
14826    pub unsafe fn work_group_x(&self) -> ::std::os::raw::c_int {
14827        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_workGroupX(
14828            self as *const crate::QDispatchCompute,
14829        )
14830    }
14831
14832    /// <p>Specifies Y workgroup.</p>
14833    ///
14834    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QDispatchCompute::workGroupY() const```</span>.
14835    ///
14836    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupY-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Y workgroup.</p>
14837    /// <p><b>Access functions:</b></p>
14838    /// <div class="table"><table class="alignedsummary">
14839    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupY</b></span>() const</td></tr>
14840    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupY</b></span>(int <i>workGroupY</i>)</td></tr>
14841    /// </tbody></table></div>
14842    /// <p><b>Notifier signal:</b></p>
14843    /// <div class="table"><table class="alignedsummary">
14844    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupYChanged</b></span>()</td></tr>
14845    /// </tbody></table></div></div>
14846    #[inline(always)]
14847    pub unsafe fn work_group_y(&self) -> ::std::os::raw::c_int {
14848        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_workGroupY(
14849            self as *const crate::QDispatchCompute,
14850        )
14851    }
14852
14853    /// <p>Specifies Z workgroup.</p>
14854    ///
14855    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QDispatchCompute::workGroupZ() const```</span>.
14856    ///
14857    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdispatchcompute.html#workGroupZ-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies Z workgroup.</p>
14858    /// <p><b>Access functions:</b></p>
14859    /// <div class="table"><table class="alignedsummary">
14860    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZ</b></span>() const</td></tr>
14861    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWorkGroupZ</b></span>(int <i>workGroupZ</i>)</td></tr>
14862    /// </tbody></table></div>
14863    /// <p><b>Notifier signal:</b></p>
14864    /// <div class="table"><table class="alignedsummary">
14865    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>workGroupZChanged</b></span>()</td></tr>
14866    /// </tbody></table></div></div>
14867    #[inline(always)]
14868    pub unsafe fn work_group_z(&self) -> ::std::os::raw::c_int {
14869        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_workGroupZ(
14870            self as *const crate::QDispatchCompute,
14871        )
14872    }
14873}
14874
14875/// <p>Enable dithering</p>
14876///
14877/// C++ class: <span style='color: green;'>```Qt3DRender::QDithering```</span>.
14878///
14879/// <a href="http://doc.qt.io/qt-5/qt3drender-qdithering.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enable dithering</p>
14880/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qdithering.html">Qt3DRender::QDithering</a> class enables dithering. Dithering adds noise to the color values to randomize quantization error in order to prevent large scale patterns in the final image, such as banding. Dithering is most useful when rendering to a surface with low color bit depth, such as RGB565 or RGBA4444.</p></div>
14881#[repr(C)]
14882pub struct QDithering {
14883    _unused: u8,
14884}
14885impl QDithering {
14886    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QDithering::metaObject() const```</span>.
14887    #[inline(always)]
14888    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
14889        let ffi_result = {
14890            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDithering_metaObject(
14891                self as *const crate::QDithering,
14892            )
14893        };
14894        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
14895    }
14896
14897    /// <p>Default constructs an instance of QDithering.</p>
14898    ///
14899    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDithering::QDithering(Qt3DCore::QNode* parent = …)```</span>.
14900    ///
14901    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdithering.html#QDithering">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QDithering.</p></div>
14902    #[inline(always)]
14903    pub unsafe fn new_1a(
14904        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
14905    ) -> ::qt_core::QBox<crate::QDithering> {
14906        let ffi_result = {
14907            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDithering_QDithering(
14908                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
14909                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
14910            )
14911        };
14912        ::qt_core::QBox::from_raw(ffi_result)
14913    }
14914
14915    /// <p>Enable dithering</p>
14916    ///
14917    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDithering::QDithering()```</span>.
14918    ///
14919    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdithering.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enable dithering</p>
14920    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qdithering.html">Qt3DRender::QDithering</a> class enables dithering. Dithering adds noise to the color values to randomize quantization error in order to prevent large scale patterns in the final image, such as banding. Dithering is most useful when rendering to a surface with low color bit depth, such as RGB565 or RGBA4444.</p></div>
14921    #[inline(always)]
14922    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QDithering> {
14923        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDithering_QDithering1() };
14924        ::qt_core::QBox::from_raw(ffi_result)
14925    }
14926
14927    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QDithering::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
14928    #[inline(always)]
14929    pub unsafe fn qt_metacall(
14930        &self,
14931        arg1: ::qt_core::q_meta_object::Call,
14932        arg2: ::std::os::raw::c_int,
14933        arg3: *mut *mut ::std::ffi::c_void,
14934    ) -> ::std::os::raw::c_int {
14935        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDithering_qt_metacall(
14936            self as *const crate::QDithering as *mut crate::QDithering,
14937            arg1,
14938            arg2,
14939            arg3,
14940        )
14941    }
14942
14943    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QDithering::qt_metacast(const char* arg1)```</span>.
14944    #[inline(always)]
14945    pub unsafe fn qt_metacast(
14946        &self,
14947        arg1: *const ::std::os::raw::c_char,
14948    ) -> *mut ::std::ffi::c_void {
14949        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDithering_qt_metacast(
14950            self as *const crate::QDithering as *mut crate::QDithering,
14951            arg1,
14952        )
14953    }
14954
14955    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
14956    #[inline(always)]
14957    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
14958        let ffi_result =
14959            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDithering_staticMetaObject() };
14960        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
14961            .expect("attempted to construct a null Ref")
14962    }
14963
14964    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDithering::tr(const char* s, const char* c, int n)```</span>.
14965    #[inline(always)]
14966    pub unsafe fn tr(
14967        s: *const ::std::os::raw::c_char,
14968        c: *const ::std::os::raw::c_char,
14969        n: ::std::os::raw::c_int,
14970    ) -> ::cpp_core::CppBox<::qt_core::QString> {
14971        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDithering_tr(s, c, n) };
14972        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14973    }
14974
14975    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDithering::trUtf8(const char* s, const char* c, int n)```</span>.
14976    #[inline(always)]
14977    pub unsafe fn tr_utf8(
14978        s: *const ::std::os::raw::c_char,
14979        c: *const ::std::os::raw::c_char,
14980        n: ::std::os::raw::c_int,
14981    ) -> ::cpp_core::CppBox<::qt_core::QString> {
14982        let ffi_result =
14983            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDithering_trUtf8(s, c, n) };
14984        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
14985    }
14986}
14987
14988/// <p>The base class for effects in a Qt 3D scene.</p>
14989///
14990/// C++ class: <span style='color: green;'>```Qt3DRender::QEffect```</span>.
14991///
14992/// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The base class for effects in a Qt 3D scene.</p>
14993/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> class combines a set of techniques and parameters used by those techniques to produce a rendering effect for a material.</p>
14994/// <p>An <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> instance should be shared among several <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> instances when possible.</p>
14995/// <pre class="cpp">
14996///
14997///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#QEffect">QEffect</a></span> <span class="operator">*</span>effect <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#QEffect">QEffect</a></span>();
14998///
14999///   <span class="comment">// Create technique, render pass and shader</span>
15000///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></span> <span class="operator">*</span>gl3Technique <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></span>();
15001///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>gl3Pass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
15002///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span> <span class="operator">*</span>glShader <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span>();
15003///
15004///   <span class="comment">// Set the shader on the render pass</span>
15005///   gl3Pass<span class="operator">-</span><span class="operator">&gt;</span>setShaderProgram(glShader);
15006///
15007///   <span class="comment">// Add the pass to the technique</span>
15008///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addRenderPass(gl3Pass);
15009///
15010///   <span class="comment">// Set the targeted GL version for the technique</span>
15011///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setApi(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>OpenGL);
15012///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMajorVersion(<span class="number">3</span>);
15013///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMinorVersion(<span class="number">1</span>);
15014///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setProfile(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>CoreProfile);
15015///
15016///   <span class="comment">// Add the technique to the effect</span>
15017///   effect<span class="operator">-</span><span class="operator">&gt;</span>addTechnique(gl3Technique);
15018///
15019/// </pre>
15020/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> defined on an Effect is overridden by a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> (of the same name) defined in a <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a>.</p></div>
15021#[repr(C)]
15022pub struct QEffect {
15023    _unused: u8,
15024}
15025impl QEffect {
15026    /// <p>Adds <i>parameter</i> to the effect. It sends a QPropertyNodeAddedChange to the backend. The <i>parameter</i> will be used to set a corresponding uniform value in the shader used by this effect.</p>
15027    ///
15028    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QEffect::addParameter(Qt3DRender::QParameter* parameter)```</span>.
15029    ///
15030    /// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#addParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds <i>parameter</i> to the effect. It sends a QPropertyNodeAddedChange to the backend. The <i>parameter</i> will be used to set a corresponding uniform value in the shader used by this effect.</p></div>
15031    #[inline(always)]
15032    pub unsafe fn add_parameter(
15033        &self,
15034        parameter: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
15035    ) {
15036        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_addParameter(
15037            self as *const crate::QEffect as *mut crate::QEffect,
15038            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(parameter)
15039                .as_raw_ptr() as *mut crate::QParameter,
15040        )
15041    }
15042
15043    /// <p>Adds a new technique <i>t</i> to the effect. It sends a QPropertyNodeAddedChange to the backend.</p>
15044    ///
15045    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QEffect::addTechnique(Qt3DRender::QTechnique* t)```</span>.
15046    ///
15047    /// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#addTechnique">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds a new technique <i>t</i> to the effect. It sends a QPropertyNodeAddedChange to the backend.</p></div>
15048    #[inline(always)]
15049    pub unsafe fn add_technique(
15050        &self,
15051        t: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QTechnique>>,
15052    ) {
15053        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_addTechnique(
15054            self as *const crate::QEffect as *mut crate::QEffect,
15055            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QTechnique>>::cast_into(t).as_raw_ptr()
15056                as *mut crate::QTechnique,
15057        )
15058    }
15059
15060    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QEffect::metaObject() const```</span>.
15061    #[inline(always)]
15062    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
15063        let ffi_result = {
15064            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_metaObject(
15065                self as *const crate::QEffect,
15066            )
15067        };
15068        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
15069    }
15070
15071    /// <p>Default constructs an instance of QEffect.</p>
15072    ///
15073    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QEffect::QEffect(Qt3DCore::QNode* parent = …)```</span>.
15074    ///
15075    /// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#QEffect">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QEffect.</p></div>
15076    #[inline(always)]
15077    pub unsafe fn new_1a(
15078        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
15079    ) -> ::qt_core::QBox<crate::QEffect> {
15080        let ffi_result = {
15081            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_QEffect(
15082                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
15083                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
15084            )
15085        };
15086        ::qt_core::QBox::from_raw(ffi_result)
15087    }
15088
15089    /// <p>The base class for effects in a Qt 3D scene.</p>
15090    ///
15091    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QEffect::QEffect()```</span>.
15092    ///
15093    /// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The base class for effects in a Qt 3D scene.</p>
15094    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> class combines a set of techniques and parameters used by those techniques to produce a rendering effect for a material.</p>
15095    /// <p>An <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> instance should be shared among several <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> instances when possible.</p>
15096    /// <pre class="cpp">
15097    ///
15098    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#QEffect">QEffect</a></span> <span class="operator">*</span>effect <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#QEffect">QEffect</a></span>();
15099    ///
15100    ///   <span class="comment">// Create technique, render pass and shader</span>
15101    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></span> <span class="operator">*</span>gl3Technique <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></span>();
15102    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>gl3Pass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
15103    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span> <span class="operator">*</span>glShader <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span>();
15104    ///
15105    ///   <span class="comment">// Set the shader on the render pass</span>
15106    ///   gl3Pass<span class="operator">-</span><span class="operator">&gt;</span>setShaderProgram(glShader);
15107    ///
15108    ///   <span class="comment">// Add the pass to the technique</span>
15109    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addRenderPass(gl3Pass);
15110    ///
15111    ///   <span class="comment">// Set the targeted GL version for the technique</span>
15112    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setApi(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>OpenGL);
15113    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMajorVersion(<span class="number">3</span>);
15114    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMinorVersion(<span class="number">1</span>);
15115    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setProfile(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>CoreProfile);
15116    ///
15117    ///   <span class="comment">// Add the technique to the effect</span>
15118    ///   effect<span class="operator">-</span><span class="operator">&gt;</span>addTechnique(gl3Technique);
15119    ///
15120    /// </pre>
15121    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> defined on an Effect is overridden by a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> (of the same name) defined in a <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a>.</p></div>
15122    #[inline(always)]
15123    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QEffect> {
15124        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_QEffect1() };
15125        ::qt_core::QBox::from_raw(ffi_result)
15126    }
15127
15128    /// <p>Returns the list of parameters used by the effect.</p>
15129    ///
15130    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*> Qt3DRender::QEffect::parameters() const```</span>.
15131    ///
15132    /// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#parameters">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of parameters used by the effect.</p></div>
15133    #[inline(always)]
15134    pub unsafe fn parameters(&self) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
15135        let ffi_result = {
15136            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_parameters(
15137                self as *const crate::QEffect,
15138            )
15139        };
15140        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15141    }
15142
15143    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QEffect::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
15144    #[inline(always)]
15145    pub unsafe fn qt_metacall(
15146        &self,
15147        arg1: ::qt_core::q_meta_object::Call,
15148        arg2: ::std::os::raw::c_int,
15149        arg3: *mut *mut ::std::ffi::c_void,
15150    ) -> ::std::os::raw::c_int {
15151        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_qt_metacall(
15152            self as *const crate::QEffect as *mut crate::QEffect,
15153            arg1,
15154            arg2,
15155            arg3,
15156        )
15157    }
15158
15159    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QEffect::qt_metacast(const char* arg1)```</span>.
15160    #[inline(always)]
15161    pub unsafe fn qt_metacast(
15162        &self,
15163        arg1: *const ::std::os::raw::c_char,
15164    ) -> *mut ::std::ffi::c_void {
15165        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_qt_metacast(
15166            self as *const crate::QEffect as *mut crate::QEffect,
15167            arg1,
15168        )
15169    }
15170
15171    /// <p>Removes a parameter <i>parameter</i> from the effect.</p>
15172    ///
15173    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QEffect::removeParameter(Qt3DRender::QParameter* parameter)```</span>.
15174    ///
15175    /// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#removeParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes a parameter <i>parameter</i> from the effect.</p></div>
15176    #[inline(always)]
15177    pub unsafe fn remove_parameter(
15178        &self,
15179        parameter: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
15180    ) {
15181        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_removeParameter(
15182            self as *const crate::QEffect as *mut crate::QEffect,
15183            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(parameter)
15184                .as_raw_ptr() as *mut crate::QParameter,
15185        )
15186    }
15187
15188    /// <p>Removes a technique <i>t</i> from the effect.</p>
15189    ///
15190    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QEffect::removeTechnique(Qt3DRender::QTechnique* t)```</span>.
15191    ///
15192    /// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#removeTechnique">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes a technique <i>t</i> from the effect.</p></div>
15193    #[inline(always)]
15194    pub unsafe fn remove_technique(
15195        &self,
15196        t: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QTechnique>>,
15197    ) {
15198        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_removeTechnique(
15199            self as *const crate::QEffect as *mut crate::QEffect,
15200            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QTechnique>>::cast_into(t).as_raw_ptr()
15201                as *mut crate::QTechnique,
15202        )
15203    }
15204
15205    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
15206    #[inline(always)]
15207    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
15208        let ffi_result =
15209            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_staticMetaObject() };
15210        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
15211            .expect("attempted to construct a null Ref")
15212    }
15213
15214    /// <p>Returns the list of techniques used by the effect.</p>
15215    ///
15216    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*> Qt3DRender::QEffect::techniques() const```</span>.
15217    ///
15218    /// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#techniques">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of techniques used by the effect.</p></div>
15219    #[inline(always)]
15220    pub unsafe fn techniques(&self) -> ::cpp_core::CppBox<crate::QVectorOfQTechnique> {
15221        let ffi_result = {
15222            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_techniques(
15223                self as *const crate::QEffect,
15224            )
15225        };
15226        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15227    }
15228
15229    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QEffect::tr(const char* s, const char* c, int n)```</span>.
15230    #[inline(always)]
15231    pub unsafe fn tr(
15232        s: *const ::std::os::raw::c_char,
15233        c: *const ::std::os::raw::c_char,
15234        n: ::std::os::raw::c_int,
15235    ) -> ::cpp_core::CppBox<::qt_core::QString> {
15236        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_tr(s, c, n) };
15237        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15238    }
15239
15240    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QEffect::trUtf8(const char* s, const char* c, int n)```</span>.
15241    #[inline(always)]
15242    pub unsafe fn tr_utf8(
15243        s: *const ::std::os::raw::c_char,
15244        c: *const ::std::os::raw::c_char,
15245        n: ::std::os::raw::c_int,
15246    ) -> ::cpp_core::CppBox<::qt_core::QString> {
15247        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_trUtf8(s, c, n) };
15248        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15249    }
15250}
15251
15252/// <p>Encapsulate an environment light object in a Qt 3D scene.</p>
15253///
15254/// C++ class: <span style='color: green;'>```Qt3DRender::QEnvironmentLight```</span>.
15255///
15256/// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulate an environment light object in a Qt 3D scene.</p></div>
15257#[repr(C)]
15258pub struct QEnvironmentLight {
15259    _unused: u8,
15260}
15261impl QEnvironmentLight {
15262    /// <p>Holds the current environment irradiance map texture.</p>
15263    ///
15264    /// Returns a built-in Qt slot `Qt3DRender::QEnvironmentLight::setIrradiance` that can be passed to `qt_core::Signal::connect`.
15265    ///
15266    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#irradiance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current environment irradiance map texture.</p>
15267    /// <p>By default, the environment irradiance texture is null.</p>
15268    /// <p><b>Access functions:</b></p>
15269    /// <div class="table"><table class="alignedsummary">
15270    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>irradiance</b></span>() const</td></tr>
15271    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIrradiance</b></span>(Qt3DRender::QAbstractTexture *<i>irradiance</i>)</td></tr>
15272    /// </tbody></table></div>
15273    /// <p><b>Notifier signal:</b></p>
15274    /// <div class="table"><table class="alignedsummary">
15275    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>irradianceChanged</b></span>(Qt3DRender::QAbstractTexture *<i>environmentIrradiance</i>)</td></tr>
15276    /// </tbody></table></div></div>
15277    #[inline(always)]
15278    pub fn slot_set_irradiance(&self) -> ::qt_core::Receiver<(*mut crate::QAbstractTexture,)> {
15279        unsafe {
15280            ::qt_core::Receiver::new(
15281                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
15282                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
15283                    b"1setIrradiance(Qt3DRender::QAbstractTexture *)\0",
15284                ),
15285            )
15286        }
15287    }
15288
15289    /// <p>Holds the current environment specular map texture.</p>
15290    ///
15291    /// Returns a built-in Qt slot `Qt3DRender::QEnvironmentLight::setSpecular` that can be passed to `qt_core::Signal::connect`.
15292    ///
15293    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#specular-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current environment specular map texture.</p>
15294    /// <p>By default, the environment specular texture is null.</p>
15295    /// <p><b>Access functions:</b></p>
15296    /// <div class="table"><table class="alignedsummary">
15297    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>specular</b></span>() const</td></tr>
15298    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSpecular</b></span>(Qt3DRender::QAbstractTexture *<i>specular</i>)</td></tr>
15299    /// </tbody></table></div>
15300    /// <p><b>Notifier signal:</b></p>
15301    /// <div class="table"><table class="alignedsummary">
15302    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>specularChanged</b></span>(Qt3DRender::QAbstractTexture *<i>environmentSpecular</i>)</td></tr>
15303    /// </tbody></table></div></div>
15304    #[inline(always)]
15305    pub fn slot_set_specular(&self) -> ::qt_core::Receiver<(*mut crate::QAbstractTexture,)> {
15306        unsafe {
15307            ::qt_core::Receiver::new(
15308                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
15309                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
15310                    b"1setSpecular(Qt3DRender::QAbstractTexture *)\0",
15311                ),
15312            )
15313        }
15314    }
15315
15316    /// <p>Holds the current environment irradiance map texture.</p>
15317    ///
15318    /// Returns a built-in Qt signal `Qt3DRender::QEnvironmentLight::irradianceChanged` that can be passed to `qt_core::Signal::connect`.
15319    ///
15320    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#irradiance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current environment irradiance map texture.</p>
15321    /// <p>By default, the environment irradiance texture is null.</p>
15322    /// <p><b>Access functions:</b></p>
15323    /// <div class="table"><table class="alignedsummary">
15324    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>irradiance</b></span>() const</td></tr>
15325    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIrradiance</b></span>(Qt3DRender::QAbstractTexture *<i>irradiance</i>)</td></tr>
15326    /// </tbody></table></div>
15327    /// <p><b>Notifier signal:</b></p>
15328    /// <div class="table"><table class="alignedsummary">
15329    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>irradianceChanged</b></span>(Qt3DRender::QAbstractTexture *<i>environmentIrradiance</i>)</td></tr>
15330    /// </tbody></table></div></div>
15331    #[inline(always)]
15332    pub fn irradiance_changed(&self) -> ::qt_core::Signal<(*mut crate::QAbstractTexture,)> {
15333        unsafe {
15334            ::qt_core::Signal::new(
15335                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
15336                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
15337                    b"2irradianceChanged(Qt3DRender::QAbstractTexture *)\0",
15338                ),
15339            )
15340        }
15341    }
15342
15343    /// <p>Holds the current environment specular map texture.</p>
15344    ///
15345    /// Returns a built-in Qt signal `Qt3DRender::QEnvironmentLight::specularChanged` that can be passed to `qt_core::Signal::connect`.
15346    ///
15347    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#specular-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current environment specular map texture.</p>
15348    /// <p>By default, the environment specular texture is null.</p>
15349    /// <p><b>Access functions:</b></p>
15350    /// <div class="table"><table class="alignedsummary">
15351    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>specular</b></span>() const</td></tr>
15352    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSpecular</b></span>(Qt3DRender::QAbstractTexture *<i>specular</i>)</td></tr>
15353    /// </tbody></table></div>
15354    /// <p><b>Notifier signal:</b></p>
15355    /// <div class="table"><table class="alignedsummary">
15356    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>specularChanged</b></span>(Qt3DRender::QAbstractTexture *<i>environmentSpecular</i>)</td></tr>
15357    /// </tbody></table></div></div>
15358    #[inline(always)]
15359    pub fn specular_changed(&self) -> ::qt_core::Signal<(*mut crate::QAbstractTexture,)> {
15360        unsafe {
15361            ::qt_core::Signal::new(
15362                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
15363                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
15364                    b"2specularChanged(Qt3DRender::QAbstractTexture *)\0",
15365                ),
15366            )
15367        }
15368    }
15369
15370    /// <p>Holds the current environment irradiance map texture.</p>
15371    ///
15372    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* Qt3DRender::QEnvironmentLight::irradiance() const```</span>.
15373    ///
15374    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#irradiance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current environment irradiance map texture.</p>
15375    /// <p>By default, the environment irradiance texture is null.</p>
15376    /// <p><b>Access functions:</b></p>
15377    /// <div class="table"><table class="alignedsummary">
15378    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>irradiance</b></span>() const</td></tr>
15379    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIrradiance</b></span>(Qt3DRender::QAbstractTexture *<i>irradiance</i>)</td></tr>
15380    /// </tbody></table></div>
15381    /// <p><b>Notifier signal:</b></p>
15382    /// <div class="table"><table class="alignedsummary">
15383    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>irradianceChanged</b></span>(Qt3DRender::QAbstractTexture *<i>environmentIrradiance</i>)</td></tr>
15384    /// </tbody></table></div></div>
15385    #[inline(always)]
15386    pub unsafe fn irradiance(&self) -> ::qt_core::QPtr<crate::QAbstractTexture> {
15387        let ffi_result = {
15388            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_irradiance(
15389                self as *const crate::QEnvironmentLight,
15390            )
15391        };
15392        ::qt_core::QPtr::from_raw(ffi_result)
15393    }
15394
15395    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QEnvironmentLight::metaObject() const```</span>.
15396    #[inline(always)]
15397    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
15398        let ffi_result = {
15399            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_metaObject(
15400                self as *const crate::QEnvironmentLight,
15401            )
15402        };
15403        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
15404    }
15405
15406    /// <p>Default constructs an instance of QEnvironmentLight.</p>
15407    ///
15408    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QEnvironmentLight::QEnvironmentLight(Qt3DCore::QNode* parent = …)```</span>.
15409    ///
15410    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#QEnvironmentLight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QEnvironmentLight.</p></div>
15411    #[inline(always)]
15412    pub unsafe fn new_1a(
15413        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
15414    ) -> ::qt_core::QBox<crate::QEnvironmentLight> {
15415        let ffi_result = {
15416            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_QEnvironmentLight(
15417                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
15418                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
15419            )
15420        };
15421        ::qt_core::QBox::from_raw(ffi_result)
15422    }
15423
15424    /// <p>Encapsulate an environment light object in a Qt 3D scene.</p>
15425    ///
15426    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QEnvironmentLight::QEnvironmentLight()```</span>.
15427    ///
15428    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulate an environment light object in a Qt 3D scene.</p></div>
15429    #[inline(always)]
15430    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QEnvironmentLight> {
15431        let ffi_result = {
15432            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_QEnvironmentLight1()
15433        };
15434        ::qt_core::QBox::from_raw(ffi_result)
15435    }
15436
15437    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QEnvironmentLight::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
15438    #[inline(always)]
15439    pub unsafe fn qt_metacall(
15440        &self,
15441        arg1: ::qt_core::q_meta_object::Call,
15442        arg2: ::std::os::raw::c_int,
15443        arg3: *mut *mut ::std::ffi::c_void,
15444    ) -> ::std::os::raw::c_int {
15445        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_qt_metacall(
15446            self as *const crate::QEnvironmentLight as *mut crate::QEnvironmentLight,
15447            arg1,
15448            arg2,
15449            arg3,
15450        )
15451    }
15452
15453    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QEnvironmentLight::qt_metacast(const char* arg1)```</span>.
15454    #[inline(always)]
15455    pub unsafe fn qt_metacast(
15456        &self,
15457        arg1: *const ::std::os::raw::c_char,
15458    ) -> *mut ::std::ffi::c_void {
15459        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_qt_metacast(
15460            self as *const crate::QEnvironmentLight as *mut crate::QEnvironmentLight,
15461            arg1,
15462        )
15463    }
15464
15465    /// <p>Holds the current environment irradiance map texture.</p>
15466    ///
15467    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QEnvironmentLight::setIrradiance(Qt3DRender::QAbstractTexture* irradiance)```</span>.
15468    ///
15469    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#irradiance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current environment irradiance map texture.</p>
15470    /// <p>By default, the environment irradiance texture is null.</p>
15471    /// <p><b>Access functions:</b></p>
15472    /// <div class="table"><table class="alignedsummary">
15473    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>irradiance</b></span>() const</td></tr>
15474    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIrradiance</b></span>(Qt3DRender::QAbstractTexture *<i>irradiance</i>)</td></tr>
15475    /// </tbody></table></div>
15476    /// <p><b>Notifier signal:</b></p>
15477    /// <div class="table"><table class="alignedsummary">
15478    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>irradianceChanged</b></span>(Qt3DRender::QAbstractTexture *<i>environmentIrradiance</i>)</td></tr>
15479    /// </tbody></table></div></div>
15480    #[inline(always)]
15481    pub unsafe fn set_irradiance(
15482        &self,
15483        irradiance: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTexture>>,
15484    ) {
15485        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_setIrradiance(
15486            self as *const crate::QEnvironmentLight as *mut crate::QEnvironmentLight,
15487            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTexture>>::cast_into(irradiance)
15488                .as_raw_ptr() as *mut crate::QAbstractTexture,
15489        )
15490    }
15491
15492    /// <p>Holds the current environment specular map texture.</p>
15493    ///
15494    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QEnvironmentLight::setSpecular(Qt3DRender::QAbstractTexture* specular)```</span>.
15495    ///
15496    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#specular-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current environment specular map texture.</p>
15497    /// <p>By default, the environment specular texture is null.</p>
15498    /// <p><b>Access functions:</b></p>
15499    /// <div class="table"><table class="alignedsummary">
15500    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>specular</b></span>() const</td></tr>
15501    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSpecular</b></span>(Qt3DRender::QAbstractTexture *<i>specular</i>)</td></tr>
15502    /// </tbody></table></div>
15503    /// <p><b>Notifier signal:</b></p>
15504    /// <div class="table"><table class="alignedsummary">
15505    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>specularChanged</b></span>(Qt3DRender::QAbstractTexture *<i>environmentSpecular</i>)</td></tr>
15506    /// </tbody></table></div></div>
15507    #[inline(always)]
15508    pub unsafe fn set_specular(
15509        &self,
15510        specular: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTexture>>,
15511    ) {
15512        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_setSpecular(
15513            self as *const crate::QEnvironmentLight as *mut crate::QEnvironmentLight,
15514            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTexture>>::cast_into(specular)
15515                .as_raw_ptr() as *mut crate::QAbstractTexture,
15516        )
15517    }
15518
15519    /// <p>Holds the current environment specular map texture.</p>
15520    ///
15521    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* Qt3DRender::QEnvironmentLight::specular() const```</span>.
15522    ///
15523    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#specular-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current environment specular map texture.</p>
15524    /// <p>By default, the environment specular texture is null.</p>
15525    /// <p><b>Access functions:</b></p>
15526    /// <div class="table"><table class="alignedsummary">
15527    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractTexture *</td><td class="memItemRight bottomAlign"><span class="name"><b>specular</b></span>() const</td></tr>
15528    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSpecular</b></span>(Qt3DRender::QAbstractTexture *<i>specular</i>)</td></tr>
15529    /// </tbody></table></div>
15530    /// <p><b>Notifier signal:</b></p>
15531    /// <div class="table"><table class="alignedsummary">
15532    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>specularChanged</b></span>(Qt3DRender::QAbstractTexture *<i>environmentSpecular</i>)</td></tr>
15533    /// </tbody></table></div></div>
15534    #[inline(always)]
15535    pub unsafe fn specular(&self) -> ::qt_core::QPtr<crate::QAbstractTexture> {
15536        let ffi_result = {
15537            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_specular(
15538                self as *const crate::QEnvironmentLight,
15539            )
15540        };
15541        ::qt_core::QPtr::from_raw(ffi_result)
15542    }
15543
15544    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
15545    #[inline(always)]
15546    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
15547        let ffi_result =
15548            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_staticMetaObject() };
15549        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
15550            .expect("attempted to construct a null Ref")
15551    }
15552
15553    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QEnvironmentLight::tr(const char* s, const char* c, int n)```</span>.
15554    #[inline(always)]
15555    pub unsafe fn tr(
15556        s: *const ::std::os::raw::c_char,
15557        c: *const ::std::os::raw::c_char,
15558        n: ::std::os::raw::c_int,
15559    ) -> ::cpp_core::CppBox<::qt_core::QString> {
15560        let ffi_result =
15561            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_tr(s, c, n) };
15562        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15563    }
15564
15565    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QEnvironmentLight::trUtf8(const char* s, const char* c, int n)```</span>.
15566    #[inline(always)]
15567    pub unsafe fn tr_utf8(
15568        s: *const ::std::os::raw::c_char,
15569        c: *const ::std::os::raw::c_char,
15570        n: ::std::os::raw::c_int,
15571    ) -> ::cpp_core::CppBox<::qt_core::QString> {
15572        let ffi_result =
15573            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_trUtf8(s, c, n) };
15574        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15575    }
15576}
15577
15578/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> class provides storage for filter keys and their values.</p>
15579///
15580/// C++ class: <span style='color: green;'>```Qt3DRender::QFilterKey```</span>.
15581///
15582/// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> class provides storage for filter keys and their values.</p>
15583/// <p>Filter keys are used by <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> to specify at which stage of rendering the technique or the render pass is used.</p></div>
15584#[repr(C)]
15585pub struct QFilterKey {
15586    _unused: u8,
15587}
15588impl QFilterKey {
15589    /// <p>Holds the value of the filter key.</p>
15590    ///
15591    /// Returns a built-in Qt slot `Qt3DRender::QFilterKey::setValue` that can be passed to `qt_core::Signal::connect`.
15592    ///
15593    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the value of the filter key.</p>
15594    /// <p><b>Access functions:</b></p>
15595    /// <div class="table"><table class="alignedsummary">
15596    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
15597    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
15598    /// </tbody></table></div>
15599    /// <p><b>Notifier signal:</b></p>
15600    /// <div class="table"><table class="alignedsummary">
15601    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
15602    /// </tbody></table></div></div>
15603    #[inline(always)]
15604    pub fn slot_set_value(&self) -> ::qt_core::Receiver<(*const ::qt_core::QVariant,)> {
15605        unsafe {
15606            ::qt_core::Receiver::new(
15607                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
15608                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setValue(QVariant const &)\0"),
15609            )
15610        }
15611    }
15612
15613    /// <p>Holds the name of the filter key.</p>
15614    ///
15615    /// Returns a built-in Qt slot `Qt3DRender::QFilterKey::setName` that can be passed to `qt_core::Signal::connect`.
15616    ///
15617    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name of the filter key.</p>
15618    /// <p><b>Access functions:</b></p>
15619    /// <div class="table"><table class="alignedsummary">
15620    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
15621    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>customType</i>)</td></tr>
15622    /// </tbody></table></div>
15623    /// <p><b>Notifier signal:</b></p>
15624    /// <div class="table"><table class="alignedsummary">
15625    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
15626    /// </tbody></table></div></div>
15627    #[inline(always)]
15628    pub fn slot_set_name(&self) -> ::qt_core::Receiver<(*const ::qt_core::QString,)> {
15629        unsafe {
15630            ::qt_core::Receiver::new(
15631                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
15632                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setName(QString const &)\0"),
15633            )
15634        }
15635    }
15636
15637    /// <p>Holds the name of the filter key.</p>
15638    ///
15639    /// Returns a built-in Qt signal `Qt3DRender::QFilterKey::nameChanged` that can be passed to `qt_core::Signal::connect`.
15640    ///
15641    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name of the filter key.</p>
15642    /// <p><b>Access functions:</b></p>
15643    /// <div class="table"><table class="alignedsummary">
15644    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
15645    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>customType</i>)</td></tr>
15646    /// </tbody></table></div>
15647    /// <p><b>Notifier signal:</b></p>
15648    /// <div class="table"><table class="alignedsummary">
15649    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
15650    /// </tbody></table></div></div>
15651    #[inline(always)]
15652    pub fn name_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QString,)> {
15653        unsafe {
15654            ::qt_core::Signal::new(
15655                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
15656                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2nameChanged(QString const &)\0"),
15657            )
15658        }
15659    }
15660
15661    /// <p>Holds the value of the filter key.</p>
15662    ///
15663    /// Returns a built-in Qt signal `Qt3DRender::QFilterKey::valueChanged` that can be passed to `qt_core::Signal::connect`.
15664    ///
15665    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the value of the filter key.</p>
15666    /// <p><b>Access functions:</b></p>
15667    /// <div class="table"><table class="alignedsummary">
15668    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
15669    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
15670    /// </tbody></table></div>
15671    /// <p><b>Notifier signal:</b></p>
15672    /// <div class="table"><table class="alignedsummary">
15673    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
15674    /// </tbody></table></div></div>
15675    #[inline(always)]
15676    pub fn value_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QVariant,)> {
15677        unsafe {
15678            ::qt_core::Signal::new(
15679                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
15680                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
15681                    b"2valueChanged(QVariant const &)\0",
15682                ),
15683            )
15684        }
15685    }
15686
15687    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QFilterKey::metaObject() const```</span>.
15688    #[inline(always)]
15689    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
15690        let ffi_result = {
15691            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_metaObject(
15692                self as *const crate::QFilterKey,
15693            )
15694        };
15695        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
15696    }
15697
15698    /// <p>Holds the name of the filter key.</p>
15699    ///
15700    /// Calls C++ function: <span style='color: green;'>```QString Qt3DRender::QFilterKey::name() const```</span>.
15701    ///
15702    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name of the filter key.</p>
15703    /// <p><b>Access functions:</b></p>
15704    /// <div class="table"><table class="alignedsummary">
15705    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
15706    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>customType</i>)</td></tr>
15707    /// </tbody></table></div>
15708    /// <p><b>Notifier signal:</b></p>
15709    /// <div class="table"><table class="alignedsummary">
15710    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
15711    /// </tbody></table></div></div>
15712    #[inline(always)]
15713    pub unsafe fn name(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
15714        let ffi_result = {
15715            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_name(
15716                self as *const crate::QFilterKey,
15717            )
15718        };
15719        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15720    }
15721
15722    /// <p>Default constructs an instance of QFilterKey.</p>
15723    ///
15724    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QFilterKey::QFilterKey(Qt3DCore::QNode* parent = …)```</span>.
15725    ///
15726    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#QFilterKey">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QFilterKey.</p></div>
15727    #[inline(always)]
15728    pub unsafe fn new_1a(
15729        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
15730    ) -> ::qt_core::QBox<crate::QFilterKey> {
15731        let ffi_result = {
15732            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_QFilterKey(
15733                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
15734                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
15735            )
15736        };
15737        ::qt_core::QBox::from_raw(ffi_result)
15738    }
15739
15740    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> class provides storage for filter keys and their values.</p>
15741    ///
15742    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QFilterKey::QFilterKey()```</span>.
15743    ///
15744    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> class provides storage for filter keys and their values.</p>
15745    /// <p>Filter keys are used by <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> to specify at which stage of rendering the technique or the render pass is used.</p></div>
15746    #[inline(always)]
15747    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QFilterKey> {
15748        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_QFilterKey1() };
15749        ::qt_core::QBox::from_raw(ffi_result)
15750    }
15751
15752    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QFilterKey::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
15753    #[inline(always)]
15754    pub unsafe fn qt_metacall(
15755        &self,
15756        arg1: ::qt_core::q_meta_object::Call,
15757        arg2: ::std::os::raw::c_int,
15758        arg3: *mut *mut ::std::ffi::c_void,
15759    ) -> ::std::os::raw::c_int {
15760        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_qt_metacall(
15761            self as *const crate::QFilterKey as *mut crate::QFilterKey,
15762            arg1,
15763            arg2,
15764            arg3,
15765        )
15766    }
15767
15768    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QFilterKey::qt_metacast(const char* arg1)```</span>.
15769    #[inline(always)]
15770    pub unsafe fn qt_metacast(
15771        &self,
15772        arg1: *const ::std::os::raw::c_char,
15773    ) -> *mut ::std::ffi::c_void {
15774        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_qt_metacast(
15775            self as *const crate::QFilterKey as *mut crate::QFilterKey,
15776            arg1,
15777        )
15778    }
15779
15780    /// <p>Holds the name of the filter key.</p>
15781    ///
15782    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QFilterKey::setName(const QString& customType)```</span>.
15783    ///
15784    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name of the filter key.</p>
15785    /// <p><b>Access functions:</b></p>
15786    /// <div class="table"><table class="alignedsummary">
15787    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
15788    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>customType</i>)</td></tr>
15789    /// </tbody></table></div>
15790    /// <p><b>Notifier signal:</b></p>
15791    /// <div class="table"><table class="alignedsummary">
15792    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
15793    /// </tbody></table></div></div>
15794    #[inline(always)]
15795    pub unsafe fn set_name(
15796        &self,
15797        custom_type: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
15798    ) {
15799        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_setName(
15800            self as *const crate::QFilterKey as *mut crate::QFilterKey,
15801            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(custom_type)
15802                .as_raw_ptr(),
15803        )
15804    }
15805
15806    /// <p>Holds the value of the filter key.</p>
15807    ///
15808    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QFilterKey::setValue(const QVariant& value)```</span>.
15809    ///
15810    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the value of the filter key.</p>
15811    /// <p><b>Access functions:</b></p>
15812    /// <div class="table"><table class="alignedsummary">
15813    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
15814    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
15815    /// </tbody></table></div>
15816    /// <p><b>Notifier signal:</b></p>
15817    /// <div class="table"><table class="alignedsummary">
15818    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
15819    /// </tbody></table></div></div>
15820    #[inline(always)]
15821    pub unsafe fn set_value(
15822        &self,
15823        value: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
15824    ) {
15825        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_setValue(
15826            self as *const crate::QFilterKey as *mut crate::QFilterKey,
15827            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(value)
15828                .as_raw_ptr(),
15829        )
15830    }
15831
15832    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
15833    #[inline(always)]
15834    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
15835        let ffi_result =
15836            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_staticMetaObject() };
15837        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
15838            .expect("attempted to construct a null Ref")
15839    }
15840
15841    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QFilterKey::tr(const char* s, const char* c, int n)```</span>.
15842    #[inline(always)]
15843    pub unsafe fn tr(
15844        s: *const ::std::os::raw::c_char,
15845        c: *const ::std::os::raw::c_char,
15846        n: ::std::os::raw::c_int,
15847    ) -> ::cpp_core::CppBox<::qt_core::QString> {
15848        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_tr(s, c, n) };
15849        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15850    }
15851
15852    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QFilterKey::trUtf8(const char* s, const char* c, int n)```</span>.
15853    #[inline(always)]
15854    pub unsafe fn tr_utf8(
15855        s: *const ::std::os::raw::c_char,
15856        c: *const ::std::os::raw::c_char,
15857        n: ::std::os::raw::c_int,
15858    ) -> ::cpp_core::CppBox<::qt_core::QString> {
15859        let ffi_result =
15860            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_trUtf8(s, c, n) };
15861        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15862    }
15863
15864    /// <p>Holds the value of the filter key.</p>
15865    ///
15866    /// Calls C++ function: <span style='color: green;'>```QVariant Qt3DRender::QFilterKey::value() const```</span>.
15867    ///
15868    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the value of the filter key.</p>
15869    /// <p><b>Access functions:</b></p>
15870    /// <div class="table"><table class="alignedsummary">
15871    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
15872    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
15873    /// </tbody></table></div>
15874    /// <p><b>Notifier signal:</b></p>
15875    /// <div class="table"><table class="alignedsummary">
15876    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
15877    /// </tbody></table></div></div>
15878    #[inline(always)]
15879    pub unsafe fn value(&self) -> ::cpp_core::CppBox<::qt_core::QVariant> {
15880        let ffi_result = {
15881            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_value(
15882                self as *const crate::QFilterKey,
15883            )
15884        };
15885        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15886    }
15887}
15888
15889/// <p>A base class for changes in the <a href="http://doc.qt.io/qt-5/qml-qt3d-render-framegraphnode.html">FrameGraphNode</a>.</p>
15890///
15891/// C++ class: <span style='color: green;'>```Qt3DRender::QFrameGraphNodeCreatedChangeBase```</span>.
15892///
15893/// <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnodecreatedchangebase.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A base class for changes in the <a href="http://doc.qt.io/qt-5/qml-qt3d-render-framegraphnode.html">FrameGraphNode</a>.</p></div>
15894#[repr(C)]
15895pub struct QFrameGraphNodeCreatedChangeBase {
15896    _unused: u8,
15897}
15898impl QFrameGraphNodeCreatedChangeBase {
15899    /// <p>Default constructs an instance of QFrameGraphNodeCreatedChangeBase.</p>
15900    ///
15901    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QFrameGraphNodeCreatedChangeBase::QFrameGraphNodeCreatedChangeBase(const Qt3DRender::QFrameGraphNode* node)```</span>.
15902    ///
15903    /// <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnodecreatedchangebase.html#QFrameGraphNodeCreatedChangeBase">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QFrameGraphNodeCreatedChangeBase.</p></div>
15904    #[inline(always)]
15905    pub unsafe fn new(
15906        node: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFrameGraphNode>>,
15907    ) -> ::cpp_core::CppBox<crate::QFrameGraphNodeCreatedChangeBase> {
15908        let ffi_result = {
15909            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNodeCreatedChangeBase_QFrameGraphNodeCreatedChangeBase(::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFrameGraphNode>>::cast_into(node).as_raw_ptr())
15910        };
15911        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15912    }
15913
15914    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNodeId Qt3DRender::QFrameGraphNodeCreatedChangeBase::parentFrameGraphNodeId() const```</span>.
15915    #[inline(always)]
15916    pub unsafe fn parent_frame_graph_node_id(&self) -> ::cpp_core::CppBox<::qt_3d_core::QNodeId> {
15917        let ffi_result = {
15918            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNodeCreatedChangeBase_parentFrameGraphNodeId(self as *const crate::QFrameGraphNodeCreatedChangeBase)
15919        };
15920        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
15921    }
15922}
15923
15924pub mod q_front_face {
15925    //! C++ type: <span style='color: green;'>```Qt3DRender::QFrontFace```</span>
15926
15927    /// C++ enum: <span style='color: green;'>```Qt3DRender::QFrontFace::WindingDirection```</span>.
15928    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
15929    #[repr(transparent)]
15930    pub struct WindingDirection(::std::os::raw::c_int);
15931
15932    impl From<::std::os::raw::c_int> for WindingDirection {
15933        fn from(value: ::std::os::raw::c_int) -> Self {
15934            WindingDirection(value)
15935        }
15936    }
15937
15938    impl From<WindingDirection> for ::std::os::raw::c_int {
15939        fn from(value: WindingDirection) -> Self {
15940            value.0
15941        }
15942    }
15943
15944    impl WindingDirection {
15945        pub fn to_int(&self) -> ::std::os::raw::c_int {
15946            self.0
15947        }
15948    }
15949
15950    impl WindingDirection {
15951        /// C++ enum variant: <span style='color: green;'>```ClockWise = 2304```</span>
15952        #[allow(non_upper_case_globals)]
15953        pub const ClockWise: crate::q_front_face::WindingDirection =
15954            crate::q_front_face::WindingDirection(2304);
15955        /// C++ enum variant: <span style='color: green;'>```CounterClockWise = 2305```</span>
15956        #[allow(non_upper_case_globals)]
15957        pub const CounterClockWise: crate::q_front_face::WindingDirection =
15958            crate::q_front_face::WindingDirection(2305);
15959    }
15960}
15961/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html">QFrontFace</a> class defines front and back facing polygons.</p>
15962///
15963/// C++ class: <span style='color: green;'>```Qt3DRender::QFrontFace```</span>.
15964///
15965/// <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html">QFrontFace</a> class defines front and back facing polygons.</p>
15966/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html">Qt3DRender::QFrontFace</a> sets the winding direction of the front facing polygons.</p></div>
15967#[repr(C)]
15968pub struct QFrontFace {
15969    _unused: u8,
15970}
15971impl QFrontFace {
15972    /// <p>Holds the winding direction of the front facing polygons. Default is Clockwise.</p>
15973    ///
15974    /// Returns a built-in Qt slot `Qt3DRender::QFrontFace::setDirection` that can be passed to `qt_core::Signal::connect`.
15975    ///
15976    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html#direction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the winding direction of the front facing polygons. Default is Clockwise.</p>
15977    /// <p><b>Access functions:</b></p>
15978    /// <div class="table"><table class="alignedsummary">
15979    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WindingDirection </td><td class="memItemRight bottomAlign"><span class="name"><b>direction</b></span>() const</td></tr>
15980    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDirection</b></span>(WindingDirection <i>direction</i>)</td></tr>
15981    /// </tbody></table></div>
15982    /// <p><b>Notifier signal:</b></p>
15983    /// <div class="table"><table class="alignedsummary">
15984    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>directionChanged</b></span>(WindingDirection <i>direction</i>)</td></tr>
15985    /// </tbody></table></div></div>
15986    #[inline(always)]
15987    pub fn slot_set_direction(
15988        &self,
15989    ) -> ::qt_core::Receiver<(crate::q_front_face::WindingDirection,)> {
15990        unsafe {
15991            ::qt_core::Receiver::new(
15992                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
15993                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
15994                    b"1setDirection(Qt3DRender::QFrontFace::WindingDirection)\0",
15995                ),
15996            )
15997        }
15998    }
15999
16000    /// <p>Holds the winding direction of the front facing polygons. Default is Clockwise.</p>
16001    ///
16002    /// Returns a built-in Qt signal `Qt3DRender::QFrontFace::directionChanged` that can be passed to `qt_core::Signal::connect`.
16003    ///
16004    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html#direction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the winding direction of the front facing polygons. Default is Clockwise.</p>
16005    /// <p><b>Access functions:</b></p>
16006    /// <div class="table"><table class="alignedsummary">
16007    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WindingDirection </td><td class="memItemRight bottomAlign"><span class="name"><b>direction</b></span>() const</td></tr>
16008    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDirection</b></span>(WindingDirection <i>direction</i>)</td></tr>
16009    /// </tbody></table></div>
16010    /// <p><b>Notifier signal:</b></p>
16011    /// <div class="table"><table class="alignedsummary">
16012    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>directionChanged</b></span>(WindingDirection <i>direction</i>)</td></tr>
16013    /// </tbody></table></div></div>
16014    #[inline(always)]
16015    pub fn direction_changed(&self) -> ::qt_core::Signal<(crate::q_front_face::WindingDirection,)> {
16016        unsafe {
16017            ::qt_core::Signal::new(
16018                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16019                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
16020                    b"2directionChanged(Qt3DRender::QFrontFace::WindingDirection)\0",
16021                ),
16022            )
16023        }
16024    }
16025
16026    /// <p>Holds the winding direction of the front facing polygons. Default is Clockwise.</p>
16027    ///
16028    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrontFace::WindingDirection Qt3DRender::QFrontFace::direction() const```</span>.
16029    ///
16030    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html#direction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the winding direction of the front facing polygons. Default is Clockwise.</p>
16031    /// <p><b>Access functions:</b></p>
16032    /// <div class="table"><table class="alignedsummary">
16033    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WindingDirection </td><td class="memItemRight bottomAlign"><span class="name"><b>direction</b></span>() const</td></tr>
16034    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDirection</b></span>(WindingDirection <i>direction</i>)</td></tr>
16035    /// </tbody></table></div>
16036    /// <p><b>Notifier signal:</b></p>
16037    /// <div class="table"><table class="alignedsummary">
16038    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>directionChanged</b></span>(WindingDirection <i>direction</i>)</td></tr>
16039    /// </tbody></table></div></div>
16040    #[inline(always)]
16041    pub unsafe fn direction(&self) -> crate::q_front_face::WindingDirection {
16042        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_direction(
16043            self as *const crate::QFrontFace,
16044        )
16045    }
16046
16047    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QFrontFace::metaObject() const```</span>.
16048    #[inline(always)]
16049    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
16050        let ffi_result = {
16051            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_metaObject(
16052                self as *const crate::QFrontFace,
16053            )
16054        };
16055        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
16056    }
16057
16058    /// <p>Default constructs an instance of QFrontFace.</p>
16059    ///
16060    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QFrontFace::QFrontFace(Qt3DCore::QNode* parent = …)```</span>.
16061    ///
16062    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html#QFrontFace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QFrontFace.</p></div>
16063    #[inline(always)]
16064    pub unsafe fn new_1a(
16065        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
16066    ) -> ::qt_core::QBox<crate::QFrontFace> {
16067        let ffi_result = {
16068            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_QFrontFace(
16069                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
16070                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
16071            )
16072        };
16073        ::qt_core::QBox::from_raw(ffi_result)
16074    }
16075
16076    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html">QFrontFace</a> class defines front and back facing polygons.</p>
16077    ///
16078    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QFrontFace::QFrontFace()```</span>.
16079    ///
16080    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html">QFrontFace</a> class defines front and back facing polygons.</p>
16081    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html">Qt3DRender::QFrontFace</a> sets the winding direction of the front facing polygons.</p></div>
16082    #[inline(always)]
16083    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QFrontFace> {
16084        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_QFrontFace1() };
16085        ::qt_core::QBox::from_raw(ffi_result)
16086    }
16087
16088    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QFrontFace::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
16089    #[inline(always)]
16090    pub unsafe fn qt_metacall(
16091        &self,
16092        arg1: ::qt_core::q_meta_object::Call,
16093        arg2: ::std::os::raw::c_int,
16094        arg3: *mut *mut ::std::ffi::c_void,
16095    ) -> ::std::os::raw::c_int {
16096        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_qt_metacall(
16097            self as *const crate::QFrontFace as *mut crate::QFrontFace,
16098            arg1,
16099            arg2,
16100            arg3,
16101        )
16102    }
16103
16104    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QFrontFace::qt_metacast(const char* arg1)```</span>.
16105    #[inline(always)]
16106    pub unsafe fn qt_metacast(
16107        &self,
16108        arg1: *const ::std::os::raw::c_char,
16109    ) -> *mut ::std::ffi::c_void {
16110        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_qt_metacast(
16111            self as *const crate::QFrontFace as *mut crate::QFrontFace,
16112            arg1,
16113        )
16114    }
16115
16116    /// <p>Holds the winding direction of the front facing polygons. Default is Clockwise.</p>
16117    ///
16118    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QFrontFace::setDirection(Qt3DRender::QFrontFace::WindingDirection direction)```</span>.
16119    ///
16120    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfrontface.html#direction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the winding direction of the front facing polygons. Default is Clockwise.</p>
16121    /// <p><b>Access functions:</b></p>
16122    /// <div class="table"><table class="alignedsummary">
16123    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WindingDirection </td><td class="memItemRight bottomAlign"><span class="name"><b>direction</b></span>() const</td></tr>
16124    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDirection</b></span>(WindingDirection <i>direction</i>)</td></tr>
16125    /// </tbody></table></div>
16126    /// <p><b>Notifier signal:</b></p>
16127    /// <div class="table"><table class="alignedsummary">
16128    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>directionChanged</b></span>(WindingDirection <i>direction</i>)</td></tr>
16129    /// </tbody></table></div></div>
16130    #[inline(always)]
16131    pub unsafe fn set_direction(&self, direction: crate::q_front_face::WindingDirection) {
16132        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_setDirection(
16133            self as *const crate::QFrontFace as *mut crate::QFrontFace,
16134            direction,
16135        )
16136    }
16137
16138    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
16139    #[inline(always)]
16140    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
16141        let ffi_result =
16142            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_staticMetaObject() };
16143        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
16144            .expect("attempted to construct a null Ref")
16145    }
16146
16147    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QFrontFace::tr(const char* s, const char* c, int n)```</span>.
16148    #[inline(always)]
16149    pub unsafe fn tr(
16150        s: *const ::std::os::raw::c_char,
16151        c: *const ::std::os::raw::c_char,
16152        n: ::std::os::raw::c_int,
16153    ) -> ::cpp_core::CppBox<::qt_core::QString> {
16154        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_tr(s, c, n) };
16155        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16156    }
16157
16158    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QFrontFace::trUtf8(const char* s, const char* c, int n)```</span>.
16159    #[inline(always)]
16160    pub unsafe fn tr_utf8(
16161        s: *const ::std::os::raw::c_char,
16162        c: *const ::std::os::raw::c_char,
16163        n: ::std::os::raw::c_int,
16164    ) -> ::cpp_core::CppBox<::qt_core::QString> {
16165        let ffi_result =
16166            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_trUtf8(s, c, n) };
16167        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16168    }
16169}
16170
16171/// <p>Enable frustum culling for the FrameGraph</p>
16172///
16173/// C++ class: <span style='color: green;'>```Qt3DRender::QFrustumCulling```</span>.
16174///
16175/// <a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enable frustum culling for the FrameGraph</p>
16176/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">QFrustumCulling</a> class enables frustum culling of the drawable entities based on the camera view and <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">QGeometry</a> bounds of the entities. If <a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">QFrustumCulling</a> is present in the FrameGraph, only the entities whose <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">QGeometry</a> bounds intersect with the camera frustum, i.e. the view of the camera, are drawn. If <a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">QFrustumCulling</a> is not present, all drawable entities will be drawn. The camera is selected by a <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a> frame graph node in the current hierarchy. Frustum culling can save a lot of GPU processing time when the rendered scene is complex.</p></div>
16177#[repr(C)]
16178pub struct QFrustumCulling {
16179    _unused: u8,
16180}
16181impl QFrustumCulling {
16182    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QFrustumCulling::metaObject() const```</span>.
16183    #[inline(always)]
16184    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
16185        let ffi_result = {
16186            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrustumCulling_metaObject(
16187                self as *const crate::QFrustumCulling,
16188            )
16189        };
16190        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
16191    }
16192
16193    /// <p>The constructor creates an instance with the specified <i>parent</i>.</p>
16194    ///
16195    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QFrustumCulling::QFrustumCulling(Qt3DCore::QNode* parent = …)```</span>.
16196    ///
16197    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html#QFrustumCulling">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The constructor creates an instance with the specified <i>parent</i>.</p></div>
16198    #[inline(always)]
16199    pub unsafe fn new_1a(
16200        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
16201    ) -> ::qt_core::QBox<crate::QFrustumCulling> {
16202        let ffi_result = {
16203            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrustumCulling_QFrustumCulling(
16204                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
16205                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
16206            )
16207        };
16208        ::qt_core::QBox::from_raw(ffi_result)
16209    }
16210
16211    /// <p>Enable frustum culling for the FrameGraph</p>
16212    ///
16213    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QFrustumCulling::QFrustumCulling()```</span>.
16214    ///
16215    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enable frustum culling for the FrameGraph</p>
16216    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">QFrustumCulling</a> class enables frustum culling of the drawable entities based on the camera view and <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">QGeometry</a> bounds of the entities. If <a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">QFrustumCulling</a> is present in the FrameGraph, only the entities whose <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">QGeometry</a> bounds intersect with the camera frustum, i.e. the view of the camera, are drawn. If <a href="http://doc.qt.io/qt-5/qt3drender-qfrustumculling.html">QFrustumCulling</a> is not present, all drawable entities will be drawn. The camera is selected by a <a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a> frame graph node in the current hierarchy. Frustum culling can save a lot of GPU processing time when the rendered scene is complex.</p></div>
16217    #[inline(always)]
16218    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QFrustumCulling> {
16219        let ffi_result =
16220            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrustumCulling_QFrustumCulling1() };
16221        ::qt_core::QBox::from_raw(ffi_result)
16222    }
16223
16224    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QFrustumCulling::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
16225    #[inline(always)]
16226    pub unsafe fn qt_metacall(
16227        &self,
16228        arg1: ::qt_core::q_meta_object::Call,
16229        arg2: ::std::os::raw::c_int,
16230        arg3: *mut *mut ::std::ffi::c_void,
16231    ) -> ::std::os::raw::c_int {
16232        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrustumCulling_qt_metacall(
16233            self as *const crate::QFrustumCulling as *mut crate::QFrustumCulling,
16234            arg1,
16235            arg2,
16236            arg3,
16237        )
16238    }
16239
16240    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QFrustumCulling::qt_metacast(const char* arg1)```</span>.
16241    #[inline(always)]
16242    pub unsafe fn qt_metacast(
16243        &self,
16244        arg1: *const ::std::os::raw::c_char,
16245    ) -> *mut ::std::ffi::c_void {
16246        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrustumCulling_qt_metacast(
16247            self as *const crate::QFrustumCulling as *mut crate::QFrustumCulling,
16248            arg1,
16249        )
16250    }
16251
16252    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
16253    #[inline(always)]
16254    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
16255        let ffi_result =
16256            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrustumCulling_staticMetaObject() };
16257        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
16258            .expect("attempted to construct a null Ref")
16259    }
16260
16261    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QFrustumCulling::tr(const char* s, const char* c, int n)```</span>.
16262    #[inline(always)]
16263    pub unsafe fn tr(
16264        s: *const ::std::os::raw::c_char,
16265        c: *const ::std::os::raw::c_char,
16266        n: ::std::os::raw::c_int,
16267    ) -> ::cpp_core::CppBox<::qt_core::QString> {
16268        let ffi_result =
16269            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrustumCulling_tr(s, c, n) };
16270        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16271    }
16272
16273    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QFrustumCulling::trUtf8(const char* s, const char* c, int n)```</span>.
16274    #[inline(always)]
16275    pub unsafe fn tr_utf8(
16276        s: *const ::std::os::raw::c_char,
16277        c: *const ::std::os::raw::c_char,
16278        n: ::std::os::raw::c_int,
16279    ) -> ::cpp_core::CppBox<::qt_core::QString> {
16280        let ffi_result =
16281            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrustumCulling_trUtf8(s, c, n) };
16282        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16283    }
16284}
16285
16286/// <p>Encapsulates geometry</p>
16287///
16288/// C++ class: <span style='color: green;'>```Qt3DRender::QGeometry```</span>.
16289///
16290/// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates geometry</p>
16291/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">Qt3DRender::QGeometry</a> class is used to group a list of <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">Qt3DRender::QAttribute</a> objects together to form a geometric shape Qt3D is able to render using <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">Qt3DRender::QGeometryRenderer</a>. Special attribute can be set in order to calculate bounding volume of the shape.</p></div>
16292#[repr(C)]
16293pub struct QGeometry {
16294    _unused: u8,
16295}
16296impl QGeometry {
16297    /// <p>Holds the attribute used to compute the bounding volume. The bounding volume is used internally for picking and view frustum culling.</p>
16298    ///
16299    /// Returns a built-in Qt slot `Qt3DRender::QGeometry::setBoundingVolumePositionAttribute` that can be passed to `qt_core::Signal::connect`.
16300    ///
16301    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#boundingVolumePositionAttribute-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attribute used to compute the bounding volume. The bounding volume is used internally for picking and view frustum culling.</p>
16302    /// <p>If unspecified, the system will look for the attribute using the name returned by <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultPositionAttributeName-prop">QAttribute::defaultPositionAttributeName</a>.</p>
16303    /// <p><b>Access functions:</b></p>
16304    /// <div class="table"><table class="alignedsummary">
16305    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAttribute *</td><td class="memItemRight bottomAlign"><span class="name"><b>boundingVolumePositionAttribute</b></span>() const</td></tr>
16306    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBoundingVolumePositionAttribute</b></span>(QAttribute *<i>boundingVolumePositionAttribute</i>)</td></tr>
16307    /// </tbody></table></div>
16308    /// <p><b>Notifier signal:</b></p>
16309    /// <div class="table"><table class="alignedsummary">
16310    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>boundingVolumePositionAttributeChanged</b></span>(QAttribute *<i>boundingVolumePositionAttribute</i>)</td></tr>
16311    /// </tbody></table></div>
16312    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">Qt3DRender::QAttribute</a>.</p></div>
16313    #[inline(always)]
16314    pub fn slot_set_bounding_volume_position_attribute(
16315        &self,
16316    ) -> ::qt_core::Receiver<(*mut crate::QAttribute,)> {
16317        unsafe {
16318            ::qt_core::Receiver::new(
16319                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16320                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
16321                    b"1setBoundingVolumePositionAttribute(Qt3DRender::QAttribute *)\0",
16322                ),
16323            )
16324        }
16325    }
16326
16327    /// <p>Holds the attribute used to compute the bounding volume. The bounding volume is used internally for picking and view frustum culling.</p>
16328    ///
16329    /// Returns a built-in Qt signal `Qt3DRender::QGeometry::boundingVolumePositionAttributeChanged` that can be passed to `qt_core::Signal::connect`.
16330    ///
16331    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#boundingVolumePositionAttribute-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attribute used to compute the bounding volume. The bounding volume is used internally for picking and view frustum culling.</p>
16332    /// <p>If unspecified, the system will look for the attribute using the name returned by <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultPositionAttributeName-prop">QAttribute::defaultPositionAttributeName</a>.</p>
16333    /// <p><b>Access functions:</b></p>
16334    /// <div class="table"><table class="alignedsummary">
16335    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAttribute *</td><td class="memItemRight bottomAlign"><span class="name"><b>boundingVolumePositionAttribute</b></span>() const</td></tr>
16336    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBoundingVolumePositionAttribute</b></span>(QAttribute *<i>boundingVolumePositionAttribute</i>)</td></tr>
16337    /// </tbody></table></div>
16338    /// <p><b>Notifier signal:</b></p>
16339    /// <div class="table"><table class="alignedsummary">
16340    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>boundingVolumePositionAttributeChanged</b></span>(QAttribute *<i>boundingVolumePositionAttribute</i>)</td></tr>
16341    /// </tbody></table></div>
16342    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">Qt3DRender::QAttribute</a>.</p></div>
16343    #[inline(always)]
16344    pub fn bounding_volume_position_attribute_changed(
16345        &self,
16346    ) -> ::qt_core::Signal<(*mut crate::QAttribute,)> {
16347        unsafe {
16348            ::qt_core::Signal::new(
16349                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16350                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
16351                    b"2boundingVolumePositionAttributeChanged(Qt3DRender::QAttribute *)\0",
16352                ),
16353            )
16354        }
16355    }
16356
16357    /// <p>Adds an <i>attribute</i> to this geometry.</p>
16358    ///
16359    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QGeometry::addAttribute(Qt3DRender::QAttribute* attribute)```</span>.
16360    ///
16361    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#addAttribute">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds an <i>attribute</i> to this geometry.</p></div>
16362    #[inline(always)]
16363    pub unsafe fn add_attribute(
16364        &self,
16365        attribute: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAttribute>>,
16366    ) {
16367        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_addAttribute(
16368            self as *const crate::QGeometry as *mut crate::QGeometry,
16369            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAttribute>>::cast_into(attribute)
16370                .as_raw_ptr() as *mut crate::QAttribute,
16371        )
16372    }
16373
16374    /// <p>Returns the list of attributes in this geometry.</p>
16375    ///
16376    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*> Qt3DRender::QGeometry::attributes() const```</span>.
16377    ///
16378    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#attributes">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of attributes in this geometry.</p></div>
16379    #[inline(always)]
16380    pub unsafe fn attributes(&self) -> ::cpp_core::CppBox<crate::QVectorOfQAttribute> {
16381        let ffi_result = {
16382            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_attributes(
16383                self as *const crate::QGeometry,
16384            )
16385        };
16386        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16387    }
16388
16389    /// <p>Holds the attribute used to compute the bounding volume. The bounding volume is used internally for picking and view frustum culling.</p>
16390    ///
16391    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* Qt3DRender::QGeometry::boundingVolumePositionAttribute() const```</span>.
16392    ///
16393    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#boundingVolumePositionAttribute-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attribute used to compute the bounding volume. The bounding volume is used internally for picking and view frustum culling.</p>
16394    /// <p>If unspecified, the system will look for the attribute using the name returned by <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultPositionAttributeName-prop">QAttribute::defaultPositionAttributeName</a>.</p>
16395    /// <p><b>Access functions:</b></p>
16396    /// <div class="table"><table class="alignedsummary">
16397    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAttribute *</td><td class="memItemRight bottomAlign"><span class="name"><b>boundingVolumePositionAttribute</b></span>() const</td></tr>
16398    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBoundingVolumePositionAttribute</b></span>(QAttribute *<i>boundingVolumePositionAttribute</i>)</td></tr>
16399    /// </tbody></table></div>
16400    /// <p><b>Notifier signal:</b></p>
16401    /// <div class="table"><table class="alignedsummary">
16402    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>boundingVolumePositionAttributeChanged</b></span>(QAttribute *<i>boundingVolumePositionAttribute</i>)</td></tr>
16403    /// </tbody></table></div>
16404    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">Qt3DRender::QAttribute</a>.</p></div>
16405    #[inline(always)]
16406    pub unsafe fn bounding_volume_position_attribute(&self) -> ::qt_core::QPtr<crate::QAttribute> {
16407        let ffi_result = {
16408            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_boundingVolumePositionAttribute(
16409                self as *const crate::QGeometry,
16410            )
16411        };
16412        ::qt_core::QPtr::from_raw(ffi_result)
16413    }
16414
16415    /// <p>Holds the vertex with the highest x, y, z position values.</p>
16416    ///
16417    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QGeometry::maxExtent() const```</span>.
16418    ///
16419    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#maxExtent-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the vertex with the highest x, y, z position values.</p>
16420    /// <p><b>Access functions:</b></p>
16421    /// <div class="table"><table class="alignedsummary">
16422    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>maxExtent</b></span>() const</td></tr>
16423    /// </tbody></table></div>
16424    /// <p><b>Notifier signal:</b></p>
16425    /// <div class="table"><table class="alignedsummary">
16426    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>maxExtentChanged</b></span>(const QVector3D &amp;<i>maxExtent</i>)</td></tr>
16427    /// </tbody></table></div></div>
16428    #[inline(always)]
16429    #[cfg_attr(
16430        feature = "ritual_rustdoc_nightly",
16431        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
16432    )]
16433    #[cfg(any(
16434        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
16435        feature = "ritual_rustdoc"
16436    ))]
16437    pub unsafe fn max_extent(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
16438        let ffi_result = {
16439            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_maxExtent(
16440                self as *const crate::QGeometry,
16441            )
16442        };
16443        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16444    }
16445
16446    /// <p>Holds the vertex with the highest x, y, z position values.</p>
16447    ///
16448    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QGeometry::maxExtentChanged(const QVector3D& maxExtent)```</span>.
16449    ///
16450    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#maxExtent-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the vertex with the highest x, y, z position values.</p>
16451    /// <p><b>Access functions:</b></p>
16452    /// <div class="table"><table class="alignedsummary">
16453    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>maxExtent</b></span>() const</td></tr>
16454    /// </tbody></table></div>
16455    /// <p><b>Notifier signal:</b></p>
16456    /// <div class="table"><table class="alignedsummary">
16457    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>maxExtentChanged</b></span>(const QVector3D &amp;<i>maxExtent</i>)</td></tr>
16458    /// </tbody></table></div></div>
16459    #[inline(always)]
16460    #[cfg_attr(
16461        feature = "ritual_rustdoc_nightly",
16462        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
16463    )]
16464    #[cfg(any(
16465        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
16466        feature = "ritual_rustdoc"
16467    ))]
16468    pub unsafe fn max_extent_changed(
16469        &self,
16470        max_extent: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
16471    ) {
16472        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_maxExtentChanged(
16473            self as *const crate::QGeometry as *mut crate::QGeometry,
16474            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(max_extent)
16475                .as_raw_ptr(),
16476        )
16477    }
16478
16479    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QGeometry::metaObject() const```</span>.
16480    #[inline(always)]
16481    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
16482        let ffi_result = {
16483            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_metaObject(
16484                self as *const crate::QGeometry,
16485            )
16486        };
16487        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
16488    }
16489
16490    /// <p>Holds the vertex with the lowest x, y, z position values.</p>
16491    ///
16492    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QGeometry::minExtent() const```</span>.
16493    ///
16494    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#minExtent-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the vertex with the lowest x, y, z position values.</p>
16495    /// <p><b>Access functions:</b></p>
16496    /// <div class="table"><table class="alignedsummary">
16497    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>minExtent</b></span>() const</td></tr>
16498    /// </tbody></table></div>
16499    /// <p><b>Notifier signal:</b></p>
16500    /// <div class="table"><table class="alignedsummary">
16501    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>minExtentChanged</b></span>(const QVector3D &amp;<i>minExtent</i>)</td></tr>
16502    /// </tbody></table></div></div>
16503    #[inline(always)]
16504    #[cfg_attr(
16505        feature = "ritual_rustdoc_nightly",
16506        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
16507    )]
16508    #[cfg(any(
16509        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
16510        feature = "ritual_rustdoc"
16511    ))]
16512    pub unsafe fn min_extent(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
16513        let ffi_result = {
16514            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_minExtent(
16515                self as *const crate::QGeometry,
16516            )
16517        };
16518        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16519    }
16520
16521    /// <p>Holds the vertex with the lowest x, y, z position values.</p>
16522    ///
16523    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QGeometry::minExtentChanged(const QVector3D& minExtent)```</span>.
16524    ///
16525    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#minExtent-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the vertex with the lowest x, y, z position values.</p>
16526    /// <p><b>Access functions:</b></p>
16527    /// <div class="table"><table class="alignedsummary">
16528    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>minExtent</b></span>() const</td></tr>
16529    /// </tbody></table></div>
16530    /// <p><b>Notifier signal:</b></p>
16531    /// <div class="table"><table class="alignedsummary">
16532    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>minExtentChanged</b></span>(const QVector3D &amp;<i>minExtent</i>)</td></tr>
16533    /// </tbody></table></div></div>
16534    #[inline(always)]
16535    #[cfg_attr(
16536        feature = "ritual_rustdoc_nightly",
16537        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
16538    )]
16539    #[cfg(any(
16540        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
16541        feature = "ritual_rustdoc"
16542    ))]
16543    pub unsafe fn min_extent_changed(
16544        &self,
16545        min_extent: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
16546    ) {
16547        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_minExtentChanged(
16548            self as *const crate::QGeometry as *mut crate::QGeometry,
16549            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(min_extent)
16550                .as_raw_ptr(),
16551        )
16552    }
16553
16554    /// <p>Default constructs an instance of QGeometry.</p>
16555    ///
16556    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QGeometry::QGeometry(Qt3DCore::QNode* parent = …)```</span>.
16557    ///
16558    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#QGeometry">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QGeometry.</p></div>
16559    #[inline(always)]
16560    pub unsafe fn new_1a(
16561        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
16562    ) -> ::qt_core::QBox<crate::QGeometry> {
16563        let ffi_result = {
16564            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_QGeometry(
16565                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
16566                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
16567            )
16568        };
16569        ::qt_core::QBox::from_raw(ffi_result)
16570    }
16571
16572    /// <p>Encapsulates geometry</p>
16573    ///
16574    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QGeometry::QGeometry()```</span>.
16575    ///
16576    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates geometry</p>
16577    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">Qt3DRender::QGeometry</a> class is used to group a list of <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">Qt3DRender::QAttribute</a> objects together to form a geometric shape Qt3D is able to render using <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">Qt3DRender::QGeometryRenderer</a>. Special attribute can be set in order to calculate bounding volume of the shape.</p></div>
16578    #[inline(always)]
16579    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QGeometry> {
16580        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_QGeometry1() };
16581        ::qt_core::QBox::from_raw(ffi_result)
16582    }
16583
16584    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QGeometry::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
16585    #[inline(always)]
16586    pub unsafe fn qt_metacall(
16587        &self,
16588        arg1: ::qt_core::q_meta_object::Call,
16589        arg2: ::std::os::raw::c_int,
16590        arg3: *mut *mut ::std::ffi::c_void,
16591    ) -> ::std::os::raw::c_int {
16592        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_qt_metacall(
16593            self as *const crate::QGeometry as *mut crate::QGeometry,
16594            arg1,
16595            arg2,
16596            arg3,
16597        )
16598    }
16599
16600    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QGeometry::qt_metacast(const char* arg1)```</span>.
16601    #[inline(always)]
16602    pub unsafe fn qt_metacast(
16603        &self,
16604        arg1: *const ::std::os::raw::c_char,
16605    ) -> *mut ::std::ffi::c_void {
16606        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_qt_metacast(
16607            self as *const crate::QGeometry as *mut crate::QGeometry,
16608            arg1,
16609        )
16610    }
16611
16612    /// <p>Removes the given <i>attribute</i> from this geometry.</p>
16613    ///
16614    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QGeometry::removeAttribute(Qt3DRender::QAttribute* attribute)```</span>.
16615    ///
16616    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#removeAttribute">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the given <i>attribute</i> from this geometry.</p></div>
16617    #[inline(always)]
16618    pub unsafe fn remove_attribute(
16619        &self,
16620        attribute: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAttribute>>,
16621    ) {
16622        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_removeAttribute(
16623            self as *const crate::QGeometry as *mut crate::QGeometry,
16624            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAttribute>>::cast_into(attribute)
16625                .as_raw_ptr() as *mut crate::QAttribute,
16626        )
16627    }
16628
16629    /// <p>Holds the attribute used to compute the bounding volume. The bounding volume is used internally for picking and view frustum culling.</p>
16630    ///
16631    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometry::setBoundingVolumePositionAttribute(Qt3DRender::QAttribute* boundingVolumePositionAttribute)```</span>.
16632    ///
16633    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html#boundingVolumePositionAttribute-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the attribute used to compute the bounding volume. The bounding volume is used internally for picking and view frustum culling.</p>
16634    /// <p>If unspecified, the system will look for the attribute using the name returned by <a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html#defaultPositionAttributeName-prop">QAttribute::defaultPositionAttributeName</a>.</p>
16635    /// <p><b>Access functions:</b></p>
16636    /// <div class="table"><table class="alignedsummary">
16637    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QAttribute *</td><td class="memItemRight bottomAlign"><span class="name"><b>boundingVolumePositionAttribute</b></span>() const</td></tr>
16638    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBoundingVolumePositionAttribute</b></span>(QAttribute *<i>boundingVolumePositionAttribute</i>)</td></tr>
16639    /// </tbody></table></div>
16640    /// <p><b>Notifier signal:</b></p>
16641    /// <div class="table"><table class="alignedsummary">
16642    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>boundingVolumePositionAttributeChanged</b></span>(QAttribute *<i>boundingVolumePositionAttribute</i>)</td></tr>
16643    /// </tbody></table></div>
16644    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qattribute.html">Qt3DRender::QAttribute</a>.</p></div>
16645    #[inline(always)]
16646    pub unsafe fn set_bounding_volume_position_attribute(
16647        &self,
16648        bounding_volume_position_attribute: impl ::cpp_core::CastInto<
16649            ::cpp_core::Ptr<crate::QAttribute>,
16650        >,
16651    ) {
16652        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_setBoundingVolumePositionAttribute(
16653            self as *const crate::QGeometry as *mut crate::QGeometry,
16654            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAttribute>>::cast_into(
16655                bounding_volume_position_attribute,
16656            )
16657            .as_raw_ptr() as *mut crate::QAttribute,
16658        )
16659    }
16660
16661    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
16662    #[inline(always)]
16663    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
16664        let ffi_result =
16665            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_staticMetaObject() };
16666        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
16667            .expect("attempted to construct a null Ref")
16668    }
16669
16670    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QGeometry::tr(const char* s, const char* c, int n)```</span>.
16671    #[inline(always)]
16672    pub unsafe fn tr(
16673        s: *const ::std::os::raw::c_char,
16674        c: *const ::std::os::raw::c_char,
16675        n: ::std::os::raw::c_int,
16676    ) -> ::cpp_core::CppBox<::qt_core::QString> {
16677        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_tr(s, c, n) };
16678        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16679    }
16680
16681    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QGeometry::trUtf8(const char* s, const char* c, int n)```</span>.
16682    #[inline(always)]
16683    pub unsafe fn tr_utf8(
16684        s: *const ::std::os::raw::c_char,
16685        c: *const ::std::os::raw::c_char,
16686        n: ::std::os::raw::c_int,
16687    ) -> ::cpp_core::CppBox<::qt_core::QString> {
16688        let ffi_result =
16689            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_trUtf8(s, c, n) };
16690        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
16691    }
16692}
16693
16694/// C++ class: <span style='color: green;'>```Qt3DRender::QGeometryFactory```</span>.
16695#[repr(C)]
16696pub struct QGeometryFactory {
16697    _unused: u8,
16698}
16699impl QGeometryFactory {
16700    /// <p>Returns the generated geometry.</p>
16701    ///
16702    /// Calls C++ function: <span style='color: green;'>```pure virtual Qt3DRender::QGeometry* Qt3DRender::QGeometryFactory::operator()()```</span>.
16703    ///
16704    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryfactory.html#operator-28-29">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the generated geometry.</p></div>
16705    #[inline(always)]
16706    pub unsafe fn call(&self) -> ::qt_core::QPtr<crate::QGeometry> {
16707        let ffi_result = {
16708            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryFactory_operator__(
16709                self as *const crate::QGeometryFactory as *mut crate::QGeometryFactory,
16710            )
16711        };
16712        ::qt_core::QPtr::from_raw(ffi_result)
16713    }
16714}
16715
16716pub mod q_geometry_renderer {
16717    //! C++ type: <span style='color: green;'>```Qt3DRender::QGeometryRenderer```</span>
16718
16719    /// C++ enum: <span style='color: green;'>```Qt3DRender::QGeometryRenderer::PrimitiveType```</span>.
16720    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
16721    #[repr(transparent)]
16722    pub struct PrimitiveType(::std::os::raw::c_int);
16723
16724    impl From<::std::os::raw::c_int> for PrimitiveType {
16725        fn from(value: ::std::os::raw::c_int) -> Self {
16726            PrimitiveType(value)
16727        }
16728    }
16729
16730    impl From<PrimitiveType> for ::std::os::raw::c_int {
16731        fn from(value: PrimitiveType) -> Self {
16732            value.0
16733        }
16734    }
16735
16736    impl PrimitiveType {
16737        pub fn to_int(&self) -> ::std::os::raw::c_int {
16738            self.0
16739        }
16740    }
16741
16742    impl PrimitiveType {
16743        /// C++ enum variant: <span style='color: green;'>```Points = 0```</span>
16744        #[allow(non_upper_case_globals)]
16745        pub const Points: crate::q_geometry_renderer::PrimitiveType =
16746            crate::q_geometry_renderer::PrimitiveType(0);
16747        /// C++ enum variant: <span style='color: green;'>```Lines = 1```</span>
16748        #[allow(non_upper_case_globals)]
16749        pub const Lines: crate::q_geometry_renderer::PrimitiveType =
16750            crate::q_geometry_renderer::PrimitiveType(1);
16751        /// C++ enum variant: <span style='color: green;'>```LineLoop = 2```</span>
16752        #[allow(non_upper_case_globals)]
16753        pub const LineLoop: crate::q_geometry_renderer::PrimitiveType =
16754            crate::q_geometry_renderer::PrimitiveType(2);
16755        /// C++ enum variant: <span style='color: green;'>```LineStrip = 3```</span>
16756        #[allow(non_upper_case_globals)]
16757        pub const LineStrip: crate::q_geometry_renderer::PrimitiveType =
16758            crate::q_geometry_renderer::PrimitiveType(3);
16759        /// C++ enum variant: <span style='color: green;'>```Triangles = 4```</span>
16760        #[allow(non_upper_case_globals)]
16761        pub const Triangles: crate::q_geometry_renderer::PrimitiveType =
16762            crate::q_geometry_renderer::PrimitiveType(4);
16763        /// C++ enum variant: <span style='color: green;'>```TriangleStrip = 5```</span>
16764        #[allow(non_upper_case_globals)]
16765        pub const TriangleStrip: crate::q_geometry_renderer::PrimitiveType =
16766            crate::q_geometry_renderer::PrimitiveType(5);
16767        /// C++ enum variant: <span style='color: green;'>```TriangleFan = 6```</span>
16768        #[allow(non_upper_case_globals)]
16769        pub const TriangleFan: crate::q_geometry_renderer::PrimitiveType =
16770            crate::q_geometry_renderer::PrimitiveType(6);
16771        /// C++ enum variant: <span style='color: green;'>```LinesAdjacency = 10```</span>
16772        #[allow(non_upper_case_globals)]
16773        pub const LinesAdjacency: crate::q_geometry_renderer::PrimitiveType =
16774            crate::q_geometry_renderer::PrimitiveType(10);
16775        /// C++ enum variant: <span style='color: green;'>```TrianglesAdjacency = 12```</span>
16776        #[allow(non_upper_case_globals)]
16777        pub const TrianglesAdjacency: crate::q_geometry_renderer::PrimitiveType =
16778            crate::q_geometry_renderer::PrimitiveType(12);
16779        /// C++ enum variant: <span style='color: green;'>```LineStripAdjacency = 11```</span>
16780        #[allow(non_upper_case_globals)]
16781        pub const LineStripAdjacency: crate::q_geometry_renderer::PrimitiveType =
16782            crate::q_geometry_renderer::PrimitiveType(11);
16783        /// C++ enum variant: <span style='color: green;'>```TriangleStripAdjacency = 13```</span>
16784        #[allow(non_upper_case_globals)]
16785        pub const TriangleStripAdjacency: crate::q_geometry_renderer::PrimitiveType =
16786            crate::q_geometry_renderer::PrimitiveType(13);
16787        /// C++ enum variant: <span style='color: green;'>```Patches = 14```</span>
16788        #[allow(non_upper_case_globals)]
16789        pub const Patches: crate::q_geometry_renderer::PrimitiveType =
16790            crate::q_geometry_renderer::PrimitiveType(14);
16791    }
16792}
16793/// <p>Encapsulates geometry rendering</p>
16794///
16795/// C++ class: <span style='color: green;'>```Qt3DRender::QGeometryRenderer```</span>.
16796///
16797/// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates geometry rendering</p>
16798/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">Qt3DRender::QGeometryRenderer</a> holds all the information necessary to draw a <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">Qt3DRender::QGeometry</a>. A <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">QGeometry</a> holds the coordinates of the geometry data - <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a> specifies how to interpret that data.</p></div>
16799#[repr(C)]
16800pub struct QGeometryRenderer {
16801    _unused: u8,
16802}
16803impl QGeometryRenderer {
16804    /// <p>Holds the instance count.</p>
16805    ///
16806    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setInstanceCount` that can be passed to `qt_core::Signal::connect`.
16807    ///
16808    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#instanceCount-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the instance count.</p>
16809    /// <p><b>Access functions:</b></p>
16810    /// <div class="table"><table class="alignedsummary">
16811    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>instanceCount</b></span>() const</td></tr>
16812    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setInstanceCount</b></span>(int <i>instanceCount</i>)</td></tr>
16813    /// </tbody></table></div>
16814    /// <p><b>Notifier signal:</b></p>
16815    /// <div class="table"><table class="alignedsummary">
16816    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>instanceCountChanged</b></span>(int <i>instanceCount</i>)</td></tr>
16817    /// </tbody></table></div></div>
16818    #[inline(always)]
16819    pub fn slot_set_instance_count(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
16820        unsafe {
16821            ::qt_core::Receiver::new(
16822                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16823                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setInstanceCount(int)\0"),
16824            )
16825        }
16826    }
16827
16828    /// <p>Holds the primitive count.</p>
16829    ///
16830    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setVertexCount` that can be passed to `qt_core::Signal::connect`.
16831    ///
16832    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#vertexCount-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive count.</p>
16833    /// <p><b>Access functions:</b></p>
16834    /// <div class="table"><table class="alignedsummary">
16835    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexCount</b></span>() const</td></tr>
16836    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexCount</b></span>(int <i>vertexCount</i>)</td></tr>
16837    /// </tbody></table></div>
16838    /// <p><b>Notifier signal:</b></p>
16839    /// <div class="table"><table class="alignedsummary">
16840    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexCountChanged</b></span>(int <i>vertexCount</i>)</td></tr>
16841    /// </tbody></table></div></div>
16842    #[inline(always)]
16843    pub fn slot_set_vertex_count(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
16844        unsafe {
16845            ::qt_core::Receiver::new(
16846                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16847                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setVertexCount(int)\0"),
16848            )
16849        }
16850    }
16851
16852    /// <p>Holds the base vertex.</p>
16853    ///
16854    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setIndexOffset` that can be passed to `qt_core::Signal::connect`.
16855    ///
16856    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#indexOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base vertex.</p>
16857    /// <p><b>Access functions:</b></p>
16858    /// <div class="table"><table class="alignedsummary">
16859    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>indexOffset</b></span>() const</td></tr>
16860    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIndexOffset</b></span>(int <i>indexOffset</i>)</td></tr>
16861    /// </tbody></table></div>
16862    /// <p><b>Notifier signal:</b></p>
16863    /// <div class="table"><table class="alignedsummary">
16864    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>indexOffsetChanged</b></span>(int <i>indexOffset</i>)</td></tr>
16865    /// </tbody></table></div></div>
16866    #[inline(always)]
16867    pub fn slot_set_index_offset(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
16868        unsafe {
16869            ::qt_core::Receiver::new(
16870                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16871                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setIndexOffset(int)\0"),
16872            )
16873        }
16874    }
16875
16876    /// <p>Holds the base instance.</p>
16877    ///
16878    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setFirstInstance` that can be passed to `qt_core::Signal::connect`.
16879    ///
16880    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#firstInstance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base instance.</p>
16881    /// <p><b>Access functions:</b></p>
16882    /// <div class="table"><table class="alignedsummary">
16883    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>firstInstance</b></span>() const</td></tr>
16884    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFirstInstance</b></span>(int <i>firstInstance</i>)</td></tr>
16885    /// </tbody></table></div>
16886    /// <p><b>Notifier signal:</b></p>
16887    /// <div class="table"><table class="alignedsummary">
16888    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>firstInstanceChanged</b></span>(int <i>firstInstance</i>)</td></tr>
16889    /// </tbody></table></div></div>
16890    #[inline(always)]
16891    pub fn slot_set_first_instance(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
16892        unsafe {
16893            ::qt_core::Receiver::new(
16894                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16895                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setFirstInstance(int)\0"),
16896            )
16897        }
16898    }
16899
16900    /// <p>Holds the base vertex.</p>
16901    ///
16902    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setFirstVertex` that can be passed to `qt_core::Signal::connect`.
16903    ///
16904    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#firstVertex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base vertex.</p>
16905    /// <p><b>Access functions:</b></p>
16906    /// <div class="table"><table class="alignedsummary">
16907    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>firstVertex</b></span>() const</td></tr>
16908    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFirstVertex</b></span>(int <i>firstVertex</i>)</td></tr>
16909    /// </tbody></table></div>
16910    /// <p><b>Notifier signal:</b></p>
16911    /// <div class="table"><table class="alignedsummary">
16912    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>firstVertexChanged</b></span>(int <i>firstVertex</i>)</td></tr>
16913    /// </tbody></table></div></div>
16914    #[inline(always)]
16915    pub fn slot_set_first_vertex(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
16916        unsafe {
16917            ::qt_core::Receiver::new(
16918                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16919                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setFirstVertex(int)\0"),
16920            )
16921        }
16922    }
16923
16924    /// <p>Holds the restart index.</p>
16925    ///
16926    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setRestartIndexValue` that can be passed to `qt_core::Signal::connect`.
16927    ///
16928    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#restartIndexValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the restart index.</p>
16929    /// <p><b>Access functions:</b></p>
16930    /// <div class="table"><table class="alignedsummary">
16931    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>restartIndexValue</b></span>() const</td></tr>
16932    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRestartIndexValue</b></span>(int <i>index</i>)</td></tr>
16933    /// </tbody></table></div>
16934    /// <p><b>Notifier signal:</b></p>
16935    /// <div class="table"><table class="alignedsummary">
16936    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>restartIndexValueChanged</b></span>(int <i>restartIndexValue</i>)</td></tr>
16937    /// </tbody></table></div></div>
16938    #[inline(always)]
16939    pub fn slot_set_restart_index_value(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
16940        unsafe {
16941            ::qt_core::Receiver::new(
16942                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16943                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setRestartIndexValue(int)\0"),
16944            )
16945        }
16946    }
16947
16948    /// <p>Holds vertices per patch.</p>
16949    ///
16950    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setVerticesPerPatch` that can be passed to `qt_core::Signal::connect`.
16951    ///
16952    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#verticesPerPatch-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds vertices per patch.</p>
16953    /// <p><b>Access functions:</b></p>
16954    /// <div class="table"><table class="alignedsummary">
16955    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>verticesPerPatch</b></span>() const</td></tr>
16956    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVerticesPerPatch</b></span>(int <i>verticesPerPatch</i>)</td></tr>
16957    /// </tbody></table></div>
16958    /// <p><b>Notifier signal:</b></p>
16959    /// <div class="table"><table class="alignedsummary">
16960    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>verticesPerPatchChanged</b></span>(int <i>verticesPerPatch</i>)</td></tr>
16961    /// </tbody></table></div></div>
16962    #[inline(always)]
16963    pub fn slot_set_vertices_per_patch(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
16964        unsafe {
16965            ::qt_core::Receiver::new(
16966                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16967                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setVerticesPerPatch(int)\0"),
16968            )
16969        }
16970    }
16971
16972    /// <p>Holds the primitive restart flag.</p>
16973    ///
16974    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setPrimitiveRestartEnabled` that can be passed to `qt_core::Signal::connect`.
16975    ///
16976    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#primitiveRestartEnabled-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive restart flag.</p>
16977    /// <p><b>Access functions:</b></p>
16978    /// <div class="table"><table class="alignedsummary">
16979    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveRestartEnabled</b></span>() const</td></tr>
16980    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPrimitiveRestartEnabled</b></span>(bool <i>enabled</i>)</td></tr>
16981    /// </tbody></table></div>
16982    /// <p><b>Notifier signal:</b></p>
16983    /// <div class="table"><table class="alignedsummary">
16984    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveRestartEnabledChanged</b></span>(bool <i>primitiveRestartEnabled</i>)</td></tr>
16985    /// </tbody></table></div></div>
16986    #[inline(always)]
16987    pub fn slot_set_primitive_restart_enabled(&self) -> ::qt_core::Receiver<(bool,)> {
16988        unsafe {
16989            ::qt_core::Receiver::new(
16990                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
16991                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
16992                    b"1setPrimitiveRestartEnabled(bool)\0",
16993                ),
16994            )
16995        }
16996    }
16997
16998    /// <p>Holds the geometry.</p>
16999    ///
17000    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setGeometry` that can be passed to `qt_core::Signal::connect`.
17001    ///
17002    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#geometry-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the geometry.</p>
17003    /// <p><b>Access functions:</b></p>
17004    /// <div class="table"><table class="alignedsummary">
17005    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QGeometry *</td><td class="memItemRight bottomAlign"><span class="name"><b>geometry</b></span>() const</td></tr>
17006    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometry</b></span>(QGeometry *<i>geometry</i>)</td></tr>
17007    /// </tbody></table></div>
17008    /// <p><b>Notifier signal:</b></p>
17009    /// <div class="table"><table class="alignedsummary">
17010    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryChanged</b></span>(QGeometry *<i>geometry</i>)</td></tr>
17011    /// </tbody></table></div></div>
17012    #[inline(always)]
17013    pub fn slot_set_geometry(&self) -> ::qt_core::Receiver<(*mut crate::QGeometry,)> {
17014        unsafe {
17015            ::qt_core::Receiver::new(
17016                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17017                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17018                    b"1setGeometry(Qt3DRender::QGeometry *)\0",
17019                ),
17020            )
17021        }
17022    }
17023
17024    /// <p>Holds the primitive type.</p>
17025    ///
17026    /// Returns a built-in Qt slot `Qt3DRender::QGeometryRenderer::setPrimitiveType` that can be passed to `qt_core::Signal::connect`.
17027    ///
17028    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#primitiveType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive type.</p>
17029    /// <p><b>Access functions:</b></p>
17030    /// <div class="table"><table class="alignedsummary">
17031    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PrimitiveType </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveType</b></span>() const</td></tr>
17032    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPrimitiveType</b></span>(PrimitiveType <i>primitiveType</i>)</td></tr>
17033    /// </tbody></table></div>
17034    /// <p><b>Notifier signal:</b></p>
17035    /// <div class="table"><table class="alignedsummary">
17036    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveTypeChanged</b></span>(PrimitiveType <i>primitiveType</i>)</td></tr>
17037    /// </tbody></table></div></div>
17038    #[inline(always)]
17039    pub fn slot_set_primitive_type(
17040        &self,
17041    ) -> ::qt_core::Receiver<(crate::q_geometry_renderer::PrimitiveType,)> {
17042        unsafe {
17043            ::qt_core::Receiver::new(
17044                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17045                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17046                    b"1setPrimitiveType(Qt3DRender::QGeometryRenderer::PrimitiveType)\0",
17047                ),
17048            )
17049        }
17050    }
17051
17052    /// <p>Holds the instance count.</p>
17053    ///
17054    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::instanceCountChanged` that can be passed to `qt_core::Signal::connect`.
17055    ///
17056    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#instanceCount-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the instance count.</p>
17057    /// <p><b>Access functions:</b></p>
17058    /// <div class="table"><table class="alignedsummary">
17059    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>instanceCount</b></span>() const</td></tr>
17060    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setInstanceCount</b></span>(int <i>instanceCount</i>)</td></tr>
17061    /// </tbody></table></div>
17062    /// <p><b>Notifier signal:</b></p>
17063    /// <div class="table"><table class="alignedsummary">
17064    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>instanceCountChanged</b></span>(int <i>instanceCount</i>)</td></tr>
17065    /// </tbody></table></div></div>
17066    #[inline(always)]
17067    pub fn instance_count_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
17068        unsafe {
17069            ::qt_core::Signal::new(
17070                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17071                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2instanceCountChanged(int)\0"),
17072            )
17073        }
17074    }
17075
17076    /// <p>Holds the primitive count.</p>
17077    ///
17078    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::vertexCountChanged` that can be passed to `qt_core::Signal::connect`.
17079    ///
17080    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#vertexCount-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive count.</p>
17081    /// <p><b>Access functions:</b></p>
17082    /// <div class="table"><table class="alignedsummary">
17083    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexCount</b></span>() const</td></tr>
17084    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexCount</b></span>(int <i>vertexCount</i>)</td></tr>
17085    /// </tbody></table></div>
17086    /// <p><b>Notifier signal:</b></p>
17087    /// <div class="table"><table class="alignedsummary">
17088    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexCountChanged</b></span>(int <i>vertexCount</i>)</td></tr>
17089    /// </tbody></table></div></div>
17090    #[inline(always)]
17091    pub fn vertex_count_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
17092        unsafe {
17093            ::qt_core::Signal::new(
17094                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17095                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2vertexCountChanged(int)\0"),
17096            )
17097        }
17098    }
17099
17100    /// <p>Holds the base vertex.</p>
17101    ///
17102    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::indexOffsetChanged` that can be passed to `qt_core::Signal::connect`.
17103    ///
17104    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#indexOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base vertex.</p>
17105    /// <p><b>Access functions:</b></p>
17106    /// <div class="table"><table class="alignedsummary">
17107    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>indexOffset</b></span>() const</td></tr>
17108    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIndexOffset</b></span>(int <i>indexOffset</i>)</td></tr>
17109    /// </tbody></table></div>
17110    /// <p><b>Notifier signal:</b></p>
17111    /// <div class="table"><table class="alignedsummary">
17112    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>indexOffsetChanged</b></span>(int <i>indexOffset</i>)</td></tr>
17113    /// </tbody></table></div></div>
17114    #[inline(always)]
17115    pub fn index_offset_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
17116        unsafe {
17117            ::qt_core::Signal::new(
17118                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17119                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2indexOffsetChanged(int)\0"),
17120            )
17121        }
17122    }
17123
17124    /// <p>Holds the base instance.</p>
17125    ///
17126    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::firstInstanceChanged` that can be passed to `qt_core::Signal::connect`.
17127    ///
17128    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#firstInstance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base instance.</p>
17129    /// <p><b>Access functions:</b></p>
17130    /// <div class="table"><table class="alignedsummary">
17131    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>firstInstance</b></span>() const</td></tr>
17132    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFirstInstance</b></span>(int <i>firstInstance</i>)</td></tr>
17133    /// </tbody></table></div>
17134    /// <p><b>Notifier signal:</b></p>
17135    /// <div class="table"><table class="alignedsummary">
17136    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>firstInstanceChanged</b></span>(int <i>firstInstance</i>)</td></tr>
17137    /// </tbody></table></div></div>
17138    #[inline(always)]
17139    pub fn first_instance_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
17140        unsafe {
17141            ::qt_core::Signal::new(
17142                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17143                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2firstInstanceChanged(int)\0"),
17144            )
17145        }
17146    }
17147
17148    /// <p>Holds the base vertex.</p>
17149    ///
17150    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::firstVertexChanged` that can be passed to `qt_core::Signal::connect`.
17151    ///
17152    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#firstVertex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base vertex.</p>
17153    /// <p><b>Access functions:</b></p>
17154    /// <div class="table"><table class="alignedsummary">
17155    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>firstVertex</b></span>() const</td></tr>
17156    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFirstVertex</b></span>(int <i>firstVertex</i>)</td></tr>
17157    /// </tbody></table></div>
17158    /// <p><b>Notifier signal:</b></p>
17159    /// <div class="table"><table class="alignedsummary">
17160    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>firstVertexChanged</b></span>(int <i>firstVertex</i>)</td></tr>
17161    /// </tbody></table></div></div>
17162    #[inline(always)]
17163    pub fn first_vertex_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
17164        unsafe {
17165            ::qt_core::Signal::new(
17166                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17167                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2firstVertexChanged(int)\0"),
17168            )
17169        }
17170    }
17171
17172    /// <p>Holds the restart index.</p>
17173    ///
17174    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::restartIndexValueChanged` that can be passed to `qt_core::Signal::connect`.
17175    ///
17176    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#restartIndexValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the restart index.</p>
17177    /// <p><b>Access functions:</b></p>
17178    /// <div class="table"><table class="alignedsummary">
17179    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>restartIndexValue</b></span>() const</td></tr>
17180    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRestartIndexValue</b></span>(int <i>index</i>)</td></tr>
17181    /// </tbody></table></div>
17182    /// <p><b>Notifier signal:</b></p>
17183    /// <div class="table"><table class="alignedsummary">
17184    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>restartIndexValueChanged</b></span>(int <i>restartIndexValue</i>)</td></tr>
17185    /// </tbody></table></div></div>
17186    #[inline(always)]
17187    pub fn restart_index_value_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
17188        unsafe {
17189            ::qt_core::Signal::new(
17190                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17191                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17192                    b"2restartIndexValueChanged(int)\0",
17193                ),
17194            )
17195        }
17196    }
17197
17198    /// <p>Holds vertices per patch.</p>
17199    ///
17200    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::verticesPerPatchChanged` that can be passed to `qt_core::Signal::connect`.
17201    ///
17202    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#verticesPerPatch-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds vertices per patch.</p>
17203    /// <p><b>Access functions:</b></p>
17204    /// <div class="table"><table class="alignedsummary">
17205    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>verticesPerPatch</b></span>() const</td></tr>
17206    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVerticesPerPatch</b></span>(int <i>verticesPerPatch</i>)</td></tr>
17207    /// </tbody></table></div>
17208    /// <p><b>Notifier signal:</b></p>
17209    /// <div class="table"><table class="alignedsummary">
17210    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>verticesPerPatchChanged</b></span>(int <i>verticesPerPatch</i>)</td></tr>
17211    /// </tbody></table></div></div>
17212    #[inline(always)]
17213    pub fn vertices_per_patch_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
17214        unsafe {
17215            ::qt_core::Signal::new(
17216                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17217                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2verticesPerPatchChanged(int)\0"),
17218            )
17219        }
17220    }
17221
17222    /// <p>Holds the primitive restart flag.</p>
17223    ///
17224    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::primitiveRestartEnabledChanged` that can be passed to `qt_core::Signal::connect`.
17225    ///
17226    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#primitiveRestartEnabled-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive restart flag.</p>
17227    /// <p><b>Access functions:</b></p>
17228    /// <div class="table"><table class="alignedsummary">
17229    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveRestartEnabled</b></span>() const</td></tr>
17230    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPrimitiveRestartEnabled</b></span>(bool <i>enabled</i>)</td></tr>
17231    /// </tbody></table></div>
17232    /// <p><b>Notifier signal:</b></p>
17233    /// <div class="table"><table class="alignedsummary">
17234    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveRestartEnabledChanged</b></span>(bool <i>primitiveRestartEnabled</i>)</td></tr>
17235    /// </tbody></table></div></div>
17236    #[inline(always)]
17237    pub fn primitive_restart_enabled_changed(&self) -> ::qt_core::Signal<(bool,)> {
17238        unsafe {
17239            ::qt_core::Signal::new(
17240                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17241                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17242                    b"2primitiveRestartEnabledChanged(bool)\0",
17243                ),
17244            )
17245        }
17246    }
17247
17248    /// <p>Holds the geometry.</p>
17249    ///
17250    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::geometryChanged` that can be passed to `qt_core::Signal::connect`.
17251    ///
17252    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#geometry-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the geometry.</p>
17253    /// <p><b>Access functions:</b></p>
17254    /// <div class="table"><table class="alignedsummary">
17255    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QGeometry *</td><td class="memItemRight bottomAlign"><span class="name"><b>geometry</b></span>() const</td></tr>
17256    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometry</b></span>(QGeometry *<i>geometry</i>)</td></tr>
17257    /// </tbody></table></div>
17258    /// <p><b>Notifier signal:</b></p>
17259    /// <div class="table"><table class="alignedsummary">
17260    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryChanged</b></span>(QGeometry *<i>geometry</i>)</td></tr>
17261    /// </tbody></table></div></div>
17262    #[inline(always)]
17263    pub fn geometry_changed(&self) -> ::qt_core::Signal<(*mut crate::QGeometry,)> {
17264        unsafe {
17265            ::qt_core::Signal::new(
17266                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17267                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17268                    b"2geometryChanged(Qt3DRender::QGeometry *)\0",
17269                ),
17270            )
17271        }
17272    }
17273
17274    /// <p>Holds the primitive type.</p>
17275    ///
17276    /// Returns a built-in Qt signal `Qt3DRender::QGeometryRenderer::primitiveTypeChanged` that can be passed to `qt_core::Signal::connect`.
17277    ///
17278    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#primitiveType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive type.</p>
17279    /// <p><b>Access functions:</b></p>
17280    /// <div class="table"><table class="alignedsummary">
17281    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PrimitiveType </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveType</b></span>() const</td></tr>
17282    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPrimitiveType</b></span>(PrimitiveType <i>primitiveType</i>)</td></tr>
17283    /// </tbody></table></div>
17284    /// <p><b>Notifier signal:</b></p>
17285    /// <div class="table"><table class="alignedsummary">
17286    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveTypeChanged</b></span>(PrimitiveType <i>primitiveType</i>)</td></tr>
17287    /// </tbody></table></div></div>
17288    #[inline(always)]
17289    pub fn primitive_type_changed(
17290        &self,
17291    ) -> ::qt_core::Signal<(crate::q_geometry_renderer::PrimitiveType,)> {
17292        unsafe {
17293            ::qt_core::Signal::new(
17294                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
17295                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
17296                    b"2primitiveTypeChanged(Qt3DRender::QGeometryRenderer::PrimitiveType)\0",
17297                ),
17298            )
17299        }
17300    }
17301
17302    /// <p>Holds the base instance.</p>
17303    ///
17304    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGeometryRenderer::firstInstance() const```</span>.
17305    ///
17306    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#firstInstance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base instance.</p>
17307    /// <p><b>Access functions:</b></p>
17308    /// <div class="table"><table class="alignedsummary">
17309    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>firstInstance</b></span>() const</td></tr>
17310    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFirstInstance</b></span>(int <i>firstInstance</i>)</td></tr>
17311    /// </tbody></table></div>
17312    /// <p><b>Notifier signal:</b></p>
17313    /// <div class="table"><table class="alignedsummary">
17314    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>firstInstanceChanged</b></span>(int <i>firstInstance</i>)</td></tr>
17315    /// </tbody></table></div></div>
17316    #[inline(always)]
17317    pub unsafe fn first_instance(&self) -> ::std::os::raw::c_int {
17318        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_firstInstance(
17319            self as *const crate::QGeometryRenderer,
17320        )
17321    }
17322
17323    /// <p>Holds the base vertex.</p>
17324    ///
17325    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGeometryRenderer::firstVertex() const```</span>.
17326    ///
17327    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#firstVertex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base vertex.</p>
17328    /// <p><b>Access functions:</b></p>
17329    /// <div class="table"><table class="alignedsummary">
17330    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>firstVertex</b></span>() const</td></tr>
17331    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFirstVertex</b></span>(int <i>firstVertex</i>)</td></tr>
17332    /// </tbody></table></div>
17333    /// <p><b>Notifier signal:</b></p>
17334    /// <div class="table"><table class="alignedsummary">
17335    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>firstVertexChanged</b></span>(int <i>firstVertex</i>)</td></tr>
17336    /// </tbody></table></div></div>
17337    #[inline(always)]
17338    pub unsafe fn first_vertex(&self) -> ::std::os::raw::c_int {
17339        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_firstVertex(
17340            self as *const crate::QGeometryRenderer,
17341        )
17342    }
17343
17344    /// <p>Holds the geometry.</p>
17345    ///
17346    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometry* Qt3DRender::QGeometryRenderer::geometry() const```</span>.
17347    ///
17348    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#geometry-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the geometry.</p>
17349    /// <p><b>Access functions:</b></p>
17350    /// <div class="table"><table class="alignedsummary">
17351    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QGeometry *</td><td class="memItemRight bottomAlign"><span class="name"><b>geometry</b></span>() const</td></tr>
17352    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometry</b></span>(QGeometry *<i>geometry</i>)</td></tr>
17353    /// </tbody></table></div>
17354    /// <p><b>Notifier signal:</b></p>
17355    /// <div class="table"><table class="alignedsummary">
17356    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryChanged</b></span>(QGeometry *<i>geometry</i>)</td></tr>
17357    /// </tbody></table></div></div>
17358    #[inline(always)]
17359    pub unsafe fn geometry(&self) -> ::qt_core::QPtr<crate::QGeometry> {
17360        let ffi_result = {
17361            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_geometry(
17362                self as *const crate::QGeometryRenderer,
17363            )
17364        };
17365        ::qt_core::QPtr::from_raw(ffi_result)
17366    }
17367
17368    /// <p>Holds the byte offset into the index buffer.</p>
17369    ///
17370    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGeometryRenderer::indexBufferByteOffset() const```</span>.
17371    ///
17372    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#indexBufferByteOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte offset into the index buffer.</p>
17373    /// <p><b>Access functions:</b></p>
17374    /// <div class="table"><table class="alignedsummary">
17375    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>indexBufferByteOffset</b></span>() const</td></tr>
17376    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIndexBufferByteOffset</b></span>(int <i>offset</i>)</td></tr>
17377    /// </tbody></table></div>
17378    /// <p><b>Notifier signal:</b></p>
17379    /// <div class="table"><table class="alignedsummary">
17380    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>indexBufferByteOffsetChanged</b></span>(int <i>offset</i>)</td></tr>
17381    /// </tbody></table></div></div>
17382    #[inline(always)]
17383    #[cfg_attr(
17384        feature = "ritual_rustdoc_nightly",
17385        doc(cfg(any(
17386            cpp_lib_version = "5.11.3",
17387            cpp_lib_version = "5.12.2",
17388            cpp_lib_version = "5.13.0",
17389            cpp_lib_version = "5.14.0"
17390        )))
17391    )]
17392    #[cfg(any(
17393        any(
17394            cpp_lib_version = "5.11.3",
17395            cpp_lib_version = "5.12.2",
17396            cpp_lib_version = "5.13.0",
17397            cpp_lib_version = "5.14.0"
17398        ),
17399        feature = "ritual_rustdoc"
17400    ))]
17401    pub unsafe fn index_buffer_byte_offset(&self) -> ::std::os::raw::c_int {
17402        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_indexBufferByteOffset(
17403            self as *const crate::QGeometryRenderer,
17404        )
17405    }
17406
17407    /// <p>Holds the byte offset into the index buffer.</p>
17408    ///
17409    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QGeometryRenderer::indexBufferByteOffsetChanged(int offset)```</span>.
17410    ///
17411    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#indexBufferByteOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte offset into the index buffer.</p>
17412    /// <p><b>Access functions:</b></p>
17413    /// <div class="table"><table class="alignedsummary">
17414    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>indexBufferByteOffset</b></span>() const</td></tr>
17415    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIndexBufferByteOffset</b></span>(int <i>offset</i>)</td></tr>
17416    /// </tbody></table></div>
17417    /// <p><b>Notifier signal:</b></p>
17418    /// <div class="table"><table class="alignedsummary">
17419    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>indexBufferByteOffsetChanged</b></span>(int <i>offset</i>)</td></tr>
17420    /// </tbody></table></div></div>
17421    #[inline(always)]
17422    #[cfg_attr(
17423        feature = "ritual_rustdoc_nightly",
17424        doc(cfg(any(
17425            cpp_lib_version = "5.11.3",
17426            cpp_lib_version = "5.12.2",
17427            cpp_lib_version = "5.13.0",
17428            cpp_lib_version = "5.14.0"
17429        )))
17430    )]
17431    #[cfg(any(
17432        any(
17433            cpp_lib_version = "5.11.3",
17434            cpp_lib_version = "5.12.2",
17435            cpp_lib_version = "5.13.0",
17436            cpp_lib_version = "5.14.0"
17437        ),
17438        feature = "ritual_rustdoc"
17439    ))]
17440    pub unsafe fn index_buffer_byte_offset_changed(&self, offset: ::std::os::raw::c_int) {
17441        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_indexBufferByteOffsetChanged(
17442            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17443            offset,
17444        )
17445    }
17446
17447    /// <p>Holds the base vertex.</p>
17448    ///
17449    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGeometryRenderer::indexOffset() const```</span>.
17450    ///
17451    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#indexOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base vertex.</p>
17452    /// <p><b>Access functions:</b></p>
17453    /// <div class="table"><table class="alignedsummary">
17454    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>indexOffset</b></span>() const</td></tr>
17455    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIndexOffset</b></span>(int <i>indexOffset</i>)</td></tr>
17456    /// </tbody></table></div>
17457    /// <p><b>Notifier signal:</b></p>
17458    /// <div class="table"><table class="alignedsummary">
17459    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>indexOffsetChanged</b></span>(int <i>indexOffset</i>)</td></tr>
17460    /// </tbody></table></div></div>
17461    #[inline(always)]
17462    pub unsafe fn index_offset(&self) -> ::std::os::raw::c_int {
17463        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_indexOffset(
17464            self as *const crate::QGeometryRenderer,
17465        )
17466    }
17467
17468    /// <p>Holds the instance count.</p>
17469    ///
17470    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGeometryRenderer::instanceCount() const```</span>.
17471    ///
17472    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#instanceCount-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the instance count.</p>
17473    /// <p><b>Access functions:</b></p>
17474    /// <div class="table"><table class="alignedsummary">
17475    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>instanceCount</b></span>() const</td></tr>
17476    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setInstanceCount</b></span>(int <i>instanceCount</i>)</td></tr>
17477    /// </tbody></table></div>
17478    /// <p><b>Notifier signal:</b></p>
17479    /// <div class="table"><table class="alignedsummary">
17480    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>instanceCountChanged</b></span>(int <i>instanceCount</i>)</td></tr>
17481    /// </tbody></table></div></div>
17482    #[inline(always)]
17483    pub unsafe fn instance_count(&self) -> ::std::os::raw::c_int {
17484        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_instanceCount(
17485            self as *const crate::QGeometryRenderer,
17486        )
17487    }
17488
17489    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QGeometryRenderer::metaObject() const```</span>.
17490    #[inline(always)]
17491    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
17492        let ffi_result = {
17493            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_metaObject(
17494                self as *const crate::QGeometryRenderer,
17495            )
17496        };
17497        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17498    }
17499
17500    /// <p>Default constructs an instance of QGeometryRenderer.</p>
17501    ///
17502    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QGeometryRenderer::QGeometryRenderer(Qt3DCore::QNode* parent = …)```</span>.
17503    ///
17504    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#QGeometryRenderer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QGeometryRenderer.</p></div>
17505    #[inline(always)]
17506    pub unsafe fn new_1a(
17507        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
17508    ) -> ::qt_core::QBox<crate::QGeometryRenderer> {
17509        let ffi_result = {
17510            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_QGeometryRenderer(
17511                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
17512                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
17513            )
17514        };
17515        ::qt_core::QBox::from_raw(ffi_result)
17516    }
17517
17518    /// <p>Encapsulates geometry rendering</p>
17519    ///
17520    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QGeometryRenderer::QGeometryRenderer()```</span>.
17521    ///
17522    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates geometry rendering</p>
17523    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">Qt3DRender::QGeometryRenderer</a> holds all the information necessary to draw a <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">Qt3DRender::QGeometry</a>. A <a href="http://doc.qt.io/qt-5/qt3drender-qgeometry.html">QGeometry</a> holds the coordinates of the geometry data - <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a> specifies how to interpret that data.</p></div>
17524    #[inline(always)]
17525    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QGeometryRenderer> {
17526        let ffi_result = {
17527            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_QGeometryRenderer1()
17528        };
17529        ::qt_core::QBox::from_raw(ffi_result)
17530    }
17531
17532    /// <p>Holds the primitive restart flag.</p>
17533    ///
17534    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QGeometryRenderer::primitiveRestartEnabled() const```</span>.
17535    ///
17536    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#primitiveRestartEnabled-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive restart flag.</p>
17537    /// <p><b>Access functions:</b></p>
17538    /// <div class="table"><table class="alignedsummary">
17539    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveRestartEnabled</b></span>() const</td></tr>
17540    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPrimitiveRestartEnabled</b></span>(bool <i>enabled</i>)</td></tr>
17541    /// </tbody></table></div>
17542    /// <p><b>Notifier signal:</b></p>
17543    /// <div class="table"><table class="alignedsummary">
17544    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveRestartEnabledChanged</b></span>(bool <i>primitiveRestartEnabled</i>)</td></tr>
17545    /// </tbody></table></div></div>
17546    #[inline(always)]
17547    pub unsafe fn primitive_restart_enabled(&self) -> bool {
17548        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_primitiveRestartEnabled(
17549            self as *const crate::QGeometryRenderer,
17550        )
17551    }
17552
17553    /// <p>Holds the primitive type.</p>
17554    ///
17555    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryRenderer::PrimitiveType Qt3DRender::QGeometryRenderer::primitiveType() const```</span>.
17556    ///
17557    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#primitiveType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive type.</p>
17558    /// <p><b>Access functions:</b></p>
17559    /// <div class="table"><table class="alignedsummary">
17560    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PrimitiveType </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveType</b></span>() const</td></tr>
17561    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPrimitiveType</b></span>(PrimitiveType <i>primitiveType</i>)</td></tr>
17562    /// </tbody></table></div>
17563    /// <p><b>Notifier signal:</b></p>
17564    /// <div class="table"><table class="alignedsummary">
17565    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveTypeChanged</b></span>(PrimitiveType <i>primitiveType</i>)</td></tr>
17566    /// </tbody></table></div></div>
17567    #[inline(always)]
17568    pub unsafe fn primitive_type(&self) -> crate::q_geometry_renderer::PrimitiveType {
17569        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_primitiveType(
17570            self as *const crate::QGeometryRenderer,
17571        )
17572    }
17573
17574    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QGeometryRenderer::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
17575    #[inline(always)]
17576    pub unsafe fn qt_metacall(
17577        &self,
17578        arg1: ::qt_core::q_meta_object::Call,
17579        arg2: ::std::os::raw::c_int,
17580        arg3: *mut *mut ::std::ffi::c_void,
17581    ) -> ::std::os::raw::c_int {
17582        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_qt_metacall(
17583            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17584            arg1,
17585            arg2,
17586            arg3,
17587        )
17588    }
17589
17590    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QGeometryRenderer::qt_metacast(const char* arg1)```</span>.
17591    #[inline(always)]
17592    pub unsafe fn qt_metacast(
17593        &self,
17594        arg1: *const ::std::os::raw::c_char,
17595    ) -> *mut ::std::ffi::c_void {
17596        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_qt_metacast(
17597            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17598            arg1,
17599        )
17600    }
17601
17602    /// <p>Holds the restart index.</p>
17603    ///
17604    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGeometryRenderer::restartIndexValue() const```</span>.
17605    ///
17606    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#restartIndexValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the restart index.</p>
17607    /// <p><b>Access functions:</b></p>
17608    /// <div class="table"><table class="alignedsummary">
17609    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>restartIndexValue</b></span>() const</td></tr>
17610    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRestartIndexValue</b></span>(int <i>index</i>)</td></tr>
17611    /// </tbody></table></div>
17612    /// <p><b>Notifier signal:</b></p>
17613    /// <div class="table"><table class="alignedsummary">
17614    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>restartIndexValueChanged</b></span>(int <i>restartIndexValue</i>)</td></tr>
17615    /// </tbody></table></div></div>
17616    #[inline(always)]
17617    pub unsafe fn restart_index_value(&self) -> ::std::os::raw::c_int {
17618        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_restartIndexValue(
17619            self as *const crate::QGeometryRenderer,
17620        )
17621    }
17622
17623    /// <p>Holds the base instance.</p>
17624    ///
17625    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setFirstInstance(int firstInstance)```</span>.
17626    ///
17627    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#firstInstance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base instance.</p>
17628    /// <p><b>Access functions:</b></p>
17629    /// <div class="table"><table class="alignedsummary">
17630    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>firstInstance</b></span>() const</td></tr>
17631    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFirstInstance</b></span>(int <i>firstInstance</i>)</td></tr>
17632    /// </tbody></table></div>
17633    /// <p><b>Notifier signal:</b></p>
17634    /// <div class="table"><table class="alignedsummary">
17635    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>firstInstanceChanged</b></span>(int <i>firstInstance</i>)</td></tr>
17636    /// </tbody></table></div></div>
17637    #[inline(always)]
17638    pub unsafe fn set_first_instance(&self, first_instance: ::std::os::raw::c_int) {
17639        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setFirstInstance(
17640            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17641            first_instance,
17642        )
17643    }
17644
17645    /// <p>Holds the base vertex.</p>
17646    ///
17647    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setFirstVertex(int firstVertex)```</span>.
17648    ///
17649    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#firstVertex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base vertex.</p>
17650    /// <p><b>Access functions:</b></p>
17651    /// <div class="table"><table class="alignedsummary">
17652    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>firstVertex</b></span>() const</td></tr>
17653    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFirstVertex</b></span>(int <i>firstVertex</i>)</td></tr>
17654    /// </tbody></table></div>
17655    /// <p><b>Notifier signal:</b></p>
17656    /// <div class="table"><table class="alignedsummary">
17657    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>firstVertexChanged</b></span>(int <i>firstVertex</i>)</td></tr>
17658    /// </tbody></table></div></div>
17659    #[inline(always)]
17660    pub unsafe fn set_first_vertex(&self, first_vertex: ::std::os::raw::c_int) {
17661        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setFirstVertex(
17662            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17663            first_vertex,
17664        )
17665    }
17666
17667    /// <p>Holds the geometry.</p>
17668    ///
17669    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setGeometry(Qt3DRender::QGeometry* geometry)```</span>.
17670    ///
17671    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#geometry-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the geometry.</p>
17672    /// <p><b>Access functions:</b></p>
17673    /// <div class="table"><table class="alignedsummary">
17674    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QGeometry *</td><td class="memItemRight bottomAlign"><span class="name"><b>geometry</b></span>() const</td></tr>
17675    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometry</b></span>(QGeometry *<i>geometry</i>)</td></tr>
17676    /// </tbody></table></div>
17677    /// <p><b>Notifier signal:</b></p>
17678    /// <div class="table"><table class="alignedsummary">
17679    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryChanged</b></span>(QGeometry *<i>geometry</i>)</td></tr>
17680    /// </tbody></table></div></div>
17681    #[inline(always)]
17682    pub unsafe fn set_geometry(
17683        &self,
17684        geometry: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QGeometry>>,
17685    ) {
17686        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setGeometry(
17687            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17688            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QGeometry>>::cast_into(geometry)
17689                .as_raw_ptr() as *mut crate::QGeometry,
17690        )
17691    }
17692
17693    /// <p>Holds the byte offset into the index buffer.</p>
17694    ///
17695    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QGeometryRenderer::setIndexBufferByteOffset(int offset)```</span>.
17696    ///
17697    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#indexBufferByteOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the byte offset into the index buffer.</p>
17698    /// <p><b>Access functions:</b></p>
17699    /// <div class="table"><table class="alignedsummary">
17700    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>indexBufferByteOffset</b></span>() const</td></tr>
17701    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIndexBufferByteOffset</b></span>(int <i>offset</i>)</td></tr>
17702    /// </tbody></table></div>
17703    /// <p><b>Notifier signal:</b></p>
17704    /// <div class="table"><table class="alignedsummary">
17705    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>indexBufferByteOffsetChanged</b></span>(int <i>offset</i>)</td></tr>
17706    /// </tbody></table></div></div>
17707    #[inline(always)]
17708    #[cfg_attr(
17709        feature = "ritual_rustdoc_nightly",
17710        doc(cfg(any(
17711            cpp_lib_version = "5.11.3",
17712            cpp_lib_version = "5.12.2",
17713            cpp_lib_version = "5.13.0",
17714            cpp_lib_version = "5.14.0"
17715        )))
17716    )]
17717    #[cfg(any(
17718        any(
17719            cpp_lib_version = "5.11.3",
17720            cpp_lib_version = "5.12.2",
17721            cpp_lib_version = "5.13.0",
17722            cpp_lib_version = "5.14.0"
17723        ),
17724        feature = "ritual_rustdoc"
17725    ))]
17726    pub unsafe fn set_index_buffer_byte_offset(&self, offset: ::std::os::raw::c_int) {
17727        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setIndexBufferByteOffset(
17728            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17729            offset,
17730        )
17731    }
17732
17733    /// <p>Holds the base vertex.</p>
17734    ///
17735    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setIndexOffset(int indexOffset)```</span>.
17736    ///
17737    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#indexOffset-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the base vertex.</p>
17738    /// <p><b>Access functions:</b></p>
17739    /// <div class="table"><table class="alignedsummary">
17740    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>indexOffset</b></span>() const</td></tr>
17741    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setIndexOffset</b></span>(int <i>indexOffset</i>)</td></tr>
17742    /// </tbody></table></div>
17743    /// <p><b>Notifier signal:</b></p>
17744    /// <div class="table"><table class="alignedsummary">
17745    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>indexOffsetChanged</b></span>(int <i>indexOffset</i>)</td></tr>
17746    /// </tbody></table></div></div>
17747    #[inline(always)]
17748    pub unsafe fn set_index_offset(&self, index_offset: ::std::os::raw::c_int) {
17749        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setIndexOffset(
17750            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17751            index_offset,
17752        )
17753    }
17754
17755    /// <p>Holds the instance count.</p>
17756    ///
17757    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setInstanceCount(int instanceCount)```</span>.
17758    ///
17759    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#instanceCount-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the instance count.</p>
17760    /// <p><b>Access functions:</b></p>
17761    /// <div class="table"><table class="alignedsummary">
17762    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>instanceCount</b></span>() const</td></tr>
17763    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setInstanceCount</b></span>(int <i>instanceCount</i>)</td></tr>
17764    /// </tbody></table></div>
17765    /// <p><b>Notifier signal:</b></p>
17766    /// <div class="table"><table class="alignedsummary">
17767    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>instanceCountChanged</b></span>(int <i>instanceCount</i>)</td></tr>
17768    /// </tbody></table></div></div>
17769    #[inline(always)]
17770    pub unsafe fn set_instance_count(&self, instance_count: ::std::os::raw::c_int) {
17771        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setInstanceCount(
17772            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17773            instance_count,
17774        )
17775    }
17776
17777    /// <p>Holds the primitive restart flag.</p>
17778    ///
17779    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setPrimitiveRestartEnabled(bool enabled)```</span>.
17780    ///
17781    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#primitiveRestartEnabled-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive restart flag.</p>
17782    /// <p><b>Access functions:</b></p>
17783    /// <div class="table"><table class="alignedsummary">
17784    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveRestartEnabled</b></span>() const</td></tr>
17785    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPrimitiveRestartEnabled</b></span>(bool <i>enabled</i>)</td></tr>
17786    /// </tbody></table></div>
17787    /// <p><b>Notifier signal:</b></p>
17788    /// <div class="table"><table class="alignedsummary">
17789    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveRestartEnabledChanged</b></span>(bool <i>primitiveRestartEnabled</i>)</td></tr>
17790    /// </tbody></table></div></div>
17791    #[inline(always)]
17792    pub unsafe fn set_primitive_restart_enabled(&self, enabled: bool) {
17793        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setPrimitiveRestartEnabled(
17794            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17795            enabled,
17796        )
17797    }
17798
17799    /// <p>Holds the primitive type.</p>
17800    ///
17801    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setPrimitiveType(Qt3DRender::QGeometryRenderer::PrimitiveType primitiveType)```</span>.
17802    ///
17803    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#primitiveType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive type.</p>
17804    /// <p><b>Access functions:</b></p>
17805    /// <div class="table"><table class="alignedsummary">
17806    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PrimitiveType </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveType</b></span>() const</td></tr>
17807    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPrimitiveType</b></span>(PrimitiveType <i>primitiveType</i>)</td></tr>
17808    /// </tbody></table></div>
17809    /// <p><b>Notifier signal:</b></p>
17810    /// <div class="table"><table class="alignedsummary">
17811    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>primitiveTypeChanged</b></span>(PrimitiveType <i>primitiveType</i>)</td></tr>
17812    /// </tbody></table></div></div>
17813    #[inline(always)]
17814    pub unsafe fn set_primitive_type(
17815        &self,
17816        primitive_type: crate::q_geometry_renderer::PrimitiveType,
17817    ) {
17818        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setPrimitiveType(
17819            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17820            primitive_type,
17821        )
17822    }
17823
17824    /// <p>Holds the restart index.</p>
17825    ///
17826    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setRestartIndexValue(int index)```</span>.
17827    ///
17828    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#restartIndexValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the restart index.</p>
17829    /// <p><b>Access functions:</b></p>
17830    /// <div class="table"><table class="alignedsummary">
17831    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>restartIndexValue</b></span>() const</td></tr>
17832    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRestartIndexValue</b></span>(int <i>index</i>)</td></tr>
17833    /// </tbody></table></div>
17834    /// <p><b>Notifier signal:</b></p>
17835    /// <div class="table"><table class="alignedsummary">
17836    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>restartIndexValueChanged</b></span>(int <i>restartIndexValue</i>)</td></tr>
17837    /// </tbody></table></div></div>
17838    #[inline(always)]
17839    pub unsafe fn set_restart_index_value(&self, index: ::std::os::raw::c_int) {
17840        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setRestartIndexValue(
17841            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17842            index,
17843        )
17844    }
17845
17846    /// <p>Holds the primitive count.</p>
17847    ///
17848    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setVertexCount(int vertexCount)```</span>.
17849    ///
17850    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#vertexCount-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive count.</p>
17851    /// <p><b>Access functions:</b></p>
17852    /// <div class="table"><table class="alignedsummary">
17853    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexCount</b></span>() const</td></tr>
17854    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexCount</b></span>(int <i>vertexCount</i>)</td></tr>
17855    /// </tbody></table></div>
17856    /// <p><b>Notifier signal:</b></p>
17857    /// <div class="table"><table class="alignedsummary">
17858    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexCountChanged</b></span>(int <i>vertexCount</i>)</td></tr>
17859    /// </tbody></table></div></div>
17860    #[inline(always)]
17861    pub unsafe fn set_vertex_count(&self, vertex_count: ::std::os::raw::c_int) {
17862        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setVertexCount(
17863            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17864            vertex_count,
17865        )
17866    }
17867
17868    /// <p>Holds vertices per patch.</p>
17869    ///
17870    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGeometryRenderer::setVerticesPerPatch(int verticesPerPatch)```</span>.
17871    ///
17872    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#verticesPerPatch-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds vertices per patch.</p>
17873    /// <p><b>Access functions:</b></p>
17874    /// <div class="table"><table class="alignedsummary">
17875    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>verticesPerPatch</b></span>() const</td></tr>
17876    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVerticesPerPatch</b></span>(int <i>verticesPerPatch</i>)</td></tr>
17877    /// </tbody></table></div>
17878    /// <p><b>Notifier signal:</b></p>
17879    /// <div class="table"><table class="alignedsummary">
17880    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>verticesPerPatchChanged</b></span>(int <i>verticesPerPatch</i>)</td></tr>
17881    /// </tbody></table></div></div>
17882    #[inline(always)]
17883    pub unsafe fn set_vertices_per_patch(&self, vertices_per_patch: ::std::os::raw::c_int) {
17884        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_setVerticesPerPatch(
17885            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
17886            vertices_per_patch,
17887        )
17888    }
17889
17890    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
17891    #[inline(always)]
17892    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
17893        let ffi_result =
17894            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_staticMetaObject() };
17895        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
17896            .expect("attempted to construct a null Ref")
17897    }
17898
17899    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QGeometryRenderer::tr(const char* s, const char* c, int n)```</span>.
17900    #[inline(always)]
17901    pub unsafe fn tr(
17902        s: *const ::std::os::raw::c_char,
17903        c: *const ::std::os::raw::c_char,
17904        n: ::std::os::raw::c_int,
17905    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17906        let ffi_result =
17907            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_tr(s, c, n) };
17908        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17909    }
17910
17911    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QGeometryRenderer::trUtf8(const char* s, const char* c, int n)```</span>.
17912    #[inline(always)]
17913    pub unsafe fn tr_utf8(
17914        s: *const ::std::os::raw::c_char,
17915        c: *const ::std::os::raw::c_char,
17916        n: ::std::os::raw::c_int,
17917    ) -> ::cpp_core::CppBox<::qt_core::QString> {
17918        let ffi_result =
17919            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_trUtf8(s, c, n) };
17920        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
17921    }
17922
17923    /// <p>Holds the primitive count.</p>
17924    ///
17925    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGeometryRenderer::vertexCount() const```</span>.
17926    ///
17927    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#vertexCount-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the primitive count.</p>
17928    /// <p><b>Access functions:</b></p>
17929    /// <div class="table"><table class="alignedsummary">
17930    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexCount</b></span>() const</td></tr>
17931    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexCount</b></span>(int <i>vertexCount</i>)</td></tr>
17932    /// </tbody></table></div>
17933    /// <p><b>Notifier signal:</b></p>
17934    /// <div class="table"><table class="alignedsummary">
17935    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexCountChanged</b></span>(int <i>vertexCount</i>)</td></tr>
17936    /// </tbody></table></div></div>
17937    #[inline(always)]
17938    pub unsafe fn vertex_count(&self) -> ::std::os::raw::c_int {
17939        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_vertexCount(
17940            self as *const crate::QGeometryRenderer,
17941        )
17942    }
17943
17944    /// <p>Holds vertices per patch.</p>
17945    ///
17946    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGeometryRenderer::verticesPerPatch() const```</span>.
17947    ///
17948    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html#verticesPerPatch-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds vertices per patch.</p>
17949    /// <p><b>Access functions:</b></p>
17950    /// <div class="table"><table class="alignedsummary">
17951    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>verticesPerPatch</b></span>() const</td></tr>
17952    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVerticesPerPatch</b></span>(int <i>verticesPerPatch</i>)</td></tr>
17953    /// </tbody></table></div>
17954    /// <p><b>Notifier signal:</b></p>
17955    /// <div class="table"><table class="alignedsummary">
17956    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>verticesPerPatchChanged</b></span>(int <i>verticesPerPatch</i>)</td></tr>
17957    /// </tbody></table></div></div>
17958    #[inline(always)]
17959    pub unsafe fn vertices_per_patch(&self) -> ::std::os::raw::c_int {
17960        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_verticesPerPatch(
17961            self as *const crate::QGeometryRenderer,
17962        )
17963    }
17964}
17965
17966pub mod q_graphics_api_filter {
17967    //! C++ type: <span style='color: green;'>```Qt3DRender::QGraphicsApiFilter```</span>
17968
17969    /// C++ enum: <span style='color: green;'>```Qt3DRender::QGraphicsApiFilter::Api```</span>.
17970    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
17971    #[repr(transparent)]
17972    pub struct Api(::std::os::raw::c_int);
17973
17974    impl From<::std::os::raw::c_int> for Api {
17975        fn from(value: ::std::os::raw::c_int) -> Self {
17976            Api(value)
17977        }
17978    }
17979
17980    impl From<Api> for ::std::os::raw::c_int {
17981        fn from(value: Api) -> Self {
17982            value.0
17983        }
17984    }
17985
17986    impl Api {
17987        pub fn to_int(&self) -> ::std::os::raw::c_int {
17988            self.0
17989        }
17990    }
17991
17992    impl Api {
17993        /// C++ enum variant: <span style='color: green;'>```OpenGLES = 2```</span>
17994        #[allow(non_upper_case_globals)]
17995        pub const OpenGLES: crate::q_graphics_api_filter::Api =
17996            crate::q_graphics_api_filter::Api(2);
17997        /// C++ enum variant: <span style='color: green;'>```OpenGL = 1```</span>
17998        #[allow(non_upper_case_globals)]
17999        pub const OpenGL: crate::q_graphics_api_filter::Api = crate::q_graphics_api_filter::Api(1);
18000        /// C++ enum variant: <span style='color: green;'>```Vulkan = 3```</span>
18001        #[allow(non_upper_case_globals)]
18002        pub const Vulkan: crate::q_graphics_api_filter::Api = crate::q_graphics_api_filter::Api(3);
18003        /// C++ enum variant: <span style='color: green;'>```DirectX = 4```</span>
18004        #[allow(non_upper_case_globals)]
18005        pub const DirectX: crate::q_graphics_api_filter::Api = crate::q_graphics_api_filter::Api(4);
18006    }
18007
18008    /// C++ enum: <span style='color: green;'>```Qt3DRender::QGraphicsApiFilter::OpenGLProfile```</span>.
18009    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
18010    #[repr(transparent)]
18011    pub struct OpenGLProfile(::std::os::raw::c_int);
18012
18013    impl From<::std::os::raw::c_int> for OpenGLProfile {
18014        fn from(value: ::std::os::raw::c_int) -> Self {
18015            OpenGLProfile(value)
18016        }
18017    }
18018
18019    impl From<OpenGLProfile> for ::std::os::raw::c_int {
18020        fn from(value: OpenGLProfile) -> Self {
18021            value.0
18022        }
18023    }
18024
18025    impl OpenGLProfile {
18026        pub fn to_int(&self) -> ::std::os::raw::c_int {
18027            self.0
18028        }
18029    }
18030
18031    impl OpenGLProfile {
18032        /// C++ enum variant: <span style='color: green;'>```NoProfile = 0```</span>
18033        #[allow(non_upper_case_globals)]
18034        pub const NoProfile: crate::q_graphics_api_filter::OpenGLProfile =
18035            crate::q_graphics_api_filter::OpenGLProfile(0);
18036        /// C++ enum variant: <span style='color: green;'>```CoreProfile = 1```</span>
18037        #[allow(non_upper_case_globals)]
18038        pub const CoreProfile: crate::q_graphics_api_filter::OpenGLProfile =
18039            crate::q_graphics_api_filter::OpenGLProfile(1);
18040        /// C++ enum variant: <span style='color: green;'>```CompatibilityProfile = 2```</span>
18041        #[allow(non_upper_case_globals)]
18042        pub const CompatibilityProfile: crate::q_graphics_api_filter::OpenGLProfile =
18043            crate::q_graphics_api_filter::OpenGLProfile(2);
18044    }
18045}
18046/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a> class identifies the API required for the attached <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></p>
18047///
18048/// C++ class: <span style='color: green;'>```Qt3DRender::QGraphicsApiFilter```</span>.
18049///
18050/// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a> class identifies the API required for the attached <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></p></div>
18051#[repr(C)]
18052pub struct QGraphicsApiFilter {
18053    _unused: u8,
18054}
18055impl QGraphicsApiFilter {
18056    /// <p><b>Access functions:</b></p>
18057    ///
18058    /// Returns a built-in Qt slot `Qt3DRender::QGraphicsApiFilter::setApi` that can be passed to `qt_core::Signal::connect`.
18059    ///
18060    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#api-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18061    /// <div class="table"><table class="alignedsummary">
18062    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Api </td><td class="memItemRight bottomAlign"><span class="name"><b>api</b></span>() const</td></tr>
18063    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setApi</b></span>(Api <i>api</i>)</td></tr>
18064    /// </tbody></table></div>
18065    /// <p><b>Notifier signal:</b></p>
18066    /// <div class="table"><table class="alignedsummary">
18067    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>apiChanged</b></span>(Qt3DRender::QGraphicsApiFilter::Api <i>api</i>)</td></tr>
18068    /// </tbody></table></div></div>
18069    #[inline(always)]
18070    pub fn slot_set_api(&self) -> ::qt_core::Receiver<(crate::q_graphics_api_filter::Api,)> {
18071        unsafe {
18072            ::qt_core::Receiver::new(
18073                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18074                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
18075                    b"1setApi(Qt3DRender::QGraphicsApiFilter::Api)\0",
18076                ),
18077            )
18078        }
18079    }
18080
18081    /// <p><b>Access functions:</b></p>
18082    ///
18083    /// Returns a built-in Qt slot `Qt3DRender::QGraphicsApiFilter::setProfile` that can be passed to `qt_core::Signal::connect`.
18084    ///
18085    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#profile-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18086    /// <div class="table"><table class="alignedsummary">
18087    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> OpenGLProfile </td><td class="memItemRight bottomAlign"><span class="name"><b>profile</b></span>() const</td></tr>
18088    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setProfile</b></span>(OpenGLProfile <i>profile</i>)</td></tr>
18089    /// </tbody></table></div>
18090    /// <p><b>Notifier signal:</b></p>
18091    /// <div class="table"><table class="alignedsummary">
18092    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>profileChanged</b></span>(Qt3DRender::QGraphicsApiFilter::OpenGLProfile <i>profile</i>)</td></tr>
18093    /// </tbody></table></div></div>
18094    #[inline(always)]
18095    pub fn slot_set_profile(
18096        &self,
18097    ) -> ::qt_core::Receiver<(crate::q_graphics_api_filter::OpenGLProfile,)> {
18098        unsafe {
18099            ::qt_core::Receiver::new(
18100                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18101                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
18102                    b"1setProfile(Qt3DRender::QGraphicsApiFilter::OpenGLProfile)\0",
18103                ),
18104            )
18105        }
18106    }
18107
18108    /// <p><b>Access functions:</b></p>
18109    ///
18110    /// Returns a built-in Qt slot `Qt3DRender::QGraphicsApiFilter::setMinorVersion` that can be passed to `qt_core::Signal::connect`.
18111    ///
18112    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#minorVersion-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18113    /// <div class="table"><table class="alignedsummary">
18114    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>minorVersion</b></span>() const</td></tr>
18115    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMinorVersion</b></span>(int <i>minorVersion</i>)</td></tr>
18116    /// </tbody></table></div>
18117    /// <p><b>Notifier signal:</b></p>
18118    /// <div class="table"><table class="alignedsummary">
18119    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>minorVersionChanged</b></span>(int <i>minorVersion</i>)</td></tr>
18120    /// </tbody></table></div></div>
18121    #[inline(always)]
18122    pub fn slot_set_minor_version(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
18123        unsafe {
18124            ::qt_core::Receiver::new(
18125                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18126                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setMinorVersion(int)\0"),
18127            )
18128        }
18129    }
18130
18131    /// <p><b>Access functions:</b></p>
18132    ///
18133    /// Returns a built-in Qt slot `Qt3DRender::QGraphicsApiFilter::setMajorVersion` that can be passed to `qt_core::Signal::connect`.
18134    ///
18135    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#majorVersion-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18136    /// <div class="table"><table class="alignedsummary">
18137    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>majorVersion</b></span>() const</td></tr>
18138    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMajorVersion</b></span>(int <i>majorVersion</i>)</td></tr>
18139    /// </tbody></table></div>
18140    /// <p><b>Notifier signal:</b></p>
18141    /// <div class="table"><table class="alignedsummary">
18142    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>majorVersionChanged</b></span>(int <i>majorVersion</i>)</td></tr>
18143    /// </tbody></table></div></div>
18144    #[inline(always)]
18145    pub fn slot_set_major_version(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
18146        unsafe {
18147            ::qt_core::Receiver::new(
18148                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18149                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setMajorVersion(int)\0"),
18150            )
18151        }
18152    }
18153
18154    /// <p><b>Access functions:</b></p>
18155    ///
18156    /// Returns a built-in Qt slot `Qt3DRender::QGraphicsApiFilter::setExtensions` that can be passed to `qt_core::Signal::connect`.
18157    ///
18158    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#extensions-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18159    /// <div class="table"><table class="alignedsummary">
18160    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStringList </td><td class="memItemRight bottomAlign"><span class="name"><b>extensions</b></span>() const</td></tr>
18161    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setExtensions</b></span>(const QStringList &amp;<i>extensions</i>)</td></tr>
18162    /// </tbody></table></div>
18163    /// <p><b>Notifier signal:</b></p>
18164    /// <div class="table"><table class="alignedsummary">
18165    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>extensionsChanged</b></span>(const QStringList &amp;<i>extensions</i>)</td></tr>
18166    /// </tbody></table></div></div>
18167    #[inline(always)]
18168    pub fn slot_set_extensions(&self) -> ::qt_core::Receiver<(*const ::qt_core::QStringList,)> {
18169        unsafe {
18170            ::qt_core::Receiver::new(
18171                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18172                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
18173                    b"1setExtensions(QStringList const &)\0",
18174                ),
18175            )
18176        }
18177    }
18178
18179    /// <p><b>Access functions:</b></p>
18180    ///
18181    /// Returns a built-in Qt slot `Qt3DRender::QGraphicsApiFilter::setVendor` that can be passed to `qt_core::Signal::connect`.
18182    ///
18183    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#vendor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18184    /// <div class="table"><table class="alignedsummary">
18185    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>vendor</b></span>() const</td></tr>
18186    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVendor</b></span>(const QString &amp;<i>vendor</i>)</td></tr>
18187    /// </tbody></table></div>
18188    /// <p><b>Notifier signal:</b></p>
18189    /// <div class="table"><table class="alignedsummary">
18190    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vendorChanged</b></span>(const QString &amp;<i>vendor</i>)</td></tr>
18191    /// </tbody></table></div></div>
18192    #[inline(always)]
18193    pub fn slot_set_vendor(&self) -> ::qt_core::Receiver<(*const ::qt_core::QString,)> {
18194        unsafe {
18195            ::qt_core::Receiver::new(
18196                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18197                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setVendor(QString const &)\0"),
18198            )
18199        }
18200    }
18201
18202    /// <p><b>Access functions:</b></p>
18203    ///
18204    /// Returns a built-in Qt signal `Qt3DRender::QGraphicsApiFilter::apiChanged` that can be passed to `qt_core::Signal::connect`.
18205    ///
18206    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#api-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18207    /// <div class="table"><table class="alignedsummary">
18208    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Api </td><td class="memItemRight bottomAlign"><span class="name"><b>api</b></span>() const</td></tr>
18209    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setApi</b></span>(Api <i>api</i>)</td></tr>
18210    /// </tbody></table></div>
18211    /// <p><b>Notifier signal:</b></p>
18212    /// <div class="table"><table class="alignedsummary">
18213    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>apiChanged</b></span>(Qt3DRender::QGraphicsApiFilter::Api <i>api</i>)</td></tr>
18214    /// </tbody></table></div></div>
18215    #[inline(always)]
18216    pub fn api_changed(&self) -> ::qt_core::Signal<(crate::q_graphics_api_filter::Api,)> {
18217        unsafe {
18218            ::qt_core::Signal::new(
18219                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18220                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
18221                    b"2apiChanged(Qt3DRender::QGraphicsApiFilter::Api)\0",
18222                ),
18223            )
18224        }
18225    }
18226
18227    /// <p><b>Access functions:</b></p>
18228    ///
18229    /// Returns a built-in Qt signal `Qt3DRender::QGraphicsApiFilter::profileChanged` that can be passed to `qt_core::Signal::connect`.
18230    ///
18231    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#profile-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18232    /// <div class="table"><table class="alignedsummary">
18233    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> OpenGLProfile </td><td class="memItemRight bottomAlign"><span class="name"><b>profile</b></span>() const</td></tr>
18234    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setProfile</b></span>(OpenGLProfile <i>profile</i>)</td></tr>
18235    /// </tbody></table></div>
18236    /// <p><b>Notifier signal:</b></p>
18237    /// <div class="table"><table class="alignedsummary">
18238    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>profileChanged</b></span>(Qt3DRender::QGraphicsApiFilter::OpenGLProfile <i>profile</i>)</td></tr>
18239    /// </tbody></table></div></div>
18240    #[inline(always)]
18241    pub fn profile_changed(
18242        &self,
18243    ) -> ::qt_core::Signal<(crate::q_graphics_api_filter::OpenGLProfile,)> {
18244        unsafe {
18245            ::qt_core::Signal::new(
18246                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18247                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
18248                    b"2profileChanged(Qt3DRender::QGraphicsApiFilter::OpenGLProfile)\0",
18249                ),
18250            )
18251        }
18252    }
18253
18254    /// <p><b>Access functions:</b></p>
18255    ///
18256    /// Returns a built-in Qt signal `Qt3DRender::QGraphicsApiFilter::minorVersionChanged` that can be passed to `qt_core::Signal::connect`.
18257    ///
18258    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#minorVersion-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18259    /// <div class="table"><table class="alignedsummary">
18260    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>minorVersion</b></span>() const</td></tr>
18261    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMinorVersion</b></span>(int <i>minorVersion</i>)</td></tr>
18262    /// </tbody></table></div>
18263    /// <p><b>Notifier signal:</b></p>
18264    /// <div class="table"><table class="alignedsummary">
18265    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>minorVersionChanged</b></span>(int <i>minorVersion</i>)</td></tr>
18266    /// </tbody></table></div></div>
18267    #[inline(always)]
18268    pub fn minor_version_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
18269        unsafe {
18270            ::qt_core::Signal::new(
18271                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18272                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2minorVersionChanged(int)\0"),
18273            )
18274        }
18275    }
18276
18277    /// <p><b>Access functions:</b></p>
18278    ///
18279    /// Returns a built-in Qt signal `Qt3DRender::QGraphicsApiFilter::majorVersionChanged` that can be passed to `qt_core::Signal::connect`.
18280    ///
18281    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#majorVersion-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18282    /// <div class="table"><table class="alignedsummary">
18283    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>majorVersion</b></span>() const</td></tr>
18284    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMajorVersion</b></span>(int <i>majorVersion</i>)</td></tr>
18285    /// </tbody></table></div>
18286    /// <p><b>Notifier signal:</b></p>
18287    /// <div class="table"><table class="alignedsummary">
18288    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>majorVersionChanged</b></span>(int <i>majorVersion</i>)</td></tr>
18289    /// </tbody></table></div></div>
18290    #[inline(always)]
18291    pub fn major_version_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
18292        unsafe {
18293            ::qt_core::Signal::new(
18294                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18295                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2majorVersionChanged(int)\0"),
18296            )
18297        }
18298    }
18299
18300    /// <p><b>Access functions:</b></p>
18301    ///
18302    /// Returns a built-in Qt signal `Qt3DRender::QGraphicsApiFilter::extensionsChanged` that can be passed to `qt_core::Signal::connect`.
18303    ///
18304    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#extensions-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18305    /// <div class="table"><table class="alignedsummary">
18306    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStringList </td><td class="memItemRight bottomAlign"><span class="name"><b>extensions</b></span>() const</td></tr>
18307    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setExtensions</b></span>(const QStringList &amp;<i>extensions</i>)</td></tr>
18308    /// </tbody></table></div>
18309    /// <p><b>Notifier signal:</b></p>
18310    /// <div class="table"><table class="alignedsummary">
18311    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>extensionsChanged</b></span>(const QStringList &amp;<i>extensions</i>)</td></tr>
18312    /// </tbody></table></div></div>
18313    #[inline(always)]
18314    pub fn extensions_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QStringList,)> {
18315        unsafe {
18316            ::qt_core::Signal::new(
18317                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18318                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
18319                    b"2extensionsChanged(QStringList const &)\0",
18320                ),
18321            )
18322        }
18323    }
18324
18325    /// <p><b>Access functions:</b></p>
18326    ///
18327    /// Returns a built-in Qt signal `Qt3DRender::QGraphicsApiFilter::vendorChanged` that can be passed to `qt_core::Signal::connect`.
18328    ///
18329    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#vendor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18330    /// <div class="table"><table class="alignedsummary">
18331    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>vendor</b></span>() const</td></tr>
18332    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVendor</b></span>(const QString &amp;<i>vendor</i>)</td></tr>
18333    /// </tbody></table></div>
18334    /// <p><b>Notifier signal:</b></p>
18335    /// <div class="table"><table class="alignedsummary">
18336    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vendorChanged</b></span>(const QString &amp;<i>vendor</i>)</td></tr>
18337    /// </tbody></table></div></div>
18338    #[inline(always)]
18339    pub fn vendor_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QString,)> {
18340        unsafe {
18341            ::qt_core::Signal::new(
18342                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18343                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
18344                    b"2vendorChanged(QString const &)\0",
18345                ),
18346            )
18347        }
18348    }
18349
18350    /// <p>This signal is emitted when the value of any property is changed.</p>
18351    ///
18352    /// Returns a built-in Qt signal `Qt3DRender::QGraphicsApiFilter::graphicsApiFilterChanged` that can be passed to `qt_core::Signal::connect`.
18353    ///
18354    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#graphicsApiFilterChanged">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when the value of any property is changed.</p></div>
18355    #[inline(always)]
18356    pub fn graphics_api_filter_changed(&self) -> ::qt_core::Signal<()> {
18357        unsafe {
18358            ::qt_core::Signal::new(
18359                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
18360                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2graphicsApiFilterChanged()\0"),
18361            )
18362        }
18363    }
18364
18365    /// <p><b>Access functions:</b></p>
18366    ///
18367    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGraphicsApiFilter::Api Qt3DRender::QGraphicsApiFilter::api() const```</span>.
18368    ///
18369    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#api-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18370    /// <div class="table"><table class="alignedsummary">
18371    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Api </td><td class="memItemRight bottomAlign"><span class="name"><b>api</b></span>() const</td></tr>
18372    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setApi</b></span>(Api <i>api</i>)</td></tr>
18373    /// </tbody></table></div>
18374    /// <p><b>Notifier signal:</b></p>
18375    /// <div class="table"><table class="alignedsummary">
18376    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>apiChanged</b></span>(Qt3DRender::QGraphicsApiFilter::Api <i>api</i>)</td></tr>
18377    /// </tbody></table></div></div>
18378    #[inline(always)]
18379    pub unsafe fn api(&self) -> crate::q_graphics_api_filter::Api {
18380        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_api(
18381            self as *const crate::QGraphicsApiFilter,
18382        )
18383    }
18384
18385    /// <p><b>Access functions:</b></p>
18386    ///
18387    /// Calls C++ function: <span style='color: green;'>```QStringList Qt3DRender::QGraphicsApiFilter::extensions() const```</span>.
18388    ///
18389    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#extensions-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18390    /// <div class="table"><table class="alignedsummary">
18391    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStringList </td><td class="memItemRight bottomAlign"><span class="name"><b>extensions</b></span>() const</td></tr>
18392    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setExtensions</b></span>(const QStringList &amp;<i>extensions</i>)</td></tr>
18393    /// </tbody></table></div>
18394    /// <p><b>Notifier signal:</b></p>
18395    /// <div class="table"><table class="alignedsummary">
18396    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>extensionsChanged</b></span>(const QStringList &amp;<i>extensions</i>)</td></tr>
18397    /// </tbody></table></div></div>
18398    #[inline(always)]
18399    pub unsafe fn extensions(&self) -> ::cpp_core::CppBox<::qt_core::QStringList> {
18400        let ffi_result = {
18401            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_extensions(
18402                self as *const crate::QGraphicsApiFilter,
18403            )
18404        };
18405        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18406    }
18407
18408    /// <p><b>Access functions:</b></p>
18409    ///
18410    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGraphicsApiFilter::majorVersion() const```</span>.
18411    ///
18412    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#majorVersion-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18413    /// <div class="table"><table class="alignedsummary">
18414    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>majorVersion</b></span>() const</td></tr>
18415    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMajorVersion</b></span>(int <i>majorVersion</i>)</td></tr>
18416    /// </tbody></table></div>
18417    /// <p><b>Notifier signal:</b></p>
18418    /// <div class="table"><table class="alignedsummary">
18419    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>majorVersionChanged</b></span>(int <i>majorVersion</i>)</td></tr>
18420    /// </tbody></table></div></div>
18421    #[inline(always)]
18422    pub unsafe fn major_version(&self) -> ::std::os::raw::c_int {
18423        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_majorVersion(
18424            self as *const crate::QGraphicsApiFilter,
18425        )
18426    }
18427
18428    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QGraphicsApiFilter::metaObject() const```</span>.
18429    #[inline(always)]
18430    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
18431        let ffi_result = {
18432            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_metaObject(
18433                self as *const crate::QGraphicsApiFilter,
18434            )
18435        };
18436        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18437    }
18438
18439    /// <p><b>Access functions:</b></p>
18440    ///
18441    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QGraphicsApiFilter::minorVersion() const```</span>.
18442    ///
18443    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#minorVersion-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18444    /// <div class="table"><table class="alignedsummary">
18445    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>minorVersion</b></span>() const</td></tr>
18446    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMinorVersion</b></span>(int <i>minorVersion</i>)</td></tr>
18447    /// </tbody></table></div>
18448    /// <p><b>Notifier signal:</b></p>
18449    /// <div class="table"><table class="alignedsummary">
18450    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>minorVersionChanged</b></span>(int <i>minorVersion</i>)</td></tr>
18451    /// </tbody></table></div></div>
18452    #[inline(always)]
18453    pub unsafe fn minor_version(&self) -> ::std::os::raw::c_int {
18454        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_minorVersion(
18455            self as *const crate::QGraphicsApiFilter,
18456        )
18457    }
18458
18459    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a> with the specified <i>parent</i>.</p>
18460    ///
18461    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QGraphicsApiFilter::QGraphicsApiFilter(QObject* parent = …)```</span>.
18462    ///
18463    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#QGraphicsApiFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a> with the specified <i>parent</i>.</p></div>
18464    #[inline(always)]
18465    pub unsafe fn new_1a(
18466        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
18467    ) -> ::qt_core::QBox<crate::QGraphicsApiFilter> {
18468        let ffi_result = {
18469            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_QGraphicsApiFilter(
18470                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
18471                    .as_raw_ptr() as *mut ::qt_core::QObject,
18472            )
18473        };
18474        ::qt_core::QBox::from_raw(ffi_result)
18475    }
18476
18477    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a> class identifies the API required for the attached <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></p>
18478    ///
18479    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QGraphicsApiFilter::QGraphicsApiFilter()```</span>.
18480    ///
18481    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a> class identifies the API required for the attached <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></p></div>
18482    #[inline(always)]
18483    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QGraphicsApiFilter> {
18484        let ffi_result = {
18485            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_QGraphicsApiFilter1()
18486        };
18487        ::qt_core::QBox::from_raw(ffi_result)
18488    }
18489
18490    /// <p><b>Access functions:</b></p>
18491    ///
18492    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGraphicsApiFilter::OpenGLProfile Qt3DRender::QGraphicsApiFilter::profile() const```</span>.
18493    ///
18494    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#profile-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18495    /// <div class="table"><table class="alignedsummary">
18496    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> OpenGLProfile </td><td class="memItemRight bottomAlign"><span class="name"><b>profile</b></span>() const</td></tr>
18497    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setProfile</b></span>(OpenGLProfile <i>profile</i>)</td></tr>
18498    /// </tbody></table></div>
18499    /// <p><b>Notifier signal:</b></p>
18500    /// <div class="table"><table class="alignedsummary">
18501    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>profileChanged</b></span>(Qt3DRender::QGraphicsApiFilter::OpenGLProfile <i>profile</i>)</td></tr>
18502    /// </tbody></table></div></div>
18503    #[inline(always)]
18504    pub unsafe fn profile(&self) -> crate::q_graphics_api_filter::OpenGLProfile {
18505        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_profile(
18506            self as *const crate::QGraphicsApiFilter,
18507        )
18508    }
18509
18510    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QGraphicsApiFilter::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
18511    #[inline(always)]
18512    pub unsafe fn qt_metacall(
18513        &self,
18514        arg1: ::qt_core::q_meta_object::Call,
18515        arg2: ::std::os::raw::c_int,
18516        arg3: *mut *mut ::std::ffi::c_void,
18517    ) -> ::std::os::raw::c_int {
18518        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_qt_metacall(
18519            self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
18520            arg1,
18521            arg2,
18522            arg3,
18523        )
18524    }
18525
18526    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QGraphicsApiFilter::qt_metacast(const char* arg1)```</span>.
18527    #[inline(always)]
18528    pub unsafe fn qt_metacast(
18529        &self,
18530        arg1: *const ::std::os::raw::c_char,
18531    ) -> *mut ::std::ffi::c_void {
18532        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_qt_metacast(
18533            self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
18534            arg1,
18535        )
18536    }
18537
18538    /// <p><b>Access functions:</b></p>
18539    ///
18540    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGraphicsApiFilter::setApi(Qt3DRender::QGraphicsApiFilter::Api api)```</span>.
18541    ///
18542    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#api-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18543    /// <div class="table"><table class="alignedsummary">
18544    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Api </td><td class="memItemRight bottomAlign"><span class="name"><b>api</b></span>() const</td></tr>
18545    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setApi</b></span>(Api <i>api</i>)</td></tr>
18546    /// </tbody></table></div>
18547    /// <p><b>Notifier signal:</b></p>
18548    /// <div class="table"><table class="alignedsummary">
18549    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>apiChanged</b></span>(Qt3DRender::QGraphicsApiFilter::Api <i>api</i>)</td></tr>
18550    /// </tbody></table></div></div>
18551    #[inline(always)]
18552    pub unsafe fn set_api(&self, api: crate::q_graphics_api_filter::Api) {
18553        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_setApi(
18554            self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
18555            api,
18556        )
18557    }
18558
18559    /// <p><b>Access functions:</b></p>
18560    ///
18561    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGraphicsApiFilter::setExtensions(const QStringList& extensions)```</span>.
18562    ///
18563    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#extensions-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18564    /// <div class="table"><table class="alignedsummary">
18565    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStringList </td><td class="memItemRight bottomAlign"><span class="name"><b>extensions</b></span>() const</td></tr>
18566    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setExtensions</b></span>(const QStringList &amp;<i>extensions</i>)</td></tr>
18567    /// </tbody></table></div>
18568    /// <p><b>Notifier signal:</b></p>
18569    /// <div class="table"><table class="alignedsummary">
18570    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>extensionsChanged</b></span>(const QStringList &amp;<i>extensions</i>)</td></tr>
18571    /// </tbody></table></div></div>
18572    #[inline(always)]
18573    pub unsafe fn set_extensions(
18574        &self,
18575        extensions: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QStringList>>,
18576    ) {
18577        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_setExtensions(
18578            self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
18579            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QStringList>>::cast_into(extensions)
18580                .as_raw_ptr(),
18581        )
18582    }
18583
18584    /// <p><b>Access functions:</b></p>
18585    ///
18586    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGraphicsApiFilter::setMajorVersion(int majorVersion)```</span>.
18587    ///
18588    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#majorVersion-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18589    /// <div class="table"><table class="alignedsummary">
18590    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>majorVersion</b></span>() const</td></tr>
18591    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMajorVersion</b></span>(int <i>majorVersion</i>)</td></tr>
18592    /// </tbody></table></div>
18593    /// <p><b>Notifier signal:</b></p>
18594    /// <div class="table"><table class="alignedsummary">
18595    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>majorVersionChanged</b></span>(int <i>majorVersion</i>)</td></tr>
18596    /// </tbody></table></div></div>
18597    #[inline(always)]
18598    pub unsafe fn set_major_version(&self, major_version: ::std::os::raw::c_int) {
18599        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_setMajorVersion(
18600            self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
18601            major_version,
18602        )
18603    }
18604
18605    /// <p><b>Access functions:</b></p>
18606    ///
18607    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGraphicsApiFilter::setMinorVersion(int minorVersion)```</span>.
18608    ///
18609    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#minorVersion-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18610    /// <div class="table"><table class="alignedsummary">
18611    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>minorVersion</b></span>() const</td></tr>
18612    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMinorVersion</b></span>(int <i>minorVersion</i>)</td></tr>
18613    /// </tbody></table></div>
18614    /// <p><b>Notifier signal:</b></p>
18615    /// <div class="table"><table class="alignedsummary">
18616    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>minorVersionChanged</b></span>(int <i>minorVersion</i>)</td></tr>
18617    /// </tbody></table></div></div>
18618    #[inline(always)]
18619    pub unsafe fn set_minor_version(&self, minor_version: ::std::os::raw::c_int) {
18620        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_setMinorVersion(
18621            self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
18622            minor_version,
18623        )
18624    }
18625
18626    /// <p><b>Access functions:</b></p>
18627    ///
18628    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGraphicsApiFilter::setProfile(Qt3DRender::QGraphicsApiFilter::OpenGLProfile profile)```</span>.
18629    ///
18630    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#profile-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18631    /// <div class="table"><table class="alignedsummary">
18632    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> OpenGLProfile </td><td class="memItemRight bottomAlign"><span class="name"><b>profile</b></span>() const</td></tr>
18633    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setProfile</b></span>(OpenGLProfile <i>profile</i>)</td></tr>
18634    /// </tbody></table></div>
18635    /// <p><b>Notifier signal:</b></p>
18636    /// <div class="table"><table class="alignedsummary">
18637    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>profileChanged</b></span>(Qt3DRender::QGraphicsApiFilter::OpenGLProfile <i>profile</i>)</td></tr>
18638    /// </tbody></table></div></div>
18639    #[inline(always)]
18640    pub unsafe fn set_profile(&self, profile: crate::q_graphics_api_filter::OpenGLProfile) {
18641        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_setProfile(
18642            self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
18643            profile,
18644        )
18645    }
18646
18647    /// <p><b>Access functions:</b></p>
18648    ///
18649    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QGraphicsApiFilter::setVendor(const QString& vendor)```</span>.
18650    ///
18651    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#vendor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18652    /// <div class="table"><table class="alignedsummary">
18653    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>vendor</b></span>() const</td></tr>
18654    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVendor</b></span>(const QString &amp;<i>vendor</i>)</td></tr>
18655    /// </tbody></table></div>
18656    /// <p><b>Notifier signal:</b></p>
18657    /// <div class="table"><table class="alignedsummary">
18658    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vendorChanged</b></span>(const QString &amp;<i>vendor</i>)</td></tr>
18659    /// </tbody></table></div></div>
18660    #[inline(always)]
18661    pub unsafe fn set_vendor(
18662        &self,
18663        vendor: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
18664    ) {
18665        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_setVendor(
18666            self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
18667            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(vendor)
18668                .as_raw_ptr(),
18669        )
18670    }
18671
18672    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
18673    #[inline(always)]
18674    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
18675        let ffi_result =
18676            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_staticMetaObject() };
18677        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18678            .expect("attempted to construct a null Ref")
18679    }
18680
18681    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QGraphicsApiFilter::tr(const char* s, const char* c, int n)```</span>.
18682    #[inline(always)]
18683    pub unsafe fn tr(
18684        s: *const ::std::os::raw::c_char,
18685        c: *const ::std::os::raw::c_char,
18686        n: ::std::os::raw::c_int,
18687    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18688        let ffi_result =
18689            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_tr(s, c, n) };
18690        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18691    }
18692
18693    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QGraphicsApiFilter::trUtf8(const char* s, const char* c, int n)```</span>.
18694    #[inline(always)]
18695    pub unsafe fn tr_utf8(
18696        s: *const ::std::os::raw::c_char,
18697        c: *const ::std::os::raw::c_char,
18698        n: ::std::os::raw::c_int,
18699    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18700        let ffi_result =
18701            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_trUtf8(s, c, n) };
18702        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18703    }
18704
18705    /// <p><b>Access functions:</b></p>
18706    ///
18707    /// Calls C++ function: <span style='color: green;'>```QString Qt3DRender::QGraphicsApiFilter::vendor() const```</span>.
18708    ///
18709    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html#vendor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
18710    /// <div class="table"><table class="alignedsummary">
18711    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>vendor</b></span>() const</td></tr>
18712    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVendor</b></span>(const QString &amp;<i>vendor</i>)</td></tr>
18713    /// </tbody></table></div>
18714    /// <p><b>Notifier signal:</b></p>
18715    /// <div class="table"><table class="alignedsummary">
18716    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vendorChanged</b></span>(const QString &amp;<i>vendor</i>)</td></tr>
18717    /// </tbody></table></div></div>
18718    #[inline(always)]
18719    pub unsafe fn vendor(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
18720        let ffi_result = {
18721            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_vendor(
18722                self as *const crate::QGraphicsApiFilter,
18723            )
18724        };
18725        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18726    }
18727}
18728
18729/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">QLayer</a> class provides a way of filtering which entities will be rendered.</p>
18730///
18731/// C++ class: <span style='color: green;'>```Qt3DRender::QLayer```</span>.
18732///
18733/// <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">QLayer</a> class provides a way of filtering which entities will be rendered.</p>
18734/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">Qt3DRender::QLayer</a> works in conjunction with the <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">Qt3DRender::QLayerFilter</a> in the FrameGraph.</p>
18735/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">Qt3DRender::QLayer</a> doesn't define any new properties but is supposed to only be referenced.</p>
18736/// <pre class="cpp">
18737///
18738///    <span class="preprocessor">#include &lt;Qt3DCore/QEntity&gt;</span>
18739///    <span class="preprocessor">#include &lt;Qt3DRender/QGeometryRenderer&gt;</span>
18740///    <span class="preprocessor">#include &lt;Qt3DRender/QLayer&gt;</span>
18741///    <span class="preprocessor">#include &lt;Qt3DRender/QLayerFilter&gt;</span>
18742///    <span class="preprocessor">#include &lt;Qt3DRender/QViewport&gt;</span>
18743///
18744///   <span class="comment">// Scene</span>
18745///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span> <span class="operator">*</span>rootEntity <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span>;
18746///
18747///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span> <span class="operator">*</span>renderableEntity <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span>(rootEntity);
18748///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a></span> <span class="operator">*</span>geometryRenderer <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a></span>(renderableEntity);
18749///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html#QLayer">QLayer</a></span> <span class="operator">*</span>layer1 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html#QLayer">QLayer</a></span>(renderableEntity);
18750///   renderableEntity<span class="operator">-</span><span class="operator">&gt;</span>addComponent(geometryRenderer);
18751///   renderableEntity<span class="operator">-</span><span class="operator">&gt;</span>addComponent(layer1);
18752///
18753///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
18754///
18755///   <span class="comment">// FrameGraph</span>
18756///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span> <span class="operator">*</span>viewport <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span>;
18757///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">QLayerFilter</a></span> <span class="operator">*</span>layerFilter <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">QLayerFilter</a></span>(viewport);
18758///   layerFilter<span class="operator">-</span><span class="operator">&gt;</span>addLayer(layer1);
18759///
18760///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
18761///
18762/// </pre></div>
18763#[repr(C)]
18764pub struct QLayer {
18765    _unused: u8,
18766}
18767impl QLayer {
18768    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QLayer::metaObject() const```</span>.
18769    #[inline(always)]
18770    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
18771        let ffi_result = {
18772            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_metaObject(
18773                self as *const crate::QLayer,
18774            )
18775        };
18776        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18777    }
18778
18779    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">QLayer</a> with the specified <i>parent</i>.</p>
18780    ///
18781    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLayer::QLayer(Qt3DCore::QNode* parent = …)```</span>.
18782    ///
18783    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html#QLayer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">QLayer</a> with the specified <i>parent</i>.</p></div>
18784    #[inline(always)]
18785    pub unsafe fn new_1a(
18786        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
18787    ) -> ::qt_core::QBox<crate::QLayer> {
18788        let ffi_result = {
18789            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_QLayer(
18790                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
18791                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
18792            )
18793        };
18794        ::qt_core::QBox::from_raw(ffi_result)
18795    }
18796
18797    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">QLayer</a> class provides a way of filtering which entities will be rendered.</p>
18798    ///
18799    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLayer::QLayer()```</span>.
18800    ///
18801    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">QLayer</a> class provides a way of filtering which entities will be rendered.</p>
18802    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">Qt3DRender::QLayer</a> works in conjunction with the <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">Qt3DRender::QLayerFilter</a> in the FrameGraph.</p>
18803    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">Qt3DRender::QLayer</a> doesn't define any new properties but is supposed to only be referenced.</p>
18804    /// <pre class="cpp">
18805    ///
18806    ///    <span class="preprocessor">#include &lt;Qt3DCore/QEntity&gt;</span>
18807    ///    <span class="preprocessor">#include &lt;Qt3DRender/QGeometryRenderer&gt;</span>
18808    ///    <span class="preprocessor">#include &lt;Qt3DRender/QLayer&gt;</span>
18809    ///    <span class="preprocessor">#include &lt;Qt3DRender/QLayerFilter&gt;</span>
18810    ///    <span class="preprocessor">#include &lt;Qt3DRender/QViewport&gt;</span>
18811    ///
18812    ///   <span class="comment">// Scene</span>
18813    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span> <span class="operator">*</span>rootEntity <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span>;
18814    ///
18815    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span> <span class="operator">*</span>renderableEntity <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span>(rootEntity);
18816    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a></span> <span class="operator">*</span>geometryRenderer <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a></span>(renderableEntity);
18817    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html#QLayer">QLayer</a></span> <span class="operator">*</span>layer1 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html#QLayer">QLayer</a></span>(renderableEntity);
18818    ///   renderableEntity<span class="operator">-</span><span class="operator">&gt;</span>addComponent(geometryRenderer);
18819    ///   renderableEntity<span class="operator">-</span><span class="operator">&gt;</span>addComponent(layer1);
18820    ///
18821    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
18822    ///
18823    ///   <span class="comment">// FrameGraph</span>
18824    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span> <span class="operator">*</span>viewport <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span>;
18825    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">QLayerFilter</a></span> <span class="operator">*</span>layerFilter <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">QLayerFilter</a></span>(viewport);
18826    ///   layerFilter<span class="operator">-</span><span class="operator">&gt;</span>addLayer(layer1);
18827    ///
18828    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
18829    ///
18830    /// </pre></div>
18831    #[inline(always)]
18832    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QLayer> {
18833        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_QLayer1() };
18834        ::qt_core::QBox::from_raw(ffi_result)
18835    }
18836
18837    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QLayer::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
18838    #[inline(always)]
18839    pub unsafe fn qt_metacall(
18840        &self,
18841        arg1: ::qt_core::q_meta_object::Call,
18842        arg2: ::std::os::raw::c_int,
18843        arg3: *mut *mut ::std::ffi::c_void,
18844    ) -> ::std::os::raw::c_int {
18845        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_qt_metacall(
18846            self as *const crate::QLayer as *mut crate::QLayer,
18847            arg1,
18848            arg2,
18849            arg3,
18850        )
18851    }
18852
18853    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QLayer::qt_metacast(const char* arg1)```</span>.
18854    #[inline(always)]
18855    pub unsafe fn qt_metacast(
18856        &self,
18857        arg1: *const ::std::os::raw::c_char,
18858    ) -> *mut ::std::ffi::c_void {
18859        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_qt_metacast(
18860            self as *const crate::QLayer as *mut crate::QLayer,
18861            arg1,
18862        )
18863    }
18864
18865    /// <p>Specifies if the layer is also applied to the entity subtree.</p>
18866    ///
18867    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QLayer::recursive() const```</span>.
18868    ///
18869    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html#recursive-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if the layer is also applied to the entity subtree.</p>
18870    /// <p><b>Access functions:</b></p>
18871    /// <div class="table"><table class="alignedsummary">
18872    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>recursive</b></span>() const</td></tr>
18873    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRecursive</b></span>(bool <i>recursive</i>)</td></tr>
18874    /// </tbody></table></div>
18875    /// <p><b>Notifier signal:</b></p>
18876    /// <div class="table"><table class="alignedsummary">
18877    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>recursiveChanged</b></span>()</td></tr>
18878    /// </tbody></table></div></div>
18879    #[inline(always)]
18880    #[cfg_attr(
18881        feature = "ritual_rustdoc_nightly",
18882        doc(cfg(any(
18883            cpp_lib_version = "5.11.3",
18884            cpp_lib_version = "5.12.2",
18885            cpp_lib_version = "5.13.0",
18886            cpp_lib_version = "5.14.0"
18887        )))
18888    )]
18889    #[cfg(any(
18890        any(
18891            cpp_lib_version = "5.11.3",
18892            cpp_lib_version = "5.12.2",
18893            cpp_lib_version = "5.13.0",
18894            cpp_lib_version = "5.14.0"
18895        ),
18896        feature = "ritual_rustdoc"
18897    ))]
18898    pub unsafe fn recursive(&self) -> bool {
18899        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_recursive(self as *const crate::QLayer)
18900    }
18901
18902    /// <p>Specifies if the layer is also applied to the entity subtree.</p>
18903    ///
18904    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QLayer::recursiveChanged()```</span>.
18905    ///
18906    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html#recursive-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if the layer is also applied to the entity subtree.</p>
18907    /// <p><b>Access functions:</b></p>
18908    /// <div class="table"><table class="alignedsummary">
18909    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>recursive</b></span>() const</td></tr>
18910    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRecursive</b></span>(bool <i>recursive</i>)</td></tr>
18911    /// </tbody></table></div>
18912    /// <p><b>Notifier signal:</b></p>
18913    /// <div class="table"><table class="alignedsummary">
18914    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>recursiveChanged</b></span>()</td></tr>
18915    /// </tbody></table></div></div>
18916    #[inline(always)]
18917    #[cfg_attr(
18918        feature = "ritual_rustdoc_nightly",
18919        doc(cfg(any(
18920            cpp_lib_version = "5.11.3",
18921            cpp_lib_version = "5.12.2",
18922            cpp_lib_version = "5.13.0",
18923            cpp_lib_version = "5.14.0"
18924        )))
18925    )]
18926    #[cfg(any(
18927        any(
18928            cpp_lib_version = "5.11.3",
18929            cpp_lib_version = "5.12.2",
18930            cpp_lib_version = "5.13.0",
18931            cpp_lib_version = "5.14.0"
18932        ),
18933        feature = "ritual_rustdoc"
18934    ))]
18935    pub unsafe fn recursive_changed(&self) {
18936        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_recursiveChanged(
18937            self as *const crate::QLayer as *mut crate::QLayer,
18938        )
18939    }
18940
18941    /// <p>Specifies if the layer is also applied to the entity subtree.</p>
18942    ///
18943    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QLayer::setRecursive(bool recursive)```</span>.
18944    ///
18945    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html#recursive-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if the layer is also applied to the entity subtree.</p>
18946    /// <p><b>Access functions:</b></p>
18947    /// <div class="table"><table class="alignedsummary">
18948    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>recursive</b></span>() const</td></tr>
18949    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRecursive</b></span>(bool <i>recursive</i>)</td></tr>
18950    /// </tbody></table></div>
18951    /// <p><b>Notifier signal:</b></p>
18952    /// <div class="table"><table class="alignedsummary">
18953    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>recursiveChanged</b></span>()</td></tr>
18954    /// </tbody></table></div></div>
18955    #[inline(always)]
18956    #[cfg_attr(
18957        feature = "ritual_rustdoc_nightly",
18958        doc(cfg(any(
18959            cpp_lib_version = "5.11.3",
18960            cpp_lib_version = "5.12.2",
18961            cpp_lib_version = "5.13.0",
18962            cpp_lib_version = "5.14.0"
18963        )))
18964    )]
18965    #[cfg(any(
18966        any(
18967            cpp_lib_version = "5.11.3",
18968            cpp_lib_version = "5.12.2",
18969            cpp_lib_version = "5.13.0",
18970            cpp_lib_version = "5.14.0"
18971        ),
18972        feature = "ritual_rustdoc"
18973    ))]
18974    pub unsafe fn set_recursive(&self, recursive: bool) {
18975        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_setRecursive(
18976            self as *const crate::QLayer as *mut crate::QLayer,
18977            recursive,
18978        )
18979    }
18980
18981    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
18982    #[inline(always)]
18983    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
18984        let ffi_result =
18985            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_staticMetaObject() };
18986        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
18987            .expect("attempted to construct a null Ref")
18988    }
18989
18990    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLayer::tr(const char* s, const char* c, int n)```</span>.
18991    #[inline(always)]
18992    pub unsafe fn tr(
18993        s: *const ::std::os::raw::c_char,
18994        c: *const ::std::os::raw::c_char,
18995        n: ::std::os::raw::c_int,
18996    ) -> ::cpp_core::CppBox<::qt_core::QString> {
18997        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_tr(s, c, n) };
18998        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
18999    }
19000
19001    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLayer::trUtf8(const char* s, const char* c, int n)```</span>.
19002    #[inline(always)]
19003    pub unsafe fn tr_utf8(
19004        s: *const ::std::os::raw::c_char,
19005        c: *const ::std::os::raw::c_char,
19006        n: ::std::os::raw::c_int,
19007    ) -> ::cpp_core::CppBox<::qt_core::QString> {
19008        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_trUtf8(s, c, n) };
19009        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19010    }
19011}
19012
19013pub mod q_layer_filter {
19014    //! C++ type: <span style='color: green;'>```Qt3DRender::QLayerFilter```</span>
19015
19016    /// C++ enum: <span style='color: green;'>```Qt3DRender::QLayerFilter::FilterMode```</span>.
19017    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
19018    #[repr(transparent)]
19019    pub struct FilterMode(::std::os::raw::c_int);
19020
19021    impl From<::std::os::raw::c_int> for FilterMode {
19022        fn from(value: ::std::os::raw::c_int) -> Self {
19023            FilterMode(value)
19024        }
19025    }
19026
19027    impl From<FilterMode> for ::std::os::raw::c_int {
19028        fn from(value: FilterMode) -> Self {
19029            value.0
19030        }
19031    }
19032
19033    impl FilterMode {
19034        pub fn to_int(&self) -> ::std::os::raw::c_int {
19035            self.0
19036        }
19037    }
19038
19039    impl FilterMode {
19040        /// C++ enum variant: <span style='color: green;'>```AcceptAnyMatchingLayers = 0```</span>
19041        #[allow(non_upper_case_globals)]
19042        pub const AcceptAnyMatchingLayers: crate::q_layer_filter::FilterMode =
19043            crate::q_layer_filter::FilterMode(0);
19044        /// C++ enum variant: <span style='color: green;'>```AcceptAllMatchingLayers = 1```</span>
19045        #[allow(non_upper_case_globals)]
19046        pub const AcceptAllMatchingLayers: crate::q_layer_filter::FilterMode =
19047            crate::q_layer_filter::FilterMode(1);
19048        /// C++ enum variant: <span style='color: green;'>```DiscardAnyMatchingLayers = 2```</span>
19049        #[allow(non_upper_case_globals)]
19050        pub const DiscardAnyMatchingLayers: crate::q_layer_filter::FilterMode =
19051            crate::q_layer_filter::FilterMode(2);
19052        /// C++ enum variant: <span style='color: green;'>```DiscardAllMatchingLayers = 3```</span>
19053        #[allow(non_upper_case_globals)]
19054        pub const DiscardAllMatchingLayers: crate::q_layer_filter::FilterMode =
19055            crate::q_layer_filter::FilterMode(3);
19056    }
19057}
19058/// <p>Controls layers Drawn in a frame graph branch.</p>
19059///
19060/// C++ class: <span style='color: green;'>```Qt3DRender::QLayerFilter```</span>.
19061///
19062/// <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Controls layers Drawn in a frame graph branch.</p>
19063/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">Qt3DRender::QLayerFilter</a> can be used to instruct the renderer as to which layer(s) to draw in that branch of the frame graph. The <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">Qt3DRender::QLayerFilter</a> selects which entities to draw based on the <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">Qt3DRender::QLayer</a> instances added to the <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">QLayerFilter</a> and as components to the <a href="http://doc.qt.io/qt-5/qt3dcore-qentity.html">Qt3DCore::QEntity</a>.</p></div>
19064#[repr(C)]
19065pub struct QLayerFilter {
19066    _unused: u8,
19067}
19068impl QLayerFilter {
19069    /// <p>Add <i>layer</i> to the current list of layers</p>
19070    ///
19071    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QLayerFilter::addLayer(Qt3DRender::QLayer* layer)```</span>.
19072    ///
19073    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html#addLayer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add <i>layer</i> to the current list of layers</p></div>
19074    #[inline(always)]
19075    pub unsafe fn add_layer(
19076        &self,
19077        layer: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QLayer>>,
19078    ) {
19079        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_addLayer(
19080            self as *const crate::QLayerFilter as *mut crate::QLayerFilter,
19081            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QLayer>>::cast_into(layer).as_raw_ptr()
19082                as *mut crate::QLayer,
19083        )
19084    }
19085
19086    /// <p>Holds the filter mode specifying the entities to select for drawing.</p>
19087    ///
19088    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayerFilter::FilterMode Qt3DRender::QLayerFilter::filterMode() const```</span>.
19089    ///
19090    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html#filterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the filter mode specifying the entities to select for drawing.</p>
19091    /// <p>The default value is AcceptMatchingLayers.</p>
19092    /// <p><b>Access functions:</b></p>
19093    /// <div class="table"><table class="alignedsummary">
19094    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QLayerFilter::FilterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>filterMode</b></span>() const</td></tr>
19095    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFilterMode</b></span>(Qt3DRender::QLayerFilter::FilterMode <i>filterMode</i>)</td></tr>
19096    /// </tbody></table></div>
19097    /// <p><b>Notifier signal:</b></p>
19098    /// <div class="table"><table class="alignedsummary">
19099    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>filterModeChanged</b></span>(Qt3DRender::QLayerFilter::FilterMode <i>filterMode</i>)</td></tr>
19100    /// </tbody></table></div></div>
19101    #[inline(always)]
19102    #[cfg_attr(
19103        feature = "ritual_rustdoc_nightly",
19104        doc(cfg(any(
19105            cpp_lib_version = "5.11.3",
19106            cpp_lib_version = "5.12.2",
19107            cpp_lib_version = "5.13.0",
19108            cpp_lib_version = "5.14.0"
19109        )))
19110    )]
19111    #[cfg(any(
19112        any(
19113            cpp_lib_version = "5.11.3",
19114            cpp_lib_version = "5.12.2",
19115            cpp_lib_version = "5.13.0",
19116            cpp_lib_version = "5.14.0"
19117        ),
19118        feature = "ritual_rustdoc"
19119    ))]
19120    pub unsafe fn filter_mode(&self) -> crate::q_layer_filter::FilterMode {
19121        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_filterMode(
19122            self as *const crate::QLayerFilter,
19123        )
19124    }
19125
19126    /// <p>Holds the filter mode specifying the entities to select for drawing.</p>
19127    ///
19128    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QLayerFilter::filterModeChanged(Qt3DRender::QLayerFilter::FilterMode filterMode)```</span>.
19129    ///
19130    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html#filterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the filter mode specifying the entities to select for drawing.</p>
19131    /// <p>The default value is AcceptMatchingLayers.</p>
19132    /// <p><b>Access functions:</b></p>
19133    /// <div class="table"><table class="alignedsummary">
19134    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QLayerFilter::FilterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>filterMode</b></span>() const</td></tr>
19135    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFilterMode</b></span>(Qt3DRender::QLayerFilter::FilterMode <i>filterMode</i>)</td></tr>
19136    /// </tbody></table></div>
19137    /// <p><b>Notifier signal:</b></p>
19138    /// <div class="table"><table class="alignedsummary">
19139    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>filterModeChanged</b></span>(Qt3DRender::QLayerFilter::FilterMode <i>filterMode</i>)</td></tr>
19140    /// </tbody></table></div></div>
19141    #[inline(always)]
19142    #[cfg_attr(
19143        feature = "ritual_rustdoc_nightly",
19144        doc(cfg(any(
19145            cpp_lib_version = "5.11.3",
19146            cpp_lib_version = "5.12.2",
19147            cpp_lib_version = "5.13.0",
19148            cpp_lib_version = "5.14.0"
19149        )))
19150    )]
19151    #[cfg(any(
19152        any(
19153            cpp_lib_version = "5.11.3",
19154            cpp_lib_version = "5.12.2",
19155            cpp_lib_version = "5.13.0",
19156            cpp_lib_version = "5.14.0"
19157        ),
19158        feature = "ritual_rustdoc"
19159    ))]
19160    pub unsafe fn filter_mode_changed(&self, filter_mode: crate::q_layer_filter::FilterMode) {
19161        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_filterModeChanged(
19162            self as *const crate::QLayerFilter as *mut crate::QLayerFilter,
19163            filter_mode,
19164        )
19165    }
19166
19167    /// <p>Returns the current list of layers</p>
19168    ///
19169    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*> Qt3DRender::QLayerFilter::layers() const```</span>.
19170    ///
19171    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html#layers">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current list of layers</p></div>
19172    #[inline(always)]
19173    pub unsafe fn layers(&self) -> ::cpp_core::CppBox<crate::QVectorOfQLayer> {
19174        let ffi_result = {
19175            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_layers(
19176                self as *const crate::QLayerFilter,
19177            )
19178        };
19179        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19180    }
19181
19182    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QLayerFilter::metaObject() const```</span>.
19183    #[inline(always)]
19184    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
19185        let ffi_result = {
19186            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_metaObject(
19187                self as *const crate::QLayerFilter,
19188            )
19189        };
19190        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
19191    }
19192
19193    /// <p>Default constructs an instance of QLayerFilter.</p>
19194    ///
19195    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLayerFilter::QLayerFilter(Qt3DCore::QNode* parent = …)```</span>.
19196    ///
19197    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html#QLayerFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QLayerFilter.</p></div>
19198    #[inline(always)]
19199    pub unsafe fn new_1a(
19200        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
19201    ) -> ::qt_core::QBox<crate::QLayerFilter> {
19202        let ffi_result = {
19203            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_QLayerFilter(
19204                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
19205                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
19206            )
19207        };
19208        ::qt_core::QBox::from_raw(ffi_result)
19209    }
19210
19211    /// <p>Controls layers Drawn in a frame graph branch.</p>
19212    ///
19213    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLayerFilter::QLayerFilter()```</span>.
19214    ///
19215    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Controls layers Drawn in a frame graph branch.</p>
19216    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">Qt3DRender::QLayerFilter</a> can be used to instruct the renderer as to which layer(s) to draw in that branch of the frame graph. The <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">Qt3DRender::QLayerFilter</a> selects which entities to draw based on the <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">Qt3DRender::QLayer</a> instances added to the <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html">QLayerFilter</a> and as components to the <a href="http://doc.qt.io/qt-5/qt3dcore-qentity.html">Qt3DCore::QEntity</a>.</p></div>
19217    #[inline(always)]
19218    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QLayerFilter> {
19219        let ffi_result =
19220            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_QLayerFilter1() };
19221        ::qt_core::QBox::from_raw(ffi_result)
19222    }
19223
19224    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QLayerFilter::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
19225    #[inline(always)]
19226    pub unsafe fn qt_metacall(
19227        &self,
19228        arg1: ::qt_core::q_meta_object::Call,
19229        arg2: ::std::os::raw::c_int,
19230        arg3: *mut *mut ::std::ffi::c_void,
19231    ) -> ::std::os::raw::c_int {
19232        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_qt_metacall(
19233            self as *const crate::QLayerFilter as *mut crate::QLayerFilter,
19234            arg1,
19235            arg2,
19236            arg3,
19237        )
19238    }
19239
19240    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QLayerFilter::qt_metacast(const char* arg1)```</span>.
19241    #[inline(always)]
19242    pub unsafe fn qt_metacast(
19243        &self,
19244        arg1: *const ::std::os::raw::c_char,
19245    ) -> *mut ::std::ffi::c_void {
19246        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_qt_metacast(
19247            self as *const crate::QLayerFilter as *mut crate::QLayerFilter,
19248            arg1,
19249        )
19250    }
19251
19252    /// <p>Remove <i>layer</i> from the current list of layers</p>
19253    ///
19254    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QLayerFilter::removeLayer(Qt3DRender::QLayer* layer)```</span>.
19255    ///
19256    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html#removeLayer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove <i>layer</i> from the current list of layers</p></div>
19257    #[inline(always)]
19258    pub unsafe fn remove_layer(
19259        &self,
19260        layer: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QLayer>>,
19261    ) {
19262        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_removeLayer(
19263            self as *const crate::QLayerFilter as *mut crate::QLayerFilter,
19264            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QLayer>>::cast_into(layer).as_raw_ptr()
19265                as *mut crate::QLayer,
19266        )
19267    }
19268
19269    /// <p>Holds the filter mode specifying the entities to select for drawing.</p>
19270    ///
19271    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QLayerFilter::setFilterMode(Qt3DRender::QLayerFilter::FilterMode filterMode)```</span>.
19272    ///
19273    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlayerfilter.html#filterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the filter mode specifying the entities to select for drawing.</p>
19274    /// <p>The default value is AcceptMatchingLayers.</p>
19275    /// <p><b>Access functions:</b></p>
19276    /// <div class="table"><table class="alignedsummary">
19277    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QLayerFilter::FilterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>filterMode</b></span>() const</td></tr>
19278    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFilterMode</b></span>(Qt3DRender::QLayerFilter::FilterMode <i>filterMode</i>)</td></tr>
19279    /// </tbody></table></div>
19280    /// <p><b>Notifier signal:</b></p>
19281    /// <div class="table"><table class="alignedsummary">
19282    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>filterModeChanged</b></span>(Qt3DRender::QLayerFilter::FilterMode <i>filterMode</i>)</td></tr>
19283    /// </tbody></table></div></div>
19284    #[inline(always)]
19285    #[cfg_attr(
19286        feature = "ritual_rustdoc_nightly",
19287        doc(cfg(any(
19288            cpp_lib_version = "5.11.3",
19289            cpp_lib_version = "5.12.2",
19290            cpp_lib_version = "5.13.0",
19291            cpp_lib_version = "5.14.0"
19292        )))
19293    )]
19294    #[cfg(any(
19295        any(
19296            cpp_lib_version = "5.11.3",
19297            cpp_lib_version = "5.12.2",
19298            cpp_lib_version = "5.13.0",
19299            cpp_lib_version = "5.14.0"
19300        ),
19301        feature = "ritual_rustdoc"
19302    ))]
19303    pub unsafe fn set_filter_mode(&self, filter_mode: crate::q_layer_filter::FilterMode) {
19304        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_setFilterMode(
19305            self as *const crate::QLayerFilter as *mut crate::QLayerFilter,
19306            filter_mode,
19307        )
19308    }
19309
19310    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
19311    #[inline(always)]
19312    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
19313        let ffi_result =
19314            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_staticMetaObject() };
19315        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
19316            .expect("attempted to construct a null Ref")
19317    }
19318
19319    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLayerFilter::tr(const char* s, const char* c, int n)```</span>.
19320    #[inline(always)]
19321    pub unsafe fn tr(
19322        s: *const ::std::os::raw::c_char,
19323        c: *const ::std::os::raw::c_char,
19324        n: ::std::os::raw::c_int,
19325    ) -> ::cpp_core::CppBox<::qt_core::QString> {
19326        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_tr(s, c, n) };
19327        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19328    }
19329
19330    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLayerFilter::trUtf8(const char* s, const char* c, int n)```</span>.
19331    #[inline(always)]
19332    pub unsafe fn tr_utf8(
19333        s: *const ::std::os::raw::c_char,
19334        c: *const ::std::os::raw::c_char,
19335        n: ::std::os::raw::c_int,
19336    ) -> ::cpp_core::CppBox<::qt_core::QString> {
19337        let ffi_result =
19338            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_trUtf8(s, c, n) };
19339        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19340    }
19341}
19342
19343/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">QLevelOfDetailBoundingSphere</a> class provides a simple spherical volume, defined by it's center and radius.</p>
19344///
19345/// C++ class: <span style='color: green;'>```Qt3DRender::QLevelOfDetailBoundingSphere```</span>.
19346///
19347/// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">QLevelOfDetailBoundingSphere</a> class provides a simple spherical volume, defined by it's center and radius.</p></div>
19348#[repr(C)]
19349pub struct QLevelOfDetailBoundingSphere {
19350    _unused: u8,
19351}
19352impl QLevelOfDetailBoundingSphere {
19353    /// <p>Specifies the center of the bounding sphere</p>
19354    ///
19355    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QLevelOfDetailBoundingSphere::center() const```</span>.
19356    ///
19357    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html#center-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the center of the bounding sphere</p>
19358    /// <p><b>Access functions:</b></p>
19359    /// <div class="table"><table class="alignedsummary">
19360    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>center</b></span>() const</td></tr>
19361    /// </tbody></table></div></div>
19362    #[inline(always)]
19363    pub unsafe fn center(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
19364        let ffi_result = {
19365            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_center(
19366                self as *const crate::QLevelOfDetailBoundingSphere,
19367            )
19368        };
19369        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19370    }
19371
19372    /// <p>Copy-assignment operator.</p>
19373    ///
19374    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailBoundingSphere& Qt3DRender::QLevelOfDetailBoundingSphere::operator=(const Qt3DRender::QLevelOfDetailBoundingSphere& other)```</span>.
19375    ///
19376    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Copy-assignment operator.</p></div>
19377    #[inline(always)]
19378    pub unsafe fn copy_from(
19379        &self,
19380        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>,
19381    ) -> ::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere> {
19382        let ffi_result = {
19383            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_operator_(self as *const crate::QLevelOfDetailBoundingSphere as *mut crate::QLevelOfDetailBoundingSphere, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>::cast_into(other).as_raw_ptr())
19384        };
19385        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
19386    }
19387
19388    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QLevelOfDetailBoundingSphere::isEmpty() const```</span>.
19389    #[inline(always)]
19390    pub unsafe fn is_empty(&self) -> bool {
19391        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_isEmpty(
19392            self as *const crate::QLevelOfDetailBoundingSphere,
19393        )
19394    }
19395
19396    /// <p>Default constructs an instance of QLevelOfDetailBoundingSphere.</p>
19397    ///
19398    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLevelOfDetailBoundingSphere::QLevelOfDetailBoundingSphere(QVector3D center = …, float radius = …)```</span>.
19399    ///
19400    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html#QLevelOfDetailBoundingSphere">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QLevelOfDetailBoundingSphere.</p></div>
19401    #[inline(always)]
19402    pub unsafe fn new_2a(
19403        center: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
19404        radius: ::std::os::raw::c_float,
19405    ) -> ::cpp_core::CppBox<crate::QLevelOfDetailBoundingSphere> {
19406        let ffi_result = {
19407            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_QLevelOfDetailBoundingSphere(::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(center).as_raw_ptr(), radius)
19408        };
19409        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19410    }
19411
19412    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">QLevelOfDetailBoundingSphere</a> class provides a simple spherical volume, defined by it's center and radius.</p>
19413    ///
19414    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLevelOfDetailBoundingSphere::QLevelOfDetailBoundingSphere()```</span>.
19415    ///
19416    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">QLevelOfDetailBoundingSphere</a> class provides a simple spherical volume, defined by it's center and radius.</p></div>
19417    #[inline(always)]
19418    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QLevelOfDetailBoundingSphere> {
19419        let ffi_result = {
19420            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_QLevelOfDetailBoundingSphere2()
19421        };
19422        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19423    }
19424
19425    /// <p>Default constructs an instance of QLevelOfDetailBoundingSphere.</p>
19426    ///
19427    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLevelOfDetailBoundingSphere::QLevelOfDetailBoundingSphere(QVector3D center = …)```</span>.
19428    ///
19429    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html#QLevelOfDetailBoundingSphere">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QLevelOfDetailBoundingSphere.</p></div>
19430    #[inline(always)]
19431    pub unsafe fn new_1a(
19432        center: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
19433    ) -> ::cpp_core::CppBox<crate::QLevelOfDetailBoundingSphere> {
19434        let ffi_result = {
19435            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_QLevelOfDetailBoundingSphere3(::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(center).as_raw_ptr())
19436        };
19437        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19438    }
19439
19440    /// <p>Copy constructor.</p>
19441    ///
19442    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLevelOfDetailBoundingSphere::QLevelOfDetailBoundingSphere(const Qt3DRender::QLevelOfDetailBoundingSphere& other)```</span>.
19443    ///
19444    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html#QLevelOfDetailBoundingSphere-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Copy constructor.</p></div>
19445    #[inline(always)]
19446    pub unsafe fn new_copy(
19447        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>,
19448    ) -> ::cpp_core::CppBox<crate::QLevelOfDetailBoundingSphere> {
19449        let ffi_result = {
19450            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_QLevelOfDetailBoundingSphere1(::cpp_core::CastInto::<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>::cast_into(other).as_raw_ptr())
19451        };
19452        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19453    }
19454
19455    /// <p>Specifies the radius of the bounding sphere</p>
19456    ///
19457    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QLevelOfDetailBoundingSphere::radius() const```</span>.
19458    ///
19459    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html#radius-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the radius of the bounding sphere</p>
19460    /// <p><b>Access functions:</b></p>
19461    /// <div class="table"><table class="alignedsummary">
19462    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>radius</b></span>() const</td></tr>
19463    /// </tbody></table></div></div>
19464    #[inline(always)]
19465    pub unsafe fn radius(&self) -> ::std::os::raw::c_float {
19466        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_radius(
19467            self as *const crate::QLevelOfDetailBoundingSphere,
19468        )
19469    }
19470
19471    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
19472    #[inline(always)]
19473    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
19474        let ffi_result = {
19475            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_staticMetaObject()
19476        };
19477        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
19478            .expect("attempted to construct a null Ref")
19479    }
19480}
19481
19482pub mod q_level_of_detail {
19483    //! C++ type: <span style='color: green;'>```Qt3DRender::QLevelOfDetail```</span>
19484
19485    /// C++ enum: <span style='color: green;'>```Qt3DRender::QLevelOfDetail::ThresholdType```</span>.
19486    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
19487    #[repr(transparent)]
19488    pub struct ThresholdType(::std::os::raw::c_int);
19489
19490    impl From<::std::os::raw::c_int> for ThresholdType {
19491        fn from(value: ::std::os::raw::c_int) -> Self {
19492            ThresholdType(value)
19493        }
19494    }
19495
19496    impl From<ThresholdType> for ::std::os::raw::c_int {
19497        fn from(value: ThresholdType) -> Self {
19498            value.0
19499        }
19500    }
19501
19502    impl ThresholdType {
19503        pub fn to_int(&self) -> ::std::os::raw::c_int {
19504            self.0
19505        }
19506    }
19507
19508    impl ThresholdType {
19509        /// C++ enum variant: <span style='color: green;'>```DistanceToCameraThreshold = 0```</span>
19510        #[allow(non_upper_case_globals)]
19511        pub const DistanceToCameraThreshold: crate::q_level_of_detail::ThresholdType =
19512            crate::q_level_of_detail::ThresholdType(0);
19513        /// C++ enum variant: <span style='color: green;'>```ProjectedScreenPixelSizeThreshold = 1```</span>
19514        #[allow(non_upper_case_globals)]
19515        pub const ProjectedScreenPixelSizeThreshold: crate::q_level_of_detail::ThresholdType =
19516            crate::q_level_of_detail::ThresholdType(1);
19517    }
19518}
19519/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">QLevelOfDetail</a> class provides a way of controlling the complexity of rendered entities based on their size on the screen.</p>
19520///
19521/// C++ class: <span style='color: green;'>```Qt3DRender::QLevelOfDetail```</span>.
19522///
19523/// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">QLevelOfDetail</a> class provides a way of controlling the complexity of rendered entities based on their size on the screen.</p>
19524/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">QLevelOfDetail</a> can be used to control the representation of an entity based on distance from the observer or size on the screen.</p>
19525/// <p>In order to improve rendering performance, objects that are very small can be rendered using far fewer details, in geometry or texture.</p>
19526/// <p>The component is controlled by specifying thresholds of values which are interpreted as either distances from the camera or screen size.</p>
19527/// <p>As the point of view changes, the <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">currentIndex</a> property will change to reflect matching value in the range array.</p>
19528/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">currentIndex</a> property can then be used, for example, to enable or disable entities, change material, etc.</p>
19529/// <p>The <a href="http://doc.qt.io/qt-5/qml-qt3d-render-levelofdetail.html">LevelOfDetail</a> component is not shareable between multiple <a href="http://doc.qt.io/qt-5/qml-qt3d-core-entity.html">entities</a>.</p>
19530/// <pre class="cpp">
19531///
19532///    <span class="preprocessor">#include &lt;Qt3DCore/QEntity&gt;</span>
19533///    <span class="preprocessor">#include &lt;Qt3DRender/QGeometryRenderer&gt;</span>
19534///    <span class="preprocessor">#include &lt;Qt3DRender/QLevelOfDetail&gt;</span>
19535///
19536///   <span class="comment">// Scene</span>
19537///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span> <span class="operator">*</span>rootEntity <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span>;
19538///
19539///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span> <span class="operator">*</span>renderableEntity <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span>(rootEntity);
19540///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a></span> <span class="operator">*</span>geometryRenderer <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a></span>(renderableEntity);
19541///   renderableEntity<span class="operator">-</span><span class="operator">&gt;</span>addComponent(geometryRenderer);
19542///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#QLevelOfDetail">QLevelOfDetail</a></span><span class="operator">*</span> lod <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3Render</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#QLevelOfDetail">QLevelOfDetail</a></span>(renderableEntity);
19543///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qtglobal.html#qreal-typedef">qreal</a></span><span class="operator">&gt;</span> thresholds <span class="operator">=</span> {<span class="number">20</span><span class="operator">,</span> <span class="number">35</span><span class="operator">,</span> <span class="number">50</span><span class="operator">,</span> <span class="number">65</span>};
19544///   lod<span class="operator">-</span><span class="operator">&gt;</span>setThresholds(thresholds);
19545///   lod<span class="operator">-</span><span class="operator">&gt;</span>setCamera(mainCamera);
19546///   renderableEntity<span class="operator">-</span><span class="operator">&gt;</span>addComponent(lod);
19547///
19548///   <span class="comment">// connect to QLevelOfDetail::currentIndexChanged to toggle rendering</span>
19549///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
19550///
19551/// </pre></div>
19552#[repr(C)]
19553pub struct QLevelOfDetail {
19554    _unused: u8,
19555}
19556impl QLevelOfDetail {
19557    /// <p>Sets the <i>camera</i> relative to which distance and size are computed.</p>
19558    ///
19559    /// Returns a built-in Qt slot `Qt3DRender::QLevelOfDetail::setCamera` that can be passed to `qt_core::Signal::connect`.
19560    ///
19561    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setCamera">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>camera</i> relative to which distance and size are computed.</p>
19562    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#camera-prop">camera</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#camera-prop">camera</a>().</p></div>
19563    #[inline(always)]
19564    pub fn slot_set_camera(&self) -> ::qt_core::Receiver<(*mut crate::QCamera,)> {
19565        unsafe {
19566            ::qt_core::Receiver::new(
19567                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19568                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
19569                    b"1setCamera(Qt3DRender::QCamera *)\0",
19570                ),
19571            )
19572        }
19573    }
19574
19575    /// <p>Sets the <i>currentIndex</i>.</p>
19576    ///
19577    /// Returns a built-in Qt slot `Qt3DRender::QLevelOfDetail::setCurrentIndex` that can be passed to `qt_core::Signal::connect`.
19578    ///
19579    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setCurrentIndex">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>currentIndex</i>.</p>
19580    /// <p><b>Note: </b>This should not normally be set by the user.</p><p>However, if the component is disabled, then changing the current index is a simple way of switching between multiple representations.</p>
19581    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">currentIndex</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">currentIndex</a>().</p></div>
19582    #[inline(always)]
19583    pub fn slot_set_current_index(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
19584        unsafe {
19585            ::qt_core::Receiver::new(
19586                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19587                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setCurrentIndex(int)\0"),
19588            )
19589        }
19590    }
19591
19592    /// <p>Sets the way thresholds values are interpreted with parameter <i>thresholdType</i></p>
19593    ///
19594    /// Returns a built-in Qt slot `Qt3DRender::QLevelOfDetail::setThresholdType` that can be passed to `qt_core::Signal::connect`.
19595    ///
19596    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setThresholdType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the way thresholds values are interpreted with parameter <i>thresholdType</i></p>
19597    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">thresholdType</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">thresholdType</a>() and <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::ThresholdType</a>.</p></div>
19598    #[inline(always)]
19599    pub fn slot_set_threshold_type(
19600        &self,
19601    ) -> ::qt_core::Receiver<(crate::q_level_of_detail::ThresholdType,)> {
19602        unsafe {
19603            ::qt_core::Receiver::new(
19604                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19605                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
19606                    b"1setThresholdType(Qt3DRender::QLevelOfDetail::ThresholdType)\0",
19607                ),
19608            )
19609        }
19610    }
19611
19612    /// <p>Sets the range values in <i>thresholds</i>.</p>
19613    ///
19614    /// Returns a built-in Qt slot `Qt3DRender::QLevelOfDetail::setThresholds` that can be passed to `qt_core::Signal::connect`.
19615    ///
19616    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setThresholds">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the range values in <i>thresholds</i>.</p>
19617    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholds-prop">thresholds</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholds-prop">thresholds</a>() and <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">Qt3DRender::QLevelOfDetail::thresholdType</a>.</p></div>
19618    #[inline(always)]
19619    pub fn slot_set_thresholds(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QVectorOfDouble,)> {
19620        unsafe {
19621            ::qt_core::Receiver::new(
19622                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19623                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
19624                    b"1setThresholds(QVector< double > const &)\0",
19625                ),
19626            )
19627        }
19628    }
19629
19630    /// <p>The default is a sphere of radius 1 and centered at the local origin of the entity. This proxy volume is used to compute the distance to the camera or the size of the screen projection.</p>
19631    ///
19632    /// Returns a built-in Qt slot `Qt3DRender::QLevelOfDetail::setVolumeOverride` that can be passed to `qt_core::Signal::connect`.
19633    ///
19634    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#volumeOverride-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The default is a sphere of radius 1 and centered at the local origin of the entity. This proxy volume is used to compute the distance to the camera or the size of the screen projection.</p>
19635    /// <p>If this value to nullptr, the bounding volume of the entity is used. Care must be taken that this bounding volume never becomes invalid.</p>
19636    /// <p><b>Access functions:</b></p>
19637    /// <div class="table"><table class="alignedsummary">
19638    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QLevelOfDetailBoundingSphere </td><td class="memItemRight bottomAlign"><span class="name"><b>volumeOverride</b></span>() const</td></tr>
19639    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVolumeOverride</b></span>(const QLevelOfDetailBoundingSphere &amp;<i>volumeOverride</i>)</td></tr>
19640    /// </tbody></table></div>
19641    /// <p><b>Notifier signal:</b></p>
19642    /// <div class="table"><table class="alignedsummary">
19643    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>volumeOverrideChanged</b></span>(const QLevelOfDetailBoundingSphere &amp;<i>volumeOverride</i>)</td></tr>
19644    /// </tbody></table></div>
19645    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">Qt3DRender::QLevelOfDetailBoundingSphere</a>.</p></div>
19646    #[inline(always)]
19647    pub fn slot_set_volume_override(
19648        &self,
19649    ) -> ::qt_core::Receiver<(*const crate::QLevelOfDetailBoundingSphere,)> {
19650        unsafe {
19651            ::qt_core::Receiver::new(
19652                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19653                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
19654                    b"1setVolumeOverride(Qt3DRender::QLevelOfDetailBoundingSphere const &)\0",
19655                ),
19656            )
19657        }
19658    }
19659
19660    /// <p>Holds the id of the camera that is used to compute the actual distance or the screen size.</p>
19661    ///
19662    /// Returns a built-in Qt signal `Qt3DRender::QLevelOfDetail::cameraChanged` that can be passed to `qt_core::Signal::connect`.
19663    ///
19664    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#camera-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the id of the camera that is used to compute the actual distance or the screen size.</p>
19665    /// <p><b>Access functions:</b></p>
19666    /// <div class="table"><table class="alignedsummary">
19667    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QCamera *</td><td class="memItemRight bottomAlign"><span class="name"><b>camera</b></span>() const</td></tr>
19668    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setCamera">setCamera</a></b></span>(QCamera *<i>camera</i>)</td></tr>
19669    /// </tbody></table></div>
19670    /// <p><b>Notifier signal:</b></p>
19671    /// <div class="table"><table class="alignedsummary">
19672    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cameraChanged</b></span>(QCamera *<i>camera</i>)</td></tr>
19673    /// </tbody></table></div></div>
19674    #[inline(always)]
19675    pub fn camera_changed(&self) -> ::qt_core::Signal<(*mut crate::QCamera,)> {
19676        unsafe {
19677            ::qt_core::Signal::new(
19678                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19679                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
19680                    b"2cameraChanged(Qt3DRender::QCamera *)\0",
19681                ),
19682            )
19683        }
19684    }
19685
19686    /// <p>The index in the range array which matches the current distance to the camera or screen size.</p>
19687    ///
19688    /// Returns a built-in Qt signal `Qt3DRender::QLevelOfDetail::currentIndexChanged` that can be passed to `qt_core::Signal::connect`.
19689    ///
19690    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The index in the range array which matches the current distance to the camera or screen size.</p>
19691    /// <p><b>Access functions:</b></p>
19692    /// <div class="table"><table class="alignedsummary">
19693    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>currentIndex</b></span>() const</td></tr>
19694    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setCurrentIndex">setCurrentIndex</a></b></span>(int <i>currentIndex</i>)</td></tr>
19695    /// </tbody></table></div>
19696    /// <p><b>Notifier signal:</b></p>
19697    /// <div class="table"><table class="alignedsummary">
19698    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>currentIndexChanged</b></span>(int <i>currentIndex</i>)</td></tr>
19699    /// </tbody></table></div></div>
19700    #[inline(always)]
19701    pub fn current_index_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
19702        unsafe {
19703            ::qt_core::Signal::new(
19704                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19705                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2currentIndexChanged(int)\0"),
19706            )
19707        }
19708    }
19709
19710    /// <p>Specifies how range values are interpreted.</p>
19711    ///
19712    /// Returns a built-in Qt signal `Qt3DRender::QLevelOfDetail::thresholdTypeChanged` that can be passed to `qt_core::Signal::connect`.
19713    ///
19714    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies how range values are interpreted.</p>
19715    /// <p><b>Access functions:</b></p>
19716    /// <div class="table"><table class="alignedsummary">
19717    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> ThresholdType </td><td class="memItemRight bottomAlign"><span class="name"><b>thresholdType</b></span>() const</td></tr>
19718    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setThresholdType">setThresholdType</a></b></span>(ThresholdType <i>thresholdType</i>)</td></tr>
19719    /// </tbody></table></div>
19720    /// <p><b>Notifier signal:</b></p>
19721    /// <div class="table"><table class="alignedsummary">
19722    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>thresholdTypeChanged</b></span>(ThresholdType <i>thresholdType</i>)</td></tr>
19723    /// </tbody></table></div>
19724    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::ThresholdType</a>.</p></div>
19725    #[inline(always)]
19726    pub fn threshold_type_changed(
19727        &self,
19728    ) -> ::qt_core::Signal<(crate::q_level_of_detail::ThresholdType,)> {
19729        unsafe {
19730            ::qt_core::Signal::new(
19731                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19732                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
19733                    b"2thresholdTypeChanged(Qt3DRender::QLevelOfDetail::ThresholdType)\0",
19734                ),
19735            )
19736        }
19737    }
19738
19739    /// <p>Array of range values as float point numbers. The value for the most detailed representation should be specified first.</p>
19740    ///
19741    /// Returns a built-in Qt signal `Qt3DRender::QLevelOfDetail::thresholdsChanged` that can be passed to `qt_core::Signal::connect`.
19742    ///
19743    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholds-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Array of range values as float point numbers. The value for the most detailed representation should be specified first.</p>
19744    /// <p>If <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">Qt3DRender::QLevelOfDetail::thresholdType</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::DistanceToCameraThreshold</a>, values should be specified in ascending order, in camera space coordinates</p>
19745    /// <p>If <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">Qt3DRender::QLevelOfDetail::thresholdType</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::ProjectedScreenPixelSizeThreshold</a>, values should be specified in descending order, in screen space pixels.</p>
19746    /// <p><b>Access functions:</b></p>
19747    /// <div class="table"><table class="alignedsummary">
19748    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;qreal&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>thresholds</b></span>() const</td></tr>
19749    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setThresholds">setThresholds</a></b></span>(const QVector&lt;qreal&gt; &amp;<i>thresholds</i>)</td></tr>
19750    /// </tbody></table></div>
19751    /// <p><b>Notifier signal:</b></p>
19752    /// <div class="table"><table class="alignedsummary">
19753    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>thresholdsChanged</b></span>(const QVector&lt;qreal&gt; &amp;<i>thresholds</i>)</td></tr>
19754    /// </tbody></table></div>
19755    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::ThresholdType</a>.</p></div>
19756    #[inline(always)]
19757    pub fn thresholds_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVectorOfDouble,)> {
19758        unsafe {
19759            ::qt_core::Signal::new(
19760                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19761                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
19762                    b"2thresholdsChanged(QVector< double > const &)\0",
19763                ),
19764            )
19765        }
19766    }
19767
19768    /// <p>The default is a sphere of radius 1 and centered at the local origin of the entity. This proxy volume is used to compute the distance to the camera or the size of the screen projection.</p>
19769    ///
19770    /// Returns a built-in Qt signal `Qt3DRender::QLevelOfDetail::volumeOverrideChanged` that can be passed to `qt_core::Signal::connect`.
19771    ///
19772    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#volumeOverride-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The default is a sphere of radius 1 and centered at the local origin of the entity. This proxy volume is used to compute the distance to the camera or the size of the screen projection.</p>
19773    /// <p>If this value to nullptr, the bounding volume of the entity is used. Care must be taken that this bounding volume never becomes invalid.</p>
19774    /// <p><b>Access functions:</b></p>
19775    /// <div class="table"><table class="alignedsummary">
19776    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QLevelOfDetailBoundingSphere </td><td class="memItemRight bottomAlign"><span class="name"><b>volumeOverride</b></span>() const</td></tr>
19777    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVolumeOverride</b></span>(const QLevelOfDetailBoundingSphere &amp;<i>volumeOverride</i>)</td></tr>
19778    /// </tbody></table></div>
19779    /// <p><b>Notifier signal:</b></p>
19780    /// <div class="table"><table class="alignedsummary">
19781    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>volumeOverrideChanged</b></span>(const QLevelOfDetailBoundingSphere &amp;<i>volumeOverride</i>)</td></tr>
19782    /// </tbody></table></div>
19783    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">Qt3DRender::QLevelOfDetailBoundingSphere</a>.</p></div>
19784    #[inline(always)]
19785    pub fn volume_override_changed(
19786        &self,
19787    ) -> ::qt_core::Signal<(*const crate::QLevelOfDetailBoundingSphere,)> {
19788        unsafe {
19789            ::qt_core::Signal::new(
19790                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
19791                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
19792                    b"2volumeOverrideChanged(Qt3DRender::QLevelOfDetailBoundingSphere const &)\0",
19793                ),
19794            )
19795        }
19796    }
19797
19798    /// <p>Holds the id of the camera that is used to compute the actual distance or the screen size.</p>
19799    ///
19800    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCamera* Qt3DRender::QLevelOfDetail::camera() const```</span>.
19801    ///
19802    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#camera-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the id of the camera that is used to compute the actual distance or the screen size.</p>
19803    /// <p><b>Access functions:</b></p>
19804    /// <div class="table"><table class="alignedsummary">
19805    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QCamera *</td><td class="memItemRight bottomAlign"><span class="name"><b>camera</b></span>() const</td></tr>
19806    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setCamera">setCamera</a></b></span>(QCamera *<i>camera</i>)</td></tr>
19807    /// </tbody></table></div>
19808    /// <p><b>Notifier signal:</b></p>
19809    /// <div class="table"><table class="alignedsummary">
19810    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cameraChanged</b></span>(QCamera *<i>camera</i>)</td></tr>
19811    /// </tbody></table></div></div>
19812    #[inline(always)]
19813    pub unsafe fn camera(&self) -> ::qt_core::QPtr<crate::QCamera> {
19814        let ffi_result = {
19815            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_camera(
19816                self as *const crate::QLevelOfDetail,
19817            )
19818        };
19819        ::qt_core::QPtr::from_raw(ffi_result)
19820    }
19821
19822    /// <p><b>Note: </b>This function can be invoked via the meta-object system and from QML. See <a href="http://doc.qt.io/qt-5/qobject.html#Q_INVOKABLE">Q_INVOKABLE</a>.</p>
19823    ///
19824    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailBoundingSphere Qt3DRender::QLevelOfDetail::createBoundingSphere(const QVector3D& center, float radius)```</span>.
19825    ///
19826    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#createBoundingSphere">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Note: </b>This function can be invoked via the meta-object system and from QML. See <a href="http://doc.qt.io/qt-5/qobject.html#Q_INVOKABLE">Q_INVOKABLE</a>.</p></div>
19827    #[inline(always)]
19828    pub unsafe fn create_bounding_sphere(
19829        &self,
19830        center: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
19831        radius: ::std::os::raw::c_float,
19832    ) -> ::cpp_core::CppBox<crate::QLevelOfDetailBoundingSphere> {
19833        let ffi_result = {
19834            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_createBoundingSphere(
19835                self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail,
19836                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(center)
19837                    .as_raw_ptr(),
19838                radius,
19839            )
19840        };
19841        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
19842    }
19843
19844    /// <p>The index in the range array which matches the current distance to the camera or screen size.</p>
19845    ///
19846    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QLevelOfDetail::currentIndex() const```</span>.
19847    ///
19848    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The index in the range array which matches the current distance to the camera or screen size.</p>
19849    /// <p><b>Access functions:</b></p>
19850    /// <div class="table"><table class="alignedsummary">
19851    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>currentIndex</b></span>() const</td></tr>
19852    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setCurrentIndex">setCurrentIndex</a></b></span>(int <i>currentIndex</i>)</td></tr>
19853    /// </tbody></table></div>
19854    /// <p><b>Notifier signal:</b></p>
19855    /// <div class="table"><table class="alignedsummary">
19856    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>currentIndexChanged</b></span>(int <i>currentIndex</i>)</td></tr>
19857    /// </tbody></table></div></div>
19858    #[inline(always)]
19859    pub unsafe fn current_index(&self) -> ::std::os::raw::c_int {
19860        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_currentIndex(
19861            self as *const crate::QLevelOfDetail,
19862        )
19863    }
19864
19865    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QLevelOfDetail::metaObject() const```</span>.
19866    #[inline(always)]
19867    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
19868        let ffi_result = {
19869            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_metaObject(
19870                self as *const crate::QLevelOfDetail,
19871            )
19872        };
19873        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
19874    }
19875
19876    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">QLevelOfDetail</a> with the specified <i>parent</i>.</p>
19877    ///
19878    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLevelOfDetail::QLevelOfDetail(Qt3DCore::QNode* parent = …)```</span>.
19879    ///
19880    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#QLevelOfDetail">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">QLevelOfDetail</a> with the specified <i>parent</i>.</p></div>
19881    #[inline(always)]
19882    pub unsafe fn new_1a(
19883        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
19884    ) -> ::qt_core::QBox<crate::QLevelOfDetail> {
19885        let ffi_result = {
19886            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_QLevelOfDetail(
19887                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
19888                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
19889            )
19890        };
19891        ::qt_core::QBox::from_raw(ffi_result)
19892    }
19893
19894    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">QLevelOfDetail</a> class provides a way of controlling the complexity of rendered entities based on their size on the screen.</p>
19895    ///
19896    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLevelOfDetail::QLevelOfDetail()```</span>.
19897    ///
19898    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">QLevelOfDetail</a> class provides a way of controlling the complexity of rendered entities based on their size on the screen.</p>
19899    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html">QLevelOfDetail</a> can be used to control the representation of an entity based on distance from the observer or size on the screen.</p>
19900    /// <p>In order to improve rendering performance, objects that are very small can be rendered using far fewer details, in geometry or texture.</p>
19901    /// <p>The component is controlled by specifying thresholds of values which are interpreted as either distances from the camera or screen size.</p>
19902    /// <p>As the point of view changes, the <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">currentIndex</a> property will change to reflect matching value in the range array.</p>
19903    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">currentIndex</a> property can then be used, for example, to enable or disable entities, change material, etc.</p>
19904    /// <p>The <a href="http://doc.qt.io/qt-5/qml-qt3d-render-levelofdetail.html">LevelOfDetail</a> component is not shareable between multiple <a href="http://doc.qt.io/qt-5/qml-qt3d-core-entity.html">entities</a>.</p>
19905    /// <pre class="cpp">
19906    ///
19907    ///    <span class="preprocessor">#include &lt;Qt3DCore/QEntity&gt;</span>
19908    ///    <span class="preprocessor">#include &lt;Qt3DRender/QGeometryRenderer&gt;</span>
19909    ///    <span class="preprocessor">#include &lt;Qt3DRender/QLevelOfDetail&gt;</span>
19910    ///
19911    ///   <span class="comment">// Scene</span>
19912    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span> <span class="operator">*</span>rootEntity <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span>;
19913    ///
19914    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span> <span class="operator">*</span>renderableEntity <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type">QEntity</span>(rootEntity);
19915    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a></span> <span class="operator">*</span>geometryRenderer <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3dcore-module.html">Qt3DCore</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">QGeometryRenderer</a></span>(renderableEntity);
19916    ///   renderableEntity<span class="operator">-</span><span class="operator">&gt;</span>addComponent(geometryRenderer);
19917    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#QLevelOfDetail">QLevelOfDetail</a></span><span class="operator">*</span> lod <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3Render</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#QLevelOfDetail">QLevelOfDetail</a></span>(renderableEntity);
19918    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qtglobal.html#qreal-typedef">qreal</a></span><span class="operator">&gt;</span> thresholds <span class="operator">=</span> {<span class="number">20</span><span class="operator">,</span> <span class="number">35</span><span class="operator">,</span> <span class="number">50</span><span class="operator">,</span> <span class="number">65</span>};
19919    ///   lod<span class="operator">-</span><span class="operator">&gt;</span>setThresholds(thresholds);
19920    ///   lod<span class="operator">-</span><span class="operator">&gt;</span>setCamera(mainCamera);
19921    ///   renderableEntity<span class="operator">-</span><span class="operator">&gt;</span>addComponent(lod);
19922    ///
19923    ///   <span class="comment">// connect to QLevelOfDetail::currentIndexChanged to toggle rendering</span>
19924    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
19925    ///
19926    /// </pre></div>
19927    #[inline(always)]
19928    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QLevelOfDetail> {
19929        let ffi_result =
19930            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_QLevelOfDetail1() };
19931        ::qt_core::QBox::from_raw(ffi_result)
19932    }
19933
19934    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QLevelOfDetail::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
19935    #[inline(always)]
19936    pub unsafe fn qt_metacall(
19937        &self,
19938        arg1: ::qt_core::q_meta_object::Call,
19939        arg2: ::std::os::raw::c_int,
19940        arg3: *mut *mut ::std::ffi::c_void,
19941    ) -> ::std::os::raw::c_int {
19942        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_qt_metacall(
19943            self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail,
19944            arg1,
19945            arg2,
19946            arg3,
19947        )
19948    }
19949
19950    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QLevelOfDetail::qt_metacast(const char* arg1)```</span>.
19951    #[inline(always)]
19952    pub unsafe fn qt_metacast(
19953        &self,
19954        arg1: *const ::std::os::raw::c_char,
19955    ) -> *mut ::std::ffi::c_void {
19956        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_qt_metacast(
19957            self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail,
19958            arg1,
19959        )
19960    }
19961
19962    /// <p>Sets the <i>camera</i> relative to which distance and size are computed.</p>
19963    ///
19964    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QLevelOfDetail::setCamera(Qt3DRender::QCamera* camera)```</span>.
19965    ///
19966    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setCamera">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>camera</i> relative to which distance and size are computed.</p>
19967    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#camera-prop">camera</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#camera-prop">camera</a>().</p></div>
19968    #[inline(always)]
19969    pub unsafe fn set_camera(
19970        &self,
19971        camera: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QCamera>>,
19972    ) {
19973        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_setCamera(
19974            self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail,
19975            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QCamera>>::cast_into(camera).as_raw_ptr()
19976                as *mut crate::QCamera,
19977        )
19978    }
19979
19980    /// <p>Sets the <i>currentIndex</i>.</p>
19981    ///
19982    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QLevelOfDetail::setCurrentIndex(int currentIndex)```</span>.
19983    ///
19984    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setCurrentIndex">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>currentIndex</i>.</p>
19985    /// <p><b>Note: </b>This should not normally be set by the user.</p><p>However, if the component is disabled, then changing the current index is a simple way of switching between multiple representations.</p>
19986    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">currentIndex</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">currentIndex</a>().</p></div>
19987    #[inline(always)]
19988    pub unsafe fn set_current_index(&self, current_index: ::std::os::raw::c_int) {
19989        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_setCurrentIndex(
19990            self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail,
19991            current_index,
19992        )
19993    }
19994
19995    /// <p>Sets the way thresholds values are interpreted with parameter <i>thresholdType</i></p>
19996    ///
19997    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QLevelOfDetail::setThresholdType(Qt3DRender::QLevelOfDetail::ThresholdType thresholdType)```</span>.
19998    ///
19999    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setThresholdType">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the way thresholds values are interpreted with parameter <i>thresholdType</i></p>
20000    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">thresholdType</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">thresholdType</a>() and <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::ThresholdType</a>.</p></div>
20001    #[inline(always)]
20002    pub unsafe fn set_threshold_type(
20003        &self,
20004        threshold_type: crate::q_level_of_detail::ThresholdType,
20005    ) {
20006        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_setThresholdType(
20007            self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail,
20008            threshold_type,
20009        )
20010    }
20011
20012    /// <p>Sets the range values in <i>thresholds</i>.</p>
20013    ///
20014    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QLevelOfDetail::setThresholds(const QVector<double>& thresholds)```</span>.
20015    ///
20016    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setThresholds">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the range values in <i>thresholds</i>.</p>
20017    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholds-prop">thresholds</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholds-prop">thresholds</a>() and <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">Qt3DRender::QLevelOfDetail::thresholdType</a>.</p></div>
20018    #[inline(always)]
20019    pub unsafe fn set_thresholds(
20020        &self,
20021        thresholds: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVectorOfDouble>>,
20022    ) {
20023        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_setThresholds(
20024            self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail,
20025            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVectorOfDouble>>::cast_into(
20026                thresholds,
20027            )
20028            .as_raw_ptr(),
20029        )
20030    }
20031
20032    /// <p>The default is a sphere of radius 1 and centered at the local origin of the entity. This proxy volume is used to compute the distance to the camera or the size of the screen projection.</p>
20033    ///
20034    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QLevelOfDetail::setVolumeOverride(const Qt3DRender::QLevelOfDetailBoundingSphere& volumeOverride)```</span>.
20035    ///
20036    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#volumeOverride-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The default is a sphere of radius 1 and centered at the local origin of the entity. This proxy volume is used to compute the distance to the camera or the size of the screen projection.</p>
20037    /// <p>If this value to nullptr, the bounding volume of the entity is used. Care must be taken that this bounding volume never becomes invalid.</p>
20038    /// <p><b>Access functions:</b></p>
20039    /// <div class="table"><table class="alignedsummary">
20040    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QLevelOfDetailBoundingSphere </td><td class="memItemRight bottomAlign"><span class="name"><b>volumeOverride</b></span>() const</td></tr>
20041    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVolumeOverride</b></span>(const QLevelOfDetailBoundingSphere &amp;<i>volumeOverride</i>)</td></tr>
20042    /// </tbody></table></div>
20043    /// <p><b>Notifier signal:</b></p>
20044    /// <div class="table"><table class="alignedsummary">
20045    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>volumeOverrideChanged</b></span>(const QLevelOfDetailBoundingSphere &amp;<i>volumeOverride</i>)</td></tr>
20046    /// </tbody></table></div>
20047    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">Qt3DRender::QLevelOfDetailBoundingSphere</a>.</p></div>
20048    #[inline(always)]
20049    pub unsafe fn set_volume_override(
20050        &self,
20051        volume_override: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>,
20052    ) {
20053        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_setVolumeOverride(self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>::cast_into(volume_override).as_raw_ptr())
20054    }
20055
20056    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
20057    #[inline(always)]
20058    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
20059        let ffi_result =
20060            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_staticMetaObject() };
20061        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
20062            .expect("attempted to construct a null Ref")
20063    }
20064
20065    /// <p>Specifies how range values are interpreted.</p>
20066    ///
20067    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetail::ThresholdType Qt3DRender::QLevelOfDetail::thresholdType() const```</span>.
20068    ///
20069    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies how range values are interpreted.</p>
20070    /// <p><b>Access functions:</b></p>
20071    /// <div class="table"><table class="alignedsummary">
20072    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> ThresholdType </td><td class="memItemRight bottomAlign"><span class="name"><b>thresholdType</b></span>() const</td></tr>
20073    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setThresholdType">setThresholdType</a></b></span>(ThresholdType <i>thresholdType</i>)</td></tr>
20074    /// </tbody></table></div>
20075    /// <p><b>Notifier signal:</b></p>
20076    /// <div class="table"><table class="alignedsummary">
20077    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>thresholdTypeChanged</b></span>(ThresholdType <i>thresholdType</i>)</td></tr>
20078    /// </tbody></table></div>
20079    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::ThresholdType</a>.</p></div>
20080    #[inline(always)]
20081    pub unsafe fn threshold_type(&self) -> crate::q_level_of_detail::ThresholdType {
20082        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_thresholdType(
20083            self as *const crate::QLevelOfDetail,
20084        )
20085    }
20086
20087    /// <p>Array of range values as float point numbers. The value for the most detailed representation should be specified first.</p>
20088    ///
20089    /// Calls C++ function: <span style='color: green;'>```QVector<double> Qt3DRender::QLevelOfDetail::thresholds() const```</span>.
20090    ///
20091    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholds-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Array of range values as float point numbers. The value for the most detailed representation should be specified first.</p>
20092    /// <p>If <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">Qt3DRender::QLevelOfDetail::thresholdType</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::DistanceToCameraThreshold</a>, values should be specified in ascending order, in camera space coordinates</p>
20093    /// <p>If <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#thresholdType-prop">Qt3DRender::QLevelOfDetail::thresholdType</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::ProjectedScreenPixelSizeThreshold</a>, values should be specified in descending order, in screen space pixels.</p>
20094    /// <p><b>Access functions:</b></p>
20095    /// <div class="table"><table class="alignedsummary">
20096    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;qreal&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>thresholds</b></span>() const</td></tr>
20097    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#setThresholds">setThresholds</a></b></span>(const QVector&lt;qreal&gt; &amp;<i>thresholds</i>)</td></tr>
20098    /// </tbody></table></div>
20099    /// <p><b>Notifier signal:</b></p>
20100    /// <div class="table"><table class="alignedsummary">
20101    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>thresholdsChanged</b></span>(const QVector&lt;qreal&gt; &amp;<i>thresholds</i>)</td></tr>
20102    /// </tbody></table></div>
20103    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#ThresholdType-enum">Qt3DRender::QLevelOfDetail::ThresholdType</a>.</p></div>
20104    #[inline(always)]
20105    pub unsafe fn thresholds(&self) -> ::cpp_core::CppBox<::qt_gui::QVectorOfDouble> {
20106        let ffi_result = {
20107            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_thresholds(
20108                self as *const crate::QLevelOfDetail,
20109            )
20110        };
20111        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20112    }
20113
20114    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLevelOfDetail::tr(const char* s, const char* c, int n)```</span>.
20115    #[inline(always)]
20116    pub unsafe fn tr(
20117        s: *const ::std::os::raw::c_char,
20118        c: *const ::std::os::raw::c_char,
20119        n: ::std::os::raw::c_int,
20120    ) -> ::cpp_core::CppBox<::qt_core::QString> {
20121        let ffi_result =
20122            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_tr(s, c, n) };
20123        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20124    }
20125
20126    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLevelOfDetail::trUtf8(const char* s, const char* c, int n)```</span>.
20127    #[inline(always)]
20128    pub unsafe fn tr_utf8(
20129        s: *const ::std::os::raw::c_char,
20130        c: *const ::std::os::raw::c_char,
20131        n: ::std::os::raw::c_int,
20132    ) -> ::cpp_core::CppBox<::qt_core::QString> {
20133        let ffi_result =
20134            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_trUtf8(s, c, n) };
20135        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20136    }
20137
20138    /// <p>The default is a sphere of radius 1 and centered at the local origin of the entity. This proxy volume is used to compute the distance to the camera or the size of the screen projection.</p>
20139    ///
20140    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailBoundingSphere Qt3DRender::QLevelOfDetail::volumeOverride() const```</span>.
20141    ///
20142    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#volumeOverride-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The default is a sphere of radius 1 and centered at the local origin of the entity. This proxy volume is used to compute the distance to the camera or the size of the screen projection.</p>
20143    /// <p>If this value to nullptr, the bounding volume of the entity is used. Care must be taken that this bounding volume never becomes invalid.</p>
20144    /// <p><b>Access functions:</b></p>
20145    /// <div class="table"><table class="alignedsummary">
20146    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QLevelOfDetailBoundingSphere </td><td class="memItemRight bottomAlign"><span class="name"><b>volumeOverride</b></span>() const</td></tr>
20147    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVolumeOverride</b></span>(const QLevelOfDetailBoundingSphere &amp;<i>volumeOverride</i>)</td></tr>
20148    /// </tbody></table></div>
20149    /// <p><b>Notifier signal:</b></p>
20150    /// <div class="table"><table class="alignedsummary">
20151    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>volumeOverrideChanged</b></span>(const QLevelOfDetailBoundingSphere &amp;<i>volumeOverride</i>)</td></tr>
20152    /// </tbody></table></div>
20153    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html">Qt3DRender::QLevelOfDetailBoundingSphere</a>.</p></div>
20154    #[inline(always)]
20155    pub unsafe fn volume_override(
20156        &self,
20157    ) -> ::cpp_core::CppBox<crate::QLevelOfDetailBoundingSphere> {
20158        let ffi_result = {
20159            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_volumeOverride(
20160                self as *const crate::QLevelOfDetail,
20161            )
20162        };
20163        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20164    }
20165}
20166
20167/// <p>Provides a way of enabling child entities based on distance or screen size.</p>
20168///
20169/// C++ class: <span style='color: green;'>```Qt3DRender::QLevelOfDetailSwitch```</span>.
20170///
20171/// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailswitch.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a way of enabling child entities based on distance or screen size.</p>
20172/// <p>This component is assigned to an entity. When the entity changes distance relative to the camera, the <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailswitch.html">QLevelOfDetailSwitch</a> will disable all the child entities except the one matching index <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">Qt3DRender::QLevelOfDetailSwitch::currentIndex</a>.</p></div>
20173#[repr(C)]
20174pub struct QLevelOfDetailSwitch {
20175    _unused: u8,
20176}
20177impl QLevelOfDetailSwitch {
20178    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QLevelOfDetailSwitch::metaObject() const```</span>.
20179    #[inline(always)]
20180    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
20181        let ffi_result = {
20182            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailSwitch_metaObject(
20183                self as *const crate::QLevelOfDetailSwitch,
20184            )
20185        };
20186        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
20187    }
20188
20189    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailswitch.html">QLevelOfDetailSwitch</a> with the specified <i>parent</i>.</p>
20190    ///
20191    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLevelOfDetailSwitch::QLevelOfDetailSwitch(Qt3DCore::QNode* parent = …)```</span>.
20192    ///
20193    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailswitch.html#QLevelOfDetailSwitch">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailswitch.html">QLevelOfDetailSwitch</a> with the specified <i>parent</i>.</p></div>
20194    #[inline(always)]
20195    pub unsafe fn new_1a(
20196        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
20197    ) -> ::qt_core::QBox<crate::QLevelOfDetailSwitch> {
20198        let ffi_result = {
20199            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailSwitch_QLevelOfDetailSwitch(
20200                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
20201                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
20202            )
20203        };
20204        ::qt_core::QBox::from_raw(ffi_result)
20205    }
20206
20207    /// <p>Provides a way of enabling child entities based on distance or screen size.</p>
20208    ///
20209    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLevelOfDetailSwitch::QLevelOfDetailSwitch()```</span>.
20210    ///
20211    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailswitch.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a way of enabling child entities based on distance or screen size.</p>
20212    /// <p>This component is assigned to an entity. When the entity changes distance relative to the camera, the <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailswitch.html">QLevelOfDetailSwitch</a> will disable all the child entities except the one matching index <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetail.html#currentIndex-prop">Qt3DRender::QLevelOfDetailSwitch::currentIndex</a>.</p></div>
20213    #[inline(always)]
20214    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QLevelOfDetailSwitch> {
20215        let ffi_result = {
20216            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailSwitch_QLevelOfDetailSwitch1(
20217            )
20218        };
20219        ::qt_core::QBox::from_raw(ffi_result)
20220    }
20221
20222    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QLevelOfDetailSwitch::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
20223    #[inline(always)]
20224    pub unsafe fn qt_metacall(
20225        &self,
20226        arg1: ::qt_core::q_meta_object::Call,
20227        arg2: ::std::os::raw::c_int,
20228        arg3: *mut *mut ::std::ffi::c_void,
20229    ) -> ::std::os::raw::c_int {
20230        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailSwitch_qt_metacall(
20231            self as *const crate::QLevelOfDetailSwitch as *mut crate::QLevelOfDetailSwitch,
20232            arg1,
20233            arg2,
20234            arg3,
20235        )
20236    }
20237
20238    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QLevelOfDetailSwitch::qt_metacast(const char* arg1)```</span>.
20239    #[inline(always)]
20240    pub unsafe fn qt_metacast(
20241        &self,
20242        arg1: *const ::std::os::raw::c_char,
20243    ) -> *mut ::std::ffi::c_void {
20244        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailSwitch_qt_metacast(
20245            self as *const crate::QLevelOfDetailSwitch as *mut crate::QLevelOfDetailSwitch,
20246            arg1,
20247        )
20248    }
20249
20250    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
20251    #[inline(always)]
20252    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
20253        let ffi_result = {
20254            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailSwitch_staticMetaObject()
20255        };
20256        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
20257            .expect("attempted to construct a null Ref")
20258    }
20259
20260    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLevelOfDetailSwitch::tr(const char* s, const char* c, int n)```</span>.
20261    #[inline(always)]
20262    pub unsafe fn tr(
20263        s: *const ::std::os::raw::c_char,
20264        c: *const ::std::os::raw::c_char,
20265        n: ::std::os::raw::c_int,
20266    ) -> ::cpp_core::CppBox<::qt_core::QString> {
20267        let ffi_result =
20268            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailSwitch_tr(s, c, n) };
20269        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20270    }
20271
20272    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLevelOfDetailSwitch::trUtf8(const char* s, const char* c, int n)```</span>.
20273    #[inline(always)]
20274    pub unsafe fn tr_utf8(
20275        s: *const ::std::os::raw::c_char,
20276        c: *const ::std::os::raw::c_char,
20277        n: ::std::os::raw::c_int,
20278    ) -> ::cpp_core::CppBox<::qt_core::QString> {
20279        let ffi_result =
20280            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailSwitch_trUtf8(s, c, n) };
20281        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20282    }
20283}
20284
20285/// <p>Provides an abstract class that should be the base of all material component classes in a scene.</p>
20286///
20287/// C++ class: <span style='color: green;'>```Qt3DRender::QMaterial```</span>.
20288///
20289/// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides an abstract class that should be the base of all material component classes in a scene.</p>
20290/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> provides a way to specify the rendering of an <a href="http://doc.qt.io/qt-5/qt3dcore-qentity.html">entity</a>. Any aspect can define its own subclass of <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> so that a Material can be used to describe a visual element; for example, the way sound should reflect off an element, the temperature of a surface, and so on.</p>
20291/// <p>In itself, a <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> doesn't do anything. It's only when it references a <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> node that a <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> becomes useful.</p>
20292/// <p>In practice, it often happens that a single <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> is being referenced by several <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> components. This allows to only create the effect, techniques, passes and shaders once while allowing to specify the material by adding <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> instances.</p>
20293/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> defined on a <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> is overridden by a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> (of the same name) defined in a <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> or a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a>.</p>
20294/// <pre class="cpp">
20295///
20296///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#QMaterial">QMaterial</a></span> <span class="operator">*</span>material1 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#QMaterial">QMaterial</a></span>();
20297///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#QMaterial">QMaterial</a></span> <span class="operator">*</span>material2 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#QMaterial">QMaterial</a></span>();
20298///
20299///   <span class="comment">// Create effect, technique, render pass and shader</span>
20300///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a></span> <span class="operator">*</span>effect <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a></span>();
20301///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></span> <span class="operator">*</span>gl3Technique <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></span>();
20302///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>gl3Pass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
20303///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span> <span class="operator">*</span>glShader <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span>();
20304///
20305///   <span class="comment">// Set the shader on the render pass</span>
20306///   gl3Pass<span class="operator">-</span><span class="operator">&gt;</span>setShaderProgram(glShader);
20307///
20308///   <span class="comment">// Add the pass to the technique</span>
20309///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addRenderPass(gl3Pass);
20310///
20311///   <span class="comment">// Set the targeted GL version for the technique</span>
20312///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setApi(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>OpenGL);
20313///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMajorVersion(<span class="number">3</span>);
20314///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMinorVersion(<span class="number">1</span>);
20315///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setProfile(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>CoreProfile);
20316///
20317///   <span class="comment">// Add the technique to the effect</span>
20318///   effect<span class="operator">-</span><span class="operator">&gt;</span>addTechnique(gl3Technique);
20319///
20320///   <span class="comment">// Set the effect on the materials</span>
20321///   material1<span class="operator">-</span><span class="operator">&gt;</span>setEffect(effect);
20322///   material2<span class="operator">-</span><span class="operator">&gt;</span>setEffect(effect);
20323///
20324///   <span class="comment">// Set different parameters on the materials</span>
20325///   <span class="keyword">const</span> <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> parameterName <span class="operator">=</span> <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"color"</span>);
20326///   material1<span class="operator">-</span><span class="operator">&gt;</span>addParameter(<span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span>(parameterName<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span>);
20327///   material2<span class="operator">-</span><span class="operator">&gt;</span>addParameter(<span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span>(parameterName<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>);
20328///
20329/// </pre></div>
20330#[repr(C)]
20331pub struct QMaterial {
20332    _unused: u8,
20333}
20334impl QMaterial {
20335    /// <p>Specifies the effect to be used with the material.</p>
20336    ///
20337    /// Returns a built-in Qt slot `Qt3DRender::QMaterial::setEffect` that can be passed to `qt_core::Signal::connect`.
20338    ///
20339    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#effect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the effect to be used with the material.</p>
20340    /// <p><b>Access functions:</b></p>
20341    /// <div class="table"><table class="alignedsummary">
20342    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QEffect *</td><td class="memItemRight bottomAlign"><span class="name"><b>effect</b></span>() const</td></tr>
20343    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEffect</b></span>(QEffect *<i>effect</i>)</td></tr>
20344    /// </tbody></table></div>
20345    /// <p><b>Notifier signal:</b></p>
20346    /// <div class="table"><table class="alignedsummary">
20347    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>effectChanged</b></span>(QEffect *<i>effect</i>)</td></tr>
20348    /// </tbody></table></div></div>
20349    #[inline(always)]
20350    pub fn slot_set_effect(&self) -> ::qt_core::Receiver<(*mut crate::QEffect,)> {
20351        unsafe {
20352            ::qt_core::Receiver::new(
20353                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
20354                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
20355                    b"1setEffect(Qt3DRender::QEffect *)\0",
20356                ),
20357            )
20358        }
20359    }
20360
20361    /// <p>Specifies the effect to be used with the material.</p>
20362    ///
20363    /// Returns a built-in Qt signal `Qt3DRender::QMaterial::effectChanged` that can be passed to `qt_core::Signal::connect`.
20364    ///
20365    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#effect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the effect to be used with the material.</p>
20366    /// <p><b>Access functions:</b></p>
20367    /// <div class="table"><table class="alignedsummary">
20368    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QEffect *</td><td class="memItemRight bottomAlign"><span class="name"><b>effect</b></span>() const</td></tr>
20369    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEffect</b></span>(QEffect *<i>effect</i>)</td></tr>
20370    /// </tbody></table></div>
20371    /// <p><b>Notifier signal:</b></p>
20372    /// <div class="table"><table class="alignedsummary">
20373    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>effectChanged</b></span>(QEffect *<i>effect</i>)</td></tr>
20374    /// </tbody></table></div></div>
20375    #[inline(always)]
20376    pub fn effect_changed(&self) -> ::qt_core::Signal<(*mut crate::QEffect,)> {
20377        unsafe {
20378            ::qt_core::Signal::new(
20379                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
20380                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
20381                    b"2effectChanged(Qt3DRender::QEffect *)\0",
20382                ),
20383            )
20384        }
20385    }
20386
20387    /// <p>Add a <i>parameter</i> to the material's parameters.</p>
20388    ///
20389    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QMaterial::addParameter(Qt3DRender::QParameter* parameter)```</span>.
20390    ///
20391    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#addParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add a <i>parameter</i> to the material's parameters.</p></div>
20392    #[inline(always)]
20393    pub unsafe fn add_parameter(
20394        &self,
20395        parameter: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
20396    ) {
20397        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_addParameter(
20398            self as *const crate::QMaterial as *mut crate::QMaterial,
20399            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(parameter)
20400                .as_raw_ptr() as *mut crate::QParameter,
20401        )
20402    }
20403
20404    /// <p>Specifies the effect to be used with the material.</p>
20405    ///
20406    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEffect* Qt3DRender::QMaterial::effect() const```</span>.
20407    ///
20408    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#effect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the effect to be used with the material.</p>
20409    /// <p><b>Access functions:</b></p>
20410    /// <div class="table"><table class="alignedsummary">
20411    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QEffect *</td><td class="memItemRight bottomAlign"><span class="name"><b>effect</b></span>() const</td></tr>
20412    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEffect</b></span>(QEffect *<i>effect</i>)</td></tr>
20413    /// </tbody></table></div>
20414    /// <p><b>Notifier signal:</b></p>
20415    /// <div class="table"><table class="alignedsummary">
20416    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>effectChanged</b></span>(QEffect *<i>effect</i>)</td></tr>
20417    /// </tbody></table></div></div>
20418    #[inline(always)]
20419    pub unsafe fn effect(&self) -> ::qt_core::QPtr<crate::QEffect> {
20420        let ffi_result = {
20421            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_effect(
20422                self as *const crate::QMaterial,
20423            )
20424        };
20425        ::qt_core::QPtr::from_raw(ffi_result)
20426    }
20427
20428    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QMaterial::metaObject() const```</span>.
20429    #[inline(always)]
20430    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
20431        let ffi_result = {
20432            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_metaObject(
20433                self as *const crate::QMaterial,
20434            )
20435        };
20436        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
20437    }
20438
20439    /// <p>Default constructs an instance of QMaterial.</p>
20440    ///
20441    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QMaterial::QMaterial(Qt3DCore::QNode* parent = …)```</span>.
20442    ///
20443    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#QMaterial">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QMaterial.</p></div>
20444    #[inline(always)]
20445    pub unsafe fn new_1a(
20446        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
20447    ) -> ::qt_core::QBox<crate::QMaterial> {
20448        let ffi_result = {
20449            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_QMaterial(
20450                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
20451                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
20452            )
20453        };
20454        ::qt_core::QBox::from_raw(ffi_result)
20455    }
20456
20457    /// <p>Provides an abstract class that should be the base of all material component classes in a scene.</p>
20458    ///
20459    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QMaterial::QMaterial()```</span>.
20460    ///
20461    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides an abstract class that should be the base of all material component classes in a scene.</p>
20462    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> provides a way to specify the rendering of an <a href="http://doc.qt.io/qt-5/qt3dcore-qentity.html">entity</a>. Any aspect can define its own subclass of <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> so that a Material can be used to describe a visual element; for example, the way sound should reflect off an element, the temperature of a surface, and so on.</p>
20463    /// <p>In itself, a <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> doesn't do anything. It's only when it references a <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> node that a <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> becomes useful.</p>
20464    /// <p>In practice, it often happens that a single <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> is being referenced by several <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> components. This allows to only create the effect, techniques, passes and shaders once while allowing to specify the material by adding <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> instances.</p>
20465    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> defined on a <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a> is overridden by a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> (of the same name) defined in a <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> or a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a>.</p>
20466    /// <pre class="cpp">
20467    ///
20468    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#QMaterial">QMaterial</a></span> <span class="operator">*</span>material1 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#QMaterial">QMaterial</a></span>();
20469    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#QMaterial">QMaterial</a></span> <span class="operator">*</span>material2 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#QMaterial">QMaterial</a></span>();
20470    ///
20471    ///   <span class="comment">// Create effect, technique, render pass and shader</span>
20472    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a></span> <span class="operator">*</span>effect <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a></span>();
20473    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></span> <span class="operator">*</span>gl3Technique <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a></span>();
20474    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>gl3Pass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
20475    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span> <span class="operator">*</span>glShader <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span>();
20476    ///
20477    ///   <span class="comment">// Set the shader on the render pass</span>
20478    ///   gl3Pass<span class="operator">-</span><span class="operator">&gt;</span>setShaderProgram(glShader);
20479    ///
20480    ///   <span class="comment">// Add the pass to the technique</span>
20481    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addRenderPass(gl3Pass);
20482    ///
20483    ///   <span class="comment">// Set the targeted GL version for the technique</span>
20484    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setApi(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>OpenGL);
20485    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMajorVersion(<span class="number">3</span>);
20486    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMinorVersion(<span class="number">1</span>);
20487    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setProfile(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>CoreProfile);
20488    ///
20489    ///   <span class="comment">// Add the technique to the effect</span>
20490    ///   effect<span class="operator">-</span><span class="operator">&gt;</span>addTechnique(gl3Technique);
20491    ///
20492    ///   <span class="comment">// Set the effect on the materials</span>
20493    ///   material1<span class="operator">-</span><span class="operator">&gt;</span>setEffect(effect);
20494    ///   material2<span class="operator">-</span><span class="operator">&gt;</span>setEffect(effect);
20495    ///
20496    ///   <span class="comment">// Set different parameters on the materials</span>
20497    ///   <span class="keyword">const</span> <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> parameterName <span class="operator">=</span> <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"color"</span>);
20498    ///   material1<span class="operator">-</span><span class="operator">&gt;</span>addParameter(<span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span>(parameterName<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span>);
20499    ///   material2<span class="operator">-</span><span class="operator">&gt;</span>addParameter(<span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span>(parameterName<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>);
20500    ///
20501    /// </pre></div>
20502    #[inline(always)]
20503    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QMaterial> {
20504        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_QMaterial1() };
20505        ::qt_core::QBox::from_raw(ffi_result)
20506    }
20507
20508    /// <p>Returns a vector of the material's current parameters</p>
20509    ///
20510    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*> Qt3DRender::QMaterial::parameters() const```</span>.
20511    ///
20512    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#parameters">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector of the material's current parameters</p></div>
20513    #[inline(always)]
20514    pub unsafe fn parameters(&self) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
20515        let ffi_result = {
20516            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_parameters(
20517                self as *const crate::QMaterial,
20518            )
20519        };
20520        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20521    }
20522
20523    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QMaterial::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
20524    #[inline(always)]
20525    pub unsafe fn qt_metacall(
20526        &self,
20527        arg1: ::qt_core::q_meta_object::Call,
20528        arg2: ::std::os::raw::c_int,
20529        arg3: *mut *mut ::std::ffi::c_void,
20530    ) -> ::std::os::raw::c_int {
20531        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_qt_metacall(
20532            self as *const crate::QMaterial as *mut crate::QMaterial,
20533            arg1,
20534            arg2,
20535            arg3,
20536        )
20537    }
20538
20539    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QMaterial::qt_metacast(const char* arg1)```</span>.
20540    #[inline(always)]
20541    pub unsafe fn qt_metacast(
20542        &self,
20543        arg1: *const ::std::os::raw::c_char,
20544    ) -> *mut ::std::ffi::c_void {
20545        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_qt_metacast(
20546            self as *const crate::QMaterial as *mut crate::QMaterial,
20547            arg1,
20548        )
20549    }
20550
20551    /// <p>Remove a <i>parameter</i> from the material's parameters.</p>
20552    ///
20553    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QMaterial::removeParameter(Qt3DRender::QParameter* parameter)```</span>.
20554    ///
20555    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#removeParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove a <i>parameter</i> from the material's parameters.</p></div>
20556    #[inline(always)]
20557    pub unsafe fn remove_parameter(
20558        &self,
20559        parameter: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
20560    ) {
20561        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_removeParameter(
20562            self as *const crate::QMaterial as *mut crate::QMaterial,
20563            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(parameter)
20564                .as_raw_ptr() as *mut crate::QParameter,
20565        )
20566    }
20567
20568    /// <p>Specifies the effect to be used with the material.</p>
20569    ///
20570    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QMaterial::setEffect(Qt3DRender::QEffect* effect)```</span>.
20571    ///
20572    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#effect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the effect to be used with the material.</p>
20573    /// <p><b>Access functions:</b></p>
20574    /// <div class="table"><table class="alignedsummary">
20575    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QEffect *</td><td class="memItemRight bottomAlign"><span class="name"><b>effect</b></span>() const</td></tr>
20576    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEffect</b></span>(QEffect *<i>effect</i>)</td></tr>
20577    /// </tbody></table></div>
20578    /// <p><b>Notifier signal:</b></p>
20579    /// <div class="table"><table class="alignedsummary">
20580    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>effectChanged</b></span>(QEffect *<i>effect</i>)</td></tr>
20581    /// </tbody></table></div></div>
20582    #[inline(always)]
20583    pub unsafe fn set_effect(
20584        &self,
20585        effect: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QEffect>>,
20586    ) {
20587        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_setEffect(
20588            self as *const crate::QMaterial as *mut crate::QMaterial,
20589            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QEffect>>::cast_into(effect).as_raw_ptr()
20590                as *mut crate::QEffect,
20591        )
20592    }
20593
20594    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
20595    #[inline(always)]
20596    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
20597        let ffi_result =
20598            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_staticMetaObject() };
20599        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
20600            .expect("attempted to construct a null Ref")
20601    }
20602
20603    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QMaterial::tr(const char* s, const char* c, int n)```</span>.
20604    #[inline(always)]
20605    pub unsafe fn tr(
20606        s: *const ::std::os::raw::c_char,
20607        c: *const ::std::os::raw::c_char,
20608        n: ::std::os::raw::c_int,
20609    ) -> ::cpp_core::CppBox<::qt_core::QString> {
20610        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_tr(s, c, n) };
20611        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20612    }
20613
20614    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QMaterial::trUtf8(const char* s, const char* c, int n)```</span>.
20615    #[inline(always)]
20616    pub unsafe fn tr_utf8(
20617        s: *const ::std::os::raw::c_char,
20618        c: *const ::std::os::raw::c_char,
20619        n: ::std::os::raw::c_int,
20620    ) -> ::cpp_core::CppBox<::qt_core::QString> {
20621        let ffi_result =
20622            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_trUtf8(s, c, n) };
20623        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20624    }
20625}
20626
20627pub mod q_memory_barrier {
20628    //! C++ type: <span style='color: green;'>```Qt3DRender::QMemoryBarrier```</span>
20629
20630    /// C++ enum: <span style='color: green;'>```Qt3DRender::QMemoryBarrier::Operation```</span>.
20631    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
20632    #[repr(transparent)]
20633    pub struct Operation(::std::os::raw::c_int);
20634
20635    impl From<::std::os::raw::c_int> for Operation {
20636        fn from(value: ::std::os::raw::c_int) -> Self {
20637            Operation(value)
20638        }
20639    }
20640
20641    impl From<Operation> for ::std::os::raw::c_int {
20642        fn from(value: Operation) -> Self {
20643            value.0
20644        }
20645    }
20646
20647    impl Operation {
20648        pub fn to_int(&self) -> ::std::os::raw::c_int {
20649            self.0
20650        }
20651    }
20652
20653    impl Operation {
20654        /// C++ enum variant: <span style='color: green;'>```None = 0```</span>
20655        #[allow(non_upper_case_globals)]
20656        pub const None: crate::q_memory_barrier::Operation = crate::q_memory_barrier::Operation(0);
20657        /// C++ enum variant: <span style='color: green;'>```VertexAttributeArray = 1```</span>
20658        #[allow(non_upper_case_globals)]
20659        pub const VertexAttributeArray: crate::q_memory_barrier::Operation =
20660            crate::q_memory_barrier::Operation(1);
20661        /// C++ enum variant: <span style='color: green;'>```ElementArray = 2```</span>
20662        #[allow(non_upper_case_globals)]
20663        pub const ElementArray: crate::q_memory_barrier::Operation =
20664            crate::q_memory_barrier::Operation(2);
20665        /// C++ enum variant: <span style='color: green;'>```Uniform = 4```</span>
20666        #[allow(non_upper_case_globals)]
20667        pub const Uniform: crate::q_memory_barrier::Operation =
20668            crate::q_memory_barrier::Operation(4);
20669        /// C++ enum variant: <span style='color: green;'>```TextureFetch = 8```</span>
20670        #[allow(non_upper_case_globals)]
20671        pub const TextureFetch: crate::q_memory_barrier::Operation =
20672            crate::q_memory_barrier::Operation(8);
20673        /// C++ enum variant: <span style='color: green;'>```ShaderImageAccess = 16```</span>
20674        #[allow(non_upper_case_globals)]
20675        pub const ShaderImageAccess: crate::q_memory_barrier::Operation =
20676            crate::q_memory_barrier::Operation(16);
20677        /// C++ enum variant: <span style='color: green;'>```Command = 32```</span>
20678        #[allow(non_upper_case_globals)]
20679        pub const Command: crate::q_memory_barrier::Operation =
20680            crate::q_memory_barrier::Operation(32);
20681        /// C++ enum variant: <span style='color: green;'>```PixelBuffer = 64```</span>
20682        #[allow(non_upper_case_globals)]
20683        pub const PixelBuffer: crate::q_memory_barrier::Operation =
20684            crate::q_memory_barrier::Operation(64);
20685        /// C++ enum variant: <span style='color: green;'>```TextureUpdate = 128```</span>
20686        #[allow(non_upper_case_globals)]
20687        pub const TextureUpdate: crate::q_memory_barrier::Operation =
20688            crate::q_memory_barrier::Operation(128);
20689        /// C++ enum variant: <span style='color: green;'>```BufferUpdate = 256```</span>
20690        #[allow(non_upper_case_globals)]
20691        pub const BufferUpdate: crate::q_memory_barrier::Operation =
20692            crate::q_memory_barrier::Operation(256);
20693        /// C++ enum variant: <span style='color: green;'>```FrameBuffer = 512```</span>
20694        #[allow(non_upper_case_globals)]
20695        pub const FrameBuffer: crate::q_memory_barrier::Operation =
20696            crate::q_memory_barrier::Operation(512);
20697        /// C++ enum variant: <span style='color: green;'>```TransformFeedback = 1024```</span>
20698        #[allow(non_upper_case_globals)]
20699        pub const TransformFeedback: crate::q_memory_barrier::Operation =
20700            crate::q_memory_barrier::Operation(1024);
20701        /// C++ enum variant: <span style='color: green;'>```AtomicCounter = 2048```</span>
20702        #[allow(non_upper_case_globals)]
20703        pub const AtomicCounter: crate::q_memory_barrier::Operation =
20704            crate::q_memory_barrier::Operation(2048);
20705        /// C++ enum variant: <span style='color: green;'>```ShaderStorage = 4096```</span>
20706        #[allow(non_upper_case_globals)]
20707        pub const ShaderStorage: crate::q_memory_barrier::Operation =
20708            crate::q_memory_barrier::Operation(4096);
20709        /// C++ enum variant: <span style='color: green;'>```QueryBuffer = 8192```</span>
20710        #[allow(non_upper_case_globals)]
20711        pub const QueryBuffer: crate::q_memory_barrier::Operation =
20712            crate::q_memory_barrier::Operation(8192);
20713        /// C++ enum variant: <span style='color: green;'>```All = -1```</span>
20714        #[allow(non_upper_case_globals)]
20715        pub const All: crate::q_memory_barrier::Operation = crate::q_memory_barrier::Operation(-1);
20716    }
20717
20718    impl From<crate::q_memory_barrier::Operation>
20719        for ::qt_core::QFlags<crate::q_memory_barrier::Operation>
20720    {
20721        fn from(value: crate::q_memory_barrier::Operation) -> Self {
20722            Self::from(value.to_int())
20723        }
20724    }
20725
20726    impl<T: Into<::qt_core::QFlags<crate::q_memory_barrier::Operation>>> std::ops::BitOr<T>
20727        for crate::q_memory_barrier::Operation
20728    {
20729        type Output = ::qt_core::QFlags<crate::q_memory_barrier::Operation>;
20730        fn bitor(self, rhs: T) -> ::qt_core::QFlags<crate::q_memory_barrier::Operation> {
20731            Into::<::qt_core::QFlags<crate::q_memory_barrier::Operation>>::into(self) | rhs
20732        }
20733    }
20734}
20735/// <p>Class to emplace a memory barrier</p>
20736///
20737/// C++ class: <span style='color: green;'>```Qt3DRender::QMemoryBarrier```</span>.
20738///
20739/// <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Class to emplace a memory barrier</p>
20740/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html">Qt3DRender::QMemoryBarrier</a> FrameGraph node is used to emplace a specific memory barrier at a specific time of the rendering. This is required to properly synchronize drawing and compute commands on the GPU.</p>
20741/// <p>The barrier defines the ordering of memory operations issued by a prior command. This means that if command1 is manipulating a buffer that is to be used as a vertex attribute buffer in a following command2, then the memory barrier should be placed after command1 and setting the appropriate barrier type for vertex attribute buffer.</p>
20742/// <p>When a <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html">QMemoryBarrier</a> node is found in a FrameGraph branch, the barrier will be enforced prior to any draw or compute command even if these are defined deeper in the branch.</p>
20743/// <p>For OpenGL rendering, this page gives more info about the <a href="https://www.opengl.org/wiki/Memory_Model">Memory Model</a></p></div>
20744#[repr(C)]
20745pub struct QMemoryBarrier {
20746    _unused: u8,
20747}
20748impl QMemoryBarrier {
20749    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#waitOperations">waitOperations</a>().</p>
20750    ///
20751    /// Returns a built-in Qt slot `Qt3DRender::QMemoryBarrier::setWaitOperations` that can be passed to `qt_core::Signal::connect`.
20752    ///
20753    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#setWaitOperations">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#waitOperations">waitOperations</a>().</p></div>
20754    #[inline(always)]
20755    pub fn slot_set_wait_operations(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
20756        unsafe {
20757            ::qt_core::Receiver::new(
20758                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
20759                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
20760                    b"1setWaitOperations(QFlags< Qt3DRender::QMemoryBarrier::Operation >)\0",
20761                ),
20762            )
20763        }
20764    }
20765
20766    /// Returns a built-in Qt signal `Qt3DRender::QMemoryBarrier::waitOperationsChanged` that can be passed to `qt_core::Signal::connect`.
20767    #[inline(always)]
20768    pub fn wait_operations_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
20769        unsafe {
20770            ::qt_core::Signal::new(
20771                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
20772                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
20773                    b"2waitOperationsChanged(QFlags< Qt3DRender::QMemoryBarrier::Operation >)\0",
20774                ),
20775            )
20776        }
20777    }
20778
20779    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QMemoryBarrier::metaObject() const```</span>.
20780    #[inline(always)]
20781    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
20782        let ffi_result = {
20783            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_metaObject(
20784                self as *const crate::QMemoryBarrier,
20785            )
20786        };
20787        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
20788    }
20789
20790    /// <p>Default constructs an instance of QMemoryBarrier.</p>
20791    ///
20792    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QMemoryBarrier::QMemoryBarrier(Qt3DCore::QNode* parent = …)```</span>.
20793    ///
20794    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#QMemoryBarrier">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QMemoryBarrier.</p></div>
20795    #[inline(always)]
20796    pub unsafe fn new_1a(
20797        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
20798    ) -> ::qt_core::QBox<crate::QMemoryBarrier> {
20799        let ffi_result = {
20800            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_QMemoryBarrier(
20801                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
20802                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
20803            )
20804        };
20805        ::qt_core::QBox::from_raw(ffi_result)
20806    }
20807
20808    /// <p>Class to emplace a memory barrier</p>
20809    ///
20810    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QMemoryBarrier::QMemoryBarrier()```</span>.
20811    ///
20812    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Class to emplace a memory barrier</p>
20813    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html">Qt3DRender::QMemoryBarrier</a> FrameGraph node is used to emplace a specific memory barrier at a specific time of the rendering. This is required to properly synchronize drawing and compute commands on the GPU.</p>
20814    /// <p>The barrier defines the ordering of memory operations issued by a prior command. This means that if command1 is manipulating a buffer that is to be used as a vertex attribute buffer in a following command2, then the memory barrier should be placed after command1 and setting the appropriate barrier type for vertex attribute buffer.</p>
20815    /// <p>When a <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html">QMemoryBarrier</a> node is found in a FrameGraph branch, the barrier will be enforced prior to any draw or compute command even if these are defined deeper in the branch.</p>
20816    /// <p>For OpenGL rendering, this page gives more info about the <a href="https://www.opengl.org/wiki/Memory_Model">Memory Model</a></p></div>
20817    #[inline(always)]
20818    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QMemoryBarrier> {
20819        let ffi_result =
20820            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_QMemoryBarrier1() };
20821        ::qt_core::QBox::from_raw(ffi_result)
20822    }
20823
20824    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QMemoryBarrier::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
20825    #[inline(always)]
20826    pub unsafe fn qt_metacall(
20827        &self,
20828        arg1: ::qt_core::q_meta_object::Call,
20829        arg2: ::std::os::raw::c_int,
20830        arg3: *mut *mut ::std::ffi::c_void,
20831    ) -> ::std::os::raw::c_int {
20832        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_qt_metacall(
20833            self as *const crate::QMemoryBarrier as *mut crate::QMemoryBarrier,
20834            arg1,
20835            arg2,
20836            arg3,
20837        )
20838    }
20839
20840    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QMemoryBarrier::qt_metacast(const char* arg1)```</span>.
20841    #[inline(always)]
20842    pub unsafe fn qt_metacast(
20843        &self,
20844        arg1: *const ::std::os::raw::c_char,
20845    ) -> *mut ::std::ffi::c_void {
20846        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_qt_metacast(
20847            self as *const crate::QMemoryBarrier as *mut crate::QMemoryBarrier,
20848            arg1,
20849        )
20850    }
20851
20852    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#waitOperations">waitOperations</a>().</p>
20853    ///
20854    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QMemoryBarrier::setWaitOperations(QFlags<Qt3DRender::QMemoryBarrier::Operation> operations)```</span>.
20855    ///
20856    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#setWaitOperations">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#waitOperations">waitOperations</a>().</p></div>
20857    #[inline(always)]
20858    pub unsafe fn set_wait_operations(
20859        &self,
20860        operations: ::qt_core::QFlags<crate::q_memory_barrier::Operation>,
20861    ) {
20862        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_setWaitOperations(
20863            self as *const crate::QMemoryBarrier as *mut crate::QMemoryBarrier,
20864            operations.to_int(),
20865        )
20866    }
20867
20868    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
20869    #[inline(always)]
20870    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
20871        let ffi_result =
20872            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_staticMetaObject() };
20873        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
20874            .expect("attempted to construct a null Ref")
20875    }
20876
20877    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QMemoryBarrier::tr(const char* s, const char* c, int n)```</span>.
20878    #[inline(always)]
20879    pub unsafe fn tr(
20880        s: *const ::std::os::raw::c_char,
20881        c: *const ::std::os::raw::c_char,
20882        n: ::std::os::raw::c_int,
20883    ) -> ::cpp_core::CppBox<::qt_core::QString> {
20884        let ffi_result =
20885            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_tr(s, c, n) };
20886        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20887    }
20888
20889    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QMemoryBarrier::trUtf8(const char* s, const char* c, int n)```</span>.
20890    #[inline(always)]
20891    pub unsafe fn tr_utf8(
20892        s: *const ::std::os::raw::c_char,
20893        c: *const ::std::os::raw::c_char,
20894        n: ::std::os::raw::c_int,
20895    ) -> ::cpp_core::CppBox<::qt_core::QString> {
20896        let ffi_result =
20897            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_trUtf8(s, c, n) };
20898        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
20899    }
20900
20901    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#setWaitOperations">setWaitOperations</a>().</p>
20902    ///
20903    /// Calls C++ function: <span style='color: green;'>```QFlags<Qt3DRender::QMemoryBarrier::Operation> Qt3DRender::QMemoryBarrier::waitOperations() const```</span>.
20904    ///
20905    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#waitOperations">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#setWaitOperations">setWaitOperations</a>().</p></div>
20906    #[inline(always)]
20907    pub unsafe fn wait_operations(&self) -> ::qt_core::QFlags<crate::q_memory_barrier::Operation> {
20908        let ffi_result = {
20909            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_waitOperations(
20910                self as *const crate::QMemoryBarrier,
20911            )
20912        };
20913        ::qt_core::QFlags::from(ffi_result)
20914    }
20915}
20916
20917pub mod q_mesh {
20918    //! C++ type: <span style='color: green;'>```Qt3DRender::QMesh```</span>
20919
20920    /// C++ enum: <span style='color: green;'>```Qt3DRender::QMesh::Status```</span>.
20921    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
20922    #[repr(transparent)]
20923    pub struct Status(::std::os::raw::c_int);
20924
20925    impl From<::std::os::raw::c_int> for Status {
20926        fn from(value: ::std::os::raw::c_int) -> Self {
20927            Status(value)
20928        }
20929    }
20930
20931    impl From<Status> for ::std::os::raw::c_int {
20932        fn from(value: Status) -> Self {
20933            value.0
20934        }
20935    }
20936
20937    impl Status {
20938        pub fn to_int(&self) -> ::std::os::raw::c_int {
20939            self.0
20940        }
20941    }
20942
20943    impl Status {
20944        /// C++ enum variant: <span style='color: green;'>```None = 0```</span>
20945        #[allow(non_upper_case_globals)]
20946        pub const None: crate::q_mesh::Status = crate::q_mesh::Status(0);
20947        /// C++ enum variant: <span style='color: green;'>```Loading = 1```</span>
20948        #[allow(non_upper_case_globals)]
20949        pub const Loading: crate::q_mesh::Status = crate::q_mesh::Status(1);
20950        /// C++ enum variant: <span style='color: green;'>```Ready = 2```</span>
20951        #[allow(non_upper_case_globals)]
20952        pub const Ready: crate::q_mesh::Status = crate::q_mesh::Status(2);
20953        /// C++ enum variant: <span style='color: green;'>```Error = 3```</span>
20954        #[allow(non_upper_case_globals)]
20955        pub const Error: crate::q_mesh::Status = crate::q_mesh::Status(3);
20956    }
20957}
20958/// <p>A custom mesh loader.</p>
20959///
20960/// C++ class: <span style='color: green;'>```Qt3DRender::QMesh```</span>.
20961///
20962/// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A custom mesh loader.</p>
20963/// <p>Loads mesh data from external files in a variety of formats. <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">Qt3DRender::QMesh</a> loads data into a single mesh.</p>
20964/// <p>In Qt3D 5.9, <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">QMesh</a> supports the following formats:</p>
20965/// <ul>
20966/// <li>Wavefront OBJ</li>
20967/// <li>Stanford Triangle Format PLY</li>
20968/// <li>STL (STereoLithography)</li>
20969/// </ul>
20970/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">QMesh</a> will also support the following format if the SDK is installed and the fbx geometry loader plugin is built and found:</p>
20971/// <ul>
20972/// <li>Autodesk FBX</li>
20973/// </ul>
20974/// <p>If you wish to load an entire scene made of several objects, you should rather use the <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">Qt3DRender::QSceneLoader</a> instead.</p></div>
20975#[repr(C)]
20976pub struct QMesh {
20977    _unused: u8,
20978}
20979impl QMesh {
20980    /// <p>Holds the <i>source</i> url to the file containing the custom mesh.</p>
20981    ///
20982    /// Returns a built-in Qt slot `Qt3DRender::QMesh::setSource` that can be passed to `qt_core::Signal::connect`.
20983    ///
20984    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the <i>source</i> url to the file containing the custom mesh.</p>
20985    /// <p><b>Access functions:</b></p>
20986    /// <div class="table"><table class="alignedsummary">
20987    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
20988    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSource</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
20989    /// </tbody></table></div>
20990    /// <p><b>Notifier signal:</b></p>
20991    /// <div class="table"><table class="alignedsummary">
20992    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
20993    /// </tbody></table></div></div>
20994    #[inline(always)]
20995    pub fn slot_set_source(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
20996        unsafe {
20997            ::qt_core::Receiver::new(
20998                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
20999                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSource(QUrl const &)\0"),
21000            )
21001        }
21002    }
21003
21004    /// <p>Holds the name of the mesh.</p>
21005    ///
21006    /// Returns a built-in Qt slot `Qt3DRender::QMesh::setMeshName` that can be passed to `qt_core::Signal::connect`.
21007    ///
21008    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#meshName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name of the mesh.</p>
21009    /// <p><b>Access functions:</b></p>
21010    /// <div class="table"><table class="alignedsummary">
21011    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>meshName</b></span>() const</td></tr>
21012    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMeshName</b></span>(const QString &amp;<i>meshName</i>)</td></tr>
21013    /// </tbody></table></div>
21014    /// <p><b>Notifier signal:</b></p>
21015    /// <div class="table"><table class="alignedsummary">
21016    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>meshNameChanged</b></span>(const QString &amp;<i>meshName</i>)</td></tr>
21017    /// </tbody></table></div></div>
21018    #[inline(always)]
21019    pub fn slot_set_mesh_name(&self) -> ::qt_core::Receiver<(*const ::qt_core::QString,)> {
21020        unsafe {
21021            ::qt_core::Receiver::new(
21022                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21023                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setMeshName(QString const &)\0"),
21024            )
21025        }
21026    }
21027
21028    /// <p>Holds the <i>source</i> url to the file containing the custom mesh.</p>
21029    ///
21030    /// Returns a built-in Qt signal `Qt3DRender::QMesh::sourceChanged` that can be passed to `qt_core::Signal::connect`.
21031    ///
21032    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the <i>source</i> url to the file containing the custom mesh.</p>
21033    /// <p><b>Access functions:</b></p>
21034    /// <div class="table"><table class="alignedsummary">
21035    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
21036    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSource</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
21037    /// </tbody></table></div>
21038    /// <p><b>Notifier signal:</b></p>
21039    /// <div class="table"><table class="alignedsummary">
21040    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
21041    /// </tbody></table></div></div>
21042    #[inline(always)]
21043    pub fn source_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
21044        unsafe {
21045            ::qt_core::Signal::new(
21046                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21047                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2sourceChanged(QUrl const &)\0"),
21048            )
21049        }
21050    }
21051
21052    /// <p>Holds the name of the mesh.</p>
21053    ///
21054    /// Returns a built-in Qt signal `Qt3DRender::QMesh::meshNameChanged` that can be passed to `qt_core::Signal::connect`.
21055    ///
21056    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#meshName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name of the mesh.</p>
21057    /// <p><b>Access functions:</b></p>
21058    /// <div class="table"><table class="alignedsummary">
21059    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>meshName</b></span>() const</td></tr>
21060    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMeshName</b></span>(const QString &amp;<i>meshName</i>)</td></tr>
21061    /// </tbody></table></div>
21062    /// <p><b>Notifier signal:</b></p>
21063    /// <div class="table"><table class="alignedsummary">
21064    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>meshNameChanged</b></span>(const QString &amp;<i>meshName</i>)</td></tr>
21065    /// </tbody></table></div></div>
21066    #[inline(always)]
21067    pub fn mesh_name_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QString,)> {
21068        unsafe {
21069            ::qt_core::Signal::new(
21070                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21071                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
21072                    b"2meshNameChanged(QString const &)\0",
21073                ),
21074            )
21075        }
21076    }
21077
21078    /// <p>Holds the name of the mesh.</p>
21079    ///
21080    /// Calls C++ function: <span style='color: green;'>```QString Qt3DRender::QMesh::meshName() const```</span>.
21081    ///
21082    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#meshName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name of the mesh.</p>
21083    /// <p><b>Access functions:</b></p>
21084    /// <div class="table"><table class="alignedsummary">
21085    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>meshName</b></span>() const</td></tr>
21086    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMeshName</b></span>(const QString &amp;<i>meshName</i>)</td></tr>
21087    /// </tbody></table></div>
21088    /// <p><b>Notifier signal:</b></p>
21089    /// <div class="table"><table class="alignedsummary">
21090    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>meshNameChanged</b></span>(const QString &amp;<i>meshName</i>)</td></tr>
21091    /// </tbody></table></div></div>
21092    #[inline(always)]
21093    pub unsafe fn mesh_name(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
21094        let ffi_result = {
21095            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_meshName(
21096                self as *const crate::QMesh,
21097            )
21098        };
21099        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21100    }
21101
21102    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QMesh::metaObject() const```</span>.
21103    #[inline(always)]
21104    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
21105        let ffi_result = {
21106            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_metaObject(
21107                self as *const crate::QMesh,
21108            )
21109        };
21110        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
21111    }
21112
21113    /// <p>Default constructs an instance of QMesh.</p>
21114    ///
21115    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QMesh::QMesh(Qt3DCore::QNode* parent = …)```</span>.
21116    ///
21117    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#QMesh">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QMesh.</p></div>
21118    #[inline(always)]
21119    pub unsafe fn new_1a(
21120        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
21121    ) -> ::qt_core::QBox<crate::QMesh> {
21122        let ffi_result = {
21123            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_QMesh(
21124                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
21125                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
21126            )
21127        };
21128        ::qt_core::QBox::from_raw(ffi_result)
21129    }
21130
21131    /// <p>A custom mesh loader.</p>
21132    ///
21133    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QMesh::QMesh()```</span>.
21134    ///
21135    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A custom mesh loader.</p>
21136    /// <p>Loads mesh data from external files in a variety of formats. <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">Qt3DRender::QMesh</a> loads data into a single mesh.</p>
21137    /// <p>In Qt3D 5.9, <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">QMesh</a> supports the following formats:</p>
21138    /// <ul>
21139    /// <li>Wavefront OBJ</li>
21140    /// <li>Stanford Triangle Format PLY</li>
21141    /// <li>STL (STereoLithography)</li>
21142    /// </ul>
21143    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">QMesh</a> will also support the following format if the SDK is installed and the fbx geometry loader plugin is built and found:</p>
21144    /// <ul>
21145    /// <li>Autodesk FBX</li>
21146    /// </ul>
21147    /// <p>If you wish to load an entire scene made of several objects, you should rather use the <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">Qt3DRender::QSceneLoader</a> instead.</p></div>
21148    #[inline(always)]
21149    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QMesh> {
21150        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_QMesh1() };
21151        ::qt_core::QBox::from_raw(ffi_result)
21152    }
21153
21154    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QMesh::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
21155    #[inline(always)]
21156    pub unsafe fn qt_metacall(
21157        &self,
21158        arg1: ::qt_core::q_meta_object::Call,
21159        arg2: ::std::os::raw::c_int,
21160        arg3: *mut *mut ::std::ffi::c_void,
21161    ) -> ::std::os::raw::c_int {
21162        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_qt_metacall(
21163            self as *const crate::QMesh as *mut crate::QMesh,
21164            arg1,
21165            arg2,
21166            arg3,
21167        )
21168    }
21169
21170    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QMesh::qt_metacast(const char* arg1)```</span>.
21171    #[inline(always)]
21172    pub unsafe fn qt_metacast(
21173        &self,
21174        arg1: *const ::std::os::raw::c_char,
21175    ) -> *mut ::std::ffi::c_void {
21176        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_qt_metacast(
21177            self as *const crate::QMesh as *mut crate::QMesh,
21178            arg1,
21179        )
21180    }
21181
21182    /// <p>Holds the name of the mesh.</p>
21183    ///
21184    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QMesh::setMeshName(const QString& meshName)```</span>.
21185    ///
21186    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#meshName-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the name of the mesh.</p>
21187    /// <p><b>Access functions:</b></p>
21188    /// <div class="table"><table class="alignedsummary">
21189    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>meshName</b></span>() const</td></tr>
21190    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMeshName</b></span>(const QString &amp;<i>meshName</i>)</td></tr>
21191    /// </tbody></table></div>
21192    /// <p><b>Notifier signal:</b></p>
21193    /// <div class="table"><table class="alignedsummary">
21194    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>meshNameChanged</b></span>(const QString &amp;<i>meshName</i>)</td></tr>
21195    /// </tbody></table></div></div>
21196    #[inline(always)]
21197    pub unsafe fn set_mesh_name(
21198        &self,
21199        mesh_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
21200    ) {
21201        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_setMeshName(
21202            self as *const crate::QMesh as *mut crate::QMesh,
21203            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(mesh_name)
21204                .as_raw_ptr(),
21205        )
21206    }
21207
21208    /// <p>Holds the <i>source</i> url to the file containing the custom mesh.</p>
21209    ///
21210    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QMesh::setSource(const QUrl& source)```</span>.
21211    ///
21212    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the <i>source</i> url to the file containing the custom mesh.</p>
21213    /// <p><b>Access functions:</b></p>
21214    /// <div class="table"><table class="alignedsummary">
21215    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
21216    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSource</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
21217    /// </tbody></table></div>
21218    /// <p><b>Notifier signal:</b></p>
21219    /// <div class="table"><table class="alignedsummary">
21220    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
21221    /// </tbody></table></div></div>
21222    #[inline(always)]
21223    pub unsafe fn set_source(
21224        &self,
21225        source: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
21226    ) {
21227        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_setSource(
21228            self as *const crate::QMesh as *mut crate::QMesh,
21229            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(source)
21230                .as_raw_ptr(),
21231        )
21232    }
21233
21234    /// <p>Holds the <i>source</i> url to the file containing the custom mesh.</p>
21235    ///
21236    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QMesh::source() const```</span>.
21237    ///
21238    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the <i>source</i> url to the file containing the custom mesh.</p>
21239    /// <p><b>Access functions:</b></p>
21240    /// <div class="table"><table class="alignedsummary">
21241    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
21242    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSource</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
21243    /// </tbody></table></div>
21244    /// <p><b>Notifier signal:</b></p>
21245    /// <div class="table"><table class="alignedsummary">
21246    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
21247    /// </tbody></table></div></div>
21248    #[inline(always)]
21249    pub unsafe fn source(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
21250        let ffi_result = {
21251            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_source(self as *const crate::QMesh)
21252        };
21253        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21254    }
21255
21256    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
21257    #[inline(always)]
21258    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
21259        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_staticMetaObject() };
21260        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
21261            .expect("attempted to construct a null Ref")
21262    }
21263
21264    /// <p>Holds the status of the mesh loading.</p>
21265    ///
21266    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMesh::Status Qt3DRender::QMesh::status() const```</span>.
21267    ///
21268    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the status of the mesh loading.</p>
21269    /// <p><b>Access functions:</b></p>
21270    /// <div class="table"><table class="alignedsummary">
21271    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QMesh::Status </td><td class="memItemRight bottomAlign"><span class="name"><b>status</b></span>() const</td></tr>
21272    /// </tbody></table></div>
21273    /// <p><b>Notifier signal:</b></p>
21274    /// <div class="table"><table class="alignedsummary">
21275    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Qt3DRender::QMesh::Status <i>status</i>)</td></tr>
21276    /// </tbody></table></div>
21277    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#Status-enum">Qt3DRender::QMesh::Status</a>.</p></div>
21278    #[inline(always)]
21279    #[cfg_attr(
21280        feature = "ritual_rustdoc_nightly",
21281        doc(cfg(any(
21282            cpp_lib_version = "5.11.3",
21283            cpp_lib_version = "5.12.2",
21284            cpp_lib_version = "5.13.0",
21285            cpp_lib_version = "5.14.0"
21286        )))
21287    )]
21288    #[cfg(any(
21289        any(
21290            cpp_lib_version = "5.11.3",
21291            cpp_lib_version = "5.12.2",
21292            cpp_lib_version = "5.13.0",
21293            cpp_lib_version = "5.14.0"
21294        ),
21295        feature = "ritual_rustdoc"
21296    ))]
21297    pub unsafe fn status(&self) -> crate::q_mesh::Status {
21298        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_status(self as *const crate::QMesh)
21299    }
21300
21301    /// <p>Holds the status of the mesh loading.</p>
21302    ///
21303    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QMesh::statusChanged(Qt3DRender::QMesh::Status status)```</span>.
21304    ///
21305    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the status of the mesh loading.</p>
21306    /// <p><b>Access functions:</b></p>
21307    /// <div class="table"><table class="alignedsummary">
21308    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QMesh::Status </td><td class="memItemRight bottomAlign"><span class="name"><b>status</b></span>() const</td></tr>
21309    /// </tbody></table></div>
21310    /// <p><b>Notifier signal:</b></p>
21311    /// <div class="table"><table class="alignedsummary">
21312    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Qt3DRender::QMesh::Status <i>status</i>)</td></tr>
21313    /// </tbody></table></div>
21314    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html#Status-enum">Qt3DRender::QMesh::Status</a>.</p></div>
21315    #[inline(always)]
21316    #[cfg_attr(
21317        feature = "ritual_rustdoc_nightly",
21318        doc(cfg(any(
21319            cpp_lib_version = "5.11.3",
21320            cpp_lib_version = "5.12.2",
21321            cpp_lib_version = "5.13.0",
21322            cpp_lib_version = "5.14.0"
21323        )))
21324    )]
21325    #[cfg(any(
21326        any(
21327            cpp_lib_version = "5.11.3",
21328            cpp_lib_version = "5.12.2",
21329            cpp_lib_version = "5.13.0",
21330            cpp_lib_version = "5.14.0"
21331        ),
21332        feature = "ritual_rustdoc"
21333    ))]
21334    pub unsafe fn status_changed(&self, status: crate::q_mesh::Status) {
21335        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_statusChanged(
21336            self as *const crate::QMesh as *mut crate::QMesh,
21337            status,
21338        )
21339    }
21340
21341    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QMesh::tr(const char* s, const char* c, int n)```</span>.
21342    #[inline(always)]
21343    pub unsafe fn tr(
21344        s: *const ::std::os::raw::c_char,
21345        c: *const ::std::os::raw::c_char,
21346        n: ::std::os::raw::c_int,
21347    ) -> ::cpp_core::CppBox<::qt_core::QString> {
21348        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_tr(s, c, n) };
21349        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21350    }
21351
21352    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QMesh::trUtf8(const char* s, const char* c, int n)```</span>.
21353    #[inline(always)]
21354    pub unsafe fn tr_utf8(
21355        s: *const ::std::os::raw::c_char,
21356        c: *const ::std::os::raw::c_char,
21357        n: ::std::os::raw::c_int,
21358    ) -> ::cpp_core::CppBox<::qt_core::QString> {
21359        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_trUtf8(s, c, n) };
21360        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21361    }
21362}
21363
21364/// <p>Enable multisample antialiasing</p>
21365///
21366/// C++ class: <span style='color: green;'>```Qt3DRender::QMultiSampleAntiAliasing```</span>.
21367///
21368/// <a href="http://doc.qt.io/qt-5/qt3drender-qmultisampleantialiasing.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enable multisample antialiasing</p>
21369/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qmultisampleantialiasing.html">Qt3DRender::QMultiSampleAntiAliasing</a> class enables multisample antialiasing. The render target must have been allocated with multisampling enabled.</p></div>
21370#[repr(C)]
21371pub struct QMultiSampleAntiAliasing {
21372    _unused: u8,
21373}
21374impl QMultiSampleAntiAliasing {
21375    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QMultiSampleAntiAliasing::metaObject() const```</span>.
21376    #[inline(always)]
21377    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
21378        let ffi_result = {
21379            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMultiSampleAntiAliasing_metaObject(
21380                self as *const crate::QMultiSampleAntiAliasing,
21381            )
21382        };
21383        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
21384    }
21385
21386    /// <p>Default constructs an instance of QMultiSampleAntiAliasing.</p>
21387    ///
21388    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QMultiSampleAntiAliasing::QMultiSampleAntiAliasing(Qt3DCore::QNode* parent = …)```</span>.
21389    ///
21390    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmultisampleantialiasing.html#QMultiSampleAntiAliasing">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QMultiSampleAntiAliasing.</p></div>
21391    #[inline(always)]
21392    pub unsafe fn new_1a(
21393        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
21394    ) -> ::qt_core::QBox<crate::QMultiSampleAntiAliasing> {
21395        let ffi_result = {
21396            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMultiSampleAntiAliasing_QMultiSampleAntiAliasing(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent).as_raw_ptr() as *mut ::qt_3d_core::QNode)
21397        };
21398        ::qt_core::QBox::from_raw(ffi_result)
21399    }
21400
21401    /// <p>Enable multisample antialiasing</p>
21402    ///
21403    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QMultiSampleAntiAliasing::QMultiSampleAntiAliasing()```</span>.
21404    ///
21405    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmultisampleantialiasing.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enable multisample antialiasing</p>
21406    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qmultisampleantialiasing.html">Qt3DRender::QMultiSampleAntiAliasing</a> class enables multisample antialiasing. The render target must have been allocated with multisampling enabled.</p></div>
21407    #[inline(always)]
21408    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QMultiSampleAntiAliasing> {
21409        let ffi_result = {
21410            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMultiSampleAntiAliasing_QMultiSampleAntiAliasing1()
21411        };
21412        ::qt_core::QBox::from_raw(ffi_result)
21413    }
21414
21415    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QMultiSampleAntiAliasing::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
21416    #[inline(always)]
21417    pub unsafe fn qt_metacall(
21418        &self,
21419        arg1: ::qt_core::q_meta_object::Call,
21420        arg2: ::std::os::raw::c_int,
21421        arg3: *mut *mut ::std::ffi::c_void,
21422    ) -> ::std::os::raw::c_int {
21423        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMultiSampleAntiAliasing_qt_metacall(
21424            self as *const crate::QMultiSampleAntiAliasing as *mut crate::QMultiSampleAntiAliasing,
21425            arg1,
21426            arg2,
21427            arg3,
21428        )
21429    }
21430
21431    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QMultiSampleAntiAliasing::qt_metacast(const char* arg1)```</span>.
21432    #[inline(always)]
21433    pub unsafe fn qt_metacast(
21434        &self,
21435        arg1: *const ::std::os::raw::c_char,
21436    ) -> *mut ::std::ffi::c_void {
21437        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMultiSampleAntiAliasing_qt_metacast(
21438            self as *const crate::QMultiSampleAntiAliasing as *mut crate::QMultiSampleAntiAliasing,
21439            arg1,
21440        )
21441    }
21442
21443    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
21444    #[inline(always)]
21445    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
21446        let ffi_result = {
21447            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMultiSampleAntiAliasing_staticMetaObject(
21448            )
21449        };
21450        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
21451            .expect("attempted to construct a null Ref")
21452    }
21453
21454    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QMultiSampleAntiAliasing::tr(const char* s, const char* c, int n)```</span>.
21455    #[inline(always)]
21456    pub unsafe fn tr(
21457        s: *const ::std::os::raw::c_char,
21458        c: *const ::std::os::raw::c_char,
21459        n: ::std::os::raw::c_int,
21460    ) -> ::cpp_core::CppBox<::qt_core::QString> {
21461        let ffi_result =
21462            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMultiSampleAntiAliasing_tr(s, c, n) };
21463        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21464    }
21465
21466    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QMultiSampleAntiAliasing::trUtf8(const char* s, const char* c, int n)```</span>.
21467    #[inline(always)]
21468    pub unsafe fn tr_utf8(
21469        s: *const ::std::os::raw::c_char,
21470        c: *const ::std::os::raw::c_char,
21471        n: ::std::os::raw::c_int,
21472    ) -> ::cpp_core::CppBox<::qt_core::QString> {
21473        let ffi_result = {
21474            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMultiSampleAntiAliasing_trUtf8(s, c, n)
21475        };
21476        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21477    }
21478}
21479
21480/// <p>Disable depth write</p>
21481///
21482/// C++ class: <span style='color: green;'>```Qt3DRender::QNoDepthMask```</span>.
21483///
21484/// <a href="http://doc.qt.io/qt-5/qt3drender-qnodepthmask.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Disable depth write</p>
21485/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qnodepthmask.html">Qt3DRender::QNoDepthMask</a> class disables fragment depth write to depth buffer.</p></div>
21486#[repr(C)]
21487pub struct QNoDepthMask {
21488    _unused: u8,
21489}
21490impl QNoDepthMask {
21491    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QNoDepthMask::metaObject() const```</span>.
21492    #[inline(always)]
21493    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
21494        let ffi_result = {
21495            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDepthMask_metaObject(
21496                self as *const crate::QNoDepthMask,
21497            )
21498        };
21499        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
21500    }
21501
21502    /// <p>Default constructs an instance of QNoDepthMask.</p>
21503    ///
21504    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QNoDepthMask::QNoDepthMask(Qt3DCore::QNode* parent = …)```</span>.
21505    ///
21506    /// <a href="http://doc.qt.io/qt-5/qt3drender-qnodepthmask.html#QNoDepthMask">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QNoDepthMask.</p></div>
21507    #[inline(always)]
21508    pub unsafe fn new_1a(
21509        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
21510    ) -> ::qt_core::QBox<crate::QNoDepthMask> {
21511        let ffi_result = {
21512            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDepthMask_QNoDepthMask(
21513                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
21514                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
21515            )
21516        };
21517        ::qt_core::QBox::from_raw(ffi_result)
21518    }
21519
21520    /// <p>Disable depth write</p>
21521    ///
21522    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QNoDepthMask::QNoDepthMask()```</span>.
21523    ///
21524    /// <a href="http://doc.qt.io/qt-5/qt3drender-qnodepthmask.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Disable depth write</p>
21525    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qnodepthmask.html">Qt3DRender::QNoDepthMask</a> class disables fragment depth write to depth buffer.</p></div>
21526    #[inline(always)]
21527    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QNoDepthMask> {
21528        let ffi_result =
21529            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDepthMask_QNoDepthMask1() };
21530        ::qt_core::QBox::from_raw(ffi_result)
21531    }
21532
21533    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QNoDepthMask::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
21534    #[inline(always)]
21535    pub unsafe fn qt_metacall(
21536        &self,
21537        arg1: ::qt_core::q_meta_object::Call,
21538        arg2: ::std::os::raw::c_int,
21539        arg3: *mut *mut ::std::ffi::c_void,
21540    ) -> ::std::os::raw::c_int {
21541        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDepthMask_qt_metacall(
21542            self as *const crate::QNoDepthMask as *mut crate::QNoDepthMask,
21543            arg1,
21544            arg2,
21545            arg3,
21546        )
21547    }
21548
21549    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QNoDepthMask::qt_metacast(const char* arg1)```</span>.
21550    #[inline(always)]
21551    pub unsafe fn qt_metacast(
21552        &self,
21553        arg1: *const ::std::os::raw::c_char,
21554    ) -> *mut ::std::ffi::c_void {
21555        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDepthMask_qt_metacast(
21556            self as *const crate::QNoDepthMask as *mut crate::QNoDepthMask,
21557            arg1,
21558        )
21559    }
21560
21561    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
21562    #[inline(always)]
21563    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
21564        let ffi_result =
21565            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDepthMask_staticMetaObject() };
21566        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
21567            .expect("attempted to construct a null Ref")
21568    }
21569
21570    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QNoDepthMask::tr(const char* s, const char* c, int n)```</span>.
21571    #[inline(always)]
21572    pub unsafe fn tr(
21573        s: *const ::std::os::raw::c_char,
21574        c: *const ::std::os::raw::c_char,
21575        n: ::std::os::raw::c_int,
21576    ) -> ::cpp_core::CppBox<::qt_core::QString> {
21577        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDepthMask_tr(s, c, n) };
21578        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21579    }
21580
21581    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QNoDepthMask::trUtf8(const char* s, const char* c, int n)```</span>.
21582    #[inline(always)]
21583    pub unsafe fn tr_utf8(
21584        s: *const ::std::os::raw::c_char,
21585        c: *const ::std::os::raw::c_char,
21586        n: ::std::os::raw::c_int,
21587    ) -> ::cpp_core::CppBox<::qt_core::QString> {
21588        let ffi_result =
21589            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDepthMask_trUtf8(s, c, n) };
21590        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21591    }
21592}
21593
21594/// <p>When a <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> node is present in a FrameGraph branch, this prevents the renderer from rendering any primitive.</p>
21595///
21596/// C++ class: <span style='color: green;'>```Qt3DRender::QNoDraw```</span>.
21597///
21598/// <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>When a <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> node is present in a FrameGraph branch, this prevents the renderer from rendering any primitive.</p>
21599/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> should be used when the FrameGraph needs to set up some render states or clear some buffers without requiring any mesh to be drawn. It has the same effect as having a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">Qt3DRender::QRenderPassFilter</a> that matches none of available <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> instances of the scene without the overhead cost of actually performing the filtering.</p>
21600/// <p>When disabled, a <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> node won't prevent the scene from being rendered. Toggling the enabled property is therefore a way to make a <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> active or inactive.</p>
21601/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> is usually used as a child of a Qt3DRendeR::QClearBuffers node to prevent from drawing the scene when there are multiple render passes.</p>
21602/// <pre class="cpp">
21603///
21604///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span> <span class="operator">*</span>viewport <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span>();
21605///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a></span> <span class="operator">*</span>cameraSelector <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a></span>(viewport);
21606///
21607///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span> <span class="operator">*</span>clearBuffers <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span>(cameraSelector);
21608///   clearBuffers<span class="operator">-</span><span class="operator">&gt;</span>setBuffers(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span><span class="operator">::</span>ColorDepthBuffer);
21609///
21610///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html#QNoDraw">QNoDraw</a></span> <span class="operator">*</span>noDraw <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html#QNoDraw">QNoDraw</a></span>(clearBuffers);
21611///
21612///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span> <span class="operator">*</span>mainPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span>(cameraSelector);
21613///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
21614///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span> <span class="operator">*</span>previewPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span>(cameraSelector);
21615///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
21616///
21617/// </pre></div>
21618#[repr(C)]
21619pub struct QNoDraw {
21620    _unused: u8,
21621}
21622impl QNoDraw {
21623    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QNoDraw::metaObject() const```</span>.
21624    #[inline(always)]
21625    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
21626        let ffi_result = {
21627            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDraw_metaObject(
21628                self as *const crate::QNoDraw,
21629            )
21630        };
21631        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
21632    }
21633
21634    /// <p>Default constructs an instance of QNoDraw.</p>
21635    ///
21636    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QNoDraw::QNoDraw(Qt3DCore::QNode* parent = …)```</span>.
21637    ///
21638    /// <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html#QNoDraw">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QNoDraw.</p></div>
21639    #[inline(always)]
21640    pub unsafe fn new_1a(
21641        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
21642    ) -> ::qt_core::QBox<crate::QNoDraw> {
21643        let ffi_result = {
21644            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDraw_QNoDraw(
21645                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
21646                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
21647            )
21648        };
21649        ::qt_core::QBox::from_raw(ffi_result)
21650    }
21651
21652    /// <p>When a <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> node is present in a FrameGraph branch, this prevents the renderer from rendering any primitive.</p>
21653    ///
21654    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QNoDraw::QNoDraw()```</span>.
21655    ///
21656    /// <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>When a <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> node is present in a FrameGraph branch, this prevents the renderer from rendering any primitive.</p>
21657    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> should be used when the FrameGraph needs to set up some render states or clear some buffers without requiring any mesh to be drawn. It has the same effect as having a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">Qt3DRender::QRenderPassFilter</a> that matches none of available <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> instances of the scene without the overhead cost of actually performing the filtering.</p>
21658    /// <p>When disabled, a <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> node won't prevent the scene from being rendered. Toggling the enabled property is therefore a way to make a <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> active or inactive.</p>
21659    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">Qt3DRender::QNoDraw</a> is usually used as a child of a Qt3DRendeR::QClearBuffers node to prevent from drawing the scene when there are multiple render passes.</p>
21660    /// <pre class="cpp">
21661    ///
21662    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span> <span class="operator">*</span>viewport <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span>();
21663    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a></span> <span class="operator">*</span>cameraSelector <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a></span>(viewport);
21664    ///
21665    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span> <span class="operator">*</span>clearBuffers <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span>(cameraSelector);
21666    ///   clearBuffers<span class="operator">-</span><span class="operator">&gt;</span>setBuffers(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span><span class="operator">::</span>ColorDepthBuffer);
21667    ///
21668    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html#QNoDraw">QNoDraw</a></span> <span class="operator">*</span>noDraw <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html#QNoDraw">QNoDraw</a></span>(clearBuffers);
21669    ///
21670    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span> <span class="operator">*</span>mainPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span>(cameraSelector);
21671    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
21672    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span> <span class="operator">*</span>previewPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-module.html">Qt3DRender</a></span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span>(cameraSelector);
21673    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
21674    ///
21675    /// </pre></div>
21676    #[inline(always)]
21677    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QNoDraw> {
21678        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDraw_QNoDraw1() };
21679        ::qt_core::QBox::from_raw(ffi_result)
21680    }
21681
21682    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QNoDraw::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
21683    #[inline(always)]
21684    pub unsafe fn qt_metacall(
21685        &self,
21686        arg1: ::qt_core::q_meta_object::Call,
21687        arg2: ::std::os::raw::c_int,
21688        arg3: *mut *mut ::std::ffi::c_void,
21689    ) -> ::std::os::raw::c_int {
21690        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDraw_qt_metacall(
21691            self as *const crate::QNoDraw as *mut crate::QNoDraw,
21692            arg1,
21693            arg2,
21694            arg3,
21695        )
21696    }
21697
21698    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QNoDraw::qt_metacast(const char* arg1)```</span>.
21699    #[inline(always)]
21700    pub unsafe fn qt_metacast(
21701        &self,
21702        arg1: *const ::std::os::raw::c_char,
21703    ) -> *mut ::std::ffi::c_void {
21704        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDraw_qt_metacast(
21705            self as *const crate::QNoDraw as *mut crate::QNoDraw,
21706            arg1,
21707        )
21708    }
21709
21710    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
21711    #[inline(always)]
21712    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
21713        let ffi_result =
21714            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDraw_staticMetaObject() };
21715        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
21716            .expect("attempted to construct a null Ref")
21717    }
21718
21719    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QNoDraw::tr(const char* s, const char* c, int n)```</span>.
21720    #[inline(always)]
21721    pub unsafe fn tr(
21722        s: *const ::std::os::raw::c_char,
21723        c: *const ::std::os::raw::c_char,
21724        n: ::std::os::raw::c_int,
21725    ) -> ::cpp_core::CppBox<::qt_core::QString> {
21726        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDraw_tr(s, c, n) };
21727        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21728    }
21729
21730    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QNoDraw::trUtf8(const char* s, const char* c, int n)```</span>.
21731    #[inline(always)]
21732    pub unsafe fn tr_utf8(
21733        s: *const ::std::os::raw::c_char,
21734        c: *const ::std::os::raw::c_char,
21735        n: ::std::os::raw::c_int,
21736    ) -> ::cpp_core::CppBox<::qt_core::QString> {
21737        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDraw_trUtf8(s, c, n) };
21738        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
21739    }
21740}
21741
21742/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> class instantiates a component that can be used to interact with a QEntity by a process known as picking.</p>
21743///
21744/// C++ class: <span style='color: green;'>```Qt3DRender::QObjectPicker```</span>.
21745///
21746/// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> class instantiates a component that can be used to interact with a QEntity by a process known as picking.</p>
21747/// <p>For every combination of viewport and camera, picking casts a ray through the scene to find entities who's bounding volume intersects the ray. The bounding volume is computed using the values in the attribute buffer specified by the boundingVolumePositionAttribute of the geometry.</p>
21748/// <p>The signals <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#pressed">pressed</a>(), <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#released">released</a>(), <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#clicked">clicked</a>(), <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#moved">moved</a>(), <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#entered">entered</a>(), and <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#exited">exited</a>() are emitted when the bounding volume defined by the pickAttribute property intersects with a ray.</p>
21749/// <p>Most signals carry a <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> instance. If QPickingSettings::pickMode() is set to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickMethod-enum">QPickingSettings::TrianglePicking</a>, the actual type of the pick parameter will be <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html">QPickTriangleEvent</a>.</p>
21750/// <p>Pick queries are performed on mouse press and mouse release. If drag is enabled, queries also happen on each mouse move while any button is pressed. If hover is enabled, queries happen on every mouse move even if no button is pressed.</p>
21751/// <p><b>Note: </b>Instances of this component shouldn't be shared, not respecting that condition will most likely result in undefined behavior.</p></div>
21752#[repr(C)]
21753pub struct QObjectPicker {
21754    _unused: u8,
21755}
21756impl QObjectPicker {
21757    /// <p>Sets the <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#hoverEnabled-prop">hoverEnabled</a> Property to <i>hoverEnabled</i></p>
21758    ///
21759    /// Returns a built-in Qt slot `Qt3DRender::QObjectPicker::setHoverEnabled` that can be passed to `qt_core::Signal::connect`.
21760    ///
21761    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#setHoverEnabled">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#hoverEnabled-prop">hoverEnabled</a> Property to <i>hoverEnabled</i></p>
21762    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#hoverEnabled-prop">hoverEnabled</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#isHoverEnabled">isHoverEnabled</a>().</p></div>
21763    #[inline(always)]
21764    pub fn slot_set_hover_enabled(&self) -> ::qt_core::Receiver<(bool,)> {
21765        unsafe {
21766            ::qt_core::Receiver::new(
21767                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21768                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setHoverEnabled(bool)\0"),
21769            )
21770        }
21771    }
21772
21773    /// <p>Sets the <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#dragEnabled-prop">dragEnabled</a> Property to <i>dragEnabled</i></p>
21774    ///
21775    /// Returns a built-in Qt slot `Qt3DRender::QObjectPicker::setDragEnabled` that can be passed to `qt_core::Signal::connect`.
21776    ///
21777    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#setDragEnabled">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#dragEnabled-prop">dragEnabled</a> Property to <i>dragEnabled</i></p>
21778    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#dragEnabled-prop">dragEnabled</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#isDragEnabled">isDragEnabled</a>().</p></div>
21779    #[inline(always)]
21780    pub fn slot_set_drag_enabled(&self) -> ::qt_core::Receiver<(bool,)> {
21781        unsafe {
21782            ::qt_core::Receiver::new(
21783                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21784                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setDragEnabled(bool)\0"),
21785            )
21786        }
21787    }
21788
21789    /// <p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on a mouse press the <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> <i>pick</i> contains details of the event.</p>
21790    ///
21791    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::pressed` that can be passed to `qt_core::Signal::connect`.
21792    ///
21793    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#pressed">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on a mouse press the <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> <i>pick</i> contains details of the event.</p></div>
21794    #[inline(always)]
21795    pub fn pressed(&self) -> ::qt_core::Signal<(*mut crate::QPickEvent,)> {
21796        unsafe {
21797            ::qt_core::Signal::new(
21798                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21799                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
21800                    b"2pressed(Qt3DRender::QPickEvent *)\0",
21801                ),
21802            )
21803        }
21804    }
21805
21806    /// <p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on a mouse release the <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> <i>pick</i> contains details of the event.</p>
21807    ///
21808    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::released` that can be passed to `qt_core::Signal::connect`.
21809    ///
21810    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#released">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on a mouse release the <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> <i>pick</i> contains details of the event.</p></div>
21811    #[inline(always)]
21812    pub fn released(&self) -> ::qt_core::Signal<(*mut crate::QPickEvent,)> {
21813        unsafe {
21814            ::qt_core::Signal::new(
21815                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21816                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
21817                    b"2released(Qt3DRender::QPickEvent *)\0",
21818                ),
21819            )
21820        }
21821    }
21822
21823    /// <p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on a mouse click the <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> <i>pick</i> contains details of the event.</p>
21824    ///
21825    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::clicked` that can be passed to `qt_core::Signal::connect`.
21826    ///
21827    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#clicked">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on a mouse click the <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> <i>pick</i> contains details of the event.</p></div>
21828    #[inline(always)]
21829    pub fn clicked(&self) -> ::qt_core::Signal<(*mut crate::QPickEvent,)> {
21830        unsafe {
21831            ::qt_core::Signal::new(
21832                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21833                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
21834                    b"2clicked(Qt3DRender::QPickEvent *)\0",
21835                ),
21836            )
21837        }
21838    }
21839
21840    /// <p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on a mouse move with a button pressed the <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> <i>pick</i> contains details of the event.</p>
21841    ///
21842    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::moved` that can be passed to `qt_core::Signal::connect`.
21843    ///
21844    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#moved">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on a mouse move with a button pressed the <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> <i>pick</i> contains details of the event.</p></div>
21845    #[inline(always)]
21846    pub fn moved(&self) -> ::qt_core::Signal<(*mut crate::QPickEvent,)> {
21847        unsafe {
21848            ::qt_core::Signal::new(
21849                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21850                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
21851                    b"2moved(Qt3DRender::QPickEvent *)\0",
21852                ),
21853            )
21854        }
21855    }
21856
21857    /// <p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on the mouse entering the volume.</p>
21858    ///
21859    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::entered` that can be passed to `qt_core::Signal::connect`.
21860    ///
21861    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#entered">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on the mouse entering the volume.</p></div>
21862    #[inline(always)]
21863    pub fn entered(&self) -> ::qt_core::Signal<()> {
21864        unsafe {
21865            ::qt_core::Signal::new(
21866                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21867                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2entered()\0"),
21868            )
21869        }
21870    }
21871
21872    /// <p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on the ray exiting the volume.</p>
21873    ///
21874    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::exited` that can be passed to `qt_core::Signal::connect`.
21875    ///
21876    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#exited">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This signal is emitted when the bounding volume defined by the pickAttribute property intersects with a ray on the ray exiting the volume.</p></div>
21877    #[inline(always)]
21878    pub fn exited(&self) -> ::qt_core::Signal<()> {
21879        unsafe {
21880            ::qt_core::Signal::new(
21881                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21882                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2exited()\0"),
21883            )
21884        }
21885    }
21886
21887    /// <p>Specifies if hover is enabled</p>
21888    ///
21889    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::hoverEnabledChanged` that can be passed to `qt_core::Signal::connect`.
21890    ///
21891    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#hoverEnabled-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if hover is enabled</p>
21892    /// <p><b>Access functions:</b></p>
21893    /// <div class="table"><table class="alignedsummary">
21894    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#isHoverEnabled">isHoverEnabled</a></b></span>() const</td></tr>
21895    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#setHoverEnabled">setHoverEnabled</a></b></span>(bool <i>hoverEnabled</i>)</td></tr>
21896    /// </tbody></table></div>
21897    /// <p><b>Notifier signal:</b></p>
21898    /// <div class="table"><table class="alignedsummary">
21899    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>hoverEnabledChanged</b></span>(bool <i>hoverEnabled</i>)</td></tr>
21900    /// </tbody></table></div></div>
21901    #[inline(always)]
21902    pub fn hover_enabled_changed(&self) -> ::qt_core::Signal<(bool,)> {
21903        unsafe {
21904            ::qt_core::Signal::new(
21905                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21906                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2hoverEnabledChanged(bool)\0"),
21907            )
21908        }
21909    }
21910
21911    /// <p>Specifies if drag is enabled</p>
21912    ///
21913    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::dragEnabledChanged` that can be passed to `qt_core::Signal::connect`.
21914    ///
21915    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#dragEnabled-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if drag is enabled</p>
21916    /// <p><b>Access functions:</b></p>
21917    /// <div class="table"><table class="alignedsummary">
21918    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#isDragEnabled">isDragEnabled</a></b></span>() const</td></tr>
21919    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#setDragEnabled">setDragEnabled</a></b></span>(bool <i>dragEnabled</i>)</td></tr>
21920    /// </tbody></table></div>
21921    /// <p><b>Notifier signal:</b></p>
21922    /// <div class="table"><table class="alignedsummary">
21923    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>dragEnabledChanged</b></span>(bool <i>dragEnabled</i>)</td></tr>
21924    /// </tbody></table></div></div>
21925    #[inline(always)]
21926    pub fn drag_enabled_changed(&self) -> ::qt_core::Signal<(bool,)> {
21927        unsafe {
21928            ::qt_core::Signal::new(
21929                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21930                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2dragEnabledChanged(bool)\0"),
21931            )
21932        }
21933    }
21934
21935    /// <p>Specifies if the object picker is currently pressed</p>
21936    ///
21937    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::pressedChanged` that can be passed to `qt_core::Signal::connect`.
21938    ///
21939    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#pressed-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if the object picker is currently pressed</p>
21940    /// <p><b>Access functions:</b></p>
21941    /// <div class="table"><table class="alignedsummary">
21942    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isPressed</b></span>() const</td></tr>
21943    /// </tbody></table></div>
21944    /// <p><b>Notifier signal:</b></p>
21945    /// <div class="table"><table class="alignedsummary">
21946    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pressedChanged</b></span>(bool <i>pressed</i>)</td></tr>
21947    /// </tbody></table></div></div>
21948    #[inline(always)]
21949    pub fn pressed_changed(&self) -> ::qt_core::Signal<(bool,)> {
21950        unsafe {
21951            ::qt_core::Signal::new(
21952                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21953                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2pressedChanged(bool)\0"),
21954            )
21955        }
21956    }
21957
21958    /// <p>Specifies if the object picker currently contains the mouse</p>
21959    ///
21960    /// Returns a built-in Qt signal `Qt3DRender::QObjectPicker::containsMouseChanged` that can be passed to `qt_core::Signal::connect`.
21961    ///
21962    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#containsMouse-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if the object picker currently contains the mouse</p>
21963    /// <p><b>Access functions:</b></p>
21964    /// <div class="table"><table class="alignedsummary">
21965    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#containsMouse">containsMouse</a></b></span>() const</td></tr>
21966    /// </tbody></table></div>
21967    /// <p><b>Notifier signal:</b></p>
21968    /// <div class="table"><table class="alignedsummary">
21969    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>containsMouseChanged</b></span>(bool <i>containsMouse</i>)</td></tr>
21970    /// </tbody></table></div></div>
21971    #[inline(always)]
21972    pub fn contains_mouse_changed(&self) -> ::qt_core::Signal<(bool,)> {
21973        unsafe {
21974            ::qt_core::Signal::new(
21975                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
21976                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2containsMouseChanged(bool)\0"),
21977            )
21978        }
21979    }
21980
21981    /// <p>Specifies if the object picker currently contains the mouse</p>
21982    ///
21983    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QObjectPicker::containsMouse() const```</span>.
21984    ///
21985    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#containsMouse-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if the object picker currently contains the mouse</p>
21986    /// <p><b>Access functions:</b></p>
21987    /// <div class="table"><table class="alignedsummary">
21988    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#containsMouse">containsMouse</a></b></span>() const</td></tr>
21989    /// </tbody></table></div>
21990    /// <p><b>Notifier signal:</b></p>
21991    /// <div class="table"><table class="alignedsummary">
21992    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>containsMouseChanged</b></span>(bool <i>containsMouse</i>)</td></tr>
21993    /// </tbody></table></div></div>
21994    #[inline(always)]
21995    pub unsafe fn contains_mouse(&self) -> bool {
21996        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_containsMouse(
21997            self as *const crate::QObjectPicker,
21998        )
21999    }
22000
22001    /// <p>Returns true if dragging is enabled</p>
22002    ///
22003    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QObjectPicker::isDragEnabled() const```</span>.
22004    ///
22005    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#isDragEnabled">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if dragging is enabled</p>
22006    /// <p><b>Note:</b> Getter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#dragEnabled-prop">dragEnabled</a>. </p></div>
22007    #[inline(always)]
22008    pub unsafe fn is_drag_enabled(&self) -> bool {
22009        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_isDragEnabled(
22010            self as *const crate::QObjectPicker,
22011        )
22012    }
22013
22014    /// <p>Returns true if hover enabled</p>
22015    ///
22016    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QObjectPicker::isHoverEnabled() const```</span>.
22017    ///
22018    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#isHoverEnabled">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns true if hover enabled</p>
22019    /// <p><b>Note:</b> Getter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#hoverEnabled-prop">hoverEnabled</a>. </p></div>
22020    #[inline(always)]
22021    pub unsafe fn is_hover_enabled(&self) -> bool {
22022        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_isHoverEnabled(
22023            self as *const crate::QObjectPicker,
22024        )
22025    }
22026
22027    /// <p>Specifies if the object picker is currently pressed</p>
22028    ///
22029    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QObjectPicker::isPressed() const```</span>.
22030    ///
22031    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#pressed-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if the object picker is currently pressed</p>
22032    /// <p><b>Access functions:</b></p>
22033    /// <div class="table"><table class="alignedsummary">
22034    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isPressed</b></span>() const</td></tr>
22035    /// </tbody></table></div>
22036    /// <p><b>Notifier signal:</b></p>
22037    /// <div class="table"><table class="alignedsummary">
22038    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pressedChanged</b></span>(bool <i>pressed</i>)</td></tr>
22039    /// </tbody></table></div></div>
22040    #[inline(always)]
22041    pub unsafe fn is_pressed(&self) -> bool {
22042        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_isPressed(
22043            self as *const crate::QObjectPicker,
22044        )
22045    }
22046
22047    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QObjectPicker::metaObject() const```</span>.
22048    #[inline(always)]
22049    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
22050        let ffi_result = {
22051            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_metaObject(
22052                self as *const crate::QObjectPicker,
22053            )
22054        };
22055        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
22056    }
22057
22058    /// <p>Default constructs an instance of QObjectPicker.</p>
22059    ///
22060    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QObjectPicker::QObjectPicker(Qt3DCore::QNode* parent = …)```</span>.
22061    ///
22062    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#QObjectPicker">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QObjectPicker.</p></div>
22063    #[inline(always)]
22064    pub unsafe fn new_1a(
22065        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
22066    ) -> ::qt_core::QBox<crate::QObjectPicker> {
22067        let ffi_result = {
22068            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_QObjectPicker(
22069                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
22070                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
22071            )
22072        };
22073        ::qt_core::QBox::from_raw(ffi_result)
22074    }
22075
22076    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> class instantiates a component that can be used to interact with a QEntity by a process known as picking.</p>
22077    ///
22078    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QObjectPicker::QObjectPicker()```</span>.
22079    ///
22080    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> class instantiates a component that can be used to interact with a QEntity by a process known as picking.</p>
22081    /// <p>For every combination of viewport and camera, picking casts a ray through the scene to find entities who's bounding volume intersects the ray. The bounding volume is computed using the values in the attribute buffer specified by the boundingVolumePositionAttribute of the geometry.</p>
22082    /// <p>The signals <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#pressed">pressed</a>(), <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#released">released</a>(), <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#clicked">clicked</a>(), <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#moved">moved</a>(), <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#entered">entered</a>(), and <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#exited">exited</a>() are emitted when the bounding volume defined by the pickAttribute property intersects with a ray.</p>
22083    /// <p>Most signals carry a <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> instance. If QPickingSettings::pickMode() is set to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickMethod-enum">QPickingSettings::TrianglePicking</a>, the actual type of the pick parameter will be <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html">QPickTriangleEvent</a>.</p>
22084    /// <p>Pick queries are performed on mouse press and mouse release. If drag is enabled, queries also happen on each mouse move while any button is pressed. If hover is enabled, queries happen on every mouse move even if no button is pressed.</p>
22085    /// <p><b>Note: </b>Instances of this component shouldn't be shared, not respecting that condition will most likely result in undefined behavior.</p></div>
22086    #[inline(always)]
22087    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QObjectPicker> {
22088        let ffi_result =
22089            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_QObjectPicker1() };
22090        ::qt_core::QBox::from_raw(ffi_result)
22091    }
22092
22093    /// <p>The priority to be used when filtering pick results by priority when <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickResultMode-prop">QPickingSettings::pickResultMode</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">QPickingSettings::NearestPriorityPick</a>.</p>
22094    ///
22095    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QObjectPicker::priority() const```</span>.
22096    ///
22097    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#priority-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The priority to be used when filtering pick results by priority when <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickResultMode-prop">QPickingSettings::pickResultMode</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">QPickingSettings::NearestPriorityPick</a>.</p>
22098    /// <p><b>Access functions:</b></p>
22099    /// <div class="table"><table class="alignedsummary">
22100    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>priority</b></span>() const</td></tr>
22101    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#setPriority">setPriority</a></b></span>(int <i>priority</i>)</td></tr>
22102    /// </tbody></table></div>
22103    /// <p><b>Notifier signal:</b></p>
22104    /// <div class="table"><table class="alignedsummary">
22105    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>priorityChanged</b></span>(int <i>priority</i>)</td></tr>
22106    /// </tbody></table></div></div>
22107    #[inline(always)]
22108    #[cfg_attr(
22109        feature = "ritual_rustdoc_nightly",
22110        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
22111    )]
22112    #[cfg(any(
22113        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
22114        feature = "ritual_rustdoc"
22115    ))]
22116    pub unsafe fn priority(&self) -> ::std::os::raw::c_int {
22117        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_priority(
22118            self as *const crate::QObjectPicker,
22119        )
22120    }
22121
22122    /// <p>The priority to be used when filtering pick results by priority when <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickResultMode-prop">QPickingSettings::pickResultMode</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">QPickingSettings::NearestPriorityPick</a>.</p>
22123    ///
22124    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QObjectPicker::priorityChanged(int priority)```</span>.
22125    ///
22126    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#priority-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The priority to be used when filtering pick results by priority when <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickResultMode-prop">QPickingSettings::pickResultMode</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">QPickingSettings::NearestPriorityPick</a>.</p>
22127    /// <p><b>Access functions:</b></p>
22128    /// <div class="table"><table class="alignedsummary">
22129    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>priority</b></span>() const</td></tr>
22130    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#setPriority">setPriority</a></b></span>(int <i>priority</i>)</td></tr>
22131    /// </tbody></table></div>
22132    /// <p><b>Notifier signal:</b></p>
22133    /// <div class="table"><table class="alignedsummary">
22134    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>priorityChanged</b></span>(int <i>priority</i>)</td></tr>
22135    /// </tbody></table></div></div>
22136    #[inline(always)]
22137    #[cfg_attr(
22138        feature = "ritual_rustdoc_nightly",
22139        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
22140    )]
22141    #[cfg(any(
22142        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
22143        feature = "ritual_rustdoc"
22144    ))]
22145    pub unsafe fn priority_changed(&self, priority: ::std::os::raw::c_int) {
22146        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_priorityChanged(
22147            self as *const crate::QObjectPicker as *mut crate::QObjectPicker,
22148            priority,
22149        )
22150    }
22151
22152    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QObjectPicker::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
22153    #[inline(always)]
22154    pub unsafe fn qt_metacall(
22155        &self,
22156        arg1: ::qt_core::q_meta_object::Call,
22157        arg2: ::std::os::raw::c_int,
22158        arg3: *mut *mut ::std::ffi::c_void,
22159    ) -> ::std::os::raw::c_int {
22160        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_qt_metacall(
22161            self as *const crate::QObjectPicker as *mut crate::QObjectPicker,
22162            arg1,
22163            arg2,
22164            arg3,
22165        )
22166    }
22167
22168    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QObjectPicker::qt_metacast(const char* arg1)```</span>.
22169    #[inline(always)]
22170    pub unsafe fn qt_metacast(
22171        &self,
22172        arg1: *const ::std::os::raw::c_char,
22173    ) -> *mut ::std::ffi::c_void {
22174        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_qt_metacast(
22175            self as *const crate::QObjectPicker as *mut crate::QObjectPicker,
22176            arg1,
22177        )
22178    }
22179
22180    /// <p>Sets the <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#dragEnabled-prop">dragEnabled</a> Property to <i>dragEnabled</i></p>
22181    ///
22182    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QObjectPicker::setDragEnabled(bool dragEnabled)```</span>.
22183    ///
22184    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#setDragEnabled">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#dragEnabled-prop">dragEnabled</a> Property to <i>dragEnabled</i></p>
22185    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#dragEnabled-prop">dragEnabled</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#isDragEnabled">isDragEnabled</a>().</p></div>
22186    #[inline(always)]
22187    pub unsafe fn set_drag_enabled(&self, drag_enabled: bool) {
22188        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_setDragEnabled(
22189            self as *const crate::QObjectPicker as *mut crate::QObjectPicker,
22190            drag_enabled,
22191        )
22192    }
22193
22194    /// <p>Sets the <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#hoverEnabled-prop">hoverEnabled</a> Property to <i>hoverEnabled</i></p>
22195    ///
22196    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QObjectPicker::setHoverEnabled(bool hoverEnabled)```</span>.
22197    ///
22198    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#setHoverEnabled">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#hoverEnabled-prop">hoverEnabled</a> Property to <i>hoverEnabled</i></p>
22199    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#hoverEnabled-prop">hoverEnabled</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#isHoverEnabled">isHoverEnabled</a>().</p></div>
22200    #[inline(always)]
22201    pub unsafe fn set_hover_enabled(&self, hover_enabled: bool) {
22202        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_setHoverEnabled(
22203            self as *const crate::QObjectPicker as *mut crate::QObjectPicker,
22204            hover_enabled,
22205        )
22206    }
22207
22208    /// <p>Sets the picker's priority to <i>priority</i>. This is used when the pick result mode on <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">QPickingSettings</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">QPickingSettings::NearestPriorityPick</a>. Picking results are sorted by highest priority and shortest picking distance.</p>
22209    ///
22210    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QObjectPicker::setPriority(int priority)```</span>.
22211    ///
22212    /// <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#setPriority">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the picker's priority to <i>priority</i>. This is used when the pick result mode on <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">QPickingSettings</a> is set to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">QPickingSettings::NearestPriorityPick</a>. Picking results are sorted by highest priority and shortest picking distance.</p>
22213    /// <p>This function was introduced in  Qt 5.13.</p>
22214    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#priority-prop">priority</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html#priority-prop">priority</a>().</p></div>
22215    #[inline(always)]
22216    #[cfg_attr(
22217        feature = "ritual_rustdoc_nightly",
22218        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
22219    )]
22220    #[cfg(any(
22221        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
22222        feature = "ritual_rustdoc"
22223    ))]
22224    pub unsafe fn set_priority(&self, priority: ::std::os::raw::c_int) {
22225        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_setPriority(
22226            self as *const crate::QObjectPicker as *mut crate::QObjectPicker,
22227            priority,
22228        )
22229    }
22230
22231    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
22232    #[inline(always)]
22233    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
22234        let ffi_result =
22235            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_staticMetaObject() };
22236        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
22237            .expect("attempted to construct a null Ref")
22238    }
22239
22240    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QObjectPicker::tr(const char* s, const char* c, int n)```</span>.
22241    #[inline(always)]
22242    pub unsafe fn tr(
22243        s: *const ::std::os::raw::c_char,
22244        c: *const ::std::os::raw::c_char,
22245        n: ::std::os::raw::c_int,
22246    ) -> ::cpp_core::CppBox<::qt_core::QString> {
22247        let ffi_result =
22248            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_tr(s, c, n) };
22249        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
22250    }
22251
22252    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QObjectPicker::trUtf8(const char* s, const char* c, int n)```</span>.
22253    #[inline(always)]
22254    pub unsafe fn tr_utf8(
22255        s: *const ::std::os::raw::c_char,
22256        c: *const ::std::os::raw::c_char,
22257        n: ::std::os::raw::c_int,
22258    ) -> ::cpp_core::CppBox<::qt_core::QString> {
22259        let ffi_result =
22260            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_trUtf8(s, c, n) };
22261        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
22262    }
22263}
22264
22265/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a> that can be written through a <a href="http://doc.qt.io/qt-5/qpainter.html">QPainter</a>.</p>
22266///
22267/// C++ class: <span style='color: green;'>```Qt3DRender::QPaintedTextureImage```</span>.
22268///
22269/// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a> that can be written through a <a href="http://doc.qt.io/qt-5/qpainter.html">QPainter</a>.</p>
22270/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html">QPaintedTextureImage</a> provides a way to specify a texture image (and thus an OpenGL texture) through a <a href="http://doc.qt.io/qt-5/qpainter.html">QPainter</a>. The width and height of the texture image can be specified through the width and height or size properties.</p>
22271/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html">QPaintedTextureImage</a> must be subclassed and the virtual <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#paint">paint</a>() function implemented. Each time <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#update">update</a>() is called on the <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html">QPaintedTextureImage</a>, the <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#paint">paint</a>() function is invoked and the resulting image is uploaded.</p>
22272/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html">QPaintedTextureImage</a> must be attached to some <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a>.</p></div>
22273#[repr(C)]
22274pub struct QPaintedTextureImage {
22275    _unused: u8,
22276}
22277impl QPaintedTextureImage {
22278    /// <p>Sets the width (<i>w</i>) of the texture image. Triggers an update, if the size changes.</p>
22279    ///
22280    /// Returns a built-in Qt slot `Qt3DRender::QPaintedTextureImage::setWidth` that can be passed to `qt_core::Signal::connect`.
22281    ///
22282    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setWidth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the width (<i>w</i>) of the texture image. Triggers an update, if the size changes.</p>
22283    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#width-prop">width</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#width-prop">width</a>().</p></div>
22284    #[inline(always)]
22285    pub fn slot_set_width(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
22286        unsafe {
22287            ::qt_core::Receiver::new(
22288                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22289                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setWidth(int)\0"),
22290            )
22291        }
22292    }
22293
22294    /// <p>Sets the height (<i>h</i>) of the texture image. Triggers an update, if the size changes.</p>
22295    ///
22296    /// Returns a built-in Qt slot `Qt3DRender::QPaintedTextureImage::setHeight` that can be passed to `qt_core::Signal::connect`.
22297    ///
22298    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setHeight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the height (<i>h</i>) of the texture image. Triggers an update, if the size changes.</p>
22299    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#height-prop">height</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#height-prop">height</a>().</p></div>
22300    #[inline(always)]
22301    pub fn slot_set_height(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
22302        unsafe {
22303            ::qt_core::Receiver::new(
22304                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22305                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setHeight(int)\0"),
22306            )
22307        }
22308    }
22309
22310    /// <p>Sets the width and height of the texture image. Triggers an update, if the <i>size</i> changes.</p>
22311    ///
22312    /// Returns a built-in Qt slot `Qt3DRender::QPaintedTextureImage::setSize` that can be passed to `qt_core::Signal::connect`.
22313    ///
22314    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the width and height of the texture image. Triggers an update, if the <i>size</i> changes.</p>
22315    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#size-prop">size</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#size-prop">size</a>().</p></div>
22316    #[inline(always)]
22317    pub fn slot_set_size(&self) -> ::qt_core::Receiver<(*const ::qt_core::QSize,)> {
22318        unsafe {
22319            ::qt_core::Receiver::new(
22320                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22321                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSize(QSize)\0"),
22322            )
22323        }
22324    }
22325
22326    /// <p>This property holds the width of the texture image. The width must be greater than or equal to 1.</p>
22327    ///
22328    /// Returns a built-in Qt signal `Qt3DRender::QPaintedTextureImage::widthChanged` that can be passed to `qt_core::Signal::connect`.
22329    ///
22330    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#width-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the width of the texture image. The width must be greater than or equal to 1.</p>
22331    /// <p><b>Access functions:</b></p>
22332    /// <div class="table"><table class="alignedsummary">
22333    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>width</b></span>() const</td></tr>
22334    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setWidth">setWidth</a></b></span>(int <i>w</i>)</td></tr>
22335    /// </tbody></table></div>
22336    /// <p><b>Notifier signal:</b></p>
22337    /// <div class="table"><table class="alignedsummary">
22338    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>widthChanged</b></span>(int <i>w</i>)</td></tr>
22339    /// </tbody></table></div></div>
22340    #[inline(always)]
22341    pub fn width_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
22342        unsafe {
22343            ::qt_core::Signal::new(
22344                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22345                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2widthChanged(int)\0"),
22346            )
22347        }
22348    }
22349
22350    /// <p>This property holds the height of the texture image. The height must be greater than or equal to 1.</p>
22351    ///
22352    /// Returns a built-in Qt signal `Qt3DRender::QPaintedTextureImage::heightChanged` that can be passed to `qt_core::Signal::connect`.
22353    ///
22354    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#height-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the height of the texture image. The height must be greater than or equal to 1.</p>
22355    /// <p><b>Access functions:</b></p>
22356    /// <div class="table"><table class="alignedsummary">
22357    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>height</b></span>() const</td></tr>
22358    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setHeight">setHeight</a></b></span>(int <i>h</i>)</td></tr>
22359    /// </tbody></table></div>
22360    /// <p><b>Notifier signal:</b></p>
22361    /// <div class="table"><table class="alignedsummary">
22362    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>heightChanged</b></span>(int <i>w</i>)</td></tr>
22363    /// </tbody></table></div></div>
22364    #[inline(always)]
22365    pub fn height_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
22366        unsafe {
22367            ::qt_core::Signal::new(
22368                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22369                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2heightChanged(int)\0"),
22370            )
22371        }
22372    }
22373
22374    /// <p>This property holds the size of the texture image.</p>
22375    ///
22376    /// Returns a built-in Qt signal `Qt3DRender::QPaintedTextureImage::sizeChanged` that can be passed to `qt_core::Signal::connect`.
22377    ///
22378    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#size-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the size of the texture image.</p>
22379    /// <p><b>Access functions:</b></p>
22380    /// <div class="table"><table class="alignedsummary">
22381    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QSize </td><td class="memItemRight bottomAlign"><span class="name"><b>size</b></span>() const</td></tr>
22382    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setSize">setSize</a></b></span>(QSize <i>size</i>)</td></tr>
22383    /// </tbody></table></div>
22384    /// <p><b>Notifier signal:</b></p>
22385    /// <div class="table"><table class="alignedsummary">
22386    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeChanged</b></span>(QSize <i>size</i>)</td></tr>
22387    /// </tbody></table></div>
22388    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#height-prop">height</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#width-prop">width</a>.</p></div>
22389    #[inline(always)]
22390    pub fn size_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QSize,)> {
22391        unsafe {
22392            ::qt_core::Signal::new(
22393                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22394                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2sizeChanged(QSize)\0"),
22395            )
22396        }
22397    }
22398
22399    /// <p>This property holds the height of the texture image. The height must be greater than or equal to 1.</p>
22400    ///
22401    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QPaintedTextureImage::height() const```</span>.
22402    ///
22403    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#height-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the height of the texture image. The height must be greater than or equal to 1.</p>
22404    /// <p><b>Access functions:</b></p>
22405    /// <div class="table"><table class="alignedsummary">
22406    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>height</b></span>() const</td></tr>
22407    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setHeight">setHeight</a></b></span>(int <i>h</i>)</td></tr>
22408    /// </tbody></table></div>
22409    /// <p><b>Notifier signal:</b></p>
22410    /// <div class="table"><table class="alignedsummary">
22411    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>heightChanged</b></span>(int <i>w</i>)</td></tr>
22412    /// </tbody></table></div></div>
22413    #[inline(always)]
22414    pub unsafe fn height(&self) -> ::std::os::raw::c_int {
22415        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_height(
22416            self as *const crate::QPaintedTextureImage,
22417        )
22418    }
22419
22420    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QPaintedTextureImage::metaObject() const```</span>.
22421    #[inline(always)]
22422    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
22423        let ffi_result = {
22424            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_metaObject(
22425                self as *const crate::QPaintedTextureImage,
22426            )
22427        };
22428        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
22429    }
22430
22431    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QPaintedTextureImage::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
22432    #[inline(always)]
22433    pub unsafe fn qt_metacall(
22434        &self,
22435        arg1: ::qt_core::q_meta_object::Call,
22436        arg2: ::std::os::raw::c_int,
22437        arg3: *mut *mut ::std::ffi::c_void,
22438    ) -> ::std::os::raw::c_int {
22439        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_qt_metacall(
22440            self as *const crate::QPaintedTextureImage as *mut crate::QPaintedTextureImage,
22441            arg1,
22442            arg2,
22443            arg3,
22444        )
22445    }
22446
22447    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QPaintedTextureImage::qt_metacast(const char* arg1)```</span>.
22448    #[inline(always)]
22449    pub unsafe fn qt_metacast(
22450        &self,
22451        arg1: *const ::std::os::raw::c_char,
22452    ) -> *mut ::std::ffi::c_void {
22453        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_qt_metacast(
22454            self as *const crate::QPaintedTextureImage as *mut crate::QPaintedTextureImage,
22455            arg1,
22456        )
22457    }
22458
22459    /// <p>Sets the height (<i>h</i>) of the texture image. Triggers an update, if the size changes.</p>
22460    ///
22461    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPaintedTextureImage::setHeight(int h)```</span>.
22462    ///
22463    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setHeight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the height (<i>h</i>) of the texture image. Triggers an update, if the size changes.</p>
22464    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#height-prop">height</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#height-prop">height</a>().</p></div>
22465    #[inline(always)]
22466    pub unsafe fn set_height(&self, h: ::std::os::raw::c_int) {
22467        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_setHeight(
22468            self as *const crate::QPaintedTextureImage as *mut crate::QPaintedTextureImage,
22469            h,
22470        )
22471    }
22472
22473    /// <p>Sets the width and height of the texture image. Triggers an update, if the <i>size</i> changes.</p>
22474    ///
22475    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPaintedTextureImage::setSize(QSize size)```</span>.
22476    ///
22477    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the width and height of the texture image. Triggers an update, if the <i>size</i> changes.</p>
22478    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#size-prop">size</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#size-prop">size</a>().</p></div>
22479    #[inline(always)]
22480    pub unsafe fn set_size(
22481        &self,
22482        size: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QSize>>,
22483    ) {
22484        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_setSize(
22485            self as *const crate::QPaintedTextureImage as *mut crate::QPaintedTextureImage,
22486            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QSize>>::cast_into(size).as_raw_ptr(),
22487        )
22488    }
22489
22490    /// <p>Sets the width (<i>w</i>) of the texture image. Triggers an update, if the size changes.</p>
22491    ///
22492    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPaintedTextureImage::setWidth(int w)```</span>.
22493    ///
22494    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setWidth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the width (<i>w</i>) of the texture image. Triggers an update, if the size changes.</p>
22495    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#width-prop">width</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#width-prop">width</a>().</p></div>
22496    #[inline(always)]
22497    pub unsafe fn set_width(&self, w: ::std::os::raw::c_int) {
22498        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_setWidth(
22499            self as *const crate::QPaintedTextureImage as *mut crate::QPaintedTextureImage,
22500            w,
22501        )
22502    }
22503
22504    /// <p>This property holds the size of the texture image.</p>
22505    ///
22506    /// Calls C++ function: <span style='color: green;'>```QSize Qt3DRender::QPaintedTextureImage::size() const```</span>.
22507    ///
22508    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#size-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the size of the texture image.</p>
22509    /// <p><b>Access functions:</b></p>
22510    /// <div class="table"><table class="alignedsummary">
22511    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QSize </td><td class="memItemRight bottomAlign"><span class="name"><b>size</b></span>() const</td></tr>
22512    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setSize">setSize</a></b></span>(QSize <i>size</i>)</td></tr>
22513    /// </tbody></table></div>
22514    /// <p><b>Notifier signal:</b></p>
22515    /// <div class="table"><table class="alignedsummary">
22516    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeChanged</b></span>(QSize <i>size</i>)</td></tr>
22517    /// </tbody></table></div>
22518    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#height-prop">height</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#width-prop">width</a>.</p></div>
22519    #[inline(always)]
22520    pub unsafe fn size(&self) -> ::cpp_core::CppBox<::qt_core::QSize> {
22521        let ffi_result = {
22522            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_size(
22523                self as *const crate::QPaintedTextureImage,
22524            )
22525        };
22526        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
22527    }
22528
22529    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
22530    #[inline(always)]
22531    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
22532        let ffi_result = {
22533            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_staticMetaObject()
22534        };
22535        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
22536            .expect("attempted to construct a null Ref")
22537    }
22538
22539    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPaintedTextureImage::tr(const char* s, const char* c, int n)```</span>.
22540    #[inline(always)]
22541    pub unsafe fn tr(
22542        s: *const ::std::os::raw::c_char,
22543        c: *const ::std::os::raw::c_char,
22544        n: ::std::os::raw::c_int,
22545    ) -> ::cpp_core::CppBox<::qt_core::QString> {
22546        let ffi_result =
22547            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_tr(s, c, n) };
22548        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
22549    }
22550
22551    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPaintedTextureImage::trUtf8(const char* s, const char* c, int n)```</span>.
22552    #[inline(always)]
22553    pub unsafe fn tr_utf8(
22554        s: *const ::std::os::raw::c_char,
22555        c: *const ::std::os::raw::c_char,
22556        n: ::std::os::raw::c_int,
22557    ) -> ::cpp_core::CppBox<::qt_core::QString> {
22558        let ffi_result =
22559            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_trUtf8(s, c, n) };
22560        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
22561    }
22562
22563    /// <p>Schedules the painted texture's <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#paint">paint</a>() function to be called, which in turn uploads the new image to the GPU. Parameter <i>rect</i> is currently unused.</p>
22564    ///
22565    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QPaintedTextureImage::update(const QRect& rect = …)```</span>.
22566    ///
22567    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#update">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Schedules the painted texture's <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#paint">paint</a>() function to be called, which in turn uploads the new image to the GPU. Parameter <i>rect</i> is currently unused.</p></div>
22568    #[inline(always)]
22569    pub unsafe fn update_1a(
22570        &self,
22571        rect: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QRect>>,
22572    ) {
22573        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_update(
22574            self as *const crate::QPaintedTextureImage as *mut crate::QPaintedTextureImage,
22575            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QRect>>::cast_into(rect).as_raw_ptr(),
22576        )
22577    }
22578
22579    /// <p>Schedules the painted texture's <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#paint">paint</a>() function to be called, which in turn uploads the new image to the GPU. Parameter <i>rect</i> is currently unused.</p>
22580    ///
22581    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QPaintedTextureImage::update()```</span>.
22582    ///
22583    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#update">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Schedules the painted texture's <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#paint">paint</a>() function to be called, which in turn uploads the new image to the GPU. Parameter <i>rect</i> is currently unused.</p></div>
22584    #[inline(always)]
22585    pub unsafe fn update_0a(&self) {
22586        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_update1(
22587            self as *const crate::QPaintedTextureImage as *mut crate::QPaintedTextureImage,
22588        )
22589    }
22590
22591    /// <p>This property holds the width of the texture image. The width must be greater than or equal to 1.</p>
22592    ///
22593    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QPaintedTextureImage::width() const```</span>.
22594    ///
22595    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#width-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the width of the texture image. The width must be greater than or equal to 1.</p>
22596    /// <p><b>Access functions:</b></p>
22597    /// <div class="table"><table class="alignedsummary">
22598    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>width</b></span>() const</td></tr>
22599    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setWidth">setWidth</a></b></span>(int <i>w</i>)</td></tr>
22600    /// </tbody></table></div>
22601    /// <p><b>Notifier signal:</b></p>
22602    /// <div class="table"><table class="alignedsummary">
22603    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>widthChanged</b></span>(int <i>w</i>)</td></tr>
22604    /// </tbody></table></div></div>
22605    #[inline(always)]
22606    pub unsafe fn width(&self) -> ::std::os::raw::c_int {
22607        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_width(
22608            self as *const crate::QPaintedTextureImage,
22609        )
22610    }
22611}
22612
22613/// <p>Provides storage for a name and value pair. This maps to a shader uniform.</p>
22614///
22615/// C++ class: <span style='color: green;'>```Qt3DRender::QParameter```</span>.
22616///
22617/// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides storage for a name and value pair. This maps to a shader uniform.</p>
22618/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> can be referenced by a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a>. At runtime, depending on which shader is selected for a given step of the rendering, the value contained in a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> will be converted and uploaded if the shader contains a uniform with a name matching that of the <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a>.</p>
22619/// <pre class="cpp">
22620///
22621///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span> <span class="operator">*</span>param <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span>();
22622///   param<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"diffuseColor"</span>));
22623///   param<span class="operator">-</span><span class="operator">&gt;</span>setValue(<span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>));
22624///
22625///   <span class="comment">// Alternatively you can create and set a QParameter this way</span>
22626///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span> <span class="operator">*</span>param2 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"diffuseColor"</span>)<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>));
22627///
22628///   <span class="comment">// Such QParameters will work with the following GLSL uniform shader declarations</span>
22629///   <span class="comment">// uniform vec4 diffuseColor;</span>
22630///   <span class="comment">// uniform vec3 diffuseColor;</span>
22631///   <span class="comment">// uniform vec2 diffuseColor;</span>
22632///   <span class="comment">// uniform float diffuseColor;</span>
22633///
22634/// </pre>
22635/// <p><b>Note: </b>some care must be taken to ensure the value wrapped by a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> can actually be converted to what the real uniform expect. Giving a value stored as an int where the actual shader uniform is of type float could result in undefined behaviors.</p><p><b>Note: </b>when the targeted uniform is an array, the name should be the name of the uniform with [0] appended to it.</p><pre class="cpp">
22636///
22637///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span> <span class="operator">*</span>param <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span>();
22638///   <span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html#QVariantList-typedef">QVariantList</a></span> values <span class="operator">=</span> <span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html#QVariantList-typedef">QVariantList</a></span>() <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">3.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">4.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">883.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1340.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1584.0f</span>;
22639///
22640///   param<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"diffuseValues[0]"</span>));
22641///   param<span class="operator">-</span><span class="operator">&gt;</span>setValue(values);
22642///
22643///   <span class="comment">// Matching GLSL shader uniform  declaration</span>
22644///   <span class="comment">// uniform float diffuseValues[8];</span>
22645///
22646/// </pre>
22647/// <p>When it comes to texture support, the <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> value should be set to the appropriate <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> subclass that matches the sampler type of the shader uniform.</p>
22648/// <pre class="cpp">
22649///
22650///   QTexture2D <span class="operator">*</span>texture <span class="operator">=</span> <span class="keyword">new</span> QTexture2D();
22651///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
22652///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span> <span class="operator">*</span>param <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span>();
22653///   param<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"diffuseTexture"</span>));
22654///   param<span class="operator">-</span><span class="operator">&gt;</span>setValue(<span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a></span><span class="operator">::</span>fromValue(texture));
22655///
22656///   <span class="comment">// Works with the following GLSL uniform shader declaration</span>
22657///   <span class="comment">// uniform sampler2D diffuseTexture</span>
22658///
22659/// </pre></div>
22660#[repr(C)]
22661pub struct QParameter {
22662    _unused: u8,
22663}
22664impl QParameter {
22665    /// <p>Specifies the name of the parameter</p>
22666    ///
22667    /// Returns a built-in Qt slot `Qt3DRender::QParameter::setName` that can be passed to `qt_core::Signal::connect`.
22668    ///
22669    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the name of the parameter</p>
22670    /// <p><b>Access functions:</b></p>
22671    /// <div class="table"><table class="alignedsummary">
22672    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
22673    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>name</i>)</td></tr>
22674    /// </tbody></table></div>
22675    /// <p><b>Notifier signal:</b></p>
22676    /// <div class="table"><table class="alignedsummary">
22677    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
22678    /// </tbody></table></div></div>
22679    #[inline(always)]
22680    pub fn slot_set_name(&self) -> ::qt_core::Receiver<(*const ::qt_core::QString,)> {
22681        unsafe {
22682            ::qt_core::Receiver::new(
22683                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22684                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setName(QString const &)\0"),
22685            )
22686        }
22687    }
22688
22689    /// <p>Specifies the value of the parameter</p>
22690    ///
22691    /// Returns a built-in Qt slot `Qt3DRender::QParameter::setValue` that can be passed to `qt_core::Signal::connect`.
22692    ///
22693    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the value of the parameter</p>
22694    /// <p><b>Access functions:</b></p>
22695    /// <div class="table"><table class="alignedsummary">
22696    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
22697    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(const QVariant &amp;<i>dv</i>)</td></tr>
22698    /// </tbody></table></div>
22699    /// <p><b>Notifier signal:</b></p>
22700    /// <div class="table"><table class="alignedsummary">
22701    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
22702    /// </tbody></table></div></div>
22703    #[inline(always)]
22704    pub fn slot_set_value(&self) -> ::qt_core::Receiver<(*const ::qt_core::QVariant,)> {
22705        unsafe {
22706            ::qt_core::Receiver::new(
22707                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22708                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setValue(QVariant const &)\0"),
22709            )
22710        }
22711    }
22712
22713    /// <p>Specifies the value of the parameter</p>
22714    ///
22715    /// Returns a built-in Qt signal `Qt3DRender::QParameter::valueChanged` that can be passed to `qt_core::Signal::connect`.
22716    ///
22717    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the value of the parameter</p>
22718    /// <p><b>Access functions:</b></p>
22719    /// <div class="table"><table class="alignedsummary">
22720    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
22721    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(const QVariant &amp;<i>dv</i>)</td></tr>
22722    /// </tbody></table></div>
22723    /// <p><b>Notifier signal:</b></p>
22724    /// <div class="table"><table class="alignedsummary">
22725    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
22726    /// </tbody></table></div></div>
22727    #[inline(always)]
22728    pub fn value_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QVariant,)> {
22729        unsafe {
22730            ::qt_core::Signal::new(
22731                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22732                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
22733                    b"2valueChanged(QVariant const &)\0",
22734                ),
22735            )
22736        }
22737    }
22738
22739    /// <p>Specifies the name of the parameter</p>
22740    ///
22741    /// Returns a built-in Qt signal `Qt3DRender::QParameter::nameChanged` that can be passed to `qt_core::Signal::connect`.
22742    ///
22743    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the name of the parameter</p>
22744    /// <p><b>Access functions:</b></p>
22745    /// <div class="table"><table class="alignedsummary">
22746    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
22747    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>name</i>)</td></tr>
22748    /// </tbody></table></div>
22749    /// <p><b>Notifier signal:</b></p>
22750    /// <div class="table"><table class="alignedsummary">
22751    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
22752    /// </tbody></table></div></div>
22753    #[inline(always)]
22754    pub fn name_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QString,)> {
22755        unsafe {
22756            ::qt_core::Signal::new(
22757                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
22758                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2nameChanged(QString const &)\0"),
22759            )
22760        }
22761    }
22762
22763    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QParameter::metaObject() const```</span>.
22764    #[inline(always)]
22765    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
22766        let ffi_result = {
22767            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_metaObject(
22768                self as *const crate::QParameter,
22769            )
22770        };
22771        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
22772    }
22773
22774    /// <p>Specifies the name of the parameter</p>
22775    ///
22776    /// Calls C++ function: <span style='color: green;'>```QString Qt3DRender::QParameter::name() const```</span>.
22777    ///
22778    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the name of the parameter</p>
22779    /// <p><b>Access functions:</b></p>
22780    /// <div class="table"><table class="alignedsummary">
22781    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
22782    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>name</i>)</td></tr>
22783    /// </tbody></table></div>
22784    /// <p><b>Notifier signal:</b></p>
22785    /// <div class="table"><table class="alignedsummary">
22786    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
22787    /// </tbody></table></div></div>
22788    #[inline(always)]
22789    pub unsafe fn name(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
22790        let ffi_result = {
22791            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_name(
22792                self as *const crate::QParameter,
22793            )
22794        };
22795        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
22796    }
22797
22798    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> with the specified <i>parent</i>.</p>
22799    ///
22800    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QParameter::QParameter(Qt3DCore::QNode* parent = …)```</span>.
22801    ///
22802    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> with the specified <i>parent</i>.</p></div>
22803    #[inline(always)]
22804    pub unsafe fn from_q_node(
22805        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
22806    ) -> ::qt_core::QBox<crate::QParameter> {
22807        let ffi_result = {
22808            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_QParameter(
22809                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
22810                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
22811            )
22812        };
22813        ::qt_core::QBox::from_raw(ffi_result)
22814    }
22815
22816    /// <p>Default constructs an instance of QParameter.</p>
22817    ///
22818    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QParameter::QParameter(const QString& name, const QVariant& value, Qt3DCore::QNode* parent = …)```</span>.
22819    ///
22820    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QParameter.</p></div>
22821    #[inline(always)]
22822    pub unsafe fn from_q_string_q_variant_q_node(
22823        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
22824        value: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
22825        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
22826    ) -> ::qt_core::QBox<crate::QParameter> {
22827        let ffi_result = {
22828            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_QParameter1(
22829                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
22830                    .as_raw_ptr(),
22831                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(value)
22832                    .as_raw_ptr(),
22833                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
22834                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
22835            )
22836        };
22837        ::qt_core::QBox::from_raw(ffi_result)
22838    }
22839
22840    /// <p>Default constructs an instance of QParameter.</p>
22841    ///
22842    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QParameter::QParameter(const QString& name, Qt3DRender::QAbstractTexture* texture, Qt3DCore::QNode* parent = …)```</span>.
22843    ///
22844    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QParameter.</p></div>
22845    #[inline(always)]
22846    pub unsafe fn from_q_string_q_abstract_texture_q_node(
22847        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
22848        texture: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTexture>>,
22849        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
22850    ) -> ::qt_core::QBox<crate::QParameter> {
22851        let ffi_result = {
22852            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_QParameter2(
22853                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
22854                    .as_raw_ptr(),
22855                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTexture>>::cast_into(texture)
22856                    .as_raw_ptr() as *mut crate::QAbstractTexture,
22857                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
22858                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
22859            )
22860        };
22861        ::qt_core::QBox::from_raw(ffi_result)
22862    }
22863
22864    /// <p>Provides storage for a name and value pair. This maps to a shader uniform.</p>
22865    ///
22866    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QParameter::QParameter()```</span>.
22867    ///
22868    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides storage for a name and value pair. This maps to a shader uniform.</p>
22869    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> can be referenced by a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a>. At runtime, depending on which shader is selected for a given step of the rendering, the value contained in a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> will be converted and uploaded if the shader contains a uniform with a name matching that of the <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a>.</p>
22870    /// <pre class="cpp">
22871    ///
22872    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span> <span class="operator">*</span>param <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span>();
22873    ///   param<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"diffuseColor"</span>));
22874    ///   param<span class="operator">-</span><span class="operator">&gt;</span>setValue(<span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>));
22875    ///
22876    ///   <span class="comment">// Alternatively you can create and set a QParameter this way</span>
22877    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span> <span class="operator">*</span>param2 <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"diffuseColor"</span>)<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>));
22878    ///
22879    ///   <span class="comment">// Such QParameters will work with the following GLSL uniform shader declarations</span>
22880    ///   <span class="comment">// uniform vec4 diffuseColor;</span>
22881    ///   <span class="comment">// uniform vec3 diffuseColor;</span>
22882    ///   <span class="comment">// uniform vec2 diffuseColor;</span>
22883    ///   <span class="comment">// uniform float diffuseColor;</span>
22884    ///
22885    /// </pre>
22886    /// <p><b>Note: </b>some care must be taken to ensure the value wrapped by a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> can actually be converted to what the real uniform expect. Giving a value stored as an int where the actual shader uniform is of type float could result in undefined behaviors.</p><p><b>Note: </b>when the targeted uniform is an array, the name should be the name of the uniform with [0] appended to it.</p><pre class="cpp">
22887    ///
22888    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span> <span class="operator">*</span>param <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span>();
22889    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html#QVariantList-typedef">QVariantList</a></span> values <span class="operator">=</span> <span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html#QVariantList-typedef">QVariantList</a></span>() <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">3.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">4.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">883.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1340.0f</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1584.0f</span>;
22890    ///
22891    ///   param<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"diffuseValues[0]"</span>));
22892    ///   param<span class="operator">-</span><span class="operator">&gt;</span>setValue(values);
22893    ///
22894    ///   <span class="comment">// Matching GLSL shader uniform  declaration</span>
22895    ///   <span class="comment">// uniform float diffuseValues[8];</span>
22896    ///
22897    /// </pre>
22898    /// <p>When it comes to texture support, the <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> value should be set to the appropriate <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> subclass that matches the sampler type of the shader uniform.</p>
22899    /// <pre class="cpp">
22900    ///
22901    ///   QTexture2D <span class="operator">*</span>texture <span class="operator">=</span> <span class="keyword">new</span> QTexture2D();
22902    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
22903    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span> <span class="operator">*</span>param <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter">QParameter</a></span>();
22904    ///   param<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"diffuseTexture"</span>));
22905    ///   param<span class="operator">-</span><span class="operator">&gt;</span>setValue(<span class="type"><a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a></span><span class="operator">::</span>fromValue(texture));
22906    ///
22907    ///   <span class="comment">// Works with the following GLSL uniform shader declaration</span>
22908    ///   <span class="comment">// uniform sampler2D diffuseTexture</span>
22909    ///
22910    /// </pre></div>
22911    #[inline(always)]
22912    pub unsafe fn new() -> ::qt_core::QBox<crate::QParameter> {
22913        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_QParameter3() };
22914        ::qt_core::QBox::from_raw(ffi_result)
22915    }
22916
22917    /// <p>Default constructs an instance of QParameter.</p>
22918    ///
22919    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QParameter::QParameter(const QString& name, const QVariant& value)```</span>.
22920    ///
22921    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QParameter.</p></div>
22922    #[inline(always)]
22923    pub unsafe fn from_q_string_q_variant(
22924        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
22925        value: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
22926    ) -> ::qt_core::QBox<crate::QParameter> {
22927        let ffi_result = {
22928            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_QParameter5(
22929                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
22930                    .as_raw_ptr(),
22931                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(value)
22932                    .as_raw_ptr(),
22933            )
22934        };
22935        ::qt_core::QBox::from_raw(ffi_result)
22936    }
22937
22938    /// <p>Default constructs an instance of QParameter.</p>
22939    ///
22940    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QParameter::QParameter(const QString& name, Qt3DRender::QAbstractTexture* texture)```</span>.
22941    ///
22942    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#QParameter-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QParameter.</p></div>
22943    #[inline(always)]
22944    pub unsafe fn from_q_string_q_abstract_texture(
22945        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
22946        texture: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTexture>>,
22947    ) -> ::qt_core::QBox<crate::QParameter> {
22948        let ffi_result = {
22949            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_QParameter6(
22950                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
22951                    .as_raw_ptr(),
22952                ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTexture>>::cast_into(texture)
22953                    .as_raw_ptr() as *mut crate::QAbstractTexture,
22954            )
22955        };
22956        ::qt_core::QBox::from_raw(ffi_result)
22957    }
22958
22959    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QParameter::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
22960    #[inline(always)]
22961    pub unsafe fn qt_metacall(
22962        &self,
22963        arg1: ::qt_core::q_meta_object::Call,
22964        arg2: ::std::os::raw::c_int,
22965        arg3: *mut *mut ::std::ffi::c_void,
22966    ) -> ::std::os::raw::c_int {
22967        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_qt_metacall(
22968            self as *const crate::QParameter as *mut crate::QParameter,
22969            arg1,
22970            arg2,
22971            arg3,
22972        )
22973    }
22974
22975    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QParameter::qt_metacast(const char* arg1)```</span>.
22976    #[inline(always)]
22977    pub unsafe fn qt_metacast(
22978        &self,
22979        arg1: *const ::std::os::raw::c_char,
22980    ) -> *mut ::std::ffi::c_void {
22981        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_qt_metacast(
22982            self as *const crate::QParameter as *mut crate::QParameter,
22983            arg1,
22984        )
22985    }
22986
22987    /// <p>Specifies the name of the parameter</p>
22988    ///
22989    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QParameter::setName(const QString& name)```</span>.
22990    ///
22991    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#name-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the name of the parameter</p>
22992    /// <p><b>Access functions:</b></p>
22993    /// <div class="table"><table class="alignedsummary">
22994    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>name</b></span>() const</td></tr>
22995    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setName</b></span>(const QString &amp;<i>name</i>)</td></tr>
22996    /// </tbody></table></div>
22997    /// <p><b>Notifier signal:</b></p>
22998    /// <div class="table"><table class="alignedsummary">
22999    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nameChanged</b></span>(const QString &amp;<i>name</i>)</td></tr>
23000    /// </tbody></table></div></div>
23001    #[inline(always)]
23002    pub unsafe fn set_name(
23003        &self,
23004        name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
23005    ) {
23006        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_setName(
23007            self as *const crate::QParameter as *mut crate::QParameter,
23008            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(name)
23009                .as_raw_ptr(),
23010        )
23011    }
23012
23013    /// <p>Specifies the value of the parameter</p>
23014    ///
23015    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QParameter::setValue(const QVariant& dv)```</span>.
23016    ///
23017    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the value of the parameter</p>
23018    /// <p><b>Access functions:</b></p>
23019    /// <div class="table"><table class="alignedsummary">
23020    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
23021    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(const QVariant &amp;<i>dv</i>)</td></tr>
23022    /// </tbody></table></div>
23023    /// <p><b>Notifier signal:</b></p>
23024    /// <div class="table"><table class="alignedsummary">
23025    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
23026    /// </tbody></table></div></div>
23027    #[inline(always)]
23028    pub unsafe fn set_value(
23029        &self,
23030        dv: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
23031    ) {
23032        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_setValue(
23033            self as *const crate::QParameter as *mut crate::QParameter,
23034            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(dv)
23035                .as_raw_ptr(),
23036        )
23037    }
23038
23039    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
23040    #[inline(always)]
23041    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
23042        let ffi_result =
23043            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_staticMetaObject() };
23044        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
23045            .expect("attempted to construct a null Ref")
23046    }
23047
23048    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QParameter::tr(const char* s, const char* c, int n)```</span>.
23049    #[inline(always)]
23050    pub unsafe fn tr(
23051        s: *const ::std::os::raw::c_char,
23052        c: *const ::std::os::raw::c_char,
23053        n: ::std::os::raw::c_int,
23054    ) -> ::cpp_core::CppBox<::qt_core::QString> {
23055        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_tr(s, c, n) };
23056        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
23057    }
23058
23059    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QParameter::trUtf8(const char* s, const char* c, int n)```</span>.
23060    #[inline(always)]
23061    pub unsafe fn tr_utf8(
23062        s: *const ::std::os::raw::c_char,
23063        c: *const ::std::os::raw::c_char,
23064        n: ::std::os::raw::c_int,
23065    ) -> ::cpp_core::CppBox<::qt_core::QString> {
23066        let ffi_result =
23067            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_trUtf8(s, c, n) };
23068        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
23069    }
23070
23071    /// <p>Specifies the value of the parameter</p>
23072    ///
23073    /// Calls C++ function: <span style='color: green;'>```QVariant Qt3DRender::QParameter::value() const```</span>.
23074    ///
23075    /// <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the value of the parameter</p>
23076    /// <p><b>Access functions:</b></p>
23077    /// <div class="table"><table class="alignedsummary">
23078    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
23079    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(const QVariant &amp;<i>dv</i>)</td></tr>
23080    /// </tbody></table></div>
23081    /// <p><b>Notifier signal:</b></p>
23082    /// <div class="table"><table class="alignedsummary">
23083    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(const QVariant &amp;<i>value</i>)</td></tr>
23084    /// </tbody></table></div></div>
23085    #[inline(always)]
23086    pub unsafe fn value(&self) -> ::cpp_core::CppBox<::qt_core::QVariant> {
23087        let ffi_result = {
23088            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_value(
23089                self as *const crate::QParameter,
23090            )
23091        };
23092        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
23093    }
23094}
23095
23096pub mod q_pick_event {
23097    //! C++ type: <span style='color: green;'>```Qt3DRender::QPickEvent```</span>
23098
23099    /// C++ enum: <span style='color: green;'>```Qt3DRender::QPickEvent::Buttons```</span>.
23100    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
23101    #[repr(transparent)]
23102    pub struct Buttons(::std::os::raw::c_int);
23103
23104    impl From<::std::os::raw::c_int> for Buttons {
23105        fn from(value: ::std::os::raw::c_int) -> Self {
23106            Buttons(value)
23107        }
23108    }
23109
23110    impl From<Buttons> for ::std::os::raw::c_int {
23111        fn from(value: Buttons) -> Self {
23112            value.0
23113        }
23114    }
23115
23116    impl Buttons {
23117        pub fn to_int(&self) -> ::std::os::raw::c_int {
23118            self.0
23119        }
23120    }
23121
23122    impl Buttons {
23123        /// C++ enum variant: <span style='color: green;'>```LeftButton = 1```</span>
23124        #[allow(non_upper_case_globals)]
23125        pub const LeftButton: crate::q_pick_event::Buttons = crate::q_pick_event::Buttons(1);
23126        /// C++ enum variant: <span style='color: green;'>```RightButton = 2```</span>
23127        #[allow(non_upper_case_globals)]
23128        pub const RightButton: crate::q_pick_event::Buttons = crate::q_pick_event::Buttons(2);
23129        /// C++ enum variant: <span style='color: green;'>```MiddleButton = 4```</span>
23130        #[allow(non_upper_case_globals)]
23131        pub const MiddleButton: crate::q_pick_event::Buttons = crate::q_pick_event::Buttons(4);
23132        /// C++ enum variant: <span style='color: green;'>```BackButton = 8```</span>
23133        #[allow(non_upper_case_globals)]
23134        pub const BackButton: crate::q_pick_event::Buttons = crate::q_pick_event::Buttons(8);
23135        /// C++ enum variant: <span style='color: green;'>```NoButton = 0```</span>
23136        #[allow(non_upper_case_globals)]
23137        pub const NoButton: crate::q_pick_event::Buttons = crate::q_pick_event::Buttons(0);
23138    }
23139
23140    /// C++ enum: <span style='color: green;'>```Qt3DRender::QPickEvent::Modifiers```</span>.
23141    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
23142    #[repr(transparent)]
23143    pub struct Modifiers(::std::os::raw::c_int);
23144
23145    impl From<::std::os::raw::c_int> for Modifiers {
23146        fn from(value: ::std::os::raw::c_int) -> Self {
23147            Modifiers(value)
23148        }
23149    }
23150
23151    impl From<Modifiers> for ::std::os::raw::c_int {
23152        fn from(value: Modifiers) -> Self {
23153            value.0
23154        }
23155    }
23156
23157    impl Modifiers {
23158        pub fn to_int(&self) -> ::std::os::raw::c_int {
23159            self.0
23160        }
23161    }
23162
23163    impl Modifiers {
23164        /// C++ enum variant: <span style='color: green;'>```NoModifier = 0```</span>
23165        #[allow(non_upper_case_globals)]
23166        pub const NoModifier: crate::q_pick_event::Modifiers = crate::q_pick_event::Modifiers(0);
23167        /// C++ enum variant: <span style='color: green;'>```ShiftModifier = 33554432```</span>
23168        #[allow(non_upper_case_globals)]
23169        pub const ShiftModifier: crate::q_pick_event::Modifiers =
23170            crate::q_pick_event::Modifiers(33554432);
23171        /// C++ enum variant: <span style='color: green;'>```ControlModifier = 67108864```</span>
23172        #[allow(non_upper_case_globals)]
23173        pub const ControlModifier: crate::q_pick_event::Modifiers =
23174            crate::q_pick_event::Modifiers(67108864);
23175        /// C++ enum variant: <span style='color: green;'>```AltModifier = 134217728```</span>
23176        #[allow(non_upper_case_globals)]
23177        pub const AltModifier: crate::q_pick_event::Modifiers =
23178            crate::q_pick_event::Modifiers(134217728);
23179        /// C++ enum variant: <span style='color: green;'>```MetaModifier = 268435456```</span>
23180        #[allow(non_upper_case_globals)]
23181        pub const MetaModifier: crate::q_pick_event::Modifiers =
23182            crate::q_pick_event::Modifiers(268435456);
23183        /// C++ enum variant: <span style='color: green;'>```KeypadModifier = 536870912```</span>
23184        #[allow(non_upper_case_globals)]
23185        pub const KeypadModifier: crate::q_pick_event::Modifiers =
23186            crate::q_pick_event::Modifiers(536870912);
23187    }
23188}
23189/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> class holds information when an object is picked</p>
23190///
23191/// C++ class: <span style='color: green;'>```Qt3DRender::QPickEvent```</span>.
23192///
23193/// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> class holds information when an object is picked</p>
23194/// <p>This is received as a parameter in most of the <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> component signals when picking succeeds.</p></div>
23195#[repr(C)]
23196pub struct QPickEvent {
23197    _unused: u8,
23198}
23199impl QPickEvent {
23200    /// <p>QPickEvent::setAccepted set if the event has been accepted to <i>accepted</i></p>
23201    ///
23202    /// Returns a built-in Qt slot `Qt3DRender::QPickEvent::setAccepted` that can be passed to `qt_core::Signal::connect`.
23203    ///
23204    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#setAccepted">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>QPickEvent::setAccepted set if the event has been accepted to <i>accepted</i></p>
23205    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#accepted-prop">accepted</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#isAccepted">isAccepted</a>().</p></div>
23206    #[inline(always)]
23207    pub fn slot_set_accepted(&self) -> ::qt_core::Receiver<(bool,)> {
23208        unsafe {
23209            ::qt_core::Receiver::new(
23210                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
23211                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setAccepted(bool)\0"),
23212            )
23213        }
23214    }
23215
23216    /// <p>Specifies if event has been accepted</p>
23217    ///
23218    /// Returns a built-in Qt signal `Qt3DRender::QPickEvent::acceptedChanged` that can be passed to `qt_core::Signal::connect`.
23219    ///
23220    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#accepted-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies if event has been accepted</p>
23221    /// <p><b>Access functions:</b></p>
23222    /// <div class="table"><table class="alignedsummary">
23223    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#isAccepted">isAccepted</a></b></span>() const</td></tr>
23224    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#setAccepted">setAccepted</a></b></span>(bool <i>accepted</i>)</td></tr>
23225    /// </tbody></table></div>
23226    /// <p><b>Notifier signal:</b></p>
23227    /// <div class="table"><table class="alignedsummary">
23228    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>acceptedChanged</b></span>(bool <i>accepted</i>)</td></tr>
23229    /// </tbody></table></div></div>
23230    #[inline(always)]
23231    pub fn accepted_changed(&self) -> ::qt_core::Signal<(bool,)> {
23232        unsafe {
23233            ::qt_core::Signal::new(
23234                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
23235                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2acceptedChanged(bool)\0"),
23236            )
23237        }
23238    }
23239
23240    /// <p>Specifies mouse button that caused the event</p>
23241    ///
23242    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickEvent::Buttons Qt3DRender::QPickEvent::button() const```</span>.
23243    ///
23244    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#button-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies mouse button that caused the event</p>
23245    /// <p><b>Access functions:</b></p>
23246    /// <div class="table"><table class="alignedsummary">
23247    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Buttons </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#button">button</a></b></span>() const</td></tr>
23248    /// </tbody></table></div></div>
23249    #[inline(always)]
23250    pub unsafe fn button(&self) -> crate::q_pick_event::Buttons {
23251        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_button(
23252            self as *const crate::QPickEvent,
23253        )
23254    }
23255
23256    /// <p>Specifies state of the mouse buttons for the event</p>
23257    ///
23258    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QPickEvent::buttons() const```</span>.
23259    ///
23260    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#buttons-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies state of the mouse buttons for the event</p>
23261    /// <p><b>Access functions:</b></p>
23262    /// <div class="table"><table class="alignedsummary">
23263    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#buttons">buttons</a></b></span>() const</td></tr>
23264    /// </tbody></table></div></div>
23265    #[inline(always)]
23266    pub unsafe fn buttons(&self) -> ::std::os::raw::c_int {
23267        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_buttons(
23268            self as *const crate::QPickEvent,
23269        )
23270    }
23271
23272    /// <p>Specifies the distance of the hit to the camera</p>
23273    ///
23274    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QPickEvent::distance() const```</span>.
23275    ///
23276    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#distance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the distance of the hit to the camera</p>
23277    /// <p><b>Access functions:</b></p>
23278    /// <div class="table"><table class="alignedsummary">
23279    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#distance">distance</a></b></span>() const</td></tr>
23280    /// </tbody></table></div></div>
23281    #[inline(always)]
23282    pub unsafe fn distance(&self) -> ::std::os::raw::c_float {
23283        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_distance(
23284            self as *const crate::QPickEvent,
23285        )
23286    }
23287
23288    /// <p>The entity that the picked geometry belongs to.</p>
23289    ///
23290    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QEntity* Qt3DRender::QPickEvent::entity() const```</span>.
23291    ///
23292    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#entity-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The entity that the picked geometry belongs to.</p>
23293    /// <p>If the object picker is not attached to a leaf node in the scene graph, this is useful to find which child entity was actually picked.</p>
23294    /// <p>This property was introduced in  Qt 5.14.</p>
23295    /// <p><b>Access functions:</b></p>
23296    /// <div class="table"><table class="alignedsummary">
23297    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DCore::QEntity *</td><td class="memItemRight bottomAlign"><span class="name"><b>entity</b></span>() const</td></tr>
23298    /// </tbody></table></div></div>
23299    #[inline(always)]
23300    #[cfg_attr(
23301        feature = "ritual_rustdoc_nightly",
23302        doc(cfg(cpp_lib_version = "5.14.0"))
23303    )]
23304    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
23305    pub unsafe fn entity(&self) -> ::qt_core::QPtr<::qt_3d_core::QEntity> {
23306        let ffi_result = {
23307            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_entity(
23308                self as *const crate::QPickEvent,
23309            )
23310        };
23311        ::qt_core::QPtr::from_raw(ffi_result)
23312    }
23313
23314    /// <p>QPickEvent::isAccepted Returns true if the event has been accepted</p>
23315    ///
23316    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QPickEvent::isAccepted() const```</span>.
23317    ///
23318    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#isAccepted">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>QPickEvent::isAccepted Returns true if the event has been accepted</p>
23319    /// <p><b>Note:</b> Getter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#accepted-prop">accepted</a>. </p></div>
23320    #[inline(always)]
23321    pub unsafe fn is_accepted(&self) -> bool {
23322        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_isAccepted(
23323            self as *const crate::QPickEvent,
23324        )
23325    }
23326
23327    /// <p>Specifies the coordinates of the hit in the local coordinate system of the picked entity</p>
23328    ///
23329    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QPickEvent::localIntersection() const```</span>.
23330    ///
23331    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#localIntersection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the coordinates of the hit in the local coordinate system of the picked entity</p>
23332    /// <p><b>Access functions:</b></p>
23333    /// <div class="table"><table class="alignedsummary">
23334    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#localIntersection">localIntersection</a></b></span>() const</td></tr>
23335    /// </tbody></table></div></div>
23336    #[inline(always)]
23337    pub unsafe fn local_intersection(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
23338        let ffi_result = {
23339            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_localIntersection(
23340                self as *const crate::QPickEvent,
23341            )
23342        };
23343        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
23344    }
23345
23346    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QPickEvent::metaObject() const```</span>.
23347    #[inline(always)]
23348    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
23349        let ffi_result = {
23350            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_metaObject(
23351                self as *const crate::QPickEvent,
23352            )
23353        };
23354        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
23355    }
23356
23357    /// <p>Specifies state of the mouse buttons for the event</p>
23358    ///
23359    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QPickEvent::modifiers() const```</span>.
23360    ///
23361    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#modifiers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies state of the mouse buttons for the event</p>
23362    /// <p><b>Access functions:</b></p>
23363    /// <div class="table"><table class="alignedsummary">
23364    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#modifiers">modifiers</a></b></span>() const</td></tr>
23365    /// </tbody></table></div></div>
23366    #[inline(always)]
23367    pub unsafe fn modifiers(&self) -> ::std::os::raw::c_int {
23368        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_modifiers(
23369            self as *const crate::QPickEvent,
23370        )
23371    }
23372
23373    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a>.</p>
23374    ///
23375    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickEvent::QPickEvent()```</span>.
23376    ///
23377    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#QPickEvent">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a>.</p></div>
23378    #[inline(always)]
23379    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QPickEvent> {
23380        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_QPickEvent() };
23381        ::qt_core::QBox::from_raw(ffi_result)
23382    }
23383
23384    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> with the given parameters: <i>position</i>, <i>intersection</i>, <i>localIntersection</i> and <i>distance</i></p>
23385    ///
23386    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickEvent::QPickEvent(const QPointF& position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance)```</span>.
23387    ///
23388    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#QPickEvent-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> with the given parameters: <i>position</i>, <i>intersection</i>, <i>localIntersection</i> and <i>distance</i></p></div>
23389    #[inline(always)]
23390    pub unsafe fn new_4a(
23391        position: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPointF>>,
23392        world_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
23393        local_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
23394        distance: ::std::os::raw::c_float,
23395    ) -> ::qt_core::QBox<crate::QPickEvent> {
23396        let ffi_result = {
23397            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_QPickEvent1(
23398                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPointF>>::cast_into(position)
23399                    .as_raw_ptr(),
23400                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
23401                    world_intersection,
23402                )
23403                .as_raw_ptr(),
23404                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
23405                    local_intersection,
23406                )
23407                .as_raw_ptr(),
23408                distance,
23409            )
23410        };
23411        ::qt_core::QBox::from_raw(ffi_result)
23412    }
23413
23414    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> with the given parameters: <i>position</i>, <i>worldIntersection</i>, <i>localIntersection</i>, <i>distance</i>, <i>button</i>, <i>buttons</i> and <i>modifiers</i></p>
23415    ///
23416    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickEvent::QPickEvent(const QPointF& position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, Qt3DRender::QPickEvent::Buttons button, int buttons, int modifiers)```</span>.
23417    ///
23418    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#QPickEvent-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> with the given parameters: <i>position</i>, <i>worldIntersection</i>, <i>localIntersection</i>, <i>distance</i>, <i>button</i>, <i>buttons</i> and <i>modifiers</i></p></div>
23419    #[inline(always)]
23420    pub unsafe fn new_7a(
23421        position: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPointF>>,
23422        world_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
23423        local_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
23424        distance: ::std::os::raw::c_float,
23425        button: crate::q_pick_event::Buttons,
23426        buttons: ::std::os::raw::c_int,
23427        modifiers: ::std::os::raw::c_int,
23428    ) -> ::qt_core::QBox<crate::QPickEvent> {
23429        let ffi_result = {
23430            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_QPickEvent2(
23431                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPointF>>::cast_into(position)
23432                    .as_raw_ptr(),
23433                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
23434                    world_intersection,
23435                )
23436                .as_raw_ptr(),
23437                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
23438                    local_intersection,
23439                )
23440                .as_raw_ptr(),
23441                distance,
23442                button,
23443                buttons,
23444                modifiers,
23445            )
23446        };
23447        ::qt_core::QBox::from_raw(ffi_result)
23448    }
23449
23450    /// <p>Specifies the mouse position with respect to the render area (window or quick item)</p>
23451    ///
23452    /// Calls C++ function: <span style='color: green;'>```QPointF Qt3DRender::QPickEvent::position() const```</span>.
23453    ///
23454    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#position-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the mouse position with respect to the render area (window or quick item)</p>
23455    /// <p><b>Access functions:</b></p>
23456    /// <div class="table"><table class="alignedsummary">
23457    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QPointF </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#position">position</a></b></span>() const</td></tr>
23458    /// </tbody></table></div></div>
23459    #[inline(always)]
23460    pub unsafe fn position(&self) -> ::cpp_core::CppBox<::qt_core::QPointF> {
23461        let ffi_result = {
23462            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_position(
23463                self as *const crate::QPickEvent,
23464            )
23465        };
23466        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
23467    }
23468
23469    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QPickEvent::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
23470    #[inline(always)]
23471    pub unsafe fn qt_metacall(
23472        &self,
23473        arg1: ::qt_core::q_meta_object::Call,
23474        arg2: ::std::os::raw::c_int,
23475        arg3: *mut *mut ::std::ffi::c_void,
23476    ) -> ::std::os::raw::c_int {
23477        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_qt_metacall(
23478            self as *const crate::QPickEvent as *mut crate::QPickEvent,
23479            arg1,
23480            arg2,
23481            arg3,
23482        )
23483    }
23484
23485    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QPickEvent::qt_metacast(const char* arg1)```</span>.
23486    #[inline(always)]
23487    pub unsafe fn qt_metacast(
23488        &self,
23489        arg1: *const ::std::os::raw::c_char,
23490    ) -> *mut ::std::ffi::c_void {
23491        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_qt_metacast(
23492            self as *const crate::QPickEvent as *mut crate::QPickEvent,
23493            arg1,
23494        )
23495    }
23496
23497    /// <p>QPickEvent::setAccepted set if the event has been accepted to <i>accepted</i></p>
23498    ///
23499    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPickEvent::setAccepted(bool accepted)```</span>.
23500    ///
23501    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#setAccepted">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>QPickEvent::setAccepted set if the event has been accepted to <i>accepted</i></p>
23502    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#accepted-prop">accepted</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#isAccepted">isAccepted</a>().</p></div>
23503    #[inline(always)]
23504    pub unsafe fn set_accepted(&self, accepted: bool) {
23505        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_setAccepted(
23506            self as *const crate::QPickEvent as *mut crate::QPickEvent,
23507            accepted,
23508        )
23509    }
23510
23511    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
23512    #[inline(always)]
23513    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
23514        let ffi_result =
23515            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_staticMetaObject() };
23516        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
23517            .expect("attempted to construct a null Ref")
23518    }
23519
23520    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickEvent::tr(const char* s, const char* c, int n)```</span>.
23521    #[inline(always)]
23522    pub unsafe fn tr(
23523        s: *const ::std::os::raw::c_char,
23524        c: *const ::std::os::raw::c_char,
23525        n: ::std::os::raw::c_int,
23526    ) -> ::cpp_core::CppBox<::qt_core::QString> {
23527        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_tr(s, c, n) };
23528        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
23529    }
23530
23531    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickEvent::trUtf8(const char* s, const char* c, int n)```</span>.
23532    #[inline(always)]
23533    pub unsafe fn tr_utf8(
23534        s: *const ::std::os::raw::c_char,
23535        c: *const ::std::os::raw::c_char,
23536        n: ::std::os::raw::c_int,
23537    ) -> ::cpp_core::CppBox<::qt_core::QString> {
23538        let ffi_result =
23539            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_trUtf8(s, c, n) };
23540        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
23541    }
23542
23543    /// <p>The viewport in which this event originated. A null value means the event originated from a frame graph branch without a <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a>. If a frame graph branch has a Viewport inside a Viewport the property will contain the leaf viewport.</p>
23544    ///
23545    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QViewport* Qt3DRender::QPickEvent::viewport() const```</span>.
23546    ///
23547    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#viewport-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The viewport in which this event originated. A null value means the event originated from a frame graph branch without a <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a>. If a frame graph branch has a Viewport inside a Viewport the property will contain the leaf viewport.</p>
23548    /// <p>This property was introduced in  Qt 5.14.</p>
23549    /// <p><b>Access functions:</b></p>
23550    /// <div class="table"><table class="alignedsummary">
23551    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QViewport *</td><td class="memItemRight bottomAlign"><span class="name"><b>viewport</b></span>() const</td></tr>
23552    /// </tbody></table></div></div>
23553    #[inline(always)]
23554    #[cfg_attr(
23555        feature = "ritual_rustdoc_nightly",
23556        doc(cfg(cpp_lib_version = "5.14.0"))
23557    )]
23558    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
23559    pub unsafe fn viewport(&self) -> ::qt_core::QPtr<crate::QViewport> {
23560        let ffi_result = {
23561            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_viewport(
23562                self as *const crate::QPickEvent,
23563            )
23564        };
23565        ::qt_core::QPtr::from_raw(ffi_result)
23566    }
23567
23568    /// <p>Specifies the coordinates of the hit in world coordinate system</p>
23569    ///
23570    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QPickEvent::worldIntersection() const```</span>.
23571    ///
23572    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#worldIntersection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the coordinates of the hit in world coordinate system</p>
23573    /// <p><b>Access functions:</b></p>
23574    /// <div class="table"><table class="alignedsummary">
23575    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html#worldIntersection">worldIntersection</a></b></span>() const</td></tr>
23576    /// </tbody></table></div></div>
23577    #[inline(always)]
23578    pub unsafe fn world_intersection(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
23579        let ffi_result = {
23580            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_worldIntersection(
23581                self as *const crate::QPickEvent,
23582            )
23583        };
23584        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
23585    }
23586}
23587
23588pub mod q_picking_settings {
23589    //! C++ type: <span style='color: green;'>```Qt3DRender::QPickingSettings```</span>
23590
23591    /// C++ enum: <span style='color: green;'>```Qt3DRender::QPickingSettings::PickMethod```</span>.
23592    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
23593    #[repr(transparent)]
23594    pub struct PickMethod(::std::os::raw::c_int);
23595
23596    impl From<::std::os::raw::c_int> for PickMethod {
23597        fn from(value: ::std::os::raw::c_int) -> Self {
23598            PickMethod(value)
23599        }
23600    }
23601
23602    impl From<PickMethod> for ::std::os::raw::c_int {
23603        fn from(value: PickMethod) -> Self {
23604            value.0
23605        }
23606    }
23607
23608    impl PickMethod {
23609        pub fn to_int(&self) -> ::std::os::raw::c_int {
23610            self.0
23611        }
23612    }
23613
23614    impl PickMethod {
23615        /// C++ enum variant: <span style='color: green;'>```BoundingVolumePicking = 0```</span>
23616        #[allow(non_upper_case_globals)]
23617        pub const BoundingVolumePicking: crate::q_picking_settings::PickMethod =
23618            crate::q_picking_settings::PickMethod(0);
23619        /// C++ enum variant: <span style='color: green;'>```TrianglePicking = 1```</span>
23620        #[allow(non_upper_case_globals)]
23621        pub const TrianglePicking: crate::q_picking_settings::PickMethod =
23622            crate::q_picking_settings::PickMethod(1);
23623        /// C++ enum variant: <span style='color: green;'>```LinePicking = 2```</span>
23624        #[allow(non_upper_case_globals)]
23625        pub const LinePicking: crate::q_picking_settings::PickMethod =
23626            crate::q_picking_settings::PickMethod(2);
23627        /// C++ enum variant: <span style='color: green;'>```PointPicking = 4```</span>
23628        #[allow(non_upper_case_globals)]
23629        pub const PointPicking: crate::q_picking_settings::PickMethod =
23630            crate::q_picking_settings::PickMethod(4);
23631        /// C++ enum variant: <span style='color: green;'>```PrimitivePicking = 7```</span>
23632        #[allow(non_upper_case_globals)]
23633        pub const PrimitivePicking: crate::q_picking_settings::PickMethod =
23634            crate::q_picking_settings::PickMethod(7);
23635    }
23636
23637    /// C++ enum: <span style='color: green;'>```Qt3DRender::QPickingSettings::PickResultMode```</span>.
23638    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
23639    #[repr(transparent)]
23640    pub struct PickResultMode(::std::os::raw::c_int);
23641
23642    impl From<::std::os::raw::c_int> for PickResultMode {
23643        fn from(value: ::std::os::raw::c_int) -> Self {
23644            PickResultMode(value)
23645        }
23646    }
23647
23648    impl From<PickResultMode> for ::std::os::raw::c_int {
23649        fn from(value: PickResultMode) -> Self {
23650            value.0
23651        }
23652    }
23653
23654    impl PickResultMode {
23655        pub fn to_int(&self) -> ::std::os::raw::c_int {
23656            self.0
23657        }
23658    }
23659
23660    impl PickResultMode {
23661        /// C++ enum variant: <span style='color: green;'>```NearestPick = 0```</span>
23662        #[allow(non_upper_case_globals)]
23663        pub const NearestPick: crate::q_picking_settings::PickResultMode =
23664            crate::q_picking_settings::PickResultMode(0);
23665        /// C++ enum variant: <span style='color: green;'>```AllPicks = 1```</span>
23666        #[allow(non_upper_case_globals)]
23667        pub const AllPicks: crate::q_picking_settings::PickResultMode =
23668            crate::q_picking_settings::PickResultMode(1);
23669        /// C++ enum variant: <span style='color: green;'>```NearestPriorityPick = 2```</span>
23670        #[allow(non_upper_case_globals)]
23671        pub const NearestPriorityPick: crate::q_picking_settings::PickResultMode =
23672            crate::q_picking_settings::PickResultMode(2);
23673    }
23674
23675    /// C++ enum: <span style='color: green;'>```Qt3DRender::QPickingSettings::FaceOrientationPickingMode```</span>.
23676    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
23677    #[repr(transparent)]
23678    pub struct FaceOrientationPickingMode(::std::os::raw::c_int);
23679
23680    impl From<::std::os::raw::c_int> for FaceOrientationPickingMode {
23681        fn from(value: ::std::os::raw::c_int) -> Self {
23682            FaceOrientationPickingMode(value)
23683        }
23684    }
23685
23686    impl From<FaceOrientationPickingMode> for ::std::os::raw::c_int {
23687        fn from(value: FaceOrientationPickingMode) -> Self {
23688            value.0
23689        }
23690    }
23691
23692    impl FaceOrientationPickingMode {
23693        pub fn to_int(&self) -> ::std::os::raw::c_int {
23694            self.0
23695        }
23696    }
23697
23698    impl FaceOrientationPickingMode {
23699        /// C++ enum variant: <span style='color: green;'>```FrontFace = 1```</span>
23700        #[allow(non_upper_case_globals)]
23701        pub const FrontFace: crate::q_picking_settings::FaceOrientationPickingMode =
23702            crate::q_picking_settings::FaceOrientationPickingMode(1);
23703        /// C++ enum variant: <span style='color: green;'>```BackFace = 2```</span>
23704        #[allow(non_upper_case_globals)]
23705        pub const BackFace: crate::q_picking_settings::FaceOrientationPickingMode =
23706            crate::q_picking_settings::FaceOrientationPickingMode(2);
23707        /// C++ enum variant: <span style='color: green;'>```FrontAndBackFace = 3```</span>
23708        #[allow(non_upper_case_globals)]
23709        pub const FrontAndBackFace: crate::q_picking_settings::FaceOrientationPickingMode =
23710            crate::q_picking_settings::FaceOrientationPickingMode(3);
23711    }
23712}
23713/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">QPickingSettings</a> class specifies how entity picking is handled.</p>
23714///
23715/// C++ class: <span style='color: green;'>```Qt3DRender::QPickingSettings```</span>.
23716///
23717/// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">QPickingSettings</a> class specifies how entity picking is handled.</p>
23718/// <p>The picking settings determine how the entity picking is handled. For more details about entity picking, see <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> component documentation.</p>
23719/// <p>Picking is triggered by mouse events. It will cast a ray through the scene and look for geometry intersecting the ray.</p></div>
23720#[repr(C)]
23721pub struct QPickingSettings {
23722    _unused: u8,
23723}
23724impl QPickingSettings {
23725    /// <p>Holds the current pick method.</p>
23726    ///
23727    /// Returns a built-in Qt slot `Qt3DRender::QPickingSettings::setPickMethod` that can be passed to `qt_core::Signal::connect`.
23728    ///
23729    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickMethod-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current pick method.</p>
23730    /// <p>By default, for performance reasons, ray casting will use bounding volume picking. This may however lead to unexpected results if a small object is englobed in the bounding sphere of a large object behind it.</p>
23731    /// <p>Triangle picking will produce exact results but is computationally more expensive.</p>
23732    /// <p><b>Access functions:</b></p>
23733    /// <div class="table"><table class="alignedsummary">
23734    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PickMethod </td><td class="memItemRight bottomAlign"><span class="name"><b>pickMethod</b></span>() const</td></tr>
23735    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPickMethod</b></span>(PickMethod <i>pickMethod</i>)</td></tr>
23736    /// </tbody></table></div>
23737    /// <p><b>Notifier signal:</b></p>
23738    /// <div class="table"><table class="alignedsummary">
23739    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pickMethodChanged</b></span>(QPickingSettings::PickMethod <i>pickMethod</i>)</td></tr>
23740    /// </tbody></table></div></div>
23741    #[inline(always)]
23742    pub fn slot_set_pick_method(
23743        &self,
23744    ) -> ::qt_core::Receiver<(crate::q_picking_settings::PickMethod,)> {
23745        unsafe {
23746            ::qt_core::Receiver::new(
23747                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
23748                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
23749                    b"1setPickMethod(Qt3DRender::QPickingSettings::PickMethod)\0",
23750                ),
23751            )
23752        }
23753    }
23754
23755    /// <p>Holds the current pick results mode.</p>
23756    ///
23757    /// Returns a built-in Qt slot `Qt3DRender::QPickingSettings::setPickResultMode` that can be passed to `qt_core::Signal::connect`.
23758    ///
23759    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickResultMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current pick results mode.</p>
23760    /// <p>By default, pick results will only be produced for the entity closest to the camera.</p>
23761    /// <p>When setting the pick method to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">AllPicks</a>, events will be triggered for all the entities with a <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> along the ray.</p>
23762    /// <p>If a <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> is assigned to an entity with multiple children, an event will be triggered for each child entity that intersects the ray.</p>
23763    /// <p><b>Access functions:</b></p>
23764    /// <div class="table"><table class="alignedsummary">
23765    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PickResultMode </td><td class="memItemRight bottomAlign"><span class="name"><b>pickResultMode</b></span>() const</td></tr>
23766    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPickResultMode</b></span>(PickResultMode <i>pickResultMode</i>)</td></tr>
23767    /// </tbody></table></div>
23768    /// <p><b>Notifier signal:</b></p>
23769    /// <div class="table"><table class="alignedsummary">
23770    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pickResultModeChanged</b></span>(QPickingSettings::PickResultMode <i>pickResult</i>)</td></tr>
23771    /// </tbody></table></div></div>
23772    #[inline(always)]
23773    pub fn slot_set_pick_result_mode(
23774        &self,
23775    ) -> ::qt_core::Receiver<(crate::q_picking_settings::PickResultMode,)> {
23776        unsafe {
23777            ::qt_core::Receiver::new(
23778                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
23779                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
23780                    b"1setPickResultMode(Qt3DRender::QPickingSettings::PickResultMode)\0",
23781                ),
23782            )
23783        }
23784    }
23785
23786    /// <p>Specifies how face orientation affects triangle picking</p>
23787    ///
23788    /// Returns a built-in Qt slot `Qt3DRender::QPickingSettings::setFaceOrientationPickingMode` that can be passed to `qt_core::Signal::connect`.
23789    ///
23790    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#faceOrientationPickingMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies how face orientation affects triangle picking</p>
23791    /// <p><b>Access functions:</b></p>
23792    /// <div class="table"><table class="alignedsummary">
23793    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> FaceOrientationPickingMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceOrientationPickingMode</b></span>() const</td></tr>
23794    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFaceOrientationPickingMode</b></span>(FaceOrientationPickingMode <i>faceOrientationPickingMode</i>)</td></tr>
23795    /// </tbody></table></div>
23796    /// <p><b>Notifier signal:</b></p>
23797    /// <div class="table"><table class="alignedsummary">
23798    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceOrientationPickingModeChanged</b></span>(QPickingSettings::FaceOrientationPickingMode <i>faceOrientationPickingMode</i>)</td></tr>
23799    /// </tbody></table></div></div>
23800    #[inline(always)]
23801    pub fn slot_set_face_orientation_picking_mode(
23802        &self,
23803    ) -> ::qt_core::Receiver<(crate::q_picking_settings::FaceOrientationPickingMode,)> {
23804        unsafe {
23805            ::qt_core::Receiver::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setFaceOrientationPickingMode(Qt3DRender::QPickingSettings::FaceOrientationPickingMode)\0"))
23806        }
23807    }
23808
23809    /// <p>Holds the current pick method.</p>
23810    ///
23811    /// Returns a built-in Qt signal `Qt3DRender::QPickingSettings::pickMethodChanged` that can be passed to `qt_core::Signal::connect`.
23812    ///
23813    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickMethod-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current pick method.</p>
23814    /// <p>By default, for performance reasons, ray casting will use bounding volume picking. This may however lead to unexpected results if a small object is englobed in the bounding sphere of a large object behind it.</p>
23815    /// <p>Triangle picking will produce exact results but is computationally more expensive.</p>
23816    /// <p><b>Access functions:</b></p>
23817    /// <div class="table"><table class="alignedsummary">
23818    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PickMethod </td><td class="memItemRight bottomAlign"><span class="name"><b>pickMethod</b></span>() const</td></tr>
23819    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPickMethod</b></span>(PickMethod <i>pickMethod</i>)</td></tr>
23820    /// </tbody></table></div>
23821    /// <p><b>Notifier signal:</b></p>
23822    /// <div class="table"><table class="alignedsummary">
23823    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pickMethodChanged</b></span>(QPickingSettings::PickMethod <i>pickMethod</i>)</td></tr>
23824    /// </tbody></table></div></div>
23825    #[inline(always)]
23826    pub fn pick_method_changed(
23827        &self,
23828    ) -> ::qt_core::Signal<(crate::q_picking_settings::PickMethod,)> {
23829        unsafe {
23830            ::qt_core::Signal::new(
23831                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
23832                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
23833                    b"2pickMethodChanged(Qt3DRender::QPickingSettings::PickMethod)\0",
23834                ),
23835            )
23836        }
23837    }
23838
23839    /// <p>Holds the current pick results mode.</p>
23840    ///
23841    /// Returns a built-in Qt signal `Qt3DRender::QPickingSettings::pickResultModeChanged` that can be passed to `qt_core::Signal::connect`.
23842    ///
23843    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickResultMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current pick results mode.</p>
23844    /// <p>By default, pick results will only be produced for the entity closest to the camera.</p>
23845    /// <p>When setting the pick method to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">AllPicks</a>, events will be triggered for all the entities with a <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> along the ray.</p>
23846    /// <p>If a <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> is assigned to an entity with multiple children, an event will be triggered for each child entity that intersects the ray.</p>
23847    /// <p><b>Access functions:</b></p>
23848    /// <div class="table"><table class="alignedsummary">
23849    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PickResultMode </td><td class="memItemRight bottomAlign"><span class="name"><b>pickResultMode</b></span>() const</td></tr>
23850    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPickResultMode</b></span>(PickResultMode <i>pickResultMode</i>)</td></tr>
23851    /// </tbody></table></div>
23852    /// <p><b>Notifier signal:</b></p>
23853    /// <div class="table"><table class="alignedsummary">
23854    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pickResultModeChanged</b></span>(QPickingSettings::PickResultMode <i>pickResult</i>)</td></tr>
23855    /// </tbody></table></div></div>
23856    #[inline(always)]
23857    pub fn pick_result_mode_changed(
23858        &self,
23859    ) -> ::qt_core::Signal<(crate::q_picking_settings::PickResultMode,)> {
23860        unsafe {
23861            ::qt_core::Signal::new(
23862                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
23863                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
23864                    b"2pickResultModeChanged(Qt3DRender::QPickingSettings::PickResultMode)\0",
23865                ),
23866            )
23867        }
23868    }
23869
23870    /// <p>Specifies how face orientation affects triangle picking</p>
23871    ///
23872    /// Returns a built-in Qt signal `Qt3DRender::QPickingSettings::faceOrientationPickingModeChanged` that can be passed to `qt_core::Signal::connect`.
23873    ///
23874    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#faceOrientationPickingMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies how face orientation affects triangle picking</p>
23875    /// <p><b>Access functions:</b></p>
23876    /// <div class="table"><table class="alignedsummary">
23877    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> FaceOrientationPickingMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceOrientationPickingMode</b></span>() const</td></tr>
23878    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFaceOrientationPickingMode</b></span>(FaceOrientationPickingMode <i>faceOrientationPickingMode</i>)</td></tr>
23879    /// </tbody></table></div>
23880    /// <p><b>Notifier signal:</b></p>
23881    /// <div class="table"><table class="alignedsummary">
23882    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceOrientationPickingModeChanged</b></span>(QPickingSettings::FaceOrientationPickingMode <i>faceOrientationPickingMode</i>)</td></tr>
23883    /// </tbody></table></div></div>
23884    #[inline(always)]
23885    pub fn face_orientation_picking_mode_changed(
23886        &self,
23887    ) -> ::qt_core::Signal<(crate::q_picking_settings::FaceOrientationPickingMode,)> {
23888        unsafe {
23889            ::qt_core::Signal::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2faceOrientationPickingModeChanged(Qt3DRender::QPickingSettings::FaceOrientationPickingMode)\0"))
23890        }
23891    }
23892
23893    /// <p>Specifies how face orientation affects triangle picking</p>
23894    ///
23895    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickingSettings::FaceOrientationPickingMode Qt3DRender::QPickingSettings::faceOrientationPickingMode() const```</span>.
23896    ///
23897    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#faceOrientationPickingMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies how face orientation affects triangle picking</p>
23898    /// <p><b>Access functions:</b></p>
23899    /// <div class="table"><table class="alignedsummary">
23900    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> FaceOrientationPickingMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceOrientationPickingMode</b></span>() const</td></tr>
23901    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFaceOrientationPickingMode</b></span>(FaceOrientationPickingMode <i>faceOrientationPickingMode</i>)</td></tr>
23902    /// </tbody></table></div>
23903    /// <p><b>Notifier signal:</b></p>
23904    /// <div class="table"><table class="alignedsummary">
23905    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceOrientationPickingModeChanged</b></span>(QPickingSettings::FaceOrientationPickingMode <i>faceOrientationPickingMode</i>)</td></tr>
23906    /// </tbody></table></div></div>
23907    #[inline(always)]
23908    pub unsafe fn face_orientation_picking_mode(
23909        &self,
23910    ) -> crate::q_picking_settings::FaceOrientationPickingMode {
23911        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_faceOrientationPickingMode(
23912            self as *const crate::QPickingSettings,
23913        )
23914    }
23915
23916    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QPickingSettings::metaObject() const```</span>.
23917    #[inline(always)]
23918    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
23919        let ffi_result = {
23920            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_metaObject(
23921                self as *const crate::QPickingSettings,
23922            )
23923        };
23924        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
23925    }
23926
23927    /// <p>Default constructs an instance of QPickingSettings.</p>
23928    ///
23929    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickingSettings::QPickingSettings(Qt3DCore::QNode* parent = …)```</span>.
23930    ///
23931    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#QPickingSettings">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QPickingSettings.</p></div>
23932    #[inline(always)]
23933    pub unsafe fn new_1a(
23934        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
23935    ) -> ::qt_core::QBox<crate::QPickingSettings> {
23936        let ffi_result = {
23937            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_QPickingSettings(
23938                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
23939                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
23940            )
23941        };
23942        ::qt_core::QBox::from_raw(ffi_result)
23943    }
23944
23945    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">QPickingSettings</a> class specifies how entity picking is handled.</p>
23946    ///
23947    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickingSettings::QPickingSettings()```</span>.
23948    ///
23949    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">QPickingSettings</a> class specifies how entity picking is handled.</p>
23950    /// <p>The picking settings determine how the entity picking is handled. For more details about entity picking, see <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> component documentation.</p>
23951    /// <p>Picking is triggered by mouse events. It will cast a ray through the scene and look for geometry intersecting the ray.</p></div>
23952    #[inline(always)]
23953    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QPickingSettings> {
23954        let ffi_result =
23955            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_QPickingSettings1() };
23956        ::qt_core::QBox::from_raw(ffi_result)
23957    }
23958
23959    /// <p>Holds the current pick method.</p>
23960    ///
23961    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickingSettings::PickMethod Qt3DRender::QPickingSettings::pickMethod() const```</span>.
23962    ///
23963    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickMethod-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current pick method.</p>
23964    /// <p>By default, for performance reasons, ray casting will use bounding volume picking. This may however lead to unexpected results if a small object is englobed in the bounding sphere of a large object behind it.</p>
23965    /// <p>Triangle picking will produce exact results but is computationally more expensive.</p>
23966    /// <p><b>Access functions:</b></p>
23967    /// <div class="table"><table class="alignedsummary">
23968    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PickMethod </td><td class="memItemRight bottomAlign"><span class="name"><b>pickMethod</b></span>() const</td></tr>
23969    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPickMethod</b></span>(PickMethod <i>pickMethod</i>)</td></tr>
23970    /// </tbody></table></div>
23971    /// <p><b>Notifier signal:</b></p>
23972    /// <div class="table"><table class="alignedsummary">
23973    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pickMethodChanged</b></span>(QPickingSettings::PickMethod <i>pickMethod</i>)</td></tr>
23974    /// </tbody></table></div></div>
23975    #[inline(always)]
23976    pub unsafe fn pick_method(&self) -> crate::q_picking_settings::PickMethod {
23977        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_pickMethod(
23978            self as *const crate::QPickingSettings,
23979        )
23980    }
23981
23982    /// <p>Holds the current pick results mode.</p>
23983    ///
23984    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickingSettings::PickResultMode Qt3DRender::QPickingSettings::pickResultMode() const```</span>.
23985    ///
23986    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickResultMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current pick results mode.</p>
23987    /// <p>By default, pick results will only be produced for the entity closest to the camera.</p>
23988    /// <p>When setting the pick method to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">AllPicks</a>, events will be triggered for all the entities with a <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> along the ray.</p>
23989    /// <p>If a <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> is assigned to an entity with multiple children, an event will be triggered for each child entity that intersects the ray.</p>
23990    /// <p><b>Access functions:</b></p>
23991    /// <div class="table"><table class="alignedsummary">
23992    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PickResultMode </td><td class="memItemRight bottomAlign"><span class="name"><b>pickResultMode</b></span>() const</td></tr>
23993    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPickResultMode</b></span>(PickResultMode <i>pickResultMode</i>)</td></tr>
23994    /// </tbody></table></div>
23995    /// <p><b>Notifier signal:</b></p>
23996    /// <div class="table"><table class="alignedsummary">
23997    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pickResultModeChanged</b></span>(QPickingSettings::PickResultMode <i>pickResult</i>)</td></tr>
23998    /// </tbody></table></div></div>
23999    #[inline(always)]
24000    pub unsafe fn pick_result_mode(&self) -> crate::q_picking_settings::PickResultMode {
24001        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_pickResultMode(
24002            self as *const crate::QPickingSettings,
24003        )
24004    }
24005
24006    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QPickingSettings::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
24007    #[inline(always)]
24008    pub unsafe fn qt_metacall(
24009        &self,
24010        arg1: ::qt_core::q_meta_object::Call,
24011        arg2: ::std::os::raw::c_int,
24012        arg3: *mut *mut ::std::ffi::c_void,
24013    ) -> ::std::os::raw::c_int {
24014        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_qt_metacall(
24015            self as *const crate::QPickingSettings as *mut crate::QPickingSettings,
24016            arg1,
24017            arg2,
24018            arg3,
24019        )
24020    }
24021
24022    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QPickingSettings::qt_metacast(const char* arg1)```</span>.
24023    #[inline(always)]
24024    pub unsafe fn qt_metacast(
24025        &self,
24026        arg1: *const ::std::os::raw::c_char,
24027    ) -> *mut ::std::ffi::c_void {
24028        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_qt_metacast(
24029            self as *const crate::QPickingSettings as *mut crate::QPickingSettings,
24030            arg1,
24031        )
24032    }
24033
24034    /// <p>Specifies how face orientation affects triangle picking</p>
24035    ///
24036    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPickingSettings::setFaceOrientationPickingMode(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode)```</span>.
24037    ///
24038    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#faceOrientationPickingMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies how face orientation affects triangle picking</p>
24039    /// <p><b>Access functions:</b></p>
24040    /// <div class="table"><table class="alignedsummary">
24041    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> FaceOrientationPickingMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceOrientationPickingMode</b></span>() const</td></tr>
24042    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFaceOrientationPickingMode</b></span>(FaceOrientationPickingMode <i>faceOrientationPickingMode</i>)</td></tr>
24043    /// </tbody></table></div>
24044    /// <p><b>Notifier signal:</b></p>
24045    /// <div class="table"><table class="alignedsummary">
24046    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceOrientationPickingModeChanged</b></span>(QPickingSettings::FaceOrientationPickingMode <i>faceOrientationPickingMode</i>)</td></tr>
24047    /// </tbody></table></div></div>
24048    #[inline(always)]
24049    pub unsafe fn set_face_orientation_picking_mode(
24050        &self,
24051        face_orientation_picking_mode: crate::q_picking_settings::FaceOrientationPickingMode,
24052    ) {
24053        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_setFaceOrientationPickingMode(
24054            self as *const crate::QPickingSettings as *mut crate::QPickingSettings,
24055            face_orientation_picking_mode,
24056        )
24057    }
24058
24059    /// <p>Holds the current pick method.</p>
24060    ///
24061    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPickingSettings::setPickMethod(Qt3DRender::QPickingSettings::PickMethod pickMethod)```</span>.
24062    ///
24063    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickMethod-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current pick method.</p>
24064    /// <p>By default, for performance reasons, ray casting will use bounding volume picking. This may however lead to unexpected results if a small object is englobed in the bounding sphere of a large object behind it.</p>
24065    /// <p>Triangle picking will produce exact results but is computationally more expensive.</p>
24066    /// <p><b>Access functions:</b></p>
24067    /// <div class="table"><table class="alignedsummary">
24068    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PickMethod </td><td class="memItemRight bottomAlign"><span class="name"><b>pickMethod</b></span>() const</td></tr>
24069    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPickMethod</b></span>(PickMethod <i>pickMethod</i>)</td></tr>
24070    /// </tbody></table></div>
24071    /// <p><b>Notifier signal:</b></p>
24072    /// <div class="table"><table class="alignedsummary">
24073    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pickMethodChanged</b></span>(QPickingSettings::PickMethod <i>pickMethod</i>)</td></tr>
24074    /// </tbody></table></div></div>
24075    #[inline(always)]
24076    pub unsafe fn set_pick_method(&self, pick_method: crate::q_picking_settings::PickMethod) {
24077        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_setPickMethod(
24078            self as *const crate::QPickingSettings as *mut crate::QPickingSettings,
24079            pick_method,
24080        )
24081    }
24082
24083    /// <p>Holds the current pick results mode.</p>
24084    ///
24085    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPickingSettings::setPickResultMode(Qt3DRender::QPickingSettings::PickResultMode pickResultMode)```</span>.
24086    ///
24087    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#pickResultMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current pick results mode.</p>
24088    /// <p>By default, pick results will only be produced for the entity closest to the camera.</p>
24089    /// <p>When setting the pick method to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickResultMode-enum">AllPicks</a>, events will be triggered for all the entities with a <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> along the ray.</p>
24090    /// <p>If a <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> is assigned to an entity with multiple children, an event will be triggered for each child entity that intersects the ray.</p>
24091    /// <p><b>Access functions:</b></p>
24092    /// <div class="table"><table class="alignedsummary">
24093    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> PickResultMode </td><td class="memItemRight bottomAlign"><span class="name"><b>pickResultMode</b></span>() const</td></tr>
24094    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPickResultMode</b></span>(PickResultMode <i>pickResultMode</i>)</td></tr>
24095    /// </tbody></table></div>
24096    /// <p><b>Notifier signal:</b></p>
24097    /// <div class="table"><table class="alignedsummary">
24098    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>pickResultModeChanged</b></span>(QPickingSettings::PickResultMode <i>pickResult</i>)</td></tr>
24099    /// </tbody></table></div></div>
24100    #[inline(always)]
24101    pub unsafe fn set_pick_result_mode(
24102        &self,
24103        pick_result_mode: crate::q_picking_settings::PickResultMode,
24104    ) {
24105        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_setPickResultMode(
24106            self as *const crate::QPickingSettings as *mut crate::QPickingSettings,
24107            pick_result_mode,
24108        )
24109    }
24110
24111    /// <p>Sets the threshold used for line and point picking to <i>worldSpaceTolerance</i>.</p>
24112    ///
24113    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QPickingSettings::setWorldSpaceTolerance(float worldSpaceTolerance)```</span>.
24114    ///
24115    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#setWorldSpaceTolerance">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the threshold used for line and point picking to <i>worldSpaceTolerance</i>.</p>
24116    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#worldSpaceTolerance-prop">worldSpaceTolerance</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#worldSpaceTolerance">worldSpaceTolerance</a>().</p></div>
24117    #[inline(always)]
24118    #[cfg_attr(
24119        feature = "ritual_rustdoc_nightly",
24120        doc(cfg(any(
24121            cpp_lib_version = "5.11.3",
24122            cpp_lib_version = "5.12.2",
24123            cpp_lib_version = "5.13.0",
24124            cpp_lib_version = "5.14.0"
24125        )))
24126    )]
24127    #[cfg(any(
24128        any(
24129            cpp_lib_version = "5.11.3",
24130            cpp_lib_version = "5.12.2",
24131            cpp_lib_version = "5.13.0",
24132            cpp_lib_version = "5.14.0"
24133        ),
24134        feature = "ritual_rustdoc"
24135    ))]
24136    pub unsafe fn set_world_space_tolerance(&self, world_space_tolerance: ::std::os::raw::c_float) {
24137        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_setWorldSpaceTolerance(
24138            self as *const crate::QPickingSettings as *mut crate::QPickingSettings,
24139            world_space_tolerance,
24140        )
24141    }
24142
24143    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
24144    #[inline(always)]
24145    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
24146        let ffi_result =
24147            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_staticMetaObject() };
24148        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
24149            .expect("attempted to construct a null Ref")
24150    }
24151
24152    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickingSettings::tr(const char* s, const char* c, int n)```</span>.
24153    #[inline(always)]
24154    pub unsafe fn tr(
24155        s: *const ::std::os::raw::c_char,
24156        c: *const ::std::os::raw::c_char,
24157        n: ::std::os::raw::c_int,
24158    ) -> ::cpp_core::CppBox<::qt_core::QString> {
24159        let ffi_result =
24160            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_tr(s, c, n) };
24161        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
24162    }
24163
24164    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickingSettings::trUtf8(const char* s, const char* c, int n)```</span>.
24165    #[inline(always)]
24166    pub unsafe fn tr_utf8(
24167        s: *const ::std::os::raw::c_char,
24168        c: *const ::std::os::raw::c_char,
24169        n: ::std::os::raw::c_int,
24170    ) -> ::cpp_core::CppBox<::qt_core::QString> {
24171        let ffi_result =
24172            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_trUtf8(s, c, n) };
24173        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
24174    }
24175
24176    /// <p>Holds the threshold, in model space coordinates, used to evaluate line and point picking.</p>
24177    ///
24178    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QPickingSettings::worldSpaceTolerance() const```</span>.
24179    ///
24180    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#worldSpaceTolerance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the threshold, in model space coordinates, used to evaluate line and point picking.</p>
24181    /// <p><b>Access functions:</b></p>
24182    /// <div class="table"><table class="alignedsummary">
24183    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#worldSpaceTolerance">worldSpaceTolerance</a></b></span>() const</td></tr>
24184    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#setWorldSpaceTolerance">setWorldSpaceTolerance</a></b></span>(float <i>worldSpaceTolerance</i>)</td></tr>
24185    /// </tbody></table></div>
24186    /// <p><b>Notifier signal:</b></p>
24187    /// <div class="table"><table class="alignedsummary">
24188    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>worldSpaceToleranceChanged</b></span>(float <i>worldSpaceTolerance</i>)</td></tr>
24189    /// </tbody></table></div></div>
24190    #[inline(always)]
24191    #[cfg_attr(
24192        feature = "ritual_rustdoc_nightly",
24193        doc(cfg(any(
24194            cpp_lib_version = "5.11.3",
24195            cpp_lib_version = "5.12.2",
24196            cpp_lib_version = "5.13.0",
24197            cpp_lib_version = "5.14.0"
24198        )))
24199    )]
24200    #[cfg(any(
24201        any(
24202            cpp_lib_version = "5.11.3",
24203            cpp_lib_version = "5.12.2",
24204            cpp_lib_version = "5.13.0",
24205            cpp_lib_version = "5.14.0"
24206        ),
24207        feature = "ritual_rustdoc"
24208    ))]
24209    pub unsafe fn world_space_tolerance(&self) -> ::std::os::raw::c_float {
24210        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_worldSpaceTolerance(
24211            self as *const crate::QPickingSettings,
24212        )
24213    }
24214
24215    /// <p>Holds the threshold, in model space coordinates, used to evaluate line and point picking.</p>
24216    ///
24217    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QPickingSettings::worldSpaceToleranceChanged(float worldSpaceTolerance)```</span>.
24218    ///
24219    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#worldSpaceTolerance-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the threshold, in model space coordinates, used to evaluate line and point picking.</p>
24220    /// <p><b>Access functions:</b></p>
24221    /// <div class="table"><table class="alignedsummary">
24222    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#worldSpaceTolerance">worldSpaceTolerance</a></b></span>() const</td></tr>
24223    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#setWorldSpaceTolerance">setWorldSpaceTolerance</a></b></span>(float <i>worldSpaceTolerance</i>)</td></tr>
24224    /// </tbody></table></div>
24225    /// <p><b>Notifier signal:</b></p>
24226    /// <div class="table"><table class="alignedsummary">
24227    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>worldSpaceToleranceChanged</b></span>(float <i>worldSpaceTolerance</i>)</td></tr>
24228    /// </tbody></table></div></div>
24229    #[inline(always)]
24230    #[cfg_attr(
24231        feature = "ritual_rustdoc_nightly",
24232        doc(cfg(any(
24233            cpp_lib_version = "5.11.3",
24234            cpp_lib_version = "5.12.2",
24235            cpp_lib_version = "5.13.0",
24236            cpp_lib_version = "5.14.0"
24237        )))
24238    )]
24239    #[cfg(any(
24240        any(
24241            cpp_lib_version = "5.11.3",
24242            cpp_lib_version = "5.12.2",
24243            cpp_lib_version = "5.13.0",
24244            cpp_lib_version = "5.14.0"
24245        ),
24246        feature = "ritual_rustdoc"
24247    ))]
24248    pub unsafe fn world_space_tolerance_changed(
24249        &self,
24250        world_space_tolerance: ::std::os::raw::c_float,
24251    ) {
24252        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_worldSpaceToleranceChanged(
24253            self as *const crate::QPickingSettings as *mut crate::QPickingSettings,
24254            world_space_tolerance,
24255        )
24256    }
24257}
24258
24259/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html">QPickTriangleEvent</a> class holds information when a triangle is picked</p>
24260///
24261/// C++ class: <span style='color: green;'>```Qt3DRender::QPickTriangleEvent```</span>.
24262///
24263/// <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html">QPickTriangleEvent</a> class holds information when a triangle is picked</p>
24264/// <p>When QPickingSettings::pickMode() is set to <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html#PickMethod-enum">QPickingSettings::TrianglePicking</a>, the signals on <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">QObjectPicker</a> will carry an instance of <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html">QPickTriangleEvent</a>.</p>
24265/// <p>This contains the details of the triangle that was picked.</p>
24266/// <p><b>Note: </b>In the case of indexed rendering, the point indices are relative to the array of coordinates, not the array of indices.</p></div>
24267#[repr(C)]
24268pub struct QPickTriangleEvent {
24269    _unused: u8,
24270}
24271impl QPickTriangleEvent {
24272    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QPickTriangleEvent::metaObject() const```</span>.
24273    #[inline(always)]
24274    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
24275        let ffi_result = {
24276            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_metaObject(
24277                self as *const crate::QPickTriangleEvent,
24278            )
24279        };
24280        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
24281    }
24282
24283    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a>.</p>
24284    ///
24285    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickTriangleEvent::QPickTriangleEvent()```</span>.
24286    ///
24287    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#QPickTriangleEvent">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a>.</p></div>
24288    #[inline(always)]
24289    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QPickTriangleEvent> {
24290        let ffi_result = {
24291            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_QPickTriangleEvent()
24292        };
24293        ::qt_core::QBox::from_raw(ffi_result)
24294    }
24295
24296    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html">QPickTriangleEvent::QPickTriangleEvent</a> Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> with the given parameters <i>position</i>, <i>worldIntersection</i>, <i>localIntersection</i>, <i>distance</i>, <i>triangleIndex</i>, <i>vertex1Index</i>, <i>vertex2Index</i> and <i>vertex3Index</i></p>
24297    ///
24298    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickTriangleEvent::QPickTriangleEvent(const QPointF& position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, unsigned int triangleIndex, unsigned int vertex1Index, unsigned int vertex2Index, unsigned int vertex3Index)```</span>.
24299    ///
24300    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#QPickTriangleEvent-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html">QPickTriangleEvent::QPickTriangleEvent</a> Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a> with the given parameters <i>position</i>, <i>worldIntersection</i>, <i>localIntersection</i>, <i>distance</i>, <i>triangleIndex</i>, <i>vertex1Index</i>, <i>vertex2Index</i> and <i>vertex3Index</i></p></div>
24301    #[inline(always)]
24302    pub unsafe fn new_8a(
24303        position: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPointF>>,
24304        world_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
24305        local_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
24306        distance: ::std::os::raw::c_float,
24307        triangle_index: ::std::os::raw::c_uint,
24308        vertex1_index: ::std::os::raw::c_uint,
24309        vertex2_index: ::std::os::raw::c_uint,
24310        vertex3_index: ::std::os::raw::c_uint,
24311    ) -> ::qt_core::QBox<crate::QPickTriangleEvent> {
24312        let ffi_result = {
24313            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_QPickTriangleEvent1(
24314                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPointF>>::cast_into(position)
24315                    .as_raw_ptr(),
24316                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
24317                    world_intersection,
24318                )
24319                .as_raw_ptr(),
24320                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
24321                    local_intersection,
24322                )
24323                .as_raw_ptr(),
24324                distance,
24325                triangle_index,
24326                vertex1_index,
24327                vertex2_index,
24328                vertex3_index,
24329            )
24330        };
24331        ::qt_core::QBox::from_raw(ffi_result)
24332    }
24333
24334    /// <p>Default constructs an instance of QPickTriangleEvent.</p>
24335    ///
24336    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickTriangleEvent::QPickTriangleEvent(const QPointF& position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, unsigned int triangleIndex, unsigned int vertex1Index, unsigned int vertex2Index, unsigned int vertex3Index, Qt3DRender::QPickEvent::Buttons button, int buttons, int modifiers, const QVector3D& uvw)```</span>.
24337    ///
24338    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#QPickTriangleEvent-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QPickTriangleEvent.</p></div>
24339    #[inline(always)]
24340    pub unsafe fn new_12a(
24341        position: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPointF>>,
24342        world_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
24343        local_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
24344        distance: ::std::os::raw::c_float,
24345        triangle_index: ::std::os::raw::c_uint,
24346        vertex1_index: ::std::os::raw::c_uint,
24347        vertex2_index: ::std::os::raw::c_uint,
24348        vertex3_index: ::std::os::raw::c_uint,
24349        button: crate::q_pick_event::Buttons,
24350        buttons: ::std::os::raw::c_int,
24351        modifiers: ::std::os::raw::c_int,
24352        uvw: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
24353    ) -> ::qt_core::QBox<crate::QPickTriangleEvent> {
24354        let ffi_result = {
24355            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_QPickTriangleEvent2(
24356                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPointF>>::cast_into(position)
24357                    .as_raw_ptr(),
24358                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
24359                    world_intersection,
24360                )
24361                .as_raw_ptr(),
24362                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
24363                    local_intersection,
24364                )
24365                .as_raw_ptr(),
24366                distance,
24367                triangle_index,
24368                vertex1_index,
24369                vertex2_index,
24370                vertex3_index,
24371                button,
24372                buttons,
24373                modifiers,
24374                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(uvw)
24375                    .as_raw_ptr(),
24376            )
24377        };
24378        ::qt_core::QBox::from_raw(ffi_result)
24379    }
24380
24381    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QPickTriangleEvent::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
24382    #[inline(always)]
24383    pub unsafe fn qt_metacall(
24384        &self,
24385        arg1: ::qt_core::q_meta_object::Call,
24386        arg2: ::std::os::raw::c_int,
24387        arg3: *mut *mut ::std::ffi::c_void,
24388    ) -> ::std::os::raw::c_int {
24389        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_qt_metacall(
24390            self as *const crate::QPickTriangleEvent as *mut crate::QPickTriangleEvent,
24391            arg1,
24392            arg2,
24393            arg3,
24394        )
24395    }
24396
24397    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QPickTriangleEvent::qt_metacast(const char* arg1)```</span>.
24398    #[inline(always)]
24399    pub unsafe fn qt_metacast(
24400        &self,
24401        arg1: *const ::std::os::raw::c_char,
24402    ) -> *mut ::std::ffi::c_void {
24403        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_qt_metacast(
24404            self as *const crate::QPickTriangleEvent as *mut crate::QPickTriangleEvent,
24405            arg1,
24406        )
24407    }
24408
24409    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
24410    #[inline(always)]
24411    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
24412        let ffi_result =
24413            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_staticMetaObject() };
24414        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
24415            .expect("attempted to construct a null Ref")
24416    }
24417
24418    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickTriangleEvent::tr(const char* s, const char* c, int n)```</span>.
24419    #[inline(always)]
24420    pub unsafe fn tr(
24421        s: *const ::std::os::raw::c_char,
24422        c: *const ::std::os::raw::c_char,
24423        n: ::std::os::raw::c_int,
24424    ) -> ::cpp_core::CppBox<::qt_core::QString> {
24425        let ffi_result =
24426            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_tr(s, c, n) };
24427        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
24428    }
24429
24430    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickTriangleEvent::trUtf8(const char* s, const char* c, int n)```</span>.
24431    #[inline(always)]
24432    pub unsafe fn tr_utf8(
24433        s: *const ::std::os::raw::c_char,
24434        c: *const ::std::os::raw::c_char,
24435        n: ::std::os::raw::c_int,
24436    ) -> ::cpp_core::CppBox<::qt_core::QString> {
24437        let ffi_result =
24438            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_trUtf8(s, c, n) };
24439        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
24440    }
24441
24442    /// <p>Specifies the triangle index of the event</p>
24443    ///
24444    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QPickTriangleEvent::triangleIndex() const```</span>.
24445    ///
24446    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#triangleIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the triangle index of the event</p>
24447    /// <p><b>Access functions:</b></p>
24448    /// <div class="table"><table class="alignedsummary">
24449    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#triangleIndex">triangleIndex</a></b></span>() const</td></tr>
24450    /// </tbody></table></div></div>
24451    #[inline(always)]
24452    pub unsafe fn triangle_index(&self) -> ::std::os::raw::c_uint {
24453        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_triangleIndex(
24454            self as *const crate::QPickTriangleEvent,
24455        )
24456    }
24457
24458    /// <p><b>Access functions:</b></p>
24459    ///
24460    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QPickTriangleEvent::uvw() const```</span>.
24461    ///
24462    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#uvw-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
24463    /// <div class="table"><table class="alignedsummary">
24464    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#uvw">uvw</a></b></span>() const</td></tr>
24465    /// </tbody></table></div></div>
24466    #[inline(always)]
24467    pub unsafe fn uvw(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
24468        let ffi_result = {
24469            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_uvw(
24470                self as *const crate::QPickTriangleEvent,
24471            )
24472        };
24473        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
24474    }
24475
24476    /// <p>Specifies the index of the first vertex in the triangle</p>
24477    ///
24478    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QPickTriangleEvent::vertex1Index() const```</span>.
24479    ///
24480    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#vertex1Index-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the first vertex in the triangle</p>
24481    /// <p><b>Access functions:</b></p>
24482    /// <div class="table"><table class="alignedsummary">
24483    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#vertex1Index">vertex1Index</a></b></span>() const</td></tr>
24484    /// </tbody></table></div></div>
24485    #[inline(always)]
24486    pub unsafe fn vertex1_index(&self) -> ::std::os::raw::c_uint {
24487        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_vertex1Index(
24488            self as *const crate::QPickTriangleEvent,
24489        )
24490    }
24491
24492    /// <p>Specifies the index of the second vertex in the triangle</p>
24493    ///
24494    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QPickTriangleEvent::vertex2Index() const```</span>.
24495    ///
24496    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#vertex2Index-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the second vertex in the triangle</p>
24497    /// <p><b>Access functions:</b></p>
24498    /// <div class="table"><table class="alignedsummary">
24499    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#vertex2Index">vertex2Index</a></b></span>() const</td></tr>
24500    /// </tbody></table></div></div>
24501    #[inline(always)]
24502    pub unsafe fn vertex2_index(&self) -> ::std::os::raw::c_uint {
24503        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_vertex2Index(
24504            self as *const crate::QPickTriangleEvent,
24505        )
24506    }
24507
24508    /// <p>Specifies the index of the third vertex in the triangle</p>
24509    ///
24510    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QPickTriangleEvent::vertex3Index() const```</span>.
24511    ///
24512    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#vertex3Index-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the third vertex in the triangle</p>
24513    /// <p><b>Access functions:</b></p>
24514    /// <div class="table"><table class="alignedsummary">
24515    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpicktriangleevent.html#vertex3Index">vertex3Index</a></b></span>() const</td></tr>
24516    /// </tbody></table></div></div>
24517    #[inline(always)]
24518    pub unsafe fn vertex3_index(&self) -> ::std::os::raw::c_uint {
24519        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_vertex3Index(
24520            self as *const crate::QPickTriangleEvent,
24521        )
24522    }
24523}
24524
24525/// <p>Encapsulate a Point Light object in a Qt 3D scene.</p>
24526///
24527/// C++ class: <span style='color: green;'>```Qt3DRender::QPointLight```</span>.
24528///
24529/// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulate a Point Light object in a Qt 3D scene.</p></div>
24530#[repr(C)]
24531pub struct QPointLight {
24532    _unused: u8,
24533}
24534impl QPointLight {
24535    /// <p>Specifies the constant attenuation of the point light</p>
24536    ///
24537    /// Returns a built-in Qt slot `Qt3DRender::QPointLight::setConstantAttenuation` that can be passed to `qt_core::Signal::connect`.
24538    ///
24539    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#constantAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the constant attenuation of the point light</p>
24540    /// <p><b>Access functions:</b></p>
24541    /// <div class="table"><table class="alignedsummary">
24542    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuation</b></span>() const</td></tr>
24543    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setConstantAttenuation</b></span>(float <i>value</i>)</td></tr>
24544    /// </tbody></table></div>
24545    /// <p><b>Notifier signal:</b></p>
24546    /// <div class="table"><table class="alignedsummary">
24547    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuationChanged</b></span>(float <i>constantAttenuation</i>)</td></tr>
24548    /// </tbody></table></div></div>
24549    #[inline(always)]
24550    pub fn slot_set_constant_attenuation(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
24551        unsafe {
24552            ::qt_core::Receiver::new(
24553                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
24554                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
24555                    b"1setConstantAttenuation(float)\0",
24556                ),
24557            )
24558        }
24559    }
24560
24561    /// <p>Specifies the linear attenuation of the point light</p>
24562    ///
24563    /// Returns a built-in Qt slot `Qt3DRender::QPointLight::setLinearAttenuation` that can be passed to `qt_core::Signal::connect`.
24564    ///
24565    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#linearAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the linear attenuation of the point light</p>
24566    /// <p><b>Access functions:</b></p>
24567    /// <div class="table"><table class="alignedsummary">
24568    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuation</b></span>() const</td></tr>
24569    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLinearAttenuation</b></span>(float <i>value</i>)</td></tr>
24570    /// </tbody></table></div>
24571    /// <p><b>Notifier signal:</b></p>
24572    /// <div class="table"><table class="alignedsummary">
24573    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuationChanged</b></span>(float <i>linearAttenuation</i>)</td></tr>
24574    /// </tbody></table></div></div>
24575    #[inline(always)]
24576    pub fn slot_set_linear_attenuation(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
24577        unsafe {
24578            ::qt_core::Receiver::new(
24579                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
24580                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLinearAttenuation(float)\0"),
24581            )
24582        }
24583    }
24584
24585    /// <p>Specifies the quadratic attenuation of the point light</p>
24586    ///
24587    /// Returns a built-in Qt slot `Qt3DRender::QPointLight::setQuadraticAttenuation` that can be passed to `qt_core::Signal::connect`.
24588    ///
24589    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#quadraticAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the quadratic attenuation of the point light</p>
24590    /// <p><b>Access functions:</b></p>
24591    /// <div class="table"><table class="alignedsummary">
24592    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuation</b></span>() const</td></tr>
24593    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setQuadraticAttenuation</b></span>(float <i>value</i>)</td></tr>
24594    /// </tbody></table></div>
24595    /// <p><b>Notifier signal:</b></p>
24596    /// <div class="table"><table class="alignedsummary">
24597    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuationChanged</b></span>(float <i>quadraticAttenuation</i>)</td></tr>
24598    /// </tbody></table></div></div>
24599    #[inline(always)]
24600    pub fn slot_set_quadratic_attenuation(
24601        &self,
24602    ) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
24603        unsafe {
24604            ::qt_core::Receiver::new(
24605                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
24606                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
24607                    b"1setQuadraticAttenuation(float)\0",
24608                ),
24609            )
24610        }
24611    }
24612
24613    /// <p>Specifies the constant attenuation of the point light</p>
24614    ///
24615    /// Returns a built-in Qt signal `Qt3DRender::QPointLight::constantAttenuationChanged` that can be passed to `qt_core::Signal::connect`.
24616    ///
24617    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#constantAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the constant attenuation of the point light</p>
24618    /// <p><b>Access functions:</b></p>
24619    /// <div class="table"><table class="alignedsummary">
24620    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuation</b></span>() const</td></tr>
24621    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setConstantAttenuation</b></span>(float <i>value</i>)</td></tr>
24622    /// </tbody></table></div>
24623    /// <p><b>Notifier signal:</b></p>
24624    /// <div class="table"><table class="alignedsummary">
24625    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuationChanged</b></span>(float <i>constantAttenuation</i>)</td></tr>
24626    /// </tbody></table></div></div>
24627    #[inline(always)]
24628    pub fn constant_attenuation_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
24629        unsafe {
24630            ::qt_core::Signal::new(
24631                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
24632                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
24633                    b"2constantAttenuationChanged(float)\0",
24634                ),
24635            )
24636        }
24637    }
24638
24639    /// <p>Specifies the linear attenuation of the point light</p>
24640    ///
24641    /// Returns a built-in Qt signal `Qt3DRender::QPointLight::linearAttenuationChanged` that can be passed to `qt_core::Signal::connect`.
24642    ///
24643    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#linearAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the linear attenuation of the point light</p>
24644    /// <p><b>Access functions:</b></p>
24645    /// <div class="table"><table class="alignedsummary">
24646    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuation</b></span>() const</td></tr>
24647    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLinearAttenuation</b></span>(float <i>value</i>)</td></tr>
24648    /// </tbody></table></div>
24649    /// <p><b>Notifier signal:</b></p>
24650    /// <div class="table"><table class="alignedsummary">
24651    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuationChanged</b></span>(float <i>linearAttenuation</i>)</td></tr>
24652    /// </tbody></table></div></div>
24653    #[inline(always)]
24654    pub fn linear_attenuation_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
24655        unsafe {
24656            ::qt_core::Signal::new(
24657                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
24658                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
24659                    b"2linearAttenuationChanged(float)\0",
24660                ),
24661            )
24662        }
24663    }
24664
24665    /// <p>Specifies the quadratic attenuation of the point light</p>
24666    ///
24667    /// Returns a built-in Qt signal `Qt3DRender::QPointLight::quadraticAttenuationChanged` that can be passed to `qt_core::Signal::connect`.
24668    ///
24669    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#quadraticAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the quadratic attenuation of the point light</p>
24670    /// <p><b>Access functions:</b></p>
24671    /// <div class="table"><table class="alignedsummary">
24672    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuation</b></span>() const</td></tr>
24673    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setQuadraticAttenuation</b></span>(float <i>value</i>)</td></tr>
24674    /// </tbody></table></div>
24675    /// <p><b>Notifier signal:</b></p>
24676    /// <div class="table"><table class="alignedsummary">
24677    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuationChanged</b></span>(float <i>quadraticAttenuation</i>)</td></tr>
24678    /// </tbody></table></div></div>
24679    #[inline(always)]
24680    pub fn quadratic_attenuation_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
24681        unsafe {
24682            ::qt_core::Signal::new(
24683                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
24684                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
24685                    b"2quadraticAttenuationChanged(float)\0",
24686                ),
24687            )
24688        }
24689    }
24690
24691    /// <p>Specifies the constant attenuation of the point light</p>
24692    ///
24693    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QPointLight::constantAttenuation() const```</span>.
24694    ///
24695    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#constantAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the constant attenuation of the point light</p>
24696    /// <p><b>Access functions:</b></p>
24697    /// <div class="table"><table class="alignedsummary">
24698    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuation</b></span>() const</td></tr>
24699    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setConstantAttenuation</b></span>(float <i>value</i>)</td></tr>
24700    /// </tbody></table></div>
24701    /// <p><b>Notifier signal:</b></p>
24702    /// <div class="table"><table class="alignedsummary">
24703    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuationChanged</b></span>(float <i>constantAttenuation</i>)</td></tr>
24704    /// </tbody></table></div></div>
24705    #[inline(always)]
24706    pub unsafe fn constant_attenuation(&self) -> ::std::os::raw::c_float {
24707        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_constantAttenuation(
24708            self as *const crate::QPointLight,
24709        )
24710    }
24711
24712    /// <p>Specifies the linear attenuation of the point light</p>
24713    ///
24714    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QPointLight::linearAttenuation() const```</span>.
24715    ///
24716    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#linearAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the linear attenuation of the point light</p>
24717    /// <p><b>Access functions:</b></p>
24718    /// <div class="table"><table class="alignedsummary">
24719    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuation</b></span>() const</td></tr>
24720    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLinearAttenuation</b></span>(float <i>value</i>)</td></tr>
24721    /// </tbody></table></div>
24722    /// <p><b>Notifier signal:</b></p>
24723    /// <div class="table"><table class="alignedsummary">
24724    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuationChanged</b></span>(float <i>linearAttenuation</i>)</td></tr>
24725    /// </tbody></table></div></div>
24726    #[inline(always)]
24727    pub unsafe fn linear_attenuation(&self) -> ::std::os::raw::c_float {
24728        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_linearAttenuation(
24729            self as *const crate::QPointLight,
24730        )
24731    }
24732
24733    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QPointLight::metaObject() const```</span>.
24734    #[inline(always)]
24735    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
24736        let ffi_result = {
24737            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_metaObject(
24738                self as *const crate::QPointLight,
24739            )
24740        };
24741        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
24742    }
24743
24744    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html">QPointLight</a> with the specified <i>parent</i>.</p>
24745    ///
24746    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPointLight::QPointLight(Qt3DCore::QNode* parent = …)```</span>.
24747    ///
24748    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#QPointLight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html">QPointLight</a> with the specified <i>parent</i>.</p></div>
24749    #[inline(always)]
24750    pub unsafe fn new_1a(
24751        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
24752    ) -> ::qt_core::QBox<crate::QPointLight> {
24753        let ffi_result = {
24754            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_QPointLight(
24755                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
24756                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
24757            )
24758        };
24759        ::qt_core::QBox::from_raw(ffi_result)
24760    }
24761
24762    /// <p>Encapsulate a Point Light object in a Qt 3D scene.</p>
24763    ///
24764    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPointLight::QPointLight()```</span>.
24765    ///
24766    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulate a Point Light object in a Qt 3D scene.</p></div>
24767    #[inline(always)]
24768    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QPointLight> {
24769        let ffi_result =
24770            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_QPointLight1() };
24771        ::qt_core::QBox::from_raw(ffi_result)
24772    }
24773
24774    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QPointLight::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
24775    #[inline(always)]
24776    pub unsafe fn qt_metacall(
24777        &self,
24778        arg1: ::qt_core::q_meta_object::Call,
24779        arg2: ::std::os::raw::c_int,
24780        arg3: *mut *mut ::std::ffi::c_void,
24781    ) -> ::std::os::raw::c_int {
24782        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_qt_metacall(
24783            self as *const crate::QPointLight as *mut crate::QPointLight,
24784            arg1,
24785            arg2,
24786            arg3,
24787        )
24788    }
24789
24790    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QPointLight::qt_metacast(const char* arg1)```</span>.
24791    #[inline(always)]
24792    pub unsafe fn qt_metacast(
24793        &self,
24794        arg1: *const ::std::os::raw::c_char,
24795    ) -> *mut ::std::ffi::c_void {
24796        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_qt_metacast(
24797            self as *const crate::QPointLight as *mut crate::QPointLight,
24798            arg1,
24799        )
24800    }
24801
24802    /// <p>Specifies the quadratic attenuation of the point light</p>
24803    ///
24804    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QPointLight::quadraticAttenuation() const```</span>.
24805    ///
24806    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#quadraticAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the quadratic attenuation of the point light</p>
24807    /// <p><b>Access functions:</b></p>
24808    /// <div class="table"><table class="alignedsummary">
24809    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuation</b></span>() const</td></tr>
24810    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setQuadraticAttenuation</b></span>(float <i>value</i>)</td></tr>
24811    /// </tbody></table></div>
24812    /// <p><b>Notifier signal:</b></p>
24813    /// <div class="table"><table class="alignedsummary">
24814    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuationChanged</b></span>(float <i>quadraticAttenuation</i>)</td></tr>
24815    /// </tbody></table></div></div>
24816    #[inline(always)]
24817    pub unsafe fn quadratic_attenuation(&self) -> ::std::os::raw::c_float {
24818        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_quadraticAttenuation(
24819            self as *const crate::QPointLight,
24820        )
24821    }
24822
24823    /// <p>Specifies the constant attenuation of the point light</p>
24824    ///
24825    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPointLight::setConstantAttenuation(float value)```</span>.
24826    ///
24827    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#constantAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the constant attenuation of the point light</p>
24828    /// <p><b>Access functions:</b></p>
24829    /// <div class="table"><table class="alignedsummary">
24830    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuation</b></span>() const</td></tr>
24831    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setConstantAttenuation</b></span>(float <i>value</i>)</td></tr>
24832    /// </tbody></table></div>
24833    /// <p><b>Notifier signal:</b></p>
24834    /// <div class="table"><table class="alignedsummary">
24835    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuationChanged</b></span>(float <i>constantAttenuation</i>)</td></tr>
24836    /// </tbody></table></div></div>
24837    #[inline(always)]
24838    pub unsafe fn set_constant_attenuation(&self, value: ::std::os::raw::c_float) {
24839        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_setConstantAttenuation(
24840            self as *const crate::QPointLight as *mut crate::QPointLight,
24841            value,
24842        )
24843    }
24844
24845    /// <p>Specifies the linear attenuation of the point light</p>
24846    ///
24847    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPointLight::setLinearAttenuation(float value)```</span>.
24848    ///
24849    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#linearAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the linear attenuation of the point light</p>
24850    /// <p><b>Access functions:</b></p>
24851    /// <div class="table"><table class="alignedsummary">
24852    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuation</b></span>() const</td></tr>
24853    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLinearAttenuation</b></span>(float <i>value</i>)</td></tr>
24854    /// </tbody></table></div>
24855    /// <p><b>Notifier signal:</b></p>
24856    /// <div class="table"><table class="alignedsummary">
24857    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuationChanged</b></span>(float <i>linearAttenuation</i>)</td></tr>
24858    /// </tbody></table></div></div>
24859    #[inline(always)]
24860    pub unsafe fn set_linear_attenuation(&self, value: ::std::os::raw::c_float) {
24861        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_setLinearAttenuation(
24862            self as *const crate::QPointLight as *mut crate::QPointLight,
24863            value,
24864        )
24865    }
24866
24867    /// <p>Specifies the quadratic attenuation of the point light</p>
24868    ///
24869    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPointLight::setQuadraticAttenuation(float value)```</span>.
24870    ///
24871    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointlight.html#quadraticAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the quadratic attenuation of the point light</p>
24872    /// <p><b>Access functions:</b></p>
24873    /// <div class="table"><table class="alignedsummary">
24874    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuation</b></span>() const</td></tr>
24875    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setQuadraticAttenuation</b></span>(float <i>value</i>)</td></tr>
24876    /// </tbody></table></div>
24877    /// <p><b>Notifier signal:</b></p>
24878    /// <div class="table"><table class="alignedsummary">
24879    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuationChanged</b></span>(float <i>quadraticAttenuation</i>)</td></tr>
24880    /// </tbody></table></div></div>
24881    #[inline(always)]
24882    pub unsafe fn set_quadratic_attenuation(&self, value: ::std::os::raw::c_float) {
24883        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_setQuadraticAttenuation(
24884            self as *const crate::QPointLight as *mut crate::QPointLight,
24885            value,
24886        )
24887    }
24888
24889    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
24890    #[inline(always)]
24891    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
24892        let ffi_result =
24893            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_staticMetaObject() };
24894        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
24895            .expect("attempted to construct a null Ref")
24896    }
24897
24898    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPointLight::tr(const char* s, const char* c, int n)```</span>.
24899    #[inline(always)]
24900    pub unsafe fn tr(
24901        s: *const ::std::os::raw::c_char,
24902        c: *const ::std::os::raw::c_char,
24903        n: ::std::os::raw::c_int,
24904    ) -> ::cpp_core::CppBox<::qt_core::QString> {
24905        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_tr(s, c, n) };
24906        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
24907    }
24908
24909    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPointLight::trUtf8(const char* s, const char* c, int n)```</span>.
24910    #[inline(always)]
24911    pub unsafe fn tr_utf8(
24912        s: *const ::std::os::raw::c_char,
24913        c: *const ::std::os::raw::c_char,
24914        n: ::std::os::raw::c_int,
24915    ) -> ::cpp_core::CppBox<::qt_core::QString> {
24916        let ffi_result =
24917            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_trUtf8(s, c, n) };
24918        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
24919    }
24920}
24921
24922pub mod q_point_size {
24923    //! C++ type: <span style='color: green;'>```Qt3DRender::QPointSize```</span>
24924
24925    /// C++ enum: <span style='color: green;'>```Qt3DRender::QPointSize::SizeMode```</span>.
24926    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
24927    #[repr(transparent)]
24928    pub struct SizeMode(::std::os::raw::c_int);
24929
24930    impl From<::std::os::raw::c_int> for SizeMode {
24931        fn from(value: ::std::os::raw::c_int) -> Self {
24932            SizeMode(value)
24933        }
24934    }
24935
24936    impl From<SizeMode> for ::std::os::raw::c_int {
24937        fn from(value: SizeMode) -> Self {
24938            value.0
24939        }
24940    }
24941
24942    impl SizeMode {
24943        pub fn to_int(&self) -> ::std::os::raw::c_int {
24944            self.0
24945        }
24946    }
24947
24948    impl SizeMode {
24949        /// C++ enum variant: <span style='color: green;'>```Fixed = 0```</span>
24950        #[allow(non_upper_case_globals)]
24951        pub const Fixed: crate::q_point_size::SizeMode = crate::q_point_size::SizeMode(0);
24952        /// C++ enum variant: <span style='color: green;'>```Programmable = 1```</span>
24953        #[allow(non_upper_case_globals)]
24954        pub const Programmable: crate::q_point_size::SizeMode = crate::q_point_size::SizeMode(1);
24955    }
24956}
24957/// <p>Specifies the size of rasterized points. May either be set statically or by shader programs.</p>
24958///
24959/// C++ class: <span style='color: green;'>```Qt3DRender::QPointSize```</span>.
24960///
24961/// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the size of rasterized points. May either be set statically or by shader programs.</p>
24962/// <p>When the <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#sizeMode-prop">sizeMode</a> property is set to SizeMode::Fixed, the value is set using glPointSize(), if available. When using SizeMode::Programmable, gl_PointSize must be set within shader programs, the value provided to this <a href="http://doc.qt.io/qt-5/qml-renderstate.html">RenderState</a> is ignored in that case.</p></div>
24963#[repr(C)]
24964pub struct QPointSize {
24965    _unused: u8,
24966}
24967impl QPointSize {
24968    /// <p>Specifies the sizeMode to be used.</p>
24969    ///
24970    /// Returns a built-in Qt slot `Qt3DRender::QPointSize::setSizeMode` that can be passed to `qt_core::Signal::connect`.
24971    ///
24972    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#sizeMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sizeMode to be used.</p>
24973    /// <p><b>Access functions:</b></p>
24974    /// <div class="table"><table class="alignedsummary">
24975    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> SizeMode </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeMode</b></span>() const</td></tr>
24976    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSizeMode</b></span>(SizeMode <i>sizeMode</i>)</td></tr>
24977    /// </tbody></table></div>
24978    /// <p><b>Notifier signal:</b></p>
24979    /// <div class="table"><table class="alignedsummary">
24980    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeModeChanged</b></span>(SizeMode <i>sizeMode</i>)</td></tr>
24981    /// </tbody></table></div></div>
24982    #[inline(always)]
24983    pub fn slot_set_size_mode(&self) -> ::qt_core::Receiver<(crate::q_point_size::SizeMode,)> {
24984        unsafe {
24985            ::qt_core::Receiver::new(
24986                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
24987                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
24988                    b"1setSizeMode(Qt3DRender::QPointSize::SizeMode)\0",
24989                ),
24990            )
24991        }
24992    }
24993
24994    /// <p>Specifies the point size value to be used.</p>
24995    ///
24996    /// Returns a built-in Qt slot `Qt3DRender::QPointSize::setValue` that can be passed to `qt_core::Signal::connect`.
24997    ///
24998    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the point size value to be used.</p>
24999    /// <p><b>Access functions:</b></p>
25000    /// <div class="table"><table class="alignedsummary">
25001    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
25002    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(float <i>value</i>)</td></tr>
25003    /// </tbody></table></div>
25004    /// <p><b>Notifier signal:</b></p>
25005    /// <div class="table"><table class="alignedsummary">
25006    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(float <i>value</i>)</td></tr>
25007    /// </tbody></table></div></div>
25008    #[inline(always)]
25009    pub fn slot_set_value(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
25010        unsafe {
25011            ::qt_core::Receiver::new(
25012                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
25013                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setValue(float)\0"),
25014            )
25015        }
25016    }
25017
25018    /// <p>Specifies the sizeMode to be used.</p>
25019    ///
25020    /// Returns a built-in Qt signal `Qt3DRender::QPointSize::sizeModeChanged` that can be passed to `qt_core::Signal::connect`.
25021    ///
25022    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#sizeMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sizeMode to be used.</p>
25023    /// <p><b>Access functions:</b></p>
25024    /// <div class="table"><table class="alignedsummary">
25025    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> SizeMode </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeMode</b></span>() const</td></tr>
25026    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSizeMode</b></span>(SizeMode <i>sizeMode</i>)</td></tr>
25027    /// </tbody></table></div>
25028    /// <p><b>Notifier signal:</b></p>
25029    /// <div class="table"><table class="alignedsummary">
25030    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeModeChanged</b></span>(SizeMode <i>sizeMode</i>)</td></tr>
25031    /// </tbody></table></div></div>
25032    #[inline(always)]
25033    pub fn size_mode_changed(&self) -> ::qt_core::Signal<(crate::q_point_size::SizeMode,)> {
25034        unsafe {
25035            ::qt_core::Signal::new(
25036                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
25037                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
25038                    b"2sizeModeChanged(Qt3DRender::QPointSize::SizeMode)\0",
25039                ),
25040            )
25041        }
25042    }
25043
25044    /// <p>Specifies the point size value to be used.</p>
25045    ///
25046    /// Returns a built-in Qt signal `Qt3DRender::QPointSize::valueChanged` that can be passed to `qt_core::Signal::connect`.
25047    ///
25048    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the point size value to be used.</p>
25049    /// <p><b>Access functions:</b></p>
25050    /// <div class="table"><table class="alignedsummary">
25051    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
25052    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(float <i>value</i>)</td></tr>
25053    /// </tbody></table></div>
25054    /// <p><b>Notifier signal:</b></p>
25055    /// <div class="table"><table class="alignedsummary">
25056    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(float <i>value</i>)</td></tr>
25057    /// </tbody></table></div></div>
25058    #[inline(always)]
25059    pub fn value_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
25060        unsafe {
25061            ::qt_core::Signal::new(
25062                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
25063                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2valueChanged(float)\0"),
25064            )
25065        }
25066    }
25067
25068    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QPointSize::metaObject() const```</span>.
25069    #[inline(always)]
25070    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
25071        let ffi_result = {
25072            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_metaObject(
25073                self as *const crate::QPointSize,
25074            )
25075        };
25076        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
25077    }
25078
25079    /// <p>Default constructs an instance of QPointSize.</p>
25080    ///
25081    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPointSize::QPointSize(Qt3DCore::QNode* parent = …)```</span>.
25082    ///
25083    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#QPointSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QPointSize.</p></div>
25084    #[inline(always)]
25085    pub unsafe fn new_1a(
25086        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
25087    ) -> ::qt_core::QBox<crate::QPointSize> {
25088        let ffi_result = {
25089            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_QPointSize(
25090                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
25091                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
25092            )
25093        };
25094        ::qt_core::QBox::from_raw(ffi_result)
25095    }
25096
25097    /// <p>Specifies the size of rasterized points. May either be set statically or by shader programs.</p>
25098    ///
25099    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPointSize::QPointSize()```</span>.
25100    ///
25101    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the size of rasterized points. May either be set statically or by shader programs.</p>
25102    /// <p>When the <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#sizeMode-prop">sizeMode</a> property is set to SizeMode::Fixed, the value is set using glPointSize(), if available. When using SizeMode::Programmable, gl_PointSize must be set within shader programs, the value provided to this <a href="http://doc.qt.io/qt-5/qml-renderstate.html">RenderState</a> is ignored in that case.</p></div>
25103    #[inline(always)]
25104    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QPointSize> {
25105        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_QPointSize1() };
25106        ::qt_core::QBox::from_raw(ffi_result)
25107    }
25108
25109    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QPointSize::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
25110    #[inline(always)]
25111    pub unsafe fn qt_metacall(
25112        &self,
25113        arg1: ::qt_core::q_meta_object::Call,
25114        arg2: ::std::os::raw::c_int,
25115        arg3: *mut *mut ::std::ffi::c_void,
25116    ) -> ::std::os::raw::c_int {
25117        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_qt_metacall(
25118            self as *const crate::QPointSize as *mut crate::QPointSize,
25119            arg1,
25120            arg2,
25121            arg3,
25122        )
25123    }
25124
25125    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QPointSize::qt_metacast(const char* arg1)```</span>.
25126    #[inline(always)]
25127    pub unsafe fn qt_metacast(
25128        &self,
25129        arg1: *const ::std::os::raw::c_char,
25130    ) -> *mut ::std::ffi::c_void {
25131        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_qt_metacast(
25132            self as *const crate::QPointSize as *mut crate::QPointSize,
25133            arg1,
25134        )
25135    }
25136
25137    /// <p>Specifies the sizeMode to be used.</p>
25138    ///
25139    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPointSize::setSizeMode(Qt3DRender::QPointSize::SizeMode sizeMode)```</span>.
25140    ///
25141    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#sizeMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sizeMode to be used.</p>
25142    /// <p><b>Access functions:</b></p>
25143    /// <div class="table"><table class="alignedsummary">
25144    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> SizeMode </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeMode</b></span>() const</td></tr>
25145    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSizeMode</b></span>(SizeMode <i>sizeMode</i>)</td></tr>
25146    /// </tbody></table></div>
25147    /// <p><b>Notifier signal:</b></p>
25148    /// <div class="table"><table class="alignedsummary">
25149    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeModeChanged</b></span>(SizeMode <i>sizeMode</i>)</td></tr>
25150    /// </tbody></table></div></div>
25151    #[inline(always)]
25152    pub unsafe fn set_size_mode(&self, size_mode: crate::q_point_size::SizeMode) {
25153        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_setSizeMode(
25154            self as *const crate::QPointSize as *mut crate::QPointSize,
25155            size_mode,
25156        )
25157    }
25158
25159    /// <p>Specifies the point size value to be used.</p>
25160    ///
25161    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPointSize::setValue(float value)```</span>.
25162    ///
25163    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the point size value to be used.</p>
25164    /// <p><b>Access functions:</b></p>
25165    /// <div class="table"><table class="alignedsummary">
25166    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
25167    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(float <i>value</i>)</td></tr>
25168    /// </tbody></table></div>
25169    /// <p><b>Notifier signal:</b></p>
25170    /// <div class="table"><table class="alignedsummary">
25171    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(float <i>value</i>)</td></tr>
25172    /// </tbody></table></div></div>
25173    #[inline(always)]
25174    pub unsafe fn set_value(&self, value: ::std::os::raw::c_float) {
25175        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_setValue(
25176            self as *const crate::QPointSize as *mut crate::QPointSize,
25177            value,
25178        )
25179    }
25180
25181    /// <p>Specifies the sizeMode to be used.</p>
25182    ///
25183    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointSize::SizeMode Qt3DRender::QPointSize::sizeMode() const```</span>.
25184    ///
25185    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#sizeMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sizeMode to be used.</p>
25186    /// <p><b>Access functions:</b></p>
25187    /// <div class="table"><table class="alignedsummary">
25188    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> SizeMode </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeMode</b></span>() const</td></tr>
25189    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSizeMode</b></span>(SizeMode <i>sizeMode</i>)</td></tr>
25190    /// </tbody></table></div>
25191    /// <p><b>Notifier signal:</b></p>
25192    /// <div class="table"><table class="alignedsummary">
25193    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeModeChanged</b></span>(SizeMode <i>sizeMode</i>)</td></tr>
25194    /// </tbody></table></div></div>
25195    #[inline(always)]
25196    pub unsafe fn size_mode(&self) -> crate::q_point_size::SizeMode {
25197        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_sizeMode(
25198            self as *const crate::QPointSize,
25199        )
25200    }
25201
25202    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
25203    #[inline(always)]
25204    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
25205        let ffi_result =
25206            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_staticMetaObject() };
25207        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
25208            .expect("attempted to construct a null Ref")
25209    }
25210
25211    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPointSize::tr(const char* s, const char* c, int n)```</span>.
25212    #[inline(always)]
25213    pub unsafe fn tr(
25214        s: *const ::std::os::raw::c_char,
25215        c: *const ::std::os::raw::c_char,
25216        n: ::std::os::raw::c_int,
25217    ) -> ::cpp_core::CppBox<::qt_core::QString> {
25218        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_tr(s, c, n) };
25219        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
25220    }
25221
25222    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPointSize::trUtf8(const char* s, const char* c, int n)```</span>.
25223    #[inline(always)]
25224    pub unsafe fn tr_utf8(
25225        s: *const ::std::os::raw::c_char,
25226        c: *const ::std::os::raw::c_char,
25227        n: ::std::os::raw::c_int,
25228    ) -> ::cpp_core::CppBox<::qt_core::QString> {
25229        let ffi_result =
25230            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_trUtf8(s, c, n) };
25231        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
25232    }
25233
25234    /// <p>Specifies the point size value to be used.</p>
25235    ///
25236    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QPointSize::value() const```</span>.
25237    ///
25238    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpointsize.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the point size value to be used.</p>
25239    /// <p><b>Access functions:</b></p>
25240    /// <div class="table"><table class="alignedsummary">
25241    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
25242    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(float <i>value</i>)</td></tr>
25243    /// </tbody></table></div>
25244    /// <p><b>Notifier signal:</b></p>
25245    /// <div class="table"><table class="alignedsummary">
25246    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(float <i>value</i>)</td></tr>
25247    /// </tbody></table></div></div>
25248    #[inline(always)]
25249    pub unsafe fn value(&self) -> ::std::os::raw::c_float {
25250        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_value(
25251            self as *const crate::QPointSize,
25252        )
25253    }
25254}
25255
25256/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html">QPolygonOffset</a> class sets the scale and steps to calculate depth values for polygon offsets.</p>
25257///
25258/// C++ class: <span style='color: green;'>```Qt3DRender::QPolygonOffset```</span>.
25259///
25260/// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html">QPolygonOffset</a> class sets the scale and steps to calculate depth values for polygon offsets.</p>
25261/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html">QPolygonOffset</a> class adds an offset to the fragment depth value prior to depth test and depth write. The offset can be used to avoid z-fighting when rendering polygons with very close depth values such as decals.</p></div>
25262#[repr(C)]
25263pub struct QPolygonOffset {
25264    _unused: u8,
25265}
25266impl QPolygonOffset {
25267    /// <p>Holds the scale factor used to create a variable depth offset for each polygon. Default value is 0.</p>
25268    ///
25269    /// Returns a built-in Qt slot `Qt3DRender::QPolygonOffset::setScaleFactor` that can be passed to `qt_core::Signal::connect`.
25270    ///
25271    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html#scaleFactor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the scale factor used to create a variable depth offset for each polygon. Default value is 0.</p>
25272    /// <p><b>Access functions:</b></p>
25273    /// <div class="table"><table class="alignedsummary">
25274    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>scaleFactor</b></span>() const</td></tr>
25275    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setScaleFactor</b></span>(float <i>scaleFactor</i>)</td></tr>
25276    /// </tbody></table></div>
25277    /// <p><b>Notifier signal:</b></p>
25278    /// <div class="table"><table class="alignedsummary">
25279    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>scaleFactorChanged</b></span>(float <i>scaleFactor</i>)</td></tr>
25280    /// </tbody></table></div></div>
25281    #[inline(always)]
25282    pub fn slot_set_scale_factor(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
25283        unsafe {
25284            ::qt_core::Receiver::new(
25285                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
25286                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setScaleFactor(float)\0"),
25287            )
25288        }
25289    }
25290
25291    /// <p>Holds the units that create constant depth offsets. Default value is 0.</p>
25292    ///
25293    /// Returns a built-in Qt slot `Qt3DRender::QPolygonOffset::setDepthSteps` that can be passed to `qt_core::Signal::connect`.
25294    ///
25295    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html#depthSteps-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the units that create constant depth offsets. Default value is 0.</p>
25296    /// <p><b>Access functions:</b></p>
25297    /// <div class="table"><table class="alignedsummary">
25298    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>depthSteps</b></span>() const</td></tr>
25299    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthSteps</b></span>(float <i>depthSteps</i>)</td></tr>
25300    /// </tbody></table></div>
25301    /// <p><b>Notifier signal:</b></p>
25302    /// <div class="table"><table class="alignedsummary">
25303    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthStepsChanged</b></span>(float <i>depthSteps</i>)</td></tr>
25304    /// </tbody></table></div></div>
25305    #[inline(always)]
25306    pub fn slot_set_depth_steps(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
25307        unsafe {
25308            ::qt_core::Receiver::new(
25309                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
25310                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setDepthSteps(float)\0"),
25311            )
25312        }
25313    }
25314
25315    /// <p>Holds the scale factor used to create a variable depth offset for each polygon. Default value is 0.</p>
25316    ///
25317    /// Returns a built-in Qt signal `Qt3DRender::QPolygonOffset::scaleFactorChanged` that can be passed to `qt_core::Signal::connect`.
25318    ///
25319    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html#scaleFactor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the scale factor used to create a variable depth offset for each polygon. Default value is 0.</p>
25320    /// <p><b>Access functions:</b></p>
25321    /// <div class="table"><table class="alignedsummary">
25322    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>scaleFactor</b></span>() const</td></tr>
25323    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setScaleFactor</b></span>(float <i>scaleFactor</i>)</td></tr>
25324    /// </tbody></table></div>
25325    /// <p><b>Notifier signal:</b></p>
25326    /// <div class="table"><table class="alignedsummary">
25327    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>scaleFactorChanged</b></span>(float <i>scaleFactor</i>)</td></tr>
25328    /// </tbody></table></div></div>
25329    #[inline(always)]
25330    pub fn scale_factor_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
25331        unsafe {
25332            ::qt_core::Signal::new(
25333                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
25334                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2scaleFactorChanged(float)\0"),
25335            )
25336        }
25337    }
25338
25339    /// <p>Holds the units that create constant depth offsets. Default value is 0.</p>
25340    ///
25341    /// Returns a built-in Qt signal `Qt3DRender::QPolygonOffset::depthStepsChanged` that can be passed to `qt_core::Signal::connect`.
25342    ///
25343    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html#depthSteps-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the units that create constant depth offsets. Default value is 0.</p>
25344    /// <p><b>Access functions:</b></p>
25345    /// <div class="table"><table class="alignedsummary">
25346    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>depthSteps</b></span>() const</td></tr>
25347    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthSteps</b></span>(float <i>depthSteps</i>)</td></tr>
25348    /// </tbody></table></div>
25349    /// <p><b>Notifier signal:</b></p>
25350    /// <div class="table"><table class="alignedsummary">
25351    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthStepsChanged</b></span>(float <i>depthSteps</i>)</td></tr>
25352    /// </tbody></table></div></div>
25353    #[inline(always)]
25354    pub fn depth_steps_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
25355        unsafe {
25356            ::qt_core::Signal::new(
25357                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
25358                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2depthStepsChanged(float)\0"),
25359            )
25360        }
25361    }
25362
25363    /// <p>Holds the units that create constant depth offsets. Default value is 0.</p>
25364    ///
25365    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QPolygonOffset::depthSteps() const```</span>.
25366    ///
25367    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html#depthSteps-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the units that create constant depth offsets. Default value is 0.</p>
25368    /// <p><b>Access functions:</b></p>
25369    /// <div class="table"><table class="alignedsummary">
25370    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>depthSteps</b></span>() const</td></tr>
25371    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthSteps</b></span>(float <i>depthSteps</i>)</td></tr>
25372    /// </tbody></table></div>
25373    /// <p><b>Notifier signal:</b></p>
25374    /// <div class="table"><table class="alignedsummary">
25375    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthStepsChanged</b></span>(float <i>depthSteps</i>)</td></tr>
25376    /// </tbody></table></div></div>
25377    #[inline(always)]
25378    pub unsafe fn depth_steps(&self) -> ::std::os::raw::c_float {
25379        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_depthSteps(
25380            self as *const crate::QPolygonOffset,
25381        )
25382    }
25383
25384    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QPolygonOffset::metaObject() const```</span>.
25385    #[inline(always)]
25386    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
25387        let ffi_result = {
25388            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_metaObject(
25389                self as *const crate::QPolygonOffset,
25390            )
25391        };
25392        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
25393    }
25394
25395    /// <p>Default constructs an instance of QPolygonOffset.</p>
25396    ///
25397    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPolygonOffset::QPolygonOffset(Qt3DCore::QNode* parent = …)```</span>.
25398    ///
25399    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html#QPolygonOffset">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QPolygonOffset.</p></div>
25400    #[inline(always)]
25401    pub unsafe fn new_1a(
25402        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
25403    ) -> ::qt_core::QBox<crate::QPolygonOffset> {
25404        let ffi_result = {
25405            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_QPolygonOffset(
25406                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
25407                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
25408            )
25409        };
25410        ::qt_core::QBox::from_raw(ffi_result)
25411    }
25412
25413    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html">QPolygonOffset</a> class sets the scale and steps to calculate depth values for polygon offsets.</p>
25414    ///
25415    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPolygonOffset::QPolygonOffset()```</span>.
25416    ///
25417    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html">QPolygonOffset</a> class sets the scale and steps to calculate depth values for polygon offsets.</p>
25418    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html">QPolygonOffset</a> class adds an offset to the fragment depth value prior to depth test and depth write. The offset can be used to avoid z-fighting when rendering polygons with very close depth values such as decals.</p></div>
25419    #[inline(always)]
25420    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QPolygonOffset> {
25421        let ffi_result =
25422            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_QPolygonOffset1() };
25423        ::qt_core::QBox::from_raw(ffi_result)
25424    }
25425
25426    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QPolygonOffset::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
25427    #[inline(always)]
25428    pub unsafe fn qt_metacall(
25429        &self,
25430        arg1: ::qt_core::q_meta_object::Call,
25431        arg2: ::std::os::raw::c_int,
25432        arg3: *mut *mut ::std::ffi::c_void,
25433    ) -> ::std::os::raw::c_int {
25434        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_qt_metacall(
25435            self as *const crate::QPolygonOffset as *mut crate::QPolygonOffset,
25436            arg1,
25437            arg2,
25438            arg3,
25439        )
25440    }
25441
25442    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QPolygonOffset::qt_metacast(const char* arg1)```</span>.
25443    #[inline(always)]
25444    pub unsafe fn qt_metacast(
25445        &self,
25446        arg1: *const ::std::os::raw::c_char,
25447    ) -> *mut ::std::ffi::c_void {
25448        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_qt_metacast(
25449            self as *const crate::QPolygonOffset as *mut crate::QPolygonOffset,
25450            arg1,
25451        )
25452    }
25453
25454    /// <p>Holds the scale factor used to create a variable depth offset for each polygon. Default value is 0.</p>
25455    ///
25456    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QPolygonOffset::scaleFactor() const```</span>.
25457    ///
25458    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html#scaleFactor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the scale factor used to create a variable depth offset for each polygon. Default value is 0.</p>
25459    /// <p><b>Access functions:</b></p>
25460    /// <div class="table"><table class="alignedsummary">
25461    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>scaleFactor</b></span>() const</td></tr>
25462    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setScaleFactor</b></span>(float <i>scaleFactor</i>)</td></tr>
25463    /// </tbody></table></div>
25464    /// <p><b>Notifier signal:</b></p>
25465    /// <div class="table"><table class="alignedsummary">
25466    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>scaleFactorChanged</b></span>(float <i>scaleFactor</i>)</td></tr>
25467    /// </tbody></table></div></div>
25468    #[inline(always)]
25469    pub unsafe fn scale_factor(&self) -> ::std::os::raw::c_float {
25470        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_scaleFactor(
25471            self as *const crate::QPolygonOffset,
25472        )
25473    }
25474
25475    /// <p>Holds the units that create constant depth offsets. Default value is 0.</p>
25476    ///
25477    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPolygonOffset::setDepthSteps(float depthSteps)```</span>.
25478    ///
25479    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html#depthSteps-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the units that create constant depth offsets. Default value is 0.</p>
25480    /// <p><b>Access functions:</b></p>
25481    /// <div class="table"><table class="alignedsummary">
25482    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>depthSteps</b></span>() const</td></tr>
25483    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthSteps</b></span>(float <i>depthSteps</i>)</td></tr>
25484    /// </tbody></table></div>
25485    /// <p><b>Notifier signal:</b></p>
25486    /// <div class="table"><table class="alignedsummary">
25487    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthStepsChanged</b></span>(float <i>depthSteps</i>)</td></tr>
25488    /// </tbody></table></div></div>
25489    #[inline(always)]
25490    pub unsafe fn set_depth_steps(&self, depth_steps: ::std::os::raw::c_float) {
25491        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_setDepthSteps(
25492            self as *const crate::QPolygonOffset as *mut crate::QPolygonOffset,
25493            depth_steps,
25494        )
25495    }
25496
25497    /// <p>Holds the scale factor used to create a variable depth offset for each polygon. Default value is 0.</p>
25498    ///
25499    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QPolygonOffset::setScaleFactor(float scaleFactor)```</span>.
25500    ///
25501    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpolygonoffset.html#scaleFactor-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the scale factor used to create a variable depth offset for each polygon. Default value is 0.</p>
25502    /// <p><b>Access functions:</b></p>
25503    /// <div class="table"><table class="alignedsummary">
25504    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>scaleFactor</b></span>() const</td></tr>
25505    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setScaleFactor</b></span>(float <i>scaleFactor</i>)</td></tr>
25506    /// </tbody></table></div>
25507    /// <p><b>Notifier signal:</b></p>
25508    /// <div class="table"><table class="alignedsummary">
25509    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>scaleFactorChanged</b></span>(float <i>scaleFactor</i>)</td></tr>
25510    /// </tbody></table></div></div>
25511    #[inline(always)]
25512    pub unsafe fn set_scale_factor(&self, scale_factor: ::std::os::raw::c_float) {
25513        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_setScaleFactor(
25514            self as *const crate::QPolygonOffset as *mut crate::QPolygonOffset,
25515            scale_factor,
25516        )
25517    }
25518
25519    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
25520    #[inline(always)]
25521    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
25522        let ffi_result =
25523            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_staticMetaObject() };
25524        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
25525            .expect("attempted to construct a null Ref")
25526    }
25527
25528    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPolygonOffset::tr(const char* s, const char* c, int n)```</span>.
25529    #[inline(always)]
25530    pub unsafe fn tr(
25531        s: *const ::std::os::raw::c_char,
25532        c: *const ::std::os::raw::c_char,
25533        n: ::std::os::raw::c_int,
25534    ) -> ::cpp_core::CppBox<::qt_core::QString> {
25535        let ffi_result =
25536            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_tr(s, c, n) };
25537        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
25538    }
25539
25540    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPolygonOffset::trUtf8(const char* s, const char* c, int n)```</span>.
25541    #[inline(always)]
25542    pub unsafe fn tr_utf8(
25543        s: *const ::std::os::raw::c_char,
25544        c: *const ::std::os::raw::c_char,
25545        n: ::std::os::raw::c_int,
25546    ) -> ::cpp_core::CppBox<::qt_core::QString> {
25547        let ffi_result =
25548            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_trUtf8(s, c, n) };
25549        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
25550    }
25551}
25552
25553pub mod q_render_aspect {
25554    //! C++ type: <span style='color: green;'>```Qt3DRender::QRenderAspect```</span>
25555
25556    /// C++ enum: <span style='color: green;'>```Qt3DRender::QRenderAspect::RenderType```</span>.
25557    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
25558    #[repr(transparent)]
25559    pub struct RenderType(::std::os::raw::c_int);
25560
25561    impl From<::std::os::raw::c_int> for RenderType {
25562        fn from(value: ::std::os::raw::c_int) -> Self {
25563            RenderType(value)
25564        }
25565    }
25566
25567    impl From<RenderType> for ::std::os::raw::c_int {
25568        fn from(value: RenderType) -> Self {
25569            value.0
25570        }
25571    }
25572
25573    impl RenderType {
25574        pub fn to_int(&self) -> ::std::os::raw::c_int {
25575            self.0
25576        }
25577    }
25578
25579    impl RenderType {
25580        /// C++ enum variant: <span style='color: green;'>```Synchronous = 0```</span>
25581        #[allow(non_upper_case_globals)]
25582        pub const Synchronous: crate::q_render_aspect::RenderType =
25583            crate::q_render_aspect::RenderType(0);
25584        /// C++ enum variant: <span style='color: green;'>```Threaded = 1```</span>
25585        #[allow(non_upper_case_globals)]
25586        pub const Threaded: crate::q_render_aspect::RenderType =
25587            crate::q_render_aspect::RenderType(1);
25588    }
25589}
25590/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect</a> class</p>
25591///
25592/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderAspect```</span>.
25593///
25594/// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect</a> class</p></div>
25595#[repr(C)]
25596pub struct QRenderAspect {
25597    _unused: u8,
25598}
25599impl QRenderAspect {
25600    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderAspect::metaObject() const```</span>.
25601    #[inline(always)]
25602    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
25603        let ffi_result = {
25604            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_metaObject(
25605                self as *const crate::QRenderAspect,
25606            )
25607        };
25608        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
25609    }
25610
25611    /// <p>The constructor creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect::QRenderAspect</a> instance with the specified <i>parent</i>. <i>parent</i></p>
25612    ///
25613    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderAspect::QRenderAspect(QObject* parent = …)```</span>.
25614    ///
25615    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html#QRenderAspect">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The constructor creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect::QRenderAspect</a> instance with the specified <i>parent</i>. <i>parent</i></p></div>
25616    #[inline(always)]
25617    pub unsafe fn from_q_object(
25618        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
25619    ) -> ::qt_core::QBox<crate::QRenderAspect> {
25620        let ffi_result = {
25621            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_QRenderAspect(
25622                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
25623                    .as_raw_ptr() as *mut ::qt_core::QObject,
25624            )
25625        };
25626        ::qt_core::QBox::from_raw(ffi_result)
25627    }
25628
25629    /// <p>The constructor creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect::QRenderAspect</a> instance with the specified <i>type</i> and <i>parent</i>. <i>type</i> <i>parent</i></p>
25630    ///
25631    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderAspect::QRenderAspect(Qt3DRender::QRenderAspect::RenderType type, QObject* parent = …)```</span>.
25632    ///
25633    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html#QRenderAspect-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The constructor creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect::QRenderAspect</a> instance with the specified <i>type</i> and <i>parent</i>. <i>type</i> <i>parent</i></p></div>
25634    #[inline(always)]
25635    pub unsafe fn from_render_type_q_object(
25636        type_: crate::q_render_aspect::RenderType,
25637        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
25638    ) -> ::qt_core::QBox<crate::QRenderAspect> {
25639        let ffi_result = {
25640            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_QRenderAspect1(
25641                type_,
25642                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
25643                    .as_raw_ptr() as *mut ::qt_core::QObject,
25644            )
25645        };
25646        ::qt_core::QBox::from_raw(ffi_result)
25647    }
25648
25649    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect</a> class</p>
25650    ///
25651    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderAspect::QRenderAspect()```</span>.
25652    ///
25653    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect</a> class</p></div>
25654    #[inline(always)]
25655    pub unsafe fn new() -> ::qt_core::QBox<crate::QRenderAspect> {
25656        let ffi_result =
25657            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_QRenderAspect2() };
25658        ::qt_core::QBox::from_raw(ffi_result)
25659    }
25660
25661    /// <p>The constructor creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect::QRenderAspect</a> instance with the specified <i>type</i> and <i>parent</i>. <i>type</i> <i>parent</i></p>
25662    ///
25663    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderAspect::QRenderAspect(Qt3DRender::QRenderAspect::RenderType type)```</span>.
25664    ///
25665    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html#QRenderAspect-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The constructor creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderaspect.html">QRenderAspect::QRenderAspect</a> instance with the specified <i>type</i> and <i>parent</i>. <i>type</i> <i>parent</i></p></div>
25666    #[inline(always)]
25667    pub unsafe fn from_render_type(
25668        type_: crate::q_render_aspect::RenderType,
25669    ) -> ::qt_core::QBox<crate::QRenderAspect> {
25670        let ffi_result =
25671            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_QRenderAspect4(type_) };
25672        ::qt_core::QBox::from_raw(ffi_result)
25673    }
25674
25675    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderAspect::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
25676    #[inline(always)]
25677    pub unsafe fn qt_metacall(
25678        &self,
25679        arg1: ::qt_core::q_meta_object::Call,
25680        arg2: ::std::os::raw::c_int,
25681        arg3: *mut *mut ::std::ffi::c_void,
25682    ) -> ::std::os::raw::c_int {
25683        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_qt_metacall(
25684            self as *const crate::QRenderAspect as *mut crate::QRenderAspect,
25685            arg1,
25686            arg2,
25687            arg3,
25688        )
25689    }
25690
25691    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderAspect::qt_metacast(const char* arg1)```</span>.
25692    #[inline(always)]
25693    pub unsafe fn qt_metacast(
25694        &self,
25695        arg1: *const ::std::os::raw::c_char,
25696    ) -> *mut ::std::ffi::c_void {
25697        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_qt_metacast(
25698            self as *const crate::QRenderAspect as *mut crate::QRenderAspect,
25699            arg1,
25700        )
25701    }
25702
25703    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
25704    #[inline(always)]
25705    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
25706        let ffi_result =
25707            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_staticMetaObject() };
25708        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
25709            .expect("attempted to construct a null Ref")
25710    }
25711
25712    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderAspect::tr(const char* s, const char* c, int n)```</span>.
25713    #[inline(always)]
25714    pub unsafe fn tr(
25715        s: *const ::std::os::raw::c_char,
25716        c: *const ::std::os::raw::c_char,
25717        n: ::std::os::raw::c_int,
25718    ) -> ::cpp_core::CppBox<::qt_core::QString> {
25719        let ffi_result =
25720            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_tr(s, c, n) };
25721        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
25722    }
25723
25724    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderAspect::trUtf8(const char* s, const char* c, int n)```</span>.
25725    #[inline(always)]
25726    pub unsafe fn tr_utf8(
25727        s: *const ::std::os::raw::c_char,
25728        c: *const ::std::os::raw::c_char,
25729        n: ::std::os::raw::c_int,
25730    ) -> ::cpp_core::CppBox<::qt_core::QString> {
25731        let ffi_result =
25732            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_trUtf8(s, c, n) };
25733        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
25734    }
25735}
25736
25737/// <p>Receives the result of render capture request.</p>
25738///
25739/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderCaptureReply```</span>.
25740///
25741/// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Receives the result of render capture request.</p>
25742/// <p>An object, which receives the image from <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html#requestCapture">QRenderCapture::requestCapture</a>.</p></div>
25743#[repr(C)]
25744pub struct QRenderCaptureReply {
25745    _unused: u8,
25746}
25747impl QRenderCaptureReply {
25748    /// Returns a built-in Qt signal `Qt3DRender::QRenderCaptureReply::completeChanged` that can be passed to `qt_core::Signal::connect`.
25749    #[inline(always)]
25750    pub fn complete_changed(&self) -> ::qt_core::Signal<(bool,)> {
25751        unsafe {
25752            ::qt_core::Signal::new(
25753                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
25754                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2completeChanged(bool)\0"),
25755            )
25756        }
25757    }
25758
25759    /// <p>Holds the complete state of the render capture.</p>
25760    ///
25761    /// Returns a built-in Qt signal `Qt3DRender::QRenderCaptureReply::completed` that can be passed to `qt_core::Signal::connect`.
25762    ///
25763    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html#complete-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the complete state of the render capture.</p>
25764    /// <p><b>Access functions:</b></p>
25765    /// <div class="table"><table class="alignedsummary">
25766    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isComplete</b></span>() const</td></tr>
25767    /// </tbody></table></div>
25768    /// <p><b>Notifier signal:</b></p>
25769    /// <div class="table"><table class="alignedsummary">
25770    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>completed</b></span>()</td></tr>
25771    /// </tbody></table></div></div>
25772    #[inline(always)]
25773    pub fn completed(&self) -> ::qt_core::Signal<()> {
25774        unsafe {
25775            ::qt_core::Signal::new(
25776                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
25777                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2completed()\0"),
25778            )
25779        }
25780    }
25781
25782    /// <p>Holds the captureId, which was passed to the renderCapture.</p>
25783    ///
25784    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QRenderCaptureReply::captureId() const```</span>.
25785    ///
25786    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html#captureId-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the captureId, which was passed to the renderCapture.</p>
25787    /// <p><b>Access functions:</b></p>
25788    /// <div class="table"><table class="alignedsummary">
25789    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>captureId</b></span>() const</td></tr>
25790    /// </tbody></table></div></div>
25791    #[inline(always)]
25792    pub unsafe fn capture_id(&self) -> ::std::os::raw::c_int {
25793        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_captureId(
25794            self as *const crate::QRenderCaptureReply,
25795        )
25796    }
25797
25798    /// <p>Holds the image, which was produced as a result of render capture.</p>
25799    ///
25800    /// Calls C++ function: <span style='color: green;'>```QImage Qt3DRender::QRenderCaptureReply::image() const```</span>.
25801    ///
25802    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html#image-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the image, which was produced as a result of render capture.</p>
25803    /// <p><b>Access functions:</b></p>
25804    /// <div class="table"><table class="alignedsummary">
25805    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QImage </td><td class="memItemRight bottomAlign"><span class="name"><b>image</b></span>() const</td></tr>
25806    /// </tbody></table></div></div>
25807    #[inline(always)]
25808    pub unsafe fn image(&self) -> ::cpp_core::CppBox<::qt_gui::QImage> {
25809        let ffi_result = {
25810            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_image(
25811                self as *const crate::QRenderCaptureReply,
25812            )
25813        };
25814        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
25815    }
25816
25817    /// <p>Holds the complete state of the render capture.</p>
25818    ///
25819    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QRenderCaptureReply::isComplete() const```</span>.
25820    ///
25821    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html#complete-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the complete state of the render capture.</p>
25822    /// <p><b>Access functions:</b></p>
25823    /// <div class="table"><table class="alignedsummary">
25824    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isComplete</b></span>() const</td></tr>
25825    /// </tbody></table></div>
25826    /// <p><b>Notifier signal:</b></p>
25827    /// <div class="table"><table class="alignedsummary">
25828    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>completed</b></span>()</td></tr>
25829    /// </tbody></table></div></div>
25830    #[inline(always)]
25831    pub unsafe fn is_complete(&self) -> bool {
25832        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_isComplete(
25833            self as *const crate::QRenderCaptureReply,
25834        )
25835    }
25836
25837    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderCaptureReply::metaObject() const```</span>.
25838    #[inline(always)]
25839    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
25840        let ffi_result = {
25841            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_metaObject(
25842                self as *const crate::QRenderCaptureReply,
25843            )
25844        };
25845        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
25846    }
25847
25848    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderCaptureReply::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
25849    #[inline(always)]
25850    pub unsafe fn qt_metacall(
25851        &self,
25852        arg1: ::qt_core::q_meta_object::Call,
25853        arg2: ::std::os::raw::c_int,
25854        arg3: *mut *mut ::std::ffi::c_void,
25855    ) -> ::std::os::raw::c_int {
25856        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_qt_metacall(
25857            self as *const crate::QRenderCaptureReply as *mut crate::QRenderCaptureReply,
25858            arg1,
25859            arg2,
25860            arg3,
25861        )
25862    }
25863
25864    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderCaptureReply::qt_metacast(const char* arg1)```</span>.
25865    #[inline(always)]
25866    pub unsafe fn qt_metacast(
25867        &self,
25868        arg1: *const ::std::os::raw::c_char,
25869    ) -> *mut ::std::ffi::c_void {
25870        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_qt_metacast(
25871            self as *const crate::QRenderCaptureReply as *mut crate::QRenderCaptureReply,
25872            arg1,
25873        )
25874    }
25875
25876    /// <p>Saves the render capture result as an image to <i>fileName</i>.</p>
25877    ///
25878    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QRenderCaptureReply::saveImage(const QString& fileName) const```</span>.
25879    ///
25880    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html#saveImage">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Saves the render capture result as an image to <i>fileName</i>.</p>
25881    /// <p>Returns true if the image was successfully saved; otherwise returns false.</p>
25882    /// <p>This function was introduced in  Qt 5.9.</p></div>
25883    #[inline(always)]
25884    pub unsafe fn save_image(
25885        &self,
25886        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
25887    ) -> bool {
25888        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_saveImage(
25889            self as *const crate::QRenderCaptureReply,
25890            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
25891                .as_raw_ptr(),
25892        )
25893    }
25894
25895    /// <p>Saves the render capture result as an image to <i>fileName</i>.</p>
25896    ///
25897    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderCaptureReply::saveToFile(const QString& fileName) const```</span>.
25898    ///
25899    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply-obsolete.html#saveToFile">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Saves the render capture result as an image to <i>fileName</i>.</p>
25900    /// <p>Deprecated in 5.9. Use <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html#saveImage">saveImage</a>().</p>
25901    /// <p><b>Note: </b>This function can be invoked via the meta-object system and from QML. See <a href="http://doc.qt.io/qt-5/qobject.html#Q_INVOKABLE">Q_INVOKABLE</a>.</p></div>
25902    #[inline(always)]
25903    pub unsafe fn save_to_file(
25904        &self,
25905        file_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
25906    ) {
25907        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_saveToFile(
25908            self as *const crate::QRenderCaptureReply,
25909            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(file_name)
25910                .as_raw_ptr(),
25911        )
25912    }
25913
25914    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
25915    #[inline(always)]
25916    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
25917        let ffi_result = {
25918            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_staticMetaObject()
25919        };
25920        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
25921            .expect("attempted to construct a null Ref")
25922    }
25923
25924    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderCaptureReply::tr(const char* s, const char* c, int n)```</span>.
25925    #[inline(always)]
25926    pub unsafe fn tr(
25927        s: *const ::std::os::raw::c_char,
25928        c: *const ::std::os::raw::c_char,
25929        n: ::std::os::raw::c_int,
25930    ) -> ::cpp_core::CppBox<::qt_core::QString> {
25931        let ffi_result =
25932            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_tr(s, c, n) };
25933        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
25934    }
25935
25936    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderCaptureReply::trUtf8(const char* s, const char* c, int n)```</span>.
25937    #[inline(always)]
25938    pub unsafe fn tr_utf8(
25939        s: *const ::std::os::raw::c_char,
25940        c: *const ::std::os::raw::c_char,
25941        n: ::std::os::raw::c_int,
25942    ) -> ::cpp_core::CppBox<::qt_core::QString> {
25943        let ffi_result =
25944            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_trUtf8(s, c, n) };
25945        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
25946    }
25947}
25948
25949/// <p>Frame graph node for render capture</p>
25950///
25951/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderCapture```</span>.
25952///
25953/// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Frame graph node for render capture</p>
25954/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html">QRenderCapture</a> is used to capture rendering into an image at any render stage. Capturing must be initiated by the user and one image is returned per capture request. User can issue multiple render capture requests simultaniously, but only one request is served per <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html">QRenderCapture</a> instance per frame.</p></div>
25955#[repr(C)]
25956pub struct QRenderCapture {
25957    _unused: u8,
25958}
25959impl QRenderCapture {
25960    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderCapture::metaObject() const```</span>.
25961    #[inline(always)]
25962    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
25963        let ffi_result = {
25964            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_metaObject(
25965                self as *const crate::QRenderCapture,
25966            )
25967        };
25968        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
25969    }
25970
25971    /// <p>The constructor creates an instance with the specified <i>parent</i>.</p>
25972    ///
25973    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderCapture::QRenderCapture(Qt3DCore::QNode* parent = …)```</span>.
25974    ///
25975    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html#QRenderCapture">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The constructor creates an instance with the specified <i>parent</i>.</p></div>
25976    #[inline(always)]
25977    pub unsafe fn new_1a(
25978        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
25979    ) -> ::qt_core::QBox<crate::QRenderCapture> {
25980        let ffi_result = {
25981            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_QRenderCapture(
25982                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
25983                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
25984            )
25985        };
25986        ::qt_core::QBox::from_raw(ffi_result)
25987    }
25988
25989    /// <p>Frame graph node for render capture</p>
25990    ///
25991    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderCapture::QRenderCapture()```</span>.
25992    ///
25993    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Frame graph node for render capture</p>
25994    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html">QRenderCapture</a> is used to capture rendering into an image at any render stage. Capturing must be initiated by the user and one image is returned per capture request. User can issue multiple render capture requests simultaniously, but only one request is served per <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html">QRenderCapture</a> instance per frame.</p></div>
25995    #[inline(always)]
25996    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRenderCapture> {
25997        let ffi_result =
25998            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_QRenderCapture1() };
25999        ::qt_core::QBox::from_raw(ffi_result)
26000    }
26001
26002    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderCapture::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
26003    #[inline(always)]
26004    pub unsafe fn qt_metacall(
26005        &self,
26006        arg1: ::qt_core::q_meta_object::Call,
26007        arg2: ::std::os::raw::c_int,
26008        arg3: *mut *mut ::std::ffi::c_void,
26009    ) -> ::std::os::raw::c_int {
26010        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_qt_metacall(
26011            self as *const crate::QRenderCapture as *mut crate::QRenderCapture,
26012            arg1,
26013            arg2,
26014            arg3,
26015        )
26016    }
26017
26018    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderCapture::qt_metacast(const char* arg1)```</span>.
26019    #[inline(always)]
26020    pub unsafe fn qt_metacast(
26021        &self,
26022        arg1: *const ::std::os::raw::c_char,
26023    ) -> *mut ::std::ffi::c_void {
26024        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_qt_metacast(
26025            self as *const crate::QRenderCapture as *mut crate::QRenderCapture,
26026            arg1,
26027        )
26028    }
26029
26030    /// <p>Used to request render capture. Only one render capture result is produced per requestCapture call even if the frame graph has multiple leaf nodes. The function returns a <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html">QRenderCaptureReply</a> object, which receives the captured image when it is done. The user is responsible for deallocating the returned object.</p>
26031    ///
26032    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCaptureReply* Qt3DRender::QRenderCapture::requestCapture(int captureId)```</span>.
26033    ///
26034    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html#requestCapture">C++ documentation</a> for <span style='color: green;'>```Qt3DRender::QRenderCaptureReply *QRenderCapture::requestCapture()```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Used to request render capture. Only one render capture result is produced per requestCapture call even if the frame graph has multiple leaf nodes. The function returns a <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html">QRenderCaptureReply</a> object, which receives the captured image when it is done. The user is responsible for deallocating the returned object.</p></div>
26035    #[inline(always)]
26036    pub unsafe fn request_capture_int(
26037        &self,
26038        capture_id: ::std::os::raw::c_int,
26039    ) -> ::qt_core::QPtr<crate::QRenderCaptureReply> {
26040        let ffi_result = {
26041            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_requestCapture(
26042                self as *const crate::QRenderCapture as *mut crate::QRenderCapture,
26043                capture_id,
26044            )
26045        };
26046        ::qt_core::QPtr::from_raw(ffi_result)
26047    }
26048
26049    /// <p>Used to request render capture. Only one render capture result is produced per requestCapture call even if the frame graph has multiple leaf nodes. The function returns a <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html">QRenderCaptureReply</a> object, which receives the captured image when it is done. The user is responsible for deallocating the returned object.</p>
26050    ///
26051    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCaptureReply* Qt3DRender::QRenderCapture::requestCapture()```</span>.
26052    ///
26053    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html#requestCapture">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Used to request render capture. Only one render capture result is produced per requestCapture call even if the frame graph has multiple leaf nodes. The function returns a <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html">QRenderCaptureReply</a> object, which receives the captured image when it is done. The user is responsible for deallocating the returned object.</p></div>
26054    #[inline(always)]
26055    pub unsafe fn request_capture(&self) -> ::qt_core::QPtr<crate::QRenderCaptureReply> {
26056        let ffi_result = {
26057            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_requestCapture1(
26058                self as *const crate::QRenderCapture as *mut crate::QRenderCapture,
26059            )
26060        };
26061        ::qt_core::QPtr::from_raw(ffi_result)
26062    }
26063
26064    /// <p>Used to request render capture. User can specify a <i>captureId</i> to identify the request. The requestId does not have to be unique. Only one render capture result is produced per <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html#requestCapture">requestCapture</a> call even if the frame graph has multiple leaf nodes. The function returns a <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html">QRenderCaptureReply</a> object, which receives the captured image when it is done. The user is responsible for deallocating the returned object.</p>
26065    ///
26066    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCaptureReply* Qt3DRender::QRenderCapture::requestCapture(const QRect& rect)```</span>.
26067    ///
26068    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture-obsolete.html#requestCapture-1">C++ documentation</a> for <span style='color: green;'>```Qt3DRender::QRenderCaptureReply *QRenderCapture::requestCapture(int captureId)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Used to request render capture. User can specify a <i>captureId</i> to identify the request. The requestId does not have to be unique. Only one render capture result is produced per <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html#requestCapture">requestCapture</a> call even if the frame graph has multiple leaf nodes. The function returns a <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html">QRenderCaptureReply</a> object, which receives the captured image when it is done. The user is responsible for deallocating the returned object.</p>
26069    /// <p><b>Note: </b>This function can be invoked via the meta-object system and from QML. See <a href="http://doc.qt.io/qt-5/qobject.html#Q_INVOKABLE">Q_INVOKABLE</a>.</p></div>
26070    #[inline(always)]
26071    #[cfg_attr(
26072        feature = "ritual_rustdoc_nightly",
26073        doc(cfg(any(
26074            cpp_lib_version = "5.11.3",
26075            cpp_lib_version = "5.12.2",
26076            cpp_lib_version = "5.13.0",
26077            cpp_lib_version = "5.14.0"
26078        )))
26079    )]
26080    #[cfg(any(
26081        any(
26082            cpp_lib_version = "5.11.3",
26083            cpp_lib_version = "5.12.2",
26084            cpp_lib_version = "5.13.0",
26085            cpp_lib_version = "5.14.0"
26086        ),
26087        feature = "ritual_rustdoc"
26088    ))]
26089    pub unsafe fn request_capture_q_rect(
26090        &self,
26091        rect: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QRect>>,
26092    ) -> ::qt_core::QPtr<crate::QRenderCaptureReply> {
26093        let ffi_result = {
26094            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_requestCapture4(
26095                self as *const crate::QRenderCapture as *mut crate::QRenderCapture,
26096                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QRect>>::cast_into(rect)
26097                    .as_raw_ptr(),
26098            )
26099        };
26100        ::qt_core::QPtr::from_raw(ffi_result)
26101    }
26102
26103    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
26104    #[inline(always)]
26105    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
26106        let ffi_result =
26107            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_staticMetaObject() };
26108        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
26109            .expect("attempted to construct a null Ref")
26110    }
26111
26112    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderCapture::tr(const char* s, const char* c, int n)```</span>.
26113    #[inline(always)]
26114    pub unsafe fn tr(
26115        s: *const ::std::os::raw::c_char,
26116        c: *const ::std::os::raw::c_char,
26117        n: ::std::os::raw::c_int,
26118    ) -> ::cpp_core::CppBox<::qt_core::QString> {
26119        let ffi_result =
26120            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_tr(s, c, n) };
26121        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
26122    }
26123
26124    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderCapture::trUtf8(const char* s, const char* c, int n)```</span>.
26125    #[inline(always)]
26126    pub unsafe fn tr_utf8(
26127        s: *const ::std::os::raw::c_char,
26128        c: *const ::std::os::raw::c_char,
26129        n: ::std::os::raw::c_int,
26130    ) -> ::cpp_core::CppBox<::qt_core::QString> {
26131        let ffi_result =
26132            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_trUtf8(s, c, n) };
26133        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
26134    }
26135}
26136
26137pub mod q_shader_program {
26138    //! C++ type: <span style='color: green;'>```Qt3DRender::QShaderProgram```</span>
26139
26140    /// C++ enum: <span style='color: green;'>```Qt3DRender::QShaderProgram::ShaderType```</span>.
26141    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
26142    #[repr(transparent)]
26143    pub struct ShaderType(::std::os::raw::c_int);
26144
26145    impl From<::std::os::raw::c_int> for ShaderType {
26146        fn from(value: ::std::os::raw::c_int) -> Self {
26147            ShaderType(value)
26148        }
26149    }
26150
26151    impl From<ShaderType> for ::std::os::raw::c_int {
26152        fn from(value: ShaderType) -> Self {
26153            value.0
26154        }
26155    }
26156
26157    impl ShaderType {
26158        pub fn to_int(&self) -> ::std::os::raw::c_int {
26159            self.0
26160        }
26161    }
26162
26163    impl ShaderType {
26164        /// C++ enum variant: <span style='color: green;'>```Vertex = 0```</span>
26165        #[allow(non_upper_case_globals)]
26166        pub const Vertex: crate::q_shader_program::ShaderType =
26167            crate::q_shader_program::ShaderType(0);
26168        /// C++ enum variant: <span style='color: green;'>```Fragment = 1```</span>
26169        #[allow(non_upper_case_globals)]
26170        pub const Fragment: crate::q_shader_program::ShaderType =
26171            crate::q_shader_program::ShaderType(1);
26172        /// C++ enum variant: <span style='color: green;'>```TessellationControl = 2```</span>
26173        #[allow(non_upper_case_globals)]
26174        pub const TessellationControl: crate::q_shader_program::ShaderType =
26175            crate::q_shader_program::ShaderType(2);
26176        /// C++ enum variant: <span style='color: green;'>```TessellationEvaluation = 3```</span>
26177        #[allow(non_upper_case_globals)]
26178        pub const TessellationEvaluation: crate::q_shader_program::ShaderType =
26179            crate::q_shader_program::ShaderType(3);
26180        /// C++ enum variant: <span style='color: green;'>```Geometry = 4```</span>
26181        #[allow(non_upper_case_globals)]
26182        pub const Geometry: crate::q_shader_program::ShaderType =
26183            crate::q_shader_program::ShaderType(4);
26184        /// C++ enum variant: <span style='color: green;'>```Compute = 5```</span>
26185        #[allow(non_upper_case_globals)]
26186        pub const Compute: crate::q_shader_program::ShaderType =
26187            crate::q_shader_program::ShaderType(5);
26188    }
26189
26190    /// C++ enum: <span style='color: green;'>```Qt3DRender::QShaderProgram::Status```</span>.
26191    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
26192    #[repr(transparent)]
26193    pub struct Status(::std::os::raw::c_int);
26194
26195    impl From<::std::os::raw::c_int> for Status {
26196        fn from(value: ::std::os::raw::c_int) -> Self {
26197            Status(value)
26198        }
26199    }
26200
26201    impl From<Status> for ::std::os::raw::c_int {
26202        fn from(value: Status) -> Self {
26203            value.0
26204        }
26205    }
26206
26207    impl Status {
26208        pub fn to_int(&self) -> ::std::os::raw::c_int {
26209            self.0
26210        }
26211    }
26212
26213    impl Status {
26214        /// C++ enum variant: <span style='color: green;'>```NotReady = 0```</span>
26215        #[allow(non_upper_case_globals)]
26216        pub const NotReady: crate::q_shader_program::Status = crate::q_shader_program::Status(0);
26217        /// C++ enum variant: <span style='color: green;'>```Ready = 1```</span>
26218        #[allow(non_upper_case_globals)]
26219        pub const Ready: crate::q_shader_program::Status = crate::q_shader_program::Status(1);
26220        /// C++ enum variant: <span style='color: green;'>```Error = 2```</span>
26221        #[allow(non_upper_case_globals)]
26222        pub const Error: crate::q_shader_program::Status = crate::q_shader_program::Status(2);
26223    }
26224}
26225/// <p>Encapsulates a Shader Program.</p>
26226///
26227/// C++ class: <span style='color: green;'>```Qt3DRender::QShaderProgram```</span>.
26228///
26229/// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates a Shader Program.</p>
26230/// <p>A shader program consists of several different shaders, such as vertex and fragment shaders.</p></div>
26231#[repr(C)]
26232pub struct QShaderProgram {
26233    _unused: u8,
26234}
26235impl QShaderProgram {
26236    /// <p>Holds the vertex shader code used by this shader program.</p>
26237    ///
26238    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgram::setVertexShaderCode` that can be passed to `qt_core::Signal::connect`.
26239    ///
26240    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#vertexShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the vertex shader code used by this shader program.</p>
26241    /// <p><b>Access functions:</b></p>
26242    /// <div class="table"><table class="alignedsummary">
26243    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCode</b></span>() const</td></tr>
26244    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexShaderCode</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
26245    /// </tbody></table></div>
26246    /// <p><b>Notifier signal:</b></p>
26247    /// <div class="table"><table class="alignedsummary">
26248    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCodeChanged</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
26249    /// </tbody></table></div></div>
26250    #[inline(always)]
26251    pub fn slot_set_vertex_shader_code(
26252        &self,
26253    ) -> ::qt_core::Receiver<(*const ::qt_core::QByteArray,)> {
26254        unsafe {
26255            ::qt_core::Receiver::new(
26256                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26257                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26258                    b"1setVertexShaderCode(QByteArray const &)\0",
26259                ),
26260            )
26261        }
26262    }
26263
26264    /// <p>Holds the tesselation control shader code used by this shader program.</p>
26265    ///
26266    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgram::setTessellationControlShaderCode` that can be passed to `qt_core::Signal::connect`.
26267    ///
26268    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#tessellationControlShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the tesselation control shader code used by this shader program.</p>
26269    /// <p><b>Access functions:</b></p>
26270    /// <div class="table"><table class="alignedsummary">
26271    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCode</b></span>() const</td></tr>
26272    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationControlShaderCode</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
26273    /// </tbody></table></div>
26274    /// <p><b>Notifier signal:</b></p>
26275    /// <div class="table"><table class="alignedsummary">
26276    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
26277    /// </tbody></table></div></div>
26278    #[inline(always)]
26279    pub fn slot_set_tessellation_control_shader_code(
26280        &self,
26281    ) -> ::qt_core::Receiver<(*const ::qt_core::QByteArray,)> {
26282        unsafe {
26283            ::qt_core::Receiver::new(
26284                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26285                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26286                    b"1setTessellationControlShaderCode(QByteArray const &)\0",
26287                ),
26288            )
26289        }
26290    }
26291
26292    /// <p>Holds the tesselation evaluation shader code used by this shader program.</p>
26293    ///
26294    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgram::setTessellationEvaluationShaderCode` that can be passed to `qt_core::Signal::connect`.
26295    ///
26296    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#tessellationEvaluationShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the tesselation evaluation shader code used by this shader program.</p>
26297    /// <p><b>Access functions:</b></p>
26298    /// <div class="table"><table class="alignedsummary">
26299    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCode</b></span>() const</td></tr>
26300    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationEvaluationShaderCode</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
26301    /// </tbody></table></div>
26302    /// <p><b>Notifier signal:</b></p>
26303    /// <div class="table"><table class="alignedsummary">
26304    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
26305    /// </tbody></table></div></div>
26306    #[inline(always)]
26307    pub fn slot_set_tessellation_evaluation_shader_code(
26308        &self,
26309    ) -> ::qt_core::Receiver<(*const ::qt_core::QByteArray,)> {
26310        unsafe {
26311            ::qt_core::Receiver::new(
26312                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26313                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26314                    b"1setTessellationEvaluationShaderCode(QByteArray const &)\0",
26315                ),
26316            )
26317        }
26318    }
26319
26320    /// <p>Holds the geometry shader code used by this shader program.</p>
26321    ///
26322    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgram::setGeometryShaderCode` that can be passed to `qt_core::Signal::connect`.
26323    ///
26324    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#geometryShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the geometry shader code used by this shader program.</p>
26325    /// <p><b>Access functions:</b></p>
26326    /// <div class="table"><table class="alignedsummary">
26327    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCode</b></span>() const</td></tr>
26328    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometryShaderCode</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
26329    /// </tbody></table></div>
26330    /// <p><b>Notifier signal:</b></p>
26331    /// <div class="table"><table class="alignedsummary">
26332    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCodeChanged</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
26333    /// </tbody></table></div></div>
26334    #[inline(always)]
26335    pub fn slot_set_geometry_shader_code(
26336        &self,
26337    ) -> ::qt_core::Receiver<(*const ::qt_core::QByteArray,)> {
26338        unsafe {
26339            ::qt_core::Receiver::new(
26340                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26341                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26342                    b"1setGeometryShaderCode(QByteArray const &)\0",
26343                ),
26344            )
26345        }
26346    }
26347
26348    /// <p>Holds the fragment shader code used by this shader program.</p>
26349    ///
26350    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgram::setFragmentShaderCode` that can be passed to `qt_core::Signal::connect`.
26351    ///
26352    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#fragmentShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the fragment shader code used by this shader program.</p>
26353    /// <p><b>Access functions:</b></p>
26354    /// <div class="table"><table class="alignedsummary">
26355    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCode</b></span>() const</td></tr>
26356    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFragmentShaderCode</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
26357    /// </tbody></table></div>
26358    /// <p><b>Notifier signal:</b></p>
26359    /// <div class="table"><table class="alignedsummary">
26360    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCodeChanged</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
26361    /// </tbody></table></div></div>
26362    #[inline(always)]
26363    pub fn slot_set_fragment_shader_code(
26364        &self,
26365    ) -> ::qt_core::Receiver<(*const ::qt_core::QByteArray,)> {
26366        unsafe {
26367            ::qt_core::Receiver::new(
26368                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26369                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26370                    b"1setFragmentShaderCode(QByteArray const &)\0",
26371                ),
26372            )
26373        }
26374    }
26375
26376    /// <p>Holds the compute shader code used by this shader program.</p>
26377    ///
26378    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgram::setComputeShaderCode` that can be passed to `qt_core::Signal::connect`.
26379    ///
26380    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#computeShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the compute shader code used by this shader program.</p>
26381    /// <p><b>Access functions:</b></p>
26382    /// <div class="table"><table class="alignedsummary">
26383    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCode</b></span>() const</td></tr>
26384    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComputeShaderCode</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
26385    /// </tbody></table></div>
26386    /// <p><b>Notifier signal:</b></p>
26387    /// <div class="table"><table class="alignedsummary">
26388    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCodeChanged</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
26389    /// </tbody></table></div></div>
26390    #[inline(always)]
26391    pub fn slot_set_compute_shader_code(
26392        &self,
26393    ) -> ::qt_core::Receiver<(*const ::qt_core::QByteArray,)> {
26394        unsafe {
26395            ::qt_core::Receiver::new(
26396                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26397                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26398                    b"1setComputeShaderCode(QByteArray const &)\0",
26399                ),
26400            )
26401        }
26402    }
26403
26404    /// <p>Holds the vertex shader code used by this shader program.</p>
26405    ///
26406    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgram::vertexShaderCodeChanged` that can be passed to `qt_core::Signal::connect`.
26407    ///
26408    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#vertexShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the vertex shader code used by this shader program.</p>
26409    /// <p><b>Access functions:</b></p>
26410    /// <div class="table"><table class="alignedsummary">
26411    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCode</b></span>() const</td></tr>
26412    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexShaderCode</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
26413    /// </tbody></table></div>
26414    /// <p><b>Notifier signal:</b></p>
26415    /// <div class="table"><table class="alignedsummary">
26416    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCodeChanged</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
26417    /// </tbody></table></div></div>
26418    #[inline(always)]
26419    pub fn vertex_shader_code_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QByteArray,)> {
26420        unsafe {
26421            ::qt_core::Signal::new(
26422                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26423                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26424                    b"2vertexShaderCodeChanged(QByteArray const &)\0",
26425                ),
26426            )
26427        }
26428    }
26429
26430    /// <p>Holds the tesselation control shader code used by this shader program.</p>
26431    ///
26432    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgram::tessellationControlShaderCodeChanged` that can be passed to `qt_core::Signal::connect`.
26433    ///
26434    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#tessellationControlShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the tesselation control shader code used by this shader program.</p>
26435    /// <p><b>Access functions:</b></p>
26436    /// <div class="table"><table class="alignedsummary">
26437    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCode</b></span>() const</td></tr>
26438    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationControlShaderCode</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
26439    /// </tbody></table></div>
26440    /// <p><b>Notifier signal:</b></p>
26441    /// <div class="table"><table class="alignedsummary">
26442    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
26443    /// </tbody></table></div></div>
26444    #[inline(always)]
26445    pub fn tessellation_control_shader_code_changed(
26446        &self,
26447    ) -> ::qt_core::Signal<(*const ::qt_core::QByteArray,)> {
26448        unsafe {
26449            ::qt_core::Signal::new(
26450                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26451                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26452                    b"2tessellationControlShaderCodeChanged(QByteArray const &)\0",
26453                ),
26454            )
26455        }
26456    }
26457
26458    /// <p>Holds the tesselation evaluation shader code used by this shader program.</p>
26459    ///
26460    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgram::tessellationEvaluationShaderCodeChanged` that can be passed to `qt_core::Signal::connect`.
26461    ///
26462    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#tessellationEvaluationShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the tesselation evaluation shader code used by this shader program.</p>
26463    /// <p><b>Access functions:</b></p>
26464    /// <div class="table"><table class="alignedsummary">
26465    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCode</b></span>() const</td></tr>
26466    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationEvaluationShaderCode</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
26467    /// </tbody></table></div>
26468    /// <p><b>Notifier signal:</b></p>
26469    /// <div class="table"><table class="alignedsummary">
26470    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
26471    /// </tbody></table></div></div>
26472    #[inline(always)]
26473    pub fn tessellation_evaluation_shader_code_changed(
26474        &self,
26475    ) -> ::qt_core::Signal<(*const ::qt_core::QByteArray,)> {
26476        unsafe {
26477            ::qt_core::Signal::new(
26478                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26479                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26480                    b"2tessellationEvaluationShaderCodeChanged(QByteArray const &)\0",
26481                ),
26482            )
26483        }
26484    }
26485
26486    /// <p>Holds the geometry shader code used by this shader program.</p>
26487    ///
26488    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgram::geometryShaderCodeChanged` that can be passed to `qt_core::Signal::connect`.
26489    ///
26490    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#geometryShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the geometry shader code used by this shader program.</p>
26491    /// <p><b>Access functions:</b></p>
26492    /// <div class="table"><table class="alignedsummary">
26493    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCode</b></span>() const</td></tr>
26494    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometryShaderCode</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
26495    /// </tbody></table></div>
26496    /// <p><b>Notifier signal:</b></p>
26497    /// <div class="table"><table class="alignedsummary">
26498    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCodeChanged</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
26499    /// </tbody></table></div></div>
26500    #[inline(always)]
26501    pub fn geometry_shader_code_changed(
26502        &self,
26503    ) -> ::qt_core::Signal<(*const ::qt_core::QByteArray,)> {
26504        unsafe {
26505            ::qt_core::Signal::new(
26506                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26507                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26508                    b"2geometryShaderCodeChanged(QByteArray const &)\0",
26509                ),
26510            )
26511        }
26512    }
26513
26514    /// <p>Holds the fragment shader code used by this shader program.</p>
26515    ///
26516    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgram::fragmentShaderCodeChanged` that can be passed to `qt_core::Signal::connect`.
26517    ///
26518    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#fragmentShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the fragment shader code used by this shader program.</p>
26519    /// <p><b>Access functions:</b></p>
26520    /// <div class="table"><table class="alignedsummary">
26521    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCode</b></span>() const</td></tr>
26522    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFragmentShaderCode</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
26523    /// </tbody></table></div>
26524    /// <p><b>Notifier signal:</b></p>
26525    /// <div class="table"><table class="alignedsummary">
26526    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCodeChanged</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
26527    /// </tbody></table></div></div>
26528    #[inline(always)]
26529    pub fn fragment_shader_code_changed(
26530        &self,
26531    ) -> ::qt_core::Signal<(*const ::qt_core::QByteArray,)> {
26532        unsafe {
26533            ::qt_core::Signal::new(
26534                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26535                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26536                    b"2fragmentShaderCodeChanged(QByteArray const &)\0",
26537                ),
26538            )
26539        }
26540    }
26541
26542    /// <p>Holds the compute shader code used by this shader program.</p>
26543    ///
26544    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgram::computeShaderCodeChanged` that can be passed to `qt_core::Signal::connect`.
26545    ///
26546    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#computeShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the compute shader code used by this shader program.</p>
26547    /// <p><b>Access functions:</b></p>
26548    /// <div class="table"><table class="alignedsummary">
26549    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCode</b></span>() const</td></tr>
26550    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComputeShaderCode</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
26551    /// </tbody></table></div>
26552    /// <p><b>Notifier signal:</b></p>
26553    /// <div class="table"><table class="alignedsummary">
26554    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCodeChanged</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
26555    /// </tbody></table></div></div>
26556    #[inline(always)]
26557    pub fn compute_shader_code_changed(
26558        &self,
26559    ) -> ::qt_core::Signal<(*const ::qt_core::QByteArray,)> {
26560        unsafe {
26561            ::qt_core::Signal::new(
26562                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26563                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26564                    b"2computeShaderCodeChanged(QByteArray const &)\0",
26565                ),
26566            )
26567        }
26568    }
26569
26570    /// <p>Holds the log of the current shader program. This is useful to diagnose a compilation failure of the shader program.</p>
26571    ///
26572    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgram::logChanged` that can be passed to `qt_core::Signal::connect`.
26573    ///
26574    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#log-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the log of the current shader program. This is useful to diagnose a compilation failure of the shader program.</p>
26575    /// <p><b>Access functions:</b></p>
26576    /// <div class="table"><table class="alignedsummary">
26577    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>log</b></span>() const</td></tr>
26578    /// </tbody></table></div>
26579    /// <p><b>Notifier signal:</b></p>
26580    /// <div class="table"><table class="alignedsummary">
26581    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>logChanged</b></span>(const QString &amp;<i>log</i>)</td></tr>
26582    /// </tbody></table></div></div>
26583    #[inline(always)]
26584    pub fn log_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QString,)> {
26585        unsafe {
26586            ::qt_core::Signal::new(
26587                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26588                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2logChanged(QString const &)\0"),
26589            )
26590        }
26591    }
26592
26593    /// <p>Holds the status of the current shader program.</p>
26594    ///
26595    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgram::statusChanged` that can be passed to `qt_core::Signal::connect`.
26596    ///
26597    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the status of the current shader program.</p>
26598    /// <p><b>Access functions:</b></p>
26599    /// <div class="table"><table class="alignedsummary">
26600    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Status </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#status">status</a></b></span>() const</td></tr>
26601    /// </tbody></table></div>
26602    /// <p><b>Notifier signal:</b></p>
26603    /// <div class="table"><table class="alignedsummary">
26604    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Status <i>status</i>)</td></tr>
26605    /// </tbody></table></div></div>
26606    #[inline(always)]
26607    pub fn status_changed(&self) -> ::qt_core::Signal<(crate::q_shader_program::Status,)> {
26608        unsafe {
26609            ::qt_core::Signal::new(
26610                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
26611                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
26612                    b"2statusChanged(Qt3DRender::QShaderProgram::Status)\0",
26613                ),
26614            )
26615        }
26616    }
26617
26618    /// <p>Holds the compute shader code used by this shader program.</p>
26619    ///
26620    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgram::computeShaderCode() const```</span>.
26621    ///
26622    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#computeShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the compute shader code used by this shader program.</p>
26623    /// <p><b>Access functions:</b></p>
26624    /// <div class="table"><table class="alignedsummary">
26625    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCode</b></span>() const</td></tr>
26626    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComputeShaderCode</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
26627    /// </tbody></table></div>
26628    /// <p><b>Notifier signal:</b></p>
26629    /// <div class="table"><table class="alignedsummary">
26630    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCodeChanged</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
26631    /// </tbody></table></div></div>
26632    #[inline(always)]
26633    pub unsafe fn compute_shader_code(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
26634        let ffi_result = {
26635            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_computeShaderCode(
26636                self as *const crate::QShaderProgram,
26637            )
26638        };
26639        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
26640    }
26641
26642    /// <p>Holds the fragment shader code used by this shader program.</p>
26643    ///
26644    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgram::fragmentShaderCode() const```</span>.
26645    ///
26646    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#fragmentShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the fragment shader code used by this shader program.</p>
26647    /// <p><b>Access functions:</b></p>
26648    /// <div class="table"><table class="alignedsummary">
26649    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCode</b></span>() const</td></tr>
26650    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFragmentShaderCode</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
26651    /// </tbody></table></div>
26652    /// <p><b>Notifier signal:</b></p>
26653    /// <div class="table"><table class="alignedsummary">
26654    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCodeChanged</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
26655    /// </tbody></table></div></div>
26656    #[inline(always)]
26657    pub unsafe fn fragment_shader_code(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
26658        let ffi_result = {
26659            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_fragmentShaderCode(
26660                self as *const crate::QShaderProgram,
26661            )
26662        };
26663        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
26664    }
26665
26666    /// <p>Holds the geometry shader code used by this shader program.</p>
26667    ///
26668    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgram::geometryShaderCode() const```</span>.
26669    ///
26670    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#geometryShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the geometry shader code used by this shader program.</p>
26671    /// <p><b>Access functions:</b></p>
26672    /// <div class="table"><table class="alignedsummary">
26673    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCode</b></span>() const</td></tr>
26674    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometryShaderCode</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
26675    /// </tbody></table></div>
26676    /// <p><b>Notifier signal:</b></p>
26677    /// <div class="table"><table class="alignedsummary">
26678    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCodeChanged</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
26679    /// </tbody></table></div></div>
26680    #[inline(always)]
26681    pub unsafe fn geometry_shader_code(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
26682        let ffi_result = {
26683            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_geometryShaderCode(
26684                self as *const crate::QShaderProgram,
26685            )
26686        };
26687        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
26688    }
26689
26690    /// <p>Returns the shader code loaded from <i>sourceUrl</i>.</p>
26691    ///
26692    /// Calls C++ function: <span style='color: green;'>```static QByteArray Qt3DRender::QShaderProgram::loadSource(const QUrl& sourceUrl)```</span>.
26693    ///
26694    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#loadSource">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the shader code loaded from <i>sourceUrl</i>.</p></div>
26695    #[inline(always)]
26696    pub unsafe fn load_source(
26697        source_url: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
26698    ) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
26699        let ffi_result = {
26700            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_loadSource(
26701                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(source_url)
26702                    .as_raw_ptr(),
26703            )
26704        };
26705        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
26706    }
26707
26708    /// <p>Holds the log of the current shader program. This is useful to diagnose a compilation failure of the shader program.</p>
26709    ///
26710    /// Calls C++ function: <span style='color: green;'>```QString Qt3DRender::QShaderProgram::log() const```</span>.
26711    ///
26712    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#log-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the log of the current shader program. This is useful to diagnose a compilation failure of the shader program.</p>
26713    /// <p><b>Access functions:</b></p>
26714    /// <div class="table"><table class="alignedsummary">
26715    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QString </td><td class="memItemRight bottomAlign"><span class="name"><b>log</b></span>() const</td></tr>
26716    /// </tbody></table></div>
26717    /// <p><b>Notifier signal:</b></p>
26718    /// <div class="table"><table class="alignedsummary">
26719    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>logChanged</b></span>(const QString &amp;<i>log</i>)</td></tr>
26720    /// </tbody></table></div></div>
26721    #[inline(always)]
26722    pub unsafe fn log(&self) -> ::cpp_core::CppBox<::qt_core::QString> {
26723        let ffi_result = {
26724            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_log(
26725                self as *const crate::QShaderProgram,
26726            )
26727        };
26728        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
26729    }
26730
26731    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QShaderProgram::metaObject() const```</span>.
26732    #[inline(always)]
26733    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
26734        let ffi_result = {
26735            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_metaObject(
26736                self as *const crate::QShaderProgram,
26737            )
26738        };
26739        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
26740    }
26741
26742    /// <p>Default constructs an instance of QShaderProgram.</p>
26743    ///
26744    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QShaderProgram::QShaderProgram(Qt3DCore::QNode* parent = …)```</span>.
26745    ///
26746    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#QShaderProgram">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QShaderProgram.</p></div>
26747    #[inline(always)]
26748    pub unsafe fn new_1a(
26749        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
26750    ) -> ::qt_core::QBox<crate::QShaderProgram> {
26751        let ffi_result = {
26752            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_QShaderProgram(
26753                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
26754                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
26755            )
26756        };
26757        ::qt_core::QBox::from_raw(ffi_result)
26758    }
26759
26760    /// <p>Encapsulates a Shader Program.</p>
26761    ///
26762    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QShaderProgram::QShaderProgram()```</span>.
26763    ///
26764    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates a Shader Program.</p>
26765    /// <p>A shader program consists of several different shaders, such as vertex and fragment shaders.</p></div>
26766    #[inline(always)]
26767    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QShaderProgram> {
26768        let ffi_result =
26769            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_QShaderProgram1() };
26770        ::qt_core::QBox::from_raw(ffi_result)
26771    }
26772
26773    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QShaderProgram::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
26774    #[inline(always)]
26775    pub unsafe fn qt_metacall(
26776        &self,
26777        arg1: ::qt_core::q_meta_object::Call,
26778        arg2: ::std::os::raw::c_int,
26779        arg3: *mut *mut ::std::ffi::c_void,
26780    ) -> ::std::os::raw::c_int {
26781        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_qt_metacall(
26782            self as *const crate::QShaderProgram as *mut crate::QShaderProgram,
26783            arg1,
26784            arg2,
26785            arg3,
26786        )
26787    }
26788
26789    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QShaderProgram::qt_metacast(const char* arg1)```</span>.
26790    #[inline(always)]
26791    pub unsafe fn qt_metacast(
26792        &self,
26793        arg1: *const ::std::os::raw::c_char,
26794    ) -> *mut ::std::ffi::c_void {
26795        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_qt_metacast(
26796            self as *const crate::QShaderProgram as *mut crate::QShaderProgram,
26797            arg1,
26798        )
26799    }
26800
26801    /// <p>Holds the compute shader code used by this shader program.</p>
26802    ///
26803    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgram::setComputeShaderCode(const QByteArray& computeShaderCode)```</span>.
26804    ///
26805    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#computeShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the compute shader code used by this shader program.</p>
26806    /// <p><b>Access functions:</b></p>
26807    /// <div class="table"><table class="alignedsummary">
26808    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCode</b></span>() const</td></tr>
26809    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComputeShaderCode</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
26810    /// </tbody></table></div>
26811    /// <p><b>Notifier signal:</b></p>
26812    /// <div class="table"><table class="alignedsummary">
26813    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCodeChanged</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
26814    /// </tbody></table></div></div>
26815    #[inline(always)]
26816    pub unsafe fn set_compute_shader_code(
26817        &self,
26818        compute_shader_code: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
26819    ) {
26820        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_setComputeShaderCode(
26821            self as *const crate::QShaderProgram as *mut crate::QShaderProgram,
26822            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(
26823                compute_shader_code,
26824            )
26825            .as_raw_ptr(),
26826        )
26827    }
26828
26829    /// <p>Holds the fragment shader code used by this shader program.</p>
26830    ///
26831    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgram::setFragmentShaderCode(const QByteArray& fragmentShaderCode)```</span>.
26832    ///
26833    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#fragmentShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the fragment shader code used by this shader program.</p>
26834    /// <p><b>Access functions:</b></p>
26835    /// <div class="table"><table class="alignedsummary">
26836    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCode</b></span>() const</td></tr>
26837    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFragmentShaderCode</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
26838    /// </tbody></table></div>
26839    /// <p><b>Notifier signal:</b></p>
26840    /// <div class="table"><table class="alignedsummary">
26841    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCodeChanged</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
26842    /// </tbody></table></div></div>
26843    #[inline(always)]
26844    pub unsafe fn set_fragment_shader_code(
26845        &self,
26846        fragment_shader_code: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
26847    ) {
26848        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_setFragmentShaderCode(
26849            self as *const crate::QShaderProgram as *mut crate::QShaderProgram,
26850            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(
26851                fragment_shader_code,
26852            )
26853            .as_raw_ptr(),
26854        )
26855    }
26856
26857    /// <p>Holds the geometry shader code used by this shader program.</p>
26858    ///
26859    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgram::setGeometryShaderCode(const QByteArray& geometryShaderCode)```</span>.
26860    ///
26861    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#geometryShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the geometry shader code used by this shader program.</p>
26862    /// <p><b>Access functions:</b></p>
26863    /// <div class="table"><table class="alignedsummary">
26864    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCode</b></span>() const</td></tr>
26865    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometryShaderCode</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
26866    /// </tbody></table></div>
26867    /// <p><b>Notifier signal:</b></p>
26868    /// <div class="table"><table class="alignedsummary">
26869    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCodeChanged</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
26870    /// </tbody></table></div></div>
26871    #[inline(always)]
26872    pub unsafe fn set_geometry_shader_code(
26873        &self,
26874        geometry_shader_code: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
26875    ) {
26876        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_setGeometryShaderCode(
26877            self as *const crate::QShaderProgram as *mut crate::QShaderProgram,
26878            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(
26879                geometry_shader_code,
26880            )
26881            .as_raw_ptr(),
26882        )
26883    }
26884
26885    /// <p>Sets the shader code for <i>type</i> of shader to the <i>shaderCode</i>.</p>
26886    ///
26887    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QShaderProgram::setShaderCode(Qt3DRender::QShaderProgram::ShaderType type, const QByteArray& shaderCode)```</span>.
26888    ///
26889    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#setShaderCode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the shader code for <i>type</i> of shader to the <i>shaderCode</i>.</p>
26890    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#shaderCode">shaderCode</a>().</p></div>
26891    #[inline(always)]
26892    pub unsafe fn set_shader_code(
26893        &self,
26894        type_: crate::q_shader_program::ShaderType,
26895        shader_code: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
26896    ) {
26897        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_setShaderCode(
26898            self as *const crate::QShaderProgram as *mut crate::QShaderProgram,
26899            type_,
26900            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(shader_code)
26901                .as_raw_ptr(),
26902        )
26903    }
26904
26905    /// <p>Holds the tesselation control shader code used by this shader program.</p>
26906    ///
26907    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgram::setTessellationControlShaderCode(const QByteArray& tessellationControlShaderCode)```</span>.
26908    ///
26909    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#tessellationControlShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the tesselation control shader code used by this shader program.</p>
26910    /// <p><b>Access functions:</b></p>
26911    /// <div class="table"><table class="alignedsummary">
26912    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCode</b></span>() const</td></tr>
26913    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationControlShaderCode</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
26914    /// </tbody></table></div>
26915    /// <p><b>Notifier signal:</b></p>
26916    /// <div class="table"><table class="alignedsummary">
26917    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
26918    /// </tbody></table></div></div>
26919    #[inline(always)]
26920    pub unsafe fn set_tessellation_control_shader_code(
26921        &self,
26922        tessellation_control_shader_code: impl ::cpp_core::CastInto<
26923            ::cpp_core::Ref<::qt_core::QByteArray>,
26924        >,
26925    ) {
26926        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_setTessellationControlShaderCode(self as *const crate::QShaderProgram as *mut crate::QShaderProgram, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(tessellation_control_shader_code).as_raw_ptr())
26927    }
26928
26929    /// <p>Holds the tesselation evaluation shader code used by this shader program.</p>
26930    ///
26931    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgram::setTessellationEvaluationShaderCode(const QByteArray& tessellationEvaluationShaderCode)```</span>.
26932    ///
26933    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#tessellationEvaluationShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the tesselation evaluation shader code used by this shader program.</p>
26934    /// <p><b>Access functions:</b></p>
26935    /// <div class="table"><table class="alignedsummary">
26936    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCode</b></span>() const</td></tr>
26937    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationEvaluationShaderCode</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
26938    /// </tbody></table></div>
26939    /// <p><b>Notifier signal:</b></p>
26940    /// <div class="table"><table class="alignedsummary">
26941    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
26942    /// </tbody></table></div></div>
26943    #[inline(always)]
26944    pub unsafe fn set_tessellation_evaluation_shader_code(
26945        &self,
26946        tessellation_evaluation_shader_code: impl ::cpp_core::CastInto<
26947            ::cpp_core::Ref<::qt_core::QByteArray>,
26948        >,
26949    ) {
26950        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_setTessellationEvaluationShaderCode(self as *const crate::QShaderProgram as *mut crate::QShaderProgram, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(tessellation_evaluation_shader_code).as_raw_ptr())
26951    }
26952
26953    /// <p>Holds the vertex shader code used by this shader program.</p>
26954    ///
26955    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgram::setVertexShaderCode(const QByteArray& vertexShaderCode)```</span>.
26956    ///
26957    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#vertexShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the vertex shader code used by this shader program.</p>
26958    /// <p><b>Access functions:</b></p>
26959    /// <div class="table"><table class="alignedsummary">
26960    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCode</b></span>() const</td></tr>
26961    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexShaderCode</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
26962    /// </tbody></table></div>
26963    /// <p><b>Notifier signal:</b></p>
26964    /// <div class="table"><table class="alignedsummary">
26965    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCodeChanged</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
26966    /// </tbody></table></div></div>
26967    #[inline(always)]
26968    pub unsafe fn set_vertex_shader_code(
26969        &self,
26970        vertex_shader_code: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
26971    ) {
26972        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_setVertexShaderCode(
26973            self as *const crate::QShaderProgram as *mut crate::QShaderProgram,
26974            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(
26975                vertex_shader_code,
26976            )
26977            .as_raw_ptr(),
26978        )
26979    }
26980
26981    /// <p>Returns the shader code for <i>type</i>.</p>
26982    ///
26983    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgram::shaderCode(Qt3DRender::QShaderProgram::ShaderType type) const```</span>.
26984    ///
26985    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#shaderCode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the shader code for <i>type</i>.</p>
26986    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#setShaderCode">setShaderCode</a>().</p></div>
26987    #[inline(always)]
26988    pub unsafe fn shader_code(
26989        &self,
26990        type_: crate::q_shader_program::ShaderType,
26991    ) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
26992        let ffi_result = {
26993            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_shaderCode(
26994                self as *const crate::QShaderProgram,
26995                type_,
26996            )
26997        };
26998        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
26999    }
27000
27001    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
27002    #[inline(always)]
27003    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
27004        let ffi_result =
27005            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_staticMetaObject() };
27006        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
27007            .expect("attempted to construct a null Ref")
27008    }
27009
27010    /// <p>Holds the status of the current shader program.</p>
27011    ///
27012    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgram::Status Qt3DRender::QShaderProgram::status() const```</span>.
27013    ///
27014    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the status of the current shader program.</p>
27015    /// <p><b>Access functions:</b></p>
27016    /// <div class="table"><table class="alignedsummary">
27017    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Status </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#status">status</a></b></span>() const</td></tr>
27018    /// </tbody></table></div>
27019    /// <p><b>Notifier signal:</b></p>
27020    /// <div class="table"><table class="alignedsummary">
27021    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Status <i>status</i>)</td></tr>
27022    /// </tbody></table></div></div>
27023    #[inline(always)]
27024    pub unsafe fn status(&self) -> crate::q_shader_program::Status {
27025        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_status(
27026            self as *const crate::QShaderProgram,
27027        )
27028    }
27029
27030    /// <p>Holds the tesselation control shader code used by this shader program.</p>
27031    ///
27032    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgram::tessellationControlShaderCode() const```</span>.
27033    ///
27034    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#tessellationControlShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the tesselation control shader code used by this shader program.</p>
27035    /// <p><b>Access functions:</b></p>
27036    /// <div class="table"><table class="alignedsummary">
27037    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCode</b></span>() const</td></tr>
27038    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationControlShaderCode</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
27039    /// </tbody></table></div>
27040    /// <p><b>Notifier signal:</b></p>
27041    /// <div class="table"><table class="alignedsummary">
27042    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
27043    /// </tbody></table></div></div>
27044    #[inline(always)]
27045    pub unsafe fn tessellation_control_shader_code(
27046        &self,
27047    ) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
27048        let ffi_result = {
27049            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_tessellationControlShaderCode(self as *const crate::QShaderProgram)
27050        };
27051        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27052    }
27053
27054    /// <p>Holds the tesselation evaluation shader code used by this shader program.</p>
27055    ///
27056    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgram::tessellationEvaluationShaderCode() const```</span>.
27057    ///
27058    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#tessellationEvaluationShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the tesselation evaluation shader code used by this shader program.</p>
27059    /// <p><b>Access functions:</b></p>
27060    /// <div class="table"><table class="alignedsummary">
27061    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCode</b></span>() const</td></tr>
27062    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationEvaluationShaderCode</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
27063    /// </tbody></table></div>
27064    /// <p><b>Notifier signal:</b></p>
27065    /// <div class="table"><table class="alignedsummary">
27066    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
27067    /// </tbody></table></div></div>
27068    #[inline(always)]
27069    pub unsafe fn tessellation_evaluation_shader_code(
27070        &self,
27071    ) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
27072        let ffi_result = {
27073            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_tessellationEvaluationShaderCode(self as *const crate::QShaderProgram)
27074        };
27075        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27076    }
27077
27078    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QShaderProgram::tr(const char* s, const char* c, int n)```</span>.
27079    #[inline(always)]
27080    pub unsafe fn tr(
27081        s: *const ::std::os::raw::c_char,
27082        c: *const ::std::os::raw::c_char,
27083        n: ::std::os::raw::c_int,
27084    ) -> ::cpp_core::CppBox<::qt_core::QString> {
27085        let ffi_result =
27086            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_tr(s, c, n) };
27087        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27088    }
27089
27090    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QShaderProgram::trUtf8(const char* s, const char* c, int n)```</span>.
27091    #[inline(always)]
27092    pub unsafe fn tr_utf8(
27093        s: *const ::std::os::raw::c_char,
27094        c: *const ::std::os::raw::c_char,
27095        n: ::std::os::raw::c_int,
27096    ) -> ::cpp_core::CppBox<::qt_core::QString> {
27097        let ffi_result =
27098            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_trUtf8(s, c, n) };
27099        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27100    }
27101
27102    /// <p>Holds the vertex shader code used by this shader program.</p>
27103    ///
27104    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgram::vertexShaderCode() const```</span>.
27105    ///
27106    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#vertexShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the vertex shader code used by this shader program.</p>
27107    /// <p><b>Access functions:</b></p>
27108    /// <div class="table"><table class="alignedsummary">
27109    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCode</b></span>() const</td></tr>
27110    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexShaderCode</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
27111    /// </tbody></table></div>
27112    /// <p><b>Notifier signal:</b></p>
27113    /// <div class="table"><table class="alignedsummary">
27114    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCodeChanged</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
27115    /// </tbody></table></div></div>
27116    #[inline(always)]
27117    pub unsafe fn vertex_shader_code(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
27118        let ffi_result = {
27119            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_vertexShaderCode(
27120                self as *const crate::QShaderProgram,
27121            )
27122        };
27123        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27124    }
27125}
27126
27127/// <p>Encapsulates a Render Pass.</p>
27128///
27129/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderPass```</span>.
27130///
27131/// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates a Render Pass.</p>
27132/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> specifies a single rendering pass - an instance of shader program execution - used by <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a>. Render pass consists of a <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">Qt3DRender::QShaderProgram</a> and a list of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects, a list of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">Qt3DRender::QRenderState</a> objects and a list of <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">Qt3DRender::QParameter</a> objects.</p>
27133/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> executes the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a> using the given <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> nodes when at least one of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> nodes being referenced matches any of the <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> nodes in <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> or when no <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> nodes are specified and no <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> is present in the FrameGraph.</p>
27134/// <p>If the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> defines a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a>, it will be overridden by a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> with the same name if it exists in any of the <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> associated with the pass at runtime. This still can be useful to define sane default values.</p>
27135/// <p>At render time, for each leaf node of the FrameGraph a base render state is recorded by accumulating states defined by all <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> nodes in the FrameGraph branch. Each <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> can overload this base render state by specifying its own <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> nodes.</p>
27136/// <pre class="cpp">
27137///
27138///   <span class="comment">// Create the render passes</span>
27139///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#QRenderPass">QRenderPass</a></span> <span class="operator">*</span>pass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#QRenderPass">QRenderPass</a></span>();
27140///
27141///   <span class="comment">// Create shader program</span>
27142///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span> <span class="operator">*</span>glShader <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span>();
27143///
27144///   <span class="comment">// Set the shader on the render pass</span>
27145///   pass<span class="operator">-</span><span class="operator">&gt;</span>setShaderProgram(glShader);
27146///
27147///   <span class="comment">// Create a FilterKey</span>
27148///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a></span> <span class="operator">*</span>filterKey <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a></span>();
27149///   filterKey<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"name"</span>));
27150///   fitlerKey<span class="operator">-</span><span class="operator">&gt;</span>setValue(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"zFillPass"</span>));
27151///
27152///   <span class="comment">// Add the FilterKey to the pass</span>
27153///   pass<span class="operator">-</span><span class="operator">&gt;</span>addFilterKey(filterKey);
27154///
27155///   <span class="comment">// Create a QParameter</span>
27156///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span> <span class="operator">*</span>colorParameter <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"color"</span>)<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>));
27157///
27158///   <span class="comment">// Add parameter to pass</span>
27159///   pass<span class="operator">-</span><span class="operator">&gt;</span>addParameter(colorParameter);
27160///
27161///   <span class="comment">// Create a QRenderState</span>
27162///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a></span> <span class="operator">*</span>depthTest <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a></span>();
27163///
27164///   <span class="comment">// Add the render state to the pass</span>
27165///   pass<span class="operator">-</span><span class="operator">&gt;</span>addRenderState(depthTest);
27166///
27167/// </pre></div>
27168#[repr(C)]
27169pub struct QRenderPass {
27170    _unused: u8,
27171}
27172impl QRenderPass {
27173    /// <p>Specifies the shader program to be used for this render pass.</p>
27174    ///
27175    /// Returns a built-in Qt slot `Qt3DRender::QRenderPass::setShaderProgram` that can be passed to `qt_core::Signal::connect`.
27176    ///
27177    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#shaderProgram-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the shader program to be used for this render pass.</p>
27178    /// <p><b>Access functions:</b></p>
27179    /// <div class="table"><table class="alignedsummary">
27180    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QShaderProgram *</td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgram</b></span>() const</td></tr>
27181    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setShaderProgram</b></span>(QShaderProgram *<i>shaderProgram</i>)</td></tr>
27182    /// </tbody></table></div>
27183    /// <p><b>Notifier signal:</b></p>
27184    /// <div class="table"><table class="alignedsummary">
27185    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgramChanged</b></span>(QShaderProgram *<i>shaderProgram</i>)</td></tr>
27186    /// </tbody></table></div></div>
27187    #[inline(always)]
27188    pub fn slot_set_shader_program(&self) -> ::qt_core::Receiver<(*mut crate::QShaderProgram,)> {
27189        unsafe {
27190            ::qt_core::Receiver::new(
27191                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
27192                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
27193                    b"1setShaderProgram(Qt3DRender::QShaderProgram *)\0",
27194                ),
27195            )
27196        }
27197    }
27198
27199    /// <p>Specifies the shader program to be used for this render pass.</p>
27200    ///
27201    /// Returns a built-in Qt signal `Qt3DRender::QRenderPass::shaderProgramChanged` that can be passed to `qt_core::Signal::connect`.
27202    ///
27203    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#shaderProgram-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the shader program to be used for this render pass.</p>
27204    /// <p><b>Access functions:</b></p>
27205    /// <div class="table"><table class="alignedsummary">
27206    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QShaderProgram *</td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgram</b></span>() const</td></tr>
27207    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setShaderProgram</b></span>(QShaderProgram *<i>shaderProgram</i>)</td></tr>
27208    /// </tbody></table></div>
27209    /// <p><b>Notifier signal:</b></p>
27210    /// <div class="table"><table class="alignedsummary">
27211    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgramChanged</b></span>(QShaderProgram *<i>shaderProgram</i>)</td></tr>
27212    /// </tbody></table></div></div>
27213    #[inline(always)]
27214    pub fn shader_program_changed(&self) -> ::qt_core::Signal<(*mut crate::QShaderProgram,)> {
27215        unsafe {
27216            ::qt_core::Signal::new(
27217                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
27218                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
27219                    b"2shaderProgramChanged(Qt3DRender::QShaderProgram *)\0",
27220                ),
27221            )
27222        }
27223    }
27224
27225    /// <p>Adds <i>filterKey</i> to the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> local filter keys.</p>
27226    ///
27227    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPass::addFilterKey(Qt3DRender::QFilterKey* filterKey)```</span>.
27228    ///
27229    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#addFilterKey">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds <i>filterKey</i> to the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> local filter keys.</p></div>
27230    #[inline(always)]
27231    pub unsafe fn add_filter_key(
27232        &self,
27233        filter_key: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFilterKey>>,
27234    ) {
27235        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_addFilterKey(
27236            self as *const crate::QRenderPass as *mut crate::QRenderPass,
27237            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFilterKey>>::cast_into(filter_key)
27238                .as_raw_ptr() as *mut crate::QFilterKey,
27239        )
27240    }
27241
27242    /// <p>Add <i>parameter</i> to the render pass' parameters.</p>
27243    ///
27244    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPass::addParameter(Qt3DRender::QParameter* p)```</span>.
27245    ///
27246    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#addParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add <i>parameter</i> to the render pass' parameters.</p></div>
27247    #[inline(always)]
27248    pub unsafe fn add_parameter(
27249        &self,
27250        p: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
27251    ) {
27252        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_addParameter(
27253            self as *const crate::QRenderPass as *mut crate::QRenderPass,
27254            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(p).as_raw_ptr()
27255                as *mut crate::QParameter,
27256        )
27257    }
27258
27259    /// <p>Adds a render <i>state</i> to the rendering pass. That implies that when the pass is executed at render time, the globally set render state will be modified by the states defined locally by the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a>.</p>
27260    ///
27261    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPass::addRenderState(Qt3DRender::QRenderState* state)```</span>.
27262    ///
27263    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#addRenderState">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds a render <i>state</i> to the rendering pass. That implies that when the pass is executed at render time, the globally set render state will be modified by the states defined locally by the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a>.</p>
27264    /// <p><b>Note: </b>not defining any <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">Qt3DRender::QRenderState</a> in a pass will result in the pass using the globally set render state for a given FrameGraph branch execution path.</p></div>
27265    #[inline(always)]
27266    pub unsafe fn add_render_state(
27267        &self,
27268        state: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderState>>,
27269    ) {
27270        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_addRenderState(
27271            self as *const crate::QRenderPass as *mut crate::QRenderPass,
27272            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderState>>::cast_into(state)
27273                .as_raw_ptr() as *mut crate::QRenderState,
27274        )
27275    }
27276
27277    /// <p>Returns the list of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> key objects making up the filter keys of the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a>.</p>
27278    ///
27279    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*> Qt3DRender::QRenderPass::filterKeys() const```</span>.
27280    ///
27281    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#filterKeys">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> key objects making up the filter keys of the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a>.</p></div>
27282    #[inline(always)]
27283    pub unsafe fn filter_keys(&self) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
27284        let ffi_result = {
27285            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_filterKeys(
27286                self as *const crate::QRenderPass,
27287            )
27288        };
27289        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27290    }
27291
27292    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderPass::metaObject() const```</span>.
27293    #[inline(always)]
27294    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
27295        let ffi_result = {
27296            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_metaObject(
27297                self as *const crate::QRenderPass,
27298            )
27299        };
27300        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
27301    }
27302
27303    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> with the specified <i>parent</i>.</p>
27304    ///
27305    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderPass::QRenderPass(Qt3DCore::QNode* parent = …)```</span>.
27306    ///
27307    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#QRenderPass">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> with the specified <i>parent</i>.</p></div>
27308    #[inline(always)]
27309    pub unsafe fn new_1a(
27310        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
27311    ) -> ::qt_core::QBox<crate::QRenderPass> {
27312        let ffi_result = {
27313            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_QRenderPass(
27314                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
27315                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
27316            )
27317        };
27318        ::qt_core::QBox::from_raw(ffi_result)
27319    }
27320
27321    /// <p>Encapsulates a Render Pass.</p>
27322    ///
27323    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderPass::QRenderPass()```</span>.
27324    ///
27325    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates a Render Pass.</p>
27326    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> specifies a single rendering pass - an instance of shader program execution - used by <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a>. Render pass consists of a <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">Qt3DRender::QShaderProgram</a> and a list of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects, a list of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">Qt3DRender::QRenderState</a> objects and a list of <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">Qt3DRender::QParameter</a> objects.</p>
27327    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> executes the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a> using the given <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> nodes when at least one of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> nodes being referenced matches any of the <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> nodes in <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> or when no <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> nodes are specified and no <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> is present in the FrameGraph.</p>
27328    /// <p>If the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> defines a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a>, it will be overridden by a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> with the same name if it exists in any of the <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">QMaterial</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> associated with the pass at runtime. This still can be useful to define sane default values.</p>
27329    /// <p>At render time, for each leaf node of the FrameGraph a base render state is recorded by accumulating states defined by all <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> nodes in the FrameGraph branch. Each <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> can overload this base render state by specifying its own <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> nodes.</p>
27330    /// <pre class="cpp">
27331    ///
27332    ///   <span class="comment">// Create the render passes</span>
27333    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#QRenderPass">QRenderPass</a></span> <span class="operator">*</span>pass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#QRenderPass">QRenderPass</a></span>();
27334    ///
27335    ///   <span class="comment">// Create shader program</span>
27336    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span> <span class="operator">*</span>glShader <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html">QShaderProgram</a></span>();
27337    ///
27338    ///   <span class="comment">// Set the shader on the render pass</span>
27339    ///   pass<span class="operator">-</span><span class="operator">&gt;</span>setShaderProgram(glShader);
27340    ///
27341    ///   <span class="comment">// Create a FilterKey</span>
27342    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a></span> <span class="operator">*</span>filterKey <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a></span>();
27343    ///   filterKey<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"name"</span>));
27344    ///   fitlerKey<span class="operator">-</span><span class="operator">&gt;</span>setValue(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"zFillPass"</span>));
27345    ///
27346    ///   <span class="comment">// Add the FilterKey to the pass</span>
27347    ///   pass<span class="operator">-</span><span class="operator">&gt;</span>addFilterKey(filterKey);
27348    ///
27349    ///   <span class="comment">// Create a QParameter</span>
27350    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span> <span class="operator">*</span>colorParameter <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"color"</span>)<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>));
27351    ///
27352    ///   <span class="comment">// Add parameter to pass</span>
27353    ///   pass<span class="operator">-</span><span class="operator">&gt;</span>addParameter(colorParameter);
27354    ///
27355    ///   <span class="comment">// Create a QRenderState</span>
27356    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a></span> <span class="operator">*</span>depthTest <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qdepthtest.html">QDepthTest</a></span>();
27357    ///
27358    ///   <span class="comment">// Add the render state to the pass</span>
27359    ///   pass<span class="operator">-</span><span class="operator">&gt;</span>addRenderState(depthTest);
27360    ///
27361    /// </pre></div>
27362    #[inline(always)]
27363    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRenderPass> {
27364        let ffi_result =
27365            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_QRenderPass1() };
27366        ::qt_core::QBox::from_raw(ffi_result)
27367    }
27368
27369    /// <p>Returns a vector of the render pass' current parameters</p>
27370    ///
27371    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*> Qt3DRender::QRenderPass::parameters() const```</span>.
27372    ///
27373    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#parameters">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector of the render pass' current parameters</p></div>
27374    #[inline(always)]
27375    pub unsafe fn parameters(&self) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
27376        let ffi_result = {
27377            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_parameters(
27378                self as *const crate::QRenderPass,
27379            )
27380        };
27381        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27382    }
27383
27384    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderPass::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
27385    #[inline(always)]
27386    pub unsafe fn qt_metacall(
27387        &self,
27388        arg1: ::qt_core::q_meta_object::Call,
27389        arg2: ::std::os::raw::c_int,
27390        arg3: *mut *mut ::std::ffi::c_void,
27391    ) -> ::std::os::raw::c_int {
27392        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_qt_metacall(
27393            self as *const crate::QRenderPass as *mut crate::QRenderPass,
27394            arg1,
27395            arg2,
27396            arg3,
27397        )
27398    }
27399
27400    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderPass::qt_metacast(const char* arg1)```</span>.
27401    #[inline(always)]
27402    pub unsafe fn qt_metacast(
27403        &self,
27404        arg1: *const ::std::os::raw::c_char,
27405    ) -> *mut ::std::ffi::c_void {
27406        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_qt_metacast(
27407            self as *const crate::QRenderPass as *mut crate::QRenderPass,
27408            arg1,
27409        )
27410    }
27411
27412    /// <p>Removes <i>filterKey</i> from the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> local filter keys.</p>
27413    ///
27414    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPass::removeFilterKey(Qt3DRender::QFilterKey* filterKey)```</span>.
27415    ///
27416    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#removeFilterKey">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes <i>filterKey</i> from the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> local filter keys.</p></div>
27417    #[inline(always)]
27418    pub unsafe fn remove_filter_key(
27419        &self,
27420        filter_key: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFilterKey>>,
27421    ) {
27422        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_removeFilterKey(
27423            self as *const crate::QRenderPass as *mut crate::QRenderPass,
27424            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFilterKey>>::cast_into(filter_key)
27425                .as_raw_ptr() as *mut crate::QFilterKey,
27426        )
27427    }
27428
27429    /// <p>Remove <i>parameter</i> from the render pass' parameters.</p>
27430    ///
27431    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPass::removeParameter(Qt3DRender::QParameter* p)```</span>.
27432    ///
27433    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#removeParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove <i>parameter</i> from the render pass' parameters.</p></div>
27434    #[inline(always)]
27435    pub unsafe fn remove_parameter(
27436        &self,
27437        p: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
27438    ) {
27439        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_removeParameter(
27440            self as *const crate::QRenderPass as *mut crate::QRenderPass,
27441            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(p).as_raw_ptr()
27442                as *mut crate::QParameter,
27443        )
27444    }
27445
27446    /// <p>Removes <i>state</i> from the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> local render state.</p>
27447    ///
27448    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPass::removeRenderState(Qt3DRender::QRenderState* state)```</span>.
27449    ///
27450    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#removeRenderState">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes <i>state</i> from the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> local render state.</p></div>
27451    #[inline(always)]
27452    pub unsafe fn remove_render_state(
27453        &self,
27454        state: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderState>>,
27455    ) {
27456        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_removeRenderState(
27457            self as *const crate::QRenderPass as *mut crate::QRenderPass,
27458            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderState>>::cast_into(state)
27459                .as_raw_ptr() as *mut crate::QRenderState,
27460        )
27461    }
27462
27463    /// <p>Returns the list of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">Qt3DRender::QRenderState</a> state objects making up the render state of the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a>.</p>
27464    ///
27465    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*> Qt3DRender::QRenderPass::renderStates() const```</span>.
27466    ///
27467    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#renderStates">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">Qt3DRender::QRenderState</a> state objects making up the render state of the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a>.</p></div>
27468    #[inline(always)]
27469    pub unsafe fn render_states(&self) -> ::cpp_core::CppBox<crate::QVectorOfQRenderState> {
27470        let ffi_result = {
27471            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_renderStates(
27472                self as *const crate::QRenderPass,
27473            )
27474        };
27475        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27476    }
27477
27478    /// <p>Specifies the shader program to be used for this render pass.</p>
27479    ///
27480    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderPass::setShaderProgram(Qt3DRender::QShaderProgram* shaderProgram)```</span>.
27481    ///
27482    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#shaderProgram-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the shader program to be used for this render pass.</p>
27483    /// <p><b>Access functions:</b></p>
27484    /// <div class="table"><table class="alignedsummary">
27485    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QShaderProgram *</td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgram</b></span>() const</td></tr>
27486    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setShaderProgram</b></span>(QShaderProgram *<i>shaderProgram</i>)</td></tr>
27487    /// </tbody></table></div>
27488    /// <p><b>Notifier signal:</b></p>
27489    /// <div class="table"><table class="alignedsummary">
27490    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgramChanged</b></span>(QShaderProgram *<i>shaderProgram</i>)</td></tr>
27491    /// </tbody></table></div></div>
27492    #[inline(always)]
27493    pub unsafe fn set_shader_program(
27494        &self,
27495        shader_program: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QShaderProgram>>,
27496    ) {
27497        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_setShaderProgram(
27498            self as *const crate::QRenderPass as *mut crate::QRenderPass,
27499            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QShaderProgram>>::cast_into(
27500                shader_program,
27501            )
27502            .as_raw_ptr() as *mut crate::QShaderProgram,
27503        )
27504    }
27505
27506    /// <p>Specifies the shader program to be used for this render pass.</p>
27507    ///
27508    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgram* Qt3DRender::QRenderPass::shaderProgram() const```</span>.
27509    ///
27510    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html#shaderProgram-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the shader program to be used for this render pass.</p>
27511    /// <p><b>Access functions:</b></p>
27512    /// <div class="table"><table class="alignedsummary">
27513    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QShaderProgram *</td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgram</b></span>() const</td></tr>
27514    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setShaderProgram</b></span>(QShaderProgram *<i>shaderProgram</i>)</td></tr>
27515    /// </tbody></table></div>
27516    /// <p><b>Notifier signal:</b></p>
27517    /// <div class="table"><table class="alignedsummary">
27518    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgramChanged</b></span>(QShaderProgram *<i>shaderProgram</i>)</td></tr>
27519    /// </tbody></table></div></div>
27520    #[inline(always)]
27521    pub unsafe fn shader_program(&self) -> ::qt_core::QPtr<crate::QShaderProgram> {
27522        let ffi_result = {
27523            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_shaderProgram(
27524                self as *const crate::QRenderPass,
27525            )
27526        };
27527        ::qt_core::QPtr::from_raw(ffi_result)
27528    }
27529
27530    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
27531    #[inline(always)]
27532    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
27533        let ffi_result =
27534            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_staticMetaObject() };
27535        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
27536            .expect("attempted to construct a null Ref")
27537    }
27538
27539    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderPass::tr(const char* s, const char* c, int n)```</span>.
27540    #[inline(always)]
27541    pub unsafe fn tr(
27542        s: *const ::std::os::raw::c_char,
27543        c: *const ::std::os::raw::c_char,
27544        n: ::std::os::raw::c_int,
27545    ) -> ::cpp_core::CppBox<::qt_core::QString> {
27546        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_tr(s, c, n) };
27547        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27548    }
27549
27550    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderPass::trUtf8(const char* s, const char* c, int n)```</span>.
27551    #[inline(always)]
27552    pub unsafe fn tr_utf8(
27553        s: *const ::std::os::raw::c_char,
27554        c: *const ::std::os::raw::c_char,
27555        n: ::std::os::raw::c_int,
27556    ) -> ::cpp_core::CppBox<::qt_core::QString> {
27557        let ffi_result =
27558            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_trUtf8(s, c, n) };
27559        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27560    }
27561}
27562
27563/// <p>Provides storage for vectors of Filter Keys and Parameters</p>
27564///
27565/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderPassFilter```</span>.
27566///
27567/// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides storage for vectors of Filter Keys and Parameters</p>
27568/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">Qt3DRender::QRenderPassFilter</a> FrameGraph node is used to select which <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> objects are selected for drawing. <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> specifies a list of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects and <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">Qt3DRender::QParameter</a> objects. When <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> is present in the FrameGraph, only the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> objects, whose <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects match the keys in <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> are selected for rendering. If no <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> is present, then all <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> objects are selected for rendering. The parameters in the list can be used to set values for shader parameters. The parameters in <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> are overridden by parameters in <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>.</p></div>
27569#[repr(C)]
27570pub struct QRenderPassFilter {
27571    _unused: u8,
27572}
27573impl QRenderPassFilter {
27574    /// <p>Add the <i>filterKey</i> to the match vector.</p>
27575    ///
27576    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPassFilter::addMatch(Qt3DRender::QFilterKey* filterKey)```</span>.
27577    ///
27578    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html#addMatch">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add the <i>filterKey</i> to the match vector.</p></div>
27579    #[inline(always)]
27580    pub unsafe fn add_match(
27581        &self,
27582        filter_key: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFilterKey>>,
27583    ) {
27584        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_addMatch(
27585            self as *const crate::QRenderPassFilter as *mut crate::QRenderPassFilter,
27586            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFilterKey>>::cast_into(filter_key)
27587                .as_raw_ptr() as *mut crate::QFilterKey,
27588        )
27589    }
27590
27591    /// <p>Add the given <i>parameter</i> to the parameter vector.</p>
27592    ///
27593    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPassFilter::addParameter(Qt3DRender::QParameter* parameter)```</span>.
27594    ///
27595    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html#addParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add the given <i>parameter</i> to the parameter vector.</p></div>
27596    #[inline(always)]
27597    pub unsafe fn add_parameter(
27598        &self,
27599        parameter: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
27600    ) {
27601        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_addParameter(
27602            self as *const crate::QRenderPassFilter as *mut crate::QRenderPassFilter,
27603            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(parameter)
27604                .as_raw_ptr() as *mut crate::QParameter,
27605        )
27606    }
27607
27608    /// <p>Returns a vector of the current keys for the filter.</p>
27609    ///
27610    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*> Qt3DRender::QRenderPassFilter::matchAny() const```</span>.
27611    ///
27612    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html#matchAny">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector of the current keys for the filter.</p></div>
27613    #[inline(always)]
27614    pub unsafe fn match_any(&self) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
27615        let ffi_result = {
27616            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_matchAny(
27617                self as *const crate::QRenderPassFilter,
27618            )
27619        };
27620        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27621    }
27622
27623    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderPassFilter::metaObject() const```</span>.
27624    #[inline(always)]
27625    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
27626        let ffi_result = {
27627            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_metaObject(
27628                self as *const crate::QRenderPassFilter,
27629            )
27630        };
27631        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
27632    }
27633
27634    /// <p>Default constructs an instance of QRenderPassFilter.</p>
27635    ///
27636    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderPassFilter::QRenderPassFilter(Qt3DCore::QNode* parent = …)```</span>.
27637    ///
27638    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html#QRenderPassFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRenderPassFilter.</p></div>
27639    #[inline(always)]
27640    pub unsafe fn new_1a(
27641        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
27642    ) -> ::qt_core::QBox<crate::QRenderPassFilter> {
27643        let ffi_result = {
27644            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_QRenderPassFilter(
27645                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
27646                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
27647            )
27648        };
27649        ::qt_core::QBox::from_raw(ffi_result)
27650    }
27651
27652    /// <p>Provides storage for vectors of Filter Keys and Parameters</p>
27653    ///
27654    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderPassFilter::QRenderPassFilter()```</span>.
27655    ///
27656    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides storage for vectors of Filter Keys and Parameters</p>
27657    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">Qt3DRender::QRenderPassFilter</a> FrameGraph node is used to select which <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> objects are selected for drawing. <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> specifies a list of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects and <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">Qt3DRender::QParameter</a> objects. When <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> is present in the FrameGraph, only the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> objects, whose <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects match the keys in <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> are selected for rendering. If no <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> is present, then all <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a> objects are selected for rendering. The parameters in the list can be used to set values for shader parameters. The parameters in <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a> are overridden by parameters in <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a>, <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>.</p></div>
27658    #[inline(always)]
27659    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRenderPassFilter> {
27660        let ffi_result = {
27661            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_QRenderPassFilter1()
27662        };
27663        ::qt_core::QBox::from_raw(ffi_result)
27664    }
27665
27666    /// <p>Returns the current vector of parameters.</p>
27667    ///
27668    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*> Qt3DRender::QRenderPassFilter::parameters() const```</span>.
27669    ///
27670    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html#parameters">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current vector of parameters.</p></div>
27671    #[inline(always)]
27672    pub unsafe fn parameters(&self) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
27673        let ffi_result = {
27674            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_parameters(
27675                self as *const crate::QRenderPassFilter,
27676            )
27677        };
27678        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27679    }
27680
27681    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderPassFilter::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
27682    #[inline(always)]
27683    pub unsafe fn qt_metacall(
27684        &self,
27685        arg1: ::qt_core::q_meta_object::Call,
27686        arg2: ::std::os::raw::c_int,
27687        arg3: *mut *mut ::std::ffi::c_void,
27688    ) -> ::std::os::raw::c_int {
27689        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_qt_metacall(
27690            self as *const crate::QRenderPassFilter as *mut crate::QRenderPassFilter,
27691            arg1,
27692            arg2,
27693            arg3,
27694        )
27695    }
27696
27697    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderPassFilter::qt_metacast(const char* arg1)```</span>.
27698    #[inline(always)]
27699    pub unsafe fn qt_metacast(
27700        &self,
27701        arg1: *const ::std::os::raw::c_char,
27702    ) -> *mut ::std::ffi::c_void {
27703        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_qt_metacast(
27704            self as *const crate::QRenderPassFilter as *mut crate::QRenderPassFilter,
27705            arg1,
27706        )
27707    }
27708
27709    /// <p>Remove the <i>filterKey</i> from the match vector.</p>
27710    ///
27711    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPassFilter::removeMatch(Qt3DRender::QFilterKey* filterKey)```</span>.
27712    ///
27713    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html#removeMatch">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove the <i>filterKey</i> from the match vector.</p></div>
27714    #[inline(always)]
27715    pub unsafe fn remove_match(
27716        &self,
27717        filter_key: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFilterKey>>,
27718    ) {
27719        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_removeMatch(
27720            self as *const crate::QRenderPassFilter as *mut crate::QRenderPassFilter,
27721            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFilterKey>>::cast_into(filter_key)
27722                .as_raw_ptr() as *mut crate::QFilterKey,
27723        )
27724    }
27725
27726    /// <p>Remove the given <i>parameter</i> from the parameter vector.</p>
27727    ///
27728    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderPassFilter::removeParameter(Qt3DRender::QParameter* parameter)```</span>.
27729    ///
27730    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html#removeParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove the given <i>parameter</i> from the parameter vector.</p></div>
27731    #[inline(always)]
27732    pub unsafe fn remove_parameter(
27733        &self,
27734        parameter: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
27735    ) {
27736        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_removeParameter(
27737            self as *const crate::QRenderPassFilter as *mut crate::QRenderPassFilter,
27738            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(parameter)
27739                .as_raw_ptr() as *mut crate::QParameter,
27740        )
27741    }
27742
27743    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
27744    #[inline(always)]
27745    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
27746        let ffi_result =
27747            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_staticMetaObject() };
27748        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
27749            .expect("attempted to construct a null Ref")
27750    }
27751
27752    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderPassFilter::tr(const char* s, const char* c, int n)```</span>.
27753    #[inline(always)]
27754    pub unsafe fn tr(
27755        s: *const ::std::os::raw::c_char,
27756        c: *const ::std::os::raw::c_char,
27757        n: ::std::os::raw::c_int,
27758    ) -> ::cpp_core::CppBox<::qt_core::QString> {
27759        let ffi_result =
27760            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_tr(s, c, n) };
27761        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27762    }
27763
27764    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderPassFilter::trUtf8(const char* s, const char* c, int n)```</span>.
27765    #[inline(always)]
27766    pub unsafe fn tr_utf8(
27767        s: *const ::std::os::raw::c_char,
27768        c: *const ::std::os::raw::c_char,
27769        n: ::std::os::raw::c_int,
27770    ) -> ::cpp_core::CppBox<::qt_core::QString> {
27771        let ffi_result =
27772            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_trUtf8(s, c, n) };
27773        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
27774    }
27775}
27776
27777pub mod q_render_settings {
27778    //! C++ type: <span style='color: green;'>```Qt3DRender::QRenderSettings```</span>
27779
27780    /// C++ enum: <span style='color: green;'>```Qt3DRender::QRenderSettings::RenderPolicy```</span>.
27781    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
27782    #[repr(transparent)]
27783    pub struct RenderPolicy(::std::os::raw::c_int);
27784
27785    impl From<::std::os::raw::c_int> for RenderPolicy {
27786        fn from(value: ::std::os::raw::c_int) -> Self {
27787            RenderPolicy(value)
27788        }
27789    }
27790
27791    impl From<RenderPolicy> for ::std::os::raw::c_int {
27792        fn from(value: RenderPolicy) -> Self {
27793            value.0
27794        }
27795    }
27796
27797    impl RenderPolicy {
27798        pub fn to_int(&self) -> ::std::os::raw::c_int {
27799            self.0
27800        }
27801    }
27802
27803    impl RenderPolicy {
27804        /// C++ enum variant: <span style='color: green;'>```OnDemand = 0```</span>
27805        #[allow(non_upper_case_globals)]
27806        pub const OnDemand: crate::q_render_settings::RenderPolicy =
27807            crate::q_render_settings::RenderPolicy(0);
27808        /// C++ enum variant: <span style='color: green;'>```Always = 1```</span>
27809        #[allow(non_upper_case_globals)]
27810        pub const Always: crate::q_render_settings::RenderPolicy =
27811            crate::q_render_settings::RenderPolicy(1);
27812    }
27813}
27814/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html">QRenderSettings</a> class holds settings related to rendering process and host the active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27815///
27816/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderSettings```</span>.
27817///
27818/// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html">QRenderSettings</a> class holds settings related to rendering process and host the active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27819/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html">QRenderSettings</a> component must be set as a component of the scene root entity. It specifies render policy and picking settings, as well as hosts the active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p></div>
27820#[repr(C)]
27821pub struct QRenderSettings {
27822    _unused: u8,
27823}
27824impl QRenderSettings {
27825    /// <p>Holds the currently active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27826    ///
27827    /// Returns a built-in Qt slot `Qt3DRender::QRenderSettings::setActiveFrameGraph` that can be passed to `qt_core::Signal::connect`.
27828    ///
27829    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#activeFrameGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the currently active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27830    /// <p><b>Access functions:</b></p>
27831    /// <div class="table"><table class="alignedsummary">
27832    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QFrameGraphNode *</td><td class="memItemRight bottomAlign"><span class="name"><b>activeFrameGraph</b></span>() const</td></tr>
27833    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setActiveFrameGraph</b></span>(QFrameGraphNode *<i>activeFrameGraph</i>)</td></tr>
27834    /// </tbody></table></div>
27835    /// <p><b>Notifier signal:</b></p>
27836    /// <div class="table"><table class="alignedsummary">
27837    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>activeFrameGraphChanged</b></span>(QFrameGraphNode *<i>activeFrameGraph</i>)</td></tr>
27838    /// </tbody></table></div></div>
27839    #[inline(always)]
27840    pub fn slot_set_active_frame_graph(
27841        &self,
27842    ) -> ::qt_core::Receiver<(*mut crate::QFrameGraphNode,)> {
27843        unsafe {
27844            ::qt_core::Receiver::new(
27845                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
27846                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
27847                    b"1setActiveFrameGraph(Qt3DRender::QFrameGraphNode *)\0",
27848                ),
27849            )
27850        }
27851    }
27852
27853    /// <p>Holds the current render policy.</p>
27854    ///
27855    /// Returns a built-in Qt slot `Qt3DRender::QRenderSettings::setRenderPolicy` that can be passed to `qt_core::Signal::connect`.
27856    ///
27857    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#renderPolicy-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current render policy.</p>
27858    /// <p><b>Access functions:</b></p>
27859    /// <div class="table"><table class="alignedsummary">
27860    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> RenderPolicy </td><td class="memItemRight bottomAlign"><span class="name"><b>renderPolicy</b></span>() const</td></tr>
27861    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRenderPolicy</b></span>(RenderPolicy <i>renderPolicy</i>)</td></tr>
27862    /// </tbody></table></div>
27863    /// <p><b>Notifier signal:</b></p>
27864    /// <div class="table"><table class="alignedsummary">
27865    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>renderPolicyChanged</b></span>(RenderPolicy <i>renderPolicy</i>)</td></tr>
27866    /// </tbody></table></div></div>
27867    #[inline(always)]
27868    pub fn slot_set_render_policy(
27869        &self,
27870    ) -> ::qt_core::Receiver<(crate::q_render_settings::RenderPolicy,)> {
27871        unsafe {
27872            ::qt_core::Receiver::new(
27873                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
27874                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
27875                    b"1setRenderPolicy(Qt3DRender::QRenderSettings::RenderPolicy)\0",
27876                ),
27877            )
27878        }
27879    }
27880
27881    /// <p>Holds the currently active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27882    ///
27883    /// Returns a built-in Qt signal `Qt3DRender::QRenderSettings::activeFrameGraphChanged` that can be passed to `qt_core::Signal::connect`.
27884    ///
27885    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#activeFrameGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the currently active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27886    /// <p><b>Access functions:</b></p>
27887    /// <div class="table"><table class="alignedsummary">
27888    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QFrameGraphNode *</td><td class="memItemRight bottomAlign"><span class="name"><b>activeFrameGraph</b></span>() const</td></tr>
27889    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setActiveFrameGraph</b></span>(QFrameGraphNode *<i>activeFrameGraph</i>)</td></tr>
27890    /// </tbody></table></div>
27891    /// <p><b>Notifier signal:</b></p>
27892    /// <div class="table"><table class="alignedsummary">
27893    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>activeFrameGraphChanged</b></span>(QFrameGraphNode *<i>activeFrameGraph</i>)</td></tr>
27894    /// </tbody></table></div></div>
27895    #[inline(always)]
27896    pub fn active_frame_graph_changed(&self) -> ::qt_core::Signal<(*mut crate::QFrameGraphNode,)> {
27897        unsafe {
27898            ::qt_core::Signal::new(
27899                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
27900                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
27901                    b"2activeFrameGraphChanged(Qt3DRender::QFrameGraphNode *)\0",
27902                ),
27903            )
27904        }
27905    }
27906
27907    /// <p>Holds the current render policy.</p>
27908    ///
27909    /// Returns a built-in Qt signal `Qt3DRender::QRenderSettings::renderPolicyChanged` that can be passed to `qt_core::Signal::connect`.
27910    ///
27911    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#renderPolicy-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current render policy.</p>
27912    /// <p><b>Access functions:</b></p>
27913    /// <div class="table"><table class="alignedsummary">
27914    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> RenderPolicy </td><td class="memItemRight bottomAlign"><span class="name"><b>renderPolicy</b></span>() const</td></tr>
27915    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRenderPolicy</b></span>(RenderPolicy <i>renderPolicy</i>)</td></tr>
27916    /// </tbody></table></div>
27917    /// <p><b>Notifier signal:</b></p>
27918    /// <div class="table"><table class="alignedsummary">
27919    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>renderPolicyChanged</b></span>(RenderPolicy <i>renderPolicy</i>)</td></tr>
27920    /// </tbody></table></div></div>
27921    #[inline(always)]
27922    pub fn render_policy_changed(
27923        &self,
27924    ) -> ::qt_core::Signal<(crate::q_render_settings::RenderPolicy,)> {
27925        unsafe {
27926            ::qt_core::Signal::new(
27927                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
27928                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
27929                    b"2renderPolicyChanged(Qt3DRender::QRenderSettings::RenderPolicy)\0",
27930                ),
27931            )
27932        }
27933    }
27934
27935    /// <p>Holds the currently active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27936    ///
27937    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* Qt3DRender::QRenderSettings::activeFrameGraph() const```</span>.
27938    ///
27939    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#activeFrameGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the currently active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27940    /// <p><b>Access functions:</b></p>
27941    /// <div class="table"><table class="alignedsummary">
27942    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QFrameGraphNode *</td><td class="memItemRight bottomAlign"><span class="name"><b>activeFrameGraph</b></span>() const</td></tr>
27943    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setActiveFrameGraph</b></span>(QFrameGraphNode *<i>activeFrameGraph</i>)</td></tr>
27944    /// </tbody></table></div>
27945    /// <p><b>Notifier signal:</b></p>
27946    /// <div class="table"><table class="alignedsummary">
27947    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>activeFrameGraphChanged</b></span>(QFrameGraphNode *<i>activeFrameGraph</i>)</td></tr>
27948    /// </tbody></table></div></div>
27949    #[inline(always)]
27950    pub unsafe fn active_frame_graph(&self) -> ::qt_core::QPtr<crate::QFrameGraphNode> {
27951        let ffi_result = {
27952            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_activeFrameGraph(
27953                self as *const crate::QRenderSettings,
27954            )
27955        };
27956        ::qt_core::QPtr::from_raw(ffi_result)
27957    }
27958
27959    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderSettings::metaObject() const```</span>.
27960    #[inline(always)]
27961    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
27962        let ffi_result = {
27963            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_metaObject(
27964                self as *const crate::QRenderSettings,
27965            )
27966        };
27967        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
27968    }
27969
27970    /// <p>Default constructs an instance of QRenderSettings.</p>
27971    ///
27972    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderSettings::QRenderSettings(Qt3DCore::QNode* parent = …)```</span>.
27973    ///
27974    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#QRenderSettings">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRenderSettings.</p></div>
27975    #[inline(always)]
27976    pub unsafe fn new_1a(
27977        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
27978    ) -> ::qt_core::QBox<crate::QRenderSettings> {
27979        let ffi_result = {
27980            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_QRenderSettings(
27981                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
27982                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
27983            )
27984        };
27985        ::qt_core::QBox::from_raw(ffi_result)
27986    }
27987
27988    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html">QRenderSettings</a> class holds settings related to rendering process and host the active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27989    ///
27990    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderSettings::QRenderSettings()```</span>.
27991    ///
27992    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html">QRenderSettings</a> class holds settings related to rendering process and host the active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
27993    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html">QRenderSettings</a> component must be set as a component of the scene root entity. It specifies render policy and picking settings, as well as hosts the active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p></div>
27994    #[inline(always)]
27995    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRenderSettings> {
27996        let ffi_result =
27997            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_QRenderSettings1() };
27998        ::qt_core::QBox::from_raw(ffi_result)
27999    }
28000
28001    /// <p>Holds the current pick settings for the <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
28002    ///
28003    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickingSettings* Qt3DRender::QRenderSettings::pickingSettings()```</span>.
28004    ///
28005    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#pickingSettings-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current pick settings for the <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
28006    /// <p><b>Access functions:</b></p>
28007    /// <div class="table"><table class="alignedsummary">
28008    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QPickingSettings *</td><td class="memItemRight bottomAlign"><span class="name"><b>pickingSettings</b></span>()</td></tr>
28009    /// </tbody></table></div></div>
28010    #[inline(always)]
28011    pub unsafe fn picking_settings(&self) -> ::qt_core::QPtr<crate::QPickingSettings> {
28012        let ffi_result = {
28013            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_pickingSettings(
28014                self as *const crate::QRenderSettings as *mut crate::QRenderSettings,
28015            )
28016        };
28017        ::qt_core::QPtr::from_raw(ffi_result)
28018    }
28019
28020    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderSettings::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
28021    #[inline(always)]
28022    pub unsafe fn qt_metacall(
28023        &self,
28024        arg1: ::qt_core::q_meta_object::Call,
28025        arg2: ::std::os::raw::c_int,
28026        arg3: *mut *mut ::std::ffi::c_void,
28027    ) -> ::std::os::raw::c_int {
28028        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_qt_metacall(
28029            self as *const crate::QRenderSettings as *mut crate::QRenderSettings,
28030            arg1,
28031            arg2,
28032            arg3,
28033        )
28034    }
28035
28036    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderSettings::qt_metacast(const char* arg1)```</span>.
28037    #[inline(always)]
28038    pub unsafe fn qt_metacast(
28039        &self,
28040        arg1: *const ::std::os::raw::c_char,
28041    ) -> *mut ::std::ffi::c_void {
28042        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_qt_metacast(
28043            self as *const crate::QRenderSettings as *mut crate::QRenderSettings,
28044            arg1,
28045        )
28046    }
28047
28048    /// <p>Holds the current render policy.</p>
28049    ///
28050    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSettings::RenderPolicy Qt3DRender::QRenderSettings::renderPolicy() const```</span>.
28051    ///
28052    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#renderPolicy-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current render policy.</p>
28053    /// <p><b>Access functions:</b></p>
28054    /// <div class="table"><table class="alignedsummary">
28055    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> RenderPolicy </td><td class="memItemRight bottomAlign"><span class="name"><b>renderPolicy</b></span>() const</td></tr>
28056    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRenderPolicy</b></span>(RenderPolicy <i>renderPolicy</i>)</td></tr>
28057    /// </tbody></table></div>
28058    /// <p><b>Notifier signal:</b></p>
28059    /// <div class="table"><table class="alignedsummary">
28060    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>renderPolicyChanged</b></span>(RenderPolicy <i>renderPolicy</i>)</td></tr>
28061    /// </tbody></table></div></div>
28062    #[inline(always)]
28063    pub unsafe fn render_policy(&self) -> crate::q_render_settings::RenderPolicy {
28064        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_renderPolicy(
28065            self as *const crate::QRenderSettings,
28066        )
28067    }
28068
28069    /// <p>Holds the currently active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
28070    ///
28071    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderSettings::setActiveFrameGraph(Qt3DRender::QFrameGraphNode* activeFrameGraph)```</span>.
28072    ///
28073    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#activeFrameGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the currently active <a href="http://doc.qt.io/qt-5/qt3drender-framegraph.html">FrameGraph</a>.</p>
28074    /// <p><b>Access functions:</b></p>
28075    /// <div class="table"><table class="alignedsummary">
28076    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QFrameGraphNode *</td><td class="memItemRight bottomAlign"><span class="name"><b>activeFrameGraph</b></span>() const</td></tr>
28077    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setActiveFrameGraph</b></span>(QFrameGraphNode *<i>activeFrameGraph</i>)</td></tr>
28078    /// </tbody></table></div>
28079    /// <p><b>Notifier signal:</b></p>
28080    /// <div class="table"><table class="alignedsummary">
28081    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>activeFrameGraphChanged</b></span>(QFrameGraphNode *<i>activeFrameGraph</i>)</td></tr>
28082    /// </tbody></table></div></div>
28083    #[inline(always)]
28084    pub unsafe fn set_active_frame_graph(
28085        &self,
28086        active_frame_graph: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFrameGraphNode>>,
28087    ) {
28088        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_setActiveFrameGraph(
28089            self as *const crate::QRenderSettings as *mut crate::QRenderSettings,
28090            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFrameGraphNode>>::cast_into(
28091                active_frame_graph,
28092            )
28093            .as_raw_ptr() as *mut crate::QFrameGraphNode,
28094        )
28095    }
28096
28097    /// <p>Holds the current render policy.</p>
28098    ///
28099    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderSettings::setRenderPolicy(Qt3DRender::QRenderSettings::RenderPolicy renderPolicy)```</span>.
28100    ///
28101    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersettings.html#renderPolicy-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current render policy.</p>
28102    /// <p><b>Access functions:</b></p>
28103    /// <div class="table"><table class="alignedsummary">
28104    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> RenderPolicy </td><td class="memItemRight bottomAlign"><span class="name"><b>renderPolicy</b></span>() const</td></tr>
28105    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRenderPolicy</b></span>(RenderPolicy <i>renderPolicy</i>)</td></tr>
28106    /// </tbody></table></div>
28107    /// <p><b>Notifier signal:</b></p>
28108    /// <div class="table"><table class="alignedsummary">
28109    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>renderPolicyChanged</b></span>(RenderPolicy <i>renderPolicy</i>)</td></tr>
28110    /// </tbody></table></div></div>
28111    #[inline(always)]
28112    pub unsafe fn set_render_policy(&self, render_policy: crate::q_render_settings::RenderPolicy) {
28113        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_setRenderPolicy(
28114            self as *const crate::QRenderSettings as *mut crate::QRenderSettings,
28115            render_policy,
28116        )
28117    }
28118
28119    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
28120    #[inline(always)]
28121    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
28122        let ffi_result =
28123            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_staticMetaObject() };
28124        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
28125            .expect("attempted to construct a null Ref")
28126    }
28127
28128    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderSettings::tr(const char* s, const char* c, int n)```</span>.
28129    #[inline(always)]
28130    pub unsafe fn tr(
28131        s: *const ::std::os::raw::c_char,
28132        c: *const ::std::os::raw::c_char,
28133        n: ::std::os::raw::c_int,
28134    ) -> ::cpp_core::CppBox<::qt_core::QString> {
28135        let ffi_result =
28136            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_tr(s, c, n) };
28137        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28138    }
28139
28140    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderSettings::trUtf8(const char* s, const char* c, int n)```</span>.
28141    #[inline(always)]
28142    pub unsafe fn tr_utf8(
28143        s: *const ::std::os::raw::c_char,
28144        c: *const ::std::os::raw::c_char,
28145        n: ::std::os::raw::c_int,
28146    ) -> ::cpp_core::CppBox<::qt_core::QString> {
28147        let ffi_result =
28148            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_trUtf8(s, c, n) };
28149        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28150    }
28151}
28152
28153/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">FrameGraph</a> node offers a way of specifying a set of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> objects to be applied during the execution of a framegraph branch.</p>
28154///
28155/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderStateSet```</span>.
28156///
28157/// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">FrameGraph</a> node offers a way of specifying a set of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> objects to be applied during the execution of a framegraph branch.</p>
28158/// <p>States set on a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> are set globally, contrary to the per-material states that can be set on a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>. By default, an empty <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> will result in all render states being disabled when executed. Adding a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> state explicitly enables that render state at runtime.</p></div>
28159#[repr(C)]
28160pub struct QRenderStateSet {
28161    _unused: u8,
28162}
28163impl QRenderStateSet {
28164    /// <p>Adds a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> <i>state</i> to the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> instance.</p>
28165    ///
28166    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderStateSet::addRenderState(Qt3DRender::QRenderState* state)```</span>.
28167    ///
28168    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html#addRenderState">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds a new <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> <i>state</i> to the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> instance.</p>
28169    /// <p><b>Note: </b>Not setting any <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> state on a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> instance implies all the render states will be disabled at render time.</p></div>
28170    #[inline(always)]
28171    pub unsafe fn add_render_state(
28172        &self,
28173        state: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderState>>,
28174    ) {
28175        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_addRenderState(
28176            self as *const crate::QRenderStateSet as *mut crate::QRenderStateSet,
28177            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderState>>::cast_into(state)
28178                .as_raw_ptr() as *mut crate::QRenderState,
28179        )
28180    }
28181
28182    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderStateSet::metaObject() const```</span>.
28183    #[inline(always)]
28184    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
28185        let ffi_result = {
28186            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_metaObject(
28187                self as *const crate::QRenderStateSet,
28188            )
28189        };
28190        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
28191    }
28192
28193    /// <p>Default constructs an instance of QRenderStateSet.</p>
28194    ///
28195    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderStateSet::QRenderStateSet(Qt3DCore::QNode* parent = …)```</span>.
28196    ///
28197    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html#QRenderStateSet">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRenderStateSet.</p></div>
28198    #[inline(always)]
28199    pub unsafe fn new_1a(
28200        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
28201    ) -> ::qt_core::QBox<crate::QRenderStateSet> {
28202        let ffi_result = {
28203            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_QRenderStateSet(
28204                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
28205                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
28206            )
28207        };
28208        ::qt_core::QBox::from_raw(ffi_result)
28209    }
28210
28211    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">FrameGraph</a> node offers a way of specifying a set of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> objects to be applied during the execution of a framegraph branch.</p>
28212    ///
28213    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderStateSet::QRenderStateSet()```</span>.
28214    ///
28215    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">FrameGraph</a> node offers a way of specifying a set of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> objects to be applied during the execution of a framegraph branch.</p>
28216    /// <p>States set on a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> are set globally, contrary to the per-material states that can be set on a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>. By default, an empty <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> will result in all render states being disabled when executed. Adding a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> state explicitly enables that render state at runtime.</p></div>
28217    #[inline(always)]
28218    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRenderStateSet> {
28219        let ffi_result =
28220            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_QRenderStateSet1() };
28221        ::qt_core::QBox::from_raw(ffi_result)
28222    }
28223
28224    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderStateSet::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
28225    #[inline(always)]
28226    pub unsafe fn qt_metacall(
28227        &self,
28228        arg1: ::qt_core::q_meta_object::Call,
28229        arg2: ::std::os::raw::c_int,
28230        arg3: *mut *mut ::std::ffi::c_void,
28231    ) -> ::std::os::raw::c_int {
28232        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_qt_metacall(
28233            self as *const crate::QRenderStateSet as *mut crate::QRenderStateSet,
28234            arg1,
28235            arg2,
28236            arg3,
28237        )
28238    }
28239
28240    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderStateSet::qt_metacast(const char* arg1)```</span>.
28241    #[inline(always)]
28242    pub unsafe fn qt_metacast(
28243        &self,
28244        arg1: *const ::std::os::raw::c_char,
28245    ) -> *mut ::std::ffi::c_void {
28246        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_qt_metacast(
28247            self as *const crate::QRenderStateSet as *mut crate::QRenderStateSet,
28248            arg1,
28249        )
28250    }
28251
28252    /// <p>Removes the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> <i>state</i> from the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> instance.</p>
28253    ///
28254    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderStateSet::removeRenderState(Qt3DRender::QRenderState* state)```</span>.
28255    ///
28256    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html#removeRenderState">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> <i>state</i> from the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> instance.</p></div>
28257    #[inline(always)]
28258    pub unsafe fn remove_render_state(
28259        &self,
28260        state: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderState>>,
28261    ) {
28262        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_removeRenderState(
28263            self as *const crate::QRenderStateSet as *mut crate::QRenderStateSet,
28264            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderState>>::cast_into(state)
28265                .as_raw_ptr() as *mut crate::QRenderState,
28266        )
28267    }
28268
28269    /// <p>Returns the list of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> objects that compose the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> instance.</p>
28270    ///
28271    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*> Qt3DRender::QRenderStateSet::renderStates() const```</span>.
28272    ///
28273    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html#renderStates">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstate.html">QRenderState</a> objects that compose the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderstateset.html">QRenderStateSet</a> instance.</p></div>
28274    #[inline(always)]
28275    pub unsafe fn render_states(&self) -> ::cpp_core::CppBox<crate::QVectorOfQRenderState> {
28276        let ffi_result = {
28277            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_renderStates(
28278                self as *const crate::QRenderStateSet,
28279            )
28280        };
28281        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28282    }
28283
28284    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
28285    #[inline(always)]
28286    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
28287        let ffi_result =
28288            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_staticMetaObject() };
28289        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
28290            .expect("attempted to construct a null Ref")
28291    }
28292
28293    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderStateSet::tr(const char* s, const char* c, int n)```</span>.
28294    #[inline(always)]
28295    pub unsafe fn tr(
28296        s: *const ::std::os::raw::c_char,
28297        c: *const ::std::os::raw::c_char,
28298        n: ::std::os::raw::c_int,
28299    ) -> ::cpp_core::CppBox<::qt_core::QString> {
28300        let ffi_result =
28301            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_tr(s, c, n) };
28302        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28303    }
28304
28305    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderStateSet::trUtf8(const char* s, const char* c, int n)```</span>.
28306    #[inline(always)]
28307    pub unsafe fn tr_utf8(
28308        s: *const ::std::os::raw::c_char,
28309        c: *const ::std::os::raw::c_char,
28310        n: ::std::os::raw::c_int,
28311    ) -> ::cpp_core::CppBox<::qt_core::QString> {
28312        let ffi_result =
28313            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_trUtf8(s, c, n) };
28314        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28315    }
28316}
28317
28318/// <p>Provides a way of specifying the render surface</p>
28319///
28320/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderSurfaceSelector```</span>.
28321///
28322/// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a way of specifying the render surface</p>
28323/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">Qt3DRender::QRenderSurfaceSelector</a> can be used to select the surface, where Qt3D renders the content. The surface can either be window surface or offscreen surface. The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#externalRenderTargetSize-prop">externalRenderTargetSize</a> is used to specify the actual size of the surface when offscreen surface is used.</p>
28324/// <p>When DPI scaling is used by the system, the logical surface size, which is used by mouse events, and the actual 'physical' size of the surface can differ. The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surfacePixelRatio-prop">surfacePixelRatio</a> is the factor to convert the logical size to the physical size.</p></div>
28325#[repr(C)]
28326pub struct QRenderSurfaceSelector {
28327    _unused: u8,
28328}
28329impl QRenderSurfaceSelector {
28330    /// <p>Sets <i>surfaceObject</i>.</p>
28331    ///
28332    /// Returns a built-in Qt slot `Qt3DRender::QRenderSurfaceSelector::setSurface` that can be passed to `qt_core::Signal::connect`.
28333    ///
28334    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#setSurface">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets <i>surfaceObject</i>.</p>
28335    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surface-prop">surface</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surface-prop">surface</a>().</p></div>
28336    #[inline(always)]
28337    pub fn slot_set_surface(&self) -> ::qt_core::Receiver<(*mut ::qt_core::QObject,)> {
28338        unsafe {
28339            ::qt_core::Receiver::new(
28340                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
28341                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSurface(QObject *)\0"),
28342            )
28343        }
28344    }
28345
28346    /// <p>Holds the surfacePixelRatio of the surface.</p>
28347    ///
28348    /// Returns a built-in Qt slot `Qt3DRender::QRenderSurfaceSelector::setSurfacePixelRatio` that can be passed to `qt_core::Signal::connect`.
28349    ///
28350    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surfacePixelRatio-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the surfacePixelRatio of the surface.</p>
28351    /// <p><b>Access functions:</b></p>
28352    /// <div class="table"><table class="alignedsummary">
28353    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>surfacePixelRatio</b></span>() const</td></tr>
28354    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSurfacePixelRatio</b></span>(float <i>ratio</i>)</td></tr>
28355    /// </tbody></table></div>
28356    /// <p><b>Notifier signal:</b></p>
28357    /// <div class="table"><table class="alignedsummary">
28358    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>surfacePixelRatioChanged</b></span>(float <i>ratio</i>)</td></tr>
28359    /// </tbody></table></div></div>
28360    #[inline(always)]
28361    pub fn slot_set_surface_pixel_ratio(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
28362        unsafe {
28363            ::qt_core::Receiver::new(
28364                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
28365                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSurfacePixelRatio(float)\0"),
28366            )
28367        }
28368    }
28369
28370    /// <p>Sets render target <i>size</i> if different than underlying surface size. Tells picking the correct size.</p>
28371    ///
28372    /// Returns a built-in Qt slot `Qt3DRender::QRenderSurfaceSelector::setExternalRenderTargetSize` that can be passed to `qt_core::Signal::connect`.
28373    ///
28374    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#setExternalRenderTargetSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets render target <i>size</i> if different than underlying surface size. Tells picking the correct size.</p>
28375    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#externalRenderTargetSize-prop">externalRenderTargetSize</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#externalRenderTargetSize-prop">externalRenderTargetSize</a>().</p></div>
28376    #[inline(always)]
28377    pub fn slot_set_external_render_target_size(
28378        &self,
28379    ) -> ::qt_core::Receiver<(*const ::qt_core::QSize,)> {
28380        unsafe {
28381            ::qt_core::Receiver::new(
28382                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
28383                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
28384                    b"1setExternalRenderTargetSize(QSize const &)\0",
28385                ),
28386            )
28387        }
28388    }
28389
28390    /// <p>Holds the surface</p>
28391    ///
28392    /// Returns a built-in Qt signal `Qt3DRender::QRenderSurfaceSelector::surfaceChanged` that can be passed to `qt_core::Signal::connect`.
28393    ///
28394    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surface-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the surface</p>
28395    /// <p><b>Access functions:</b></p>
28396    /// <div class="table"><table class="alignedsummary">
28397    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QObject *</td><td class="memItemRight bottomAlign"><span class="name"><b>surface</b></span>() const</td></tr>
28398    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#setSurface">setSurface</a></b></span>(QObject *<i>surfaceObject</i>)</td></tr>
28399    /// </tbody></table></div>
28400    /// <p><b>Notifier signal:</b></p>
28401    /// <div class="table"><table class="alignedsummary">
28402    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>surfaceChanged</b></span>(QObject *<i>surface</i>)</td></tr>
28403    /// </tbody></table></div></div>
28404    #[inline(always)]
28405    pub fn surface_changed(&self) -> ::qt_core::Signal<(*mut ::qt_core::QObject,)> {
28406        unsafe {
28407            ::qt_core::Signal::new(
28408                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
28409                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2surfaceChanged(QObject *)\0"),
28410            )
28411        }
28412    }
28413
28414    /// <p>Holds the size of the external render target.</p>
28415    ///
28416    /// Returns a built-in Qt signal `Qt3DRender::QRenderSurfaceSelector::externalRenderTargetSizeChanged` that can be passed to `qt_core::Signal::connect`.
28417    ///
28418    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#externalRenderTargetSize-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the size of the external render target.</p>
28419    /// <p><b>Access functions:</b></p>
28420    /// <div class="table"><table class="alignedsummary">
28421    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QSize </td><td class="memItemRight bottomAlign"><span class="name"><b>externalRenderTargetSize</b></span>() const</td></tr>
28422    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#setExternalRenderTargetSize">setExternalRenderTargetSize</a></b></span>(const QSize &amp;<i>size</i>)</td></tr>
28423    /// </tbody></table></div>
28424    /// <p><b>Notifier signal:</b></p>
28425    /// <div class="table"><table class="alignedsummary">
28426    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>externalRenderTargetSizeChanged</b></span>(const QSize &amp;<i>size</i>)</td></tr>
28427    /// </tbody></table></div></div>
28428    #[inline(always)]
28429    pub fn external_render_target_size_changed(
28430        &self,
28431    ) -> ::qt_core::Signal<(*const ::qt_core::QSize,)> {
28432        unsafe {
28433            ::qt_core::Signal::new(
28434                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
28435                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
28436                    b"2externalRenderTargetSizeChanged(QSize const &)\0",
28437                ),
28438            )
28439        }
28440    }
28441
28442    /// <p>Holds the surfacePixelRatio of the surface.</p>
28443    ///
28444    /// Returns a built-in Qt signal `Qt3DRender::QRenderSurfaceSelector::surfacePixelRatioChanged` that can be passed to `qt_core::Signal::connect`.
28445    ///
28446    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surfacePixelRatio-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the surfacePixelRatio of the surface.</p>
28447    /// <p><b>Access functions:</b></p>
28448    /// <div class="table"><table class="alignedsummary">
28449    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>surfacePixelRatio</b></span>() const</td></tr>
28450    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSurfacePixelRatio</b></span>(float <i>ratio</i>)</td></tr>
28451    /// </tbody></table></div>
28452    /// <p><b>Notifier signal:</b></p>
28453    /// <div class="table"><table class="alignedsummary">
28454    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>surfacePixelRatioChanged</b></span>(float <i>ratio</i>)</td></tr>
28455    /// </tbody></table></div></div>
28456    #[inline(always)]
28457    pub fn surface_pixel_ratio_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
28458        unsafe {
28459            ::qt_core::Signal::new(
28460                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
28461                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
28462                    b"2surfacePixelRatioChanged(float)\0",
28463                ),
28464            )
28465        }
28466    }
28467
28468    /// <p>Holds the size of the external render target.</p>
28469    ///
28470    /// Calls C++ function: <span style='color: green;'>```QSize Qt3DRender::QRenderSurfaceSelector::externalRenderTargetSize() const```</span>.
28471    ///
28472    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#externalRenderTargetSize-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the size of the external render target.</p>
28473    /// <p><b>Access functions:</b></p>
28474    /// <div class="table"><table class="alignedsummary">
28475    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QSize </td><td class="memItemRight bottomAlign"><span class="name"><b>externalRenderTargetSize</b></span>() const</td></tr>
28476    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#setExternalRenderTargetSize">setExternalRenderTargetSize</a></b></span>(const QSize &amp;<i>size</i>)</td></tr>
28477    /// </tbody></table></div>
28478    /// <p><b>Notifier signal:</b></p>
28479    /// <div class="table"><table class="alignedsummary">
28480    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>externalRenderTargetSizeChanged</b></span>(const QSize &amp;<i>size</i>)</td></tr>
28481    /// </tbody></table></div></div>
28482    #[inline(always)]
28483    pub unsafe fn external_render_target_size(&self) -> ::cpp_core::CppBox<::qt_core::QSize> {
28484        let ffi_result = {
28485            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_externalRenderTargetSize(self as *const crate::QRenderSurfaceSelector)
28486        };
28487        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28488    }
28489
28490    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderSurfaceSelector::metaObject() const```</span>.
28491    #[inline(always)]
28492    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
28493        let ffi_result = {
28494            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_metaObject(
28495                self as *const crate::QRenderSurfaceSelector,
28496            )
28497        };
28498        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
28499    }
28500
28501    /// <p>Constructs <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">QRenderSurfaceSelector</a> with given <i>parent</i>.</p>
28502    ///
28503    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderSurfaceSelector::QRenderSurfaceSelector(Qt3DCore::QNode* parent = …)```</span>.
28504    ///
28505    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#QRenderSurfaceSelector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">QRenderSurfaceSelector</a> with given <i>parent</i>.</p></div>
28506    #[inline(always)]
28507    pub unsafe fn new_1a(
28508        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
28509    ) -> ::qt_core::QBox<crate::QRenderSurfaceSelector> {
28510        let ffi_result = {
28511            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_QRenderSurfaceSelector(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent).as_raw_ptr() as *mut ::qt_3d_core::QNode)
28512        };
28513        ::qt_core::QBox::from_raw(ffi_result)
28514    }
28515
28516    /// <p>Provides a way of specifying the render surface</p>
28517    ///
28518    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderSurfaceSelector::QRenderSurfaceSelector()```</span>.
28519    ///
28520    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a way of specifying the render surface</p>
28521    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">Qt3DRender::QRenderSurfaceSelector</a> can be used to select the surface, where Qt3D renders the content. The surface can either be window surface or offscreen surface. The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#externalRenderTargetSize-prop">externalRenderTargetSize</a> is used to specify the actual size of the surface when offscreen surface is used.</p>
28522    /// <p>When DPI scaling is used by the system, the logical surface size, which is used by mouse events, and the actual 'physical' size of the surface can differ. The <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surfacePixelRatio-prop">surfacePixelRatio</a> is the factor to convert the logical size to the physical size.</p></div>
28523    #[inline(always)]
28524    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRenderSurfaceSelector> {
28525        let ffi_result = {
28526            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_QRenderSurfaceSelector1()
28527        };
28528        ::qt_core::QBox::from_raw(ffi_result)
28529    }
28530
28531    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderSurfaceSelector::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
28532    #[inline(always)]
28533    pub unsafe fn qt_metacall(
28534        &self,
28535        arg1: ::qt_core::q_meta_object::Call,
28536        arg2: ::std::os::raw::c_int,
28537        arg3: *mut *mut ::std::ffi::c_void,
28538    ) -> ::std::os::raw::c_int {
28539        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_qt_metacall(
28540            self as *const crate::QRenderSurfaceSelector as *mut crate::QRenderSurfaceSelector,
28541            arg1,
28542            arg2,
28543            arg3,
28544        )
28545    }
28546
28547    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderSurfaceSelector::qt_metacast(const char* arg1)```</span>.
28548    #[inline(always)]
28549    pub unsafe fn qt_metacast(
28550        &self,
28551        arg1: *const ::std::os::raw::c_char,
28552    ) -> *mut ::std::ffi::c_void {
28553        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_qt_metacast(
28554            self as *const crate::QRenderSurfaceSelector as *mut crate::QRenderSurfaceSelector,
28555            arg1,
28556        )
28557    }
28558
28559    /// <p>Sets render target <i>size</i> if different than underlying surface size. Tells picking the correct size.</p>
28560    ///
28561    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderSurfaceSelector::setExternalRenderTargetSize(const QSize& size)```</span>.
28562    ///
28563    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#setExternalRenderTargetSize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets render target <i>size</i> if different than underlying surface size. Tells picking the correct size.</p>
28564    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#externalRenderTargetSize-prop">externalRenderTargetSize</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#externalRenderTargetSize-prop">externalRenderTargetSize</a>().</p></div>
28565    #[inline(always)]
28566    pub unsafe fn set_external_render_target_size(
28567        &self,
28568        size: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QSize>>,
28569    ) {
28570        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_setExternalRenderTargetSize(self as *const crate::QRenderSurfaceSelector as *mut crate::QRenderSurfaceSelector, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QSize>>::cast_into(size).as_raw_ptr())
28571    }
28572
28573    /// <p>Sets <i>surfaceObject</i>.</p>
28574    ///
28575    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderSurfaceSelector::setSurface(QObject* surfaceObject)```</span>.
28576    ///
28577    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#setSurface">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets <i>surfaceObject</i>.</p>
28578    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surface-prop">surface</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surface-prop">surface</a>().</p></div>
28579    #[inline(always)]
28580    pub unsafe fn set_surface(
28581        &self,
28582        surface_object: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
28583    ) {
28584        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_setSurface(
28585            self as *const crate::QRenderSurfaceSelector as *mut crate::QRenderSurfaceSelector,
28586            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(surface_object)
28587                .as_raw_ptr() as *mut ::qt_core::QObject,
28588        )
28589    }
28590
28591    /// <p>Holds the surfacePixelRatio of the surface.</p>
28592    ///
28593    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderSurfaceSelector::setSurfacePixelRatio(float ratio)```</span>.
28594    ///
28595    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surfacePixelRatio-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the surfacePixelRatio of the surface.</p>
28596    /// <p><b>Access functions:</b></p>
28597    /// <div class="table"><table class="alignedsummary">
28598    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>surfacePixelRatio</b></span>() const</td></tr>
28599    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSurfacePixelRatio</b></span>(float <i>ratio</i>)</td></tr>
28600    /// </tbody></table></div>
28601    /// <p><b>Notifier signal:</b></p>
28602    /// <div class="table"><table class="alignedsummary">
28603    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>surfacePixelRatioChanged</b></span>(float <i>ratio</i>)</td></tr>
28604    /// </tbody></table></div></div>
28605    #[inline(always)]
28606    pub unsafe fn set_surface_pixel_ratio(&self, ratio: ::std::os::raw::c_float) {
28607        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_setSurfacePixelRatio(
28608            self as *const crate::QRenderSurfaceSelector as *mut crate::QRenderSurfaceSelector,
28609            ratio,
28610        )
28611    }
28612
28613    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
28614    #[inline(always)]
28615    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
28616        let ffi_result = {
28617            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_staticMetaObject()
28618        };
28619        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
28620            .expect("attempted to construct a null Ref")
28621    }
28622
28623    /// <p>Holds the surface</p>
28624    ///
28625    /// Calls C++ function: <span style='color: green;'>```QObject* Qt3DRender::QRenderSurfaceSelector::surface() const```</span>.
28626    ///
28627    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surface-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the surface</p>
28628    /// <p><b>Access functions:</b></p>
28629    /// <div class="table"><table class="alignedsummary">
28630    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QObject *</td><td class="memItemRight bottomAlign"><span class="name"><b>surface</b></span>() const</td></tr>
28631    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#setSurface">setSurface</a></b></span>(QObject *<i>surfaceObject</i>)</td></tr>
28632    /// </tbody></table></div>
28633    /// <p><b>Notifier signal:</b></p>
28634    /// <div class="table"><table class="alignedsummary">
28635    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>surfaceChanged</b></span>(QObject *<i>surface</i>)</td></tr>
28636    /// </tbody></table></div></div>
28637    #[inline(always)]
28638    pub unsafe fn surface(&self) -> ::qt_core::QPtr<::qt_core::QObject> {
28639        let ffi_result = {
28640            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_surface(
28641                self as *const crate::QRenderSurfaceSelector,
28642            )
28643        };
28644        ::qt_core::QPtr::from_raw(ffi_result)
28645    }
28646
28647    /// <p>Holds the surfacePixelRatio of the surface.</p>
28648    ///
28649    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QRenderSurfaceSelector::surfacePixelRatio() const```</span>.
28650    ///
28651    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html#surfacePixelRatio-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the surfacePixelRatio of the surface.</p>
28652    /// <p><b>Access functions:</b></p>
28653    /// <div class="table"><table class="alignedsummary">
28654    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>surfacePixelRatio</b></span>() const</td></tr>
28655    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSurfacePixelRatio</b></span>(float <i>ratio</i>)</td></tr>
28656    /// </tbody></table></div>
28657    /// <p><b>Notifier signal:</b></p>
28658    /// <div class="table"><table class="alignedsummary">
28659    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>surfacePixelRatioChanged</b></span>(float <i>ratio</i>)</td></tr>
28660    /// </tbody></table></div></div>
28661    #[inline(always)]
28662    pub unsafe fn surface_pixel_ratio(&self) -> ::std::os::raw::c_float {
28663        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_surfacePixelRatio(
28664            self as *const crate::QRenderSurfaceSelector,
28665        )
28666    }
28667
28668    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderSurfaceSelector::tr(const char* s, const char* c, int n)```</span>.
28669    #[inline(always)]
28670    pub unsafe fn tr(
28671        s: *const ::std::os::raw::c_char,
28672        c: *const ::std::os::raw::c_char,
28673        n: ::std::os::raw::c_int,
28674    ) -> ::cpp_core::CppBox<::qt_core::QString> {
28675        let ffi_result =
28676            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_tr(s, c, n) };
28677        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28678    }
28679
28680    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderSurfaceSelector::trUtf8(const char* s, const char* c, int n)```</span>.
28681    #[inline(always)]
28682    pub unsafe fn tr_utf8(
28683        s: *const ::std::os::raw::c_char,
28684        c: *const ::std::os::raw::c_char,
28685        n: ::std::os::raw::c_int,
28686    ) -> ::cpp_core::CppBox<::qt_core::QString> {
28687        let ffi_result = {
28688            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_trUtf8(s, c, n)
28689        };
28690        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28691    }
28692}
28693
28694/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> class encapsulates a target (usually a frame buffer object) which the renderer can render into.</p>
28695///
28696/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderTarget```</span>.
28697///
28698/// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> class encapsulates a target (usually a frame buffer object) which the renderer can render into.</p>
28699/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">Qt3DRender::QRenderTarget</a> comprises of <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">Qt3DRender::QRenderTargetOutput</a> objects, which specify the the buffers the render target is rendering to. The user can specify MRT(Multiple Render Targets) by attaching multiple textures to different attachment points. The results are undefined if the user tries to attach multiple textures to the same attachment point. At render time, only the draw buffers specified in the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a> are used.</p></div>
28700#[repr(C)]
28701pub struct QRenderTarget {
28702    _unused: u8,
28703}
28704impl QRenderTarget {
28705    /// <p>Adds a chosen output via <i>output</i>.</p>
28706    ///
28707    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderTarget::addOutput(Qt3DRender::QRenderTargetOutput* output)```</span>.
28708    ///
28709    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html#addOutput">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Adds a chosen output via <i>output</i>.</p></div>
28710    #[inline(always)]
28711    pub unsafe fn add_output(
28712        &self,
28713        output: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTargetOutput>>,
28714    ) {
28715        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_addOutput(
28716            self as *const crate::QRenderTarget as *mut crate::QRenderTarget,
28717            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTargetOutput>>::cast_into(output)
28718                .as_raw_ptr() as *mut crate::QRenderTargetOutput,
28719        )
28720    }
28721
28722    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderTarget::metaObject() const```</span>.
28723    #[inline(always)]
28724    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
28725        let ffi_result = {
28726            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_metaObject(
28727                self as *const crate::QRenderTarget,
28728            )
28729        };
28730        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
28731    }
28732
28733    /// <p>Default constructs an instance of QRenderTarget.</p>
28734    ///
28735    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderTarget::QRenderTarget(Qt3DCore::QNode* parent = …)```</span>.
28736    ///
28737    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html#QRenderTarget">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRenderTarget.</p></div>
28738    #[inline(always)]
28739    pub unsafe fn new_1a(
28740        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
28741    ) -> ::qt_core::QBox<crate::QRenderTarget> {
28742        let ffi_result = {
28743            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_QRenderTarget(
28744                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
28745                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
28746            )
28747        };
28748        ::qt_core::QBox::from_raw(ffi_result)
28749    }
28750
28751    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> class encapsulates a target (usually a frame buffer object) which the renderer can render into.</p>
28752    ///
28753    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderTarget::QRenderTarget()```</span>.
28754    ///
28755    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> class encapsulates a target (usually a frame buffer object) which the renderer can render into.</p>
28756    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">Qt3DRender::QRenderTarget</a> comprises of <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html">Qt3DRender::QRenderTargetOutput</a> objects, which specify the the buffers the render target is rendering to. The user can specify MRT(Multiple Render Targets) by attaching multiple textures to different attachment points. The results are undefined if the user tries to attach multiple textures to the same attachment point. At render time, only the draw buffers specified in the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a> are used.</p></div>
28757    #[inline(always)]
28758    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRenderTarget> {
28759        let ffi_result =
28760            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_QRenderTarget1() };
28761        ::qt_core::QBox::from_raw(ffi_result)
28762    }
28763
28764    /// <p>Returns the chosen outputs.</p>
28765    ///
28766    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*> Qt3DRender::QRenderTarget::outputs() const```</span>.
28767    ///
28768    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html#outputs">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the chosen outputs.</p></div>
28769    #[inline(always)]
28770    pub unsafe fn outputs(&self) -> ::cpp_core::CppBox<crate::QVectorOfQRenderTargetOutput> {
28771        let ffi_result = {
28772            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_outputs(
28773                self as *const crate::QRenderTarget,
28774            )
28775        };
28776        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28777    }
28778
28779    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderTarget::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
28780    #[inline(always)]
28781    pub unsafe fn qt_metacall(
28782        &self,
28783        arg1: ::qt_core::q_meta_object::Call,
28784        arg2: ::std::os::raw::c_int,
28785        arg3: *mut *mut ::std::ffi::c_void,
28786    ) -> ::std::os::raw::c_int {
28787        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_qt_metacall(
28788            self as *const crate::QRenderTarget as *mut crate::QRenderTarget,
28789            arg1,
28790            arg2,
28791            arg3,
28792        )
28793    }
28794
28795    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderTarget::qt_metacast(const char* arg1)```</span>.
28796    #[inline(always)]
28797    pub unsafe fn qt_metacast(
28798        &self,
28799        arg1: *const ::std::os::raw::c_char,
28800    ) -> *mut ::std::ffi::c_void {
28801        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_qt_metacast(
28802            self as *const crate::QRenderTarget as *mut crate::QRenderTarget,
28803            arg1,
28804        )
28805    }
28806
28807    /// <p>Removes a chosen output via <i>output</i>.</p>
28808    ///
28809    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderTarget::removeOutput(Qt3DRender::QRenderTargetOutput* output)```</span>.
28810    ///
28811    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html#removeOutput">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes a chosen output via <i>output</i>.</p></div>
28812    #[inline(always)]
28813    pub unsafe fn remove_output(
28814        &self,
28815        output: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTargetOutput>>,
28816    ) {
28817        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_removeOutput(
28818            self as *const crate::QRenderTarget as *mut crate::QRenderTarget,
28819            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTargetOutput>>::cast_into(output)
28820                .as_raw_ptr() as *mut crate::QRenderTargetOutput,
28821        )
28822    }
28823
28824    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
28825    #[inline(always)]
28826    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
28827        let ffi_result =
28828            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_staticMetaObject() };
28829        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
28830            .expect("attempted to construct a null Ref")
28831    }
28832
28833    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderTarget::tr(const char* s, const char* c, int n)```</span>.
28834    #[inline(always)]
28835    pub unsafe fn tr(
28836        s: *const ::std::os::raw::c_char,
28837        c: *const ::std::os::raw::c_char,
28838        n: ::std::os::raw::c_int,
28839    ) -> ::cpp_core::CppBox<::qt_core::QString> {
28840        let ffi_result =
28841            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_tr(s, c, n) };
28842        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28843    }
28844
28845    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderTarget::trUtf8(const char* s, const char* c, int n)```</span>.
28846    #[inline(always)]
28847    pub unsafe fn tr_utf8(
28848        s: *const ::std::os::raw::c_char,
28849        c: *const ::std::os::raw::c_char,
28850        n: ::std::os::raw::c_int,
28851    ) -> ::cpp_core::CppBox<::qt_core::QString> {
28852        let ffi_result =
28853            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_trUtf8(s, c, n) };
28854        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28855    }
28856}
28857
28858/// <p>Provides a way of specifying a render target</p>
28859///
28860/// C++ class: <span style='color: green;'>```Qt3DRender::QRenderTargetSelector```</span>.
28861///
28862/// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a way of specifying a render target</p>
28863/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a> is used to select active <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">Qt3DRender::QRenderTarget</a> for the FrameGraph. When <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">QRenderTargetSelector</a> is present in the FrameGraph, the rendering is directed into QTexture objects or draw buffers instead of the surface specified in the <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">Qt3DRender::QRenderSurfaceSelector</a>. A render buffer is automatically generated for an attachment point if drawBuffers contain attachment point that any output in the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> do not specify. If the drawBuffers is empty, the renderer will default to using all the outputs in <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a>.</p></div>
28864#[repr(C)]
28865pub struct QRenderTargetSelector {
28866    _unused: u8,
28867}
28868impl QRenderTargetSelector {
28869    /// <p>Holds the current render target</p>
28870    ///
28871    /// Returns a built-in Qt slot `Qt3DRender::QRenderTargetSelector::setTarget` that can be passed to `qt_core::Signal::connect`.
28872    ///
28873    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html#target-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current render target</p>
28874    /// <p><b>Access functions:</b></p>
28875    /// <div class="table"><table class="alignedsummary">
28876    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRenderTarget *</td><td class="memItemRight bottomAlign"><span class="name"><b>target</b></span>() const</td></tr>
28877    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTarget</b></span>(QRenderTarget *<i>target</i>)</td></tr>
28878    /// </tbody></table></div>
28879    /// <p><b>Notifier signal:</b></p>
28880    /// <div class="table"><table class="alignedsummary">
28881    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>targetChanged</b></span>(QRenderTarget *<i>target</i>)</td></tr>
28882    /// </tbody></table></div></div>
28883    #[inline(always)]
28884    pub fn slot_set_target(&self) -> ::qt_core::Receiver<(*mut crate::QRenderTarget,)> {
28885        unsafe {
28886            ::qt_core::Receiver::new(
28887                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
28888                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
28889                    b"1setTarget(Qt3DRender::QRenderTarget *)\0",
28890                ),
28891            )
28892        }
28893    }
28894
28895    /// <p>Holds the current render target</p>
28896    ///
28897    /// Returns a built-in Qt signal `Qt3DRender::QRenderTargetSelector::targetChanged` that can be passed to `qt_core::Signal::connect`.
28898    ///
28899    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html#target-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current render target</p>
28900    /// <p><b>Access functions:</b></p>
28901    /// <div class="table"><table class="alignedsummary">
28902    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRenderTarget *</td><td class="memItemRight bottomAlign"><span class="name"><b>target</b></span>() const</td></tr>
28903    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTarget</b></span>(QRenderTarget *<i>target</i>)</td></tr>
28904    /// </tbody></table></div>
28905    /// <p><b>Notifier signal:</b></p>
28906    /// <div class="table"><table class="alignedsummary">
28907    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>targetChanged</b></span>(QRenderTarget *<i>target</i>)</td></tr>
28908    /// </tbody></table></div></div>
28909    #[inline(always)]
28910    pub fn target_changed(&self) -> ::qt_core::Signal<(*mut crate::QRenderTarget,)> {
28911        unsafe {
28912            ::qt_core::Signal::new(
28913                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
28914                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
28915                    b"2targetChanged(Qt3DRender::QRenderTarget *)\0",
28916                ),
28917            )
28918        }
28919    }
28920
28921    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRenderTargetSelector::metaObject() const```</span>.
28922    #[inline(always)]
28923    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
28924        let ffi_result = {
28925            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_metaObject(
28926                self as *const crate::QRenderTargetSelector,
28927            )
28928        };
28929        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
28930    }
28931
28932    /// <p>Default constructs an instance of QRenderTargetSelector.</p>
28933    ///
28934    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderTargetSelector::QRenderTargetSelector(Qt3DCore::QNode* parent = …)```</span>.
28935    ///
28936    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html#QRenderTargetSelector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRenderTargetSelector.</p></div>
28937    #[inline(always)]
28938    pub unsafe fn new_1a(
28939        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
28940    ) -> ::qt_core::QBox<crate::QRenderTargetSelector> {
28941        let ffi_result = {
28942            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_QRenderTargetSelector(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent).as_raw_ptr() as *mut ::qt_3d_core::QNode)
28943        };
28944        ::qt_core::QBox::from_raw(ffi_result)
28945    }
28946
28947    /// <p>Provides a way of specifying a render target</p>
28948    ///
28949    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRenderTargetSelector::QRenderTargetSelector()```</span>.
28950    ///
28951    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a way of specifying a render target</p>
28952    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a> is used to select active <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">Qt3DRender::QRenderTarget</a> for the FrameGraph. When <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">QRenderTargetSelector</a> is present in the FrameGraph, the rendering is directed into QTexture objects or draw buffers instead of the surface specified in the <a href="http://doc.qt.io/qt-5/qt3drender-qrendersurfaceselector.html">Qt3DRender::QRenderSurfaceSelector</a>. A render buffer is automatically generated for an attachment point if drawBuffers contain attachment point that any output in the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> do not specify. If the drawBuffers is empty, the renderer will default to using all the outputs in <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a>.</p></div>
28953    #[inline(always)]
28954    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRenderTargetSelector> {
28955        let ffi_result = {
28956            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_QRenderTargetSelector1()
28957        };
28958        ::qt_core::QBox::from_raw(ffi_result)
28959    }
28960
28961    /// <p>Returns the list of draw buffers for the current <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a> instance.</p>
28962    ///
28963    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint> Qt3DRender::QRenderTargetSelector::outputs() const```</span>.
28964    ///
28965    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html#outputs">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of draw buffers for the current <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a> instance.</p>
28966    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html#setOutputs">setOutputs</a>().</p></div>
28967    #[inline(always)]
28968    pub unsafe fn outputs(&self) -> ::cpp_core::CppBox<crate::QVectorOfAttachmentPoint> {
28969        let ffi_result = {
28970            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_outputs(
28971                self as *const crate::QRenderTargetSelector,
28972            )
28973        };
28974        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
28975    }
28976
28977    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRenderTargetSelector::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
28978    #[inline(always)]
28979    pub unsafe fn qt_metacall(
28980        &self,
28981        arg1: ::qt_core::q_meta_object::Call,
28982        arg2: ::std::os::raw::c_int,
28983        arg3: *mut *mut ::std::ffi::c_void,
28984    ) -> ::std::os::raw::c_int {
28985        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_qt_metacall(
28986            self as *const crate::QRenderTargetSelector as *mut crate::QRenderTargetSelector,
28987            arg1,
28988            arg2,
28989            arg3,
28990        )
28991    }
28992
28993    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRenderTargetSelector::qt_metacast(const char* arg1)```</span>.
28994    #[inline(always)]
28995    pub unsafe fn qt_metacast(
28996        &self,
28997        arg1: *const ::std::os::raw::c_char,
28998    ) -> *mut ::std::ffi::c_void {
28999        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_qt_metacast(
29000            self as *const crate::QRenderTargetSelector as *mut crate::QRenderTargetSelector,
29001            arg1,
29002        )
29003    }
29004
29005    /// <p>Sets the draw <i>buffers</i> to be used. The draw buffers should be matching the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#AttachmentPoint-enum">Qt3DRender::QRenderTargetOutput::AttachmentPoint</a> defined in the attachments of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">Qt3DRender::QRenderTarget</a> associated to the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a> instance.</p>
29006    ///
29007    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QRenderTargetSelector::setOutputs(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& buffers)```</span>.
29008    ///
29009    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html#setOutputs">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the draw <i>buffers</i> to be used. The draw buffers should be matching the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetoutput.html#AttachmentPoint-enum">Qt3DRender::QRenderTargetOutput::AttachmentPoint</a> defined in the attachments of the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">Qt3DRender::QRenderTarget</a> associated to the <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html">Qt3DRender::QRenderTargetSelector</a> instance.</p>
29010    /// <p><b>Note: </b>At render time, if no draw buffer has been specified, the renderer will default to using all the attachments' draw buffers.</p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html#outputs">outputs</a>().</p></div>
29011    #[inline(always)]
29012    pub unsafe fn set_outputs(
29013        &self,
29014        buffers: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
29015    ) {
29016        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_setOutputs(
29017            self as *const crate::QRenderTargetSelector as *mut crate::QRenderTargetSelector,
29018            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(
29019                buffers,
29020            )
29021            .as_raw_ptr(),
29022        )
29023    }
29024
29025    /// <p>Holds the current render target</p>
29026    ///
29027    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRenderTargetSelector::setTarget(Qt3DRender::QRenderTarget* target)```</span>.
29028    ///
29029    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html#target-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current render target</p>
29030    /// <p><b>Access functions:</b></p>
29031    /// <div class="table"><table class="alignedsummary">
29032    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRenderTarget *</td><td class="memItemRight bottomAlign"><span class="name"><b>target</b></span>() const</td></tr>
29033    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTarget</b></span>(QRenderTarget *<i>target</i>)</td></tr>
29034    /// </tbody></table></div>
29035    /// <p><b>Notifier signal:</b></p>
29036    /// <div class="table"><table class="alignedsummary">
29037    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>targetChanged</b></span>(QRenderTarget *<i>target</i>)</td></tr>
29038    /// </tbody></table></div></div>
29039    #[inline(always)]
29040    pub unsafe fn set_target(
29041        &self,
29042        target: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTarget>>,
29043    ) {
29044        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_setTarget(
29045            self as *const crate::QRenderTargetSelector as *mut crate::QRenderTargetSelector,
29046            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTarget>>::cast_into(target)
29047                .as_raw_ptr() as *mut crate::QRenderTarget,
29048        )
29049    }
29050
29051    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
29052    #[inline(always)]
29053    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
29054        let ffi_result = {
29055            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_staticMetaObject()
29056        };
29057        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
29058            .expect("attempted to construct a null Ref")
29059    }
29060
29061    /// <p>Holds the current render target</p>
29062    ///
29063    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTarget* Qt3DRender::QRenderTargetSelector::target() const```</span>.
29064    ///
29065    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendertargetselector.html#target-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the current render target</p>
29066    /// <p><b>Access functions:</b></p>
29067    /// <div class="table"><table class="alignedsummary">
29068    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRenderTarget *</td><td class="memItemRight bottomAlign"><span class="name"><b>target</b></span>() const</td></tr>
29069    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTarget</b></span>(QRenderTarget *<i>target</i>)</td></tr>
29070    /// </tbody></table></div>
29071    /// <p><b>Notifier signal:</b></p>
29072    /// <div class="table"><table class="alignedsummary">
29073    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>targetChanged</b></span>(QRenderTarget *<i>target</i>)</td></tr>
29074    /// </tbody></table></div></div>
29075    #[inline(always)]
29076    pub unsafe fn target(&self) -> ::qt_core::QPtr<crate::QRenderTarget> {
29077        let ffi_result = {
29078            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_target(
29079                self as *const crate::QRenderTargetSelector,
29080            )
29081        };
29082        ::qt_core::QPtr::from_raw(ffi_result)
29083    }
29084
29085    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderTargetSelector::tr(const char* s, const char* c, int n)```</span>.
29086    #[inline(always)]
29087    pub unsafe fn tr(
29088        s: *const ::std::os::raw::c_char,
29089        c: *const ::std::os::raw::c_char,
29090        n: ::std::os::raw::c_int,
29091    ) -> ::cpp_core::CppBox<::qt_core::QString> {
29092        let ffi_result =
29093            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_tr(s, c, n) };
29094        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
29095    }
29096
29097    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRenderTargetSelector::trUtf8(const char* s, const char* c, int n)```</span>.
29098    #[inline(always)]
29099    pub unsafe fn tr_utf8(
29100        s: *const ::std::os::raw::c_char,
29101        c: *const ::std::os::raw::c_char,
29102        n: ::std::os::raw::c_int,
29103    ) -> ::cpp_core::CppBox<::qt_core::QString> {
29104        let ffi_result =
29105            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_trUtf8(s, c, n) };
29106        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
29107    }
29108}
29109
29110pub mod q_scene_loader {
29111    //! C++ type: <span style='color: green;'>```Qt3DRender::QSceneLoader```</span>
29112
29113    /// C++ enum: <span style='color: green;'>```Qt3DRender::QSceneLoader::Status```</span>.
29114    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
29115    #[repr(transparent)]
29116    pub struct Status(::std::os::raw::c_int);
29117
29118    impl From<::std::os::raw::c_int> for Status {
29119        fn from(value: ::std::os::raw::c_int) -> Self {
29120            Status(value)
29121        }
29122    }
29123
29124    impl From<Status> for ::std::os::raw::c_int {
29125        fn from(value: Status) -> Self {
29126            value.0
29127        }
29128    }
29129
29130    impl Status {
29131        pub fn to_int(&self) -> ::std::os::raw::c_int {
29132            self.0
29133        }
29134    }
29135
29136    impl Status {
29137        /// C++ enum variant: <span style='color: green;'>```None = 0```</span>
29138        #[allow(non_upper_case_globals)]
29139        pub const None: crate::q_scene_loader::Status = crate::q_scene_loader::Status(0);
29140        /// C++ enum variant: <span style='color: green;'>```Loading = 1```</span>
29141        #[allow(non_upper_case_globals)]
29142        pub const Loading: crate::q_scene_loader::Status = crate::q_scene_loader::Status(1);
29143        /// C++ enum variant: <span style='color: green;'>```Ready = 2```</span>
29144        #[allow(non_upper_case_globals)]
29145        pub const Ready: crate::q_scene_loader::Status = crate::q_scene_loader::Status(2);
29146        /// C++ enum variant: <span style='color: green;'>```Error = 3```</span>
29147        #[allow(non_upper_case_globals)]
29148        pub const Error: crate::q_scene_loader::Status = crate::q_scene_loader::Status(3);
29149    }
29150
29151    /// C++ enum: <span style='color: green;'>```Qt3DRender::QSceneLoader::ComponentType```</span>.
29152    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
29153    #[repr(transparent)]
29154    pub struct ComponentType(::std::os::raw::c_int);
29155
29156    impl From<::std::os::raw::c_int> for ComponentType {
29157        fn from(value: ::std::os::raw::c_int) -> Self {
29158            ComponentType(value)
29159        }
29160    }
29161
29162    impl From<ComponentType> for ::std::os::raw::c_int {
29163        fn from(value: ComponentType) -> Self {
29164            value.0
29165        }
29166    }
29167
29168    impl ComponentType {
29169        pub fn to_int(&self) -> ::std::os::raw::c_int {
29170            self.0
29171        }
29172    }
29173
29174    impl ComponentType {
29175        /// C++ enum variant: <span style='color: green;'>```UnknownComponent = 0```</span>
29176        #[allow(non_upper_case_globals)]
29177        pub const UnknownComponent: crate::q_scene_loader::ComponentType =
29178            crate::q_scene_loader::ComponentType(0);
29179        /// C++ enum variant: <span style='color: green;'>```GeometryRendererComponent = 1```</span>
29180        #[allow(non_upper_case_globals)]
29181        pub const GeometryRendererComponent: crate::q_scene_loader::ComponentType =
29182            crate::q_scene_loader::ComponentType(1);
29183        /// C++ enum variant: <span style='color: green;'>```TransformComponent = 2```</span>
29184        #[allow(non_upper_case_globals)]
29185        pub const TransformComponent: crate::q_scene_loader::ComponentType =
29186            crate::q_scene_loader::ComponentType(2);
29187        /// C++ enum variant: <span style='color: green;'>```MaterialComponent = 3```</span>
29188        #[allow(non_upper_case_globals)]
29189        pub const MaterialComponent: crate::q_scene_loader::ComponentType =
29190            crate::q_scene_loader::ComponentType(3);
29191        /// C++ enum variant: <span style='color: green;'>```LightComponent = 4```</span>
29192        #[allow(non_upper_case_globals)]
29193        pub const LightComponent: crate::q_scene_loader::ComponentType =
29194            crate::q_scene_loader::ComponentType(4);
29195        /// C++ enum variant: <span style='color: green;'>```CameraLensComponent = 5```</span>
29196        #[allow(non_upper_case_globals)]
29197        pub const CameraLensComponent: crate::q_scene_loader::ComponentType =
29198            crate::q_scene_loader::ComponentType(5);
29199    }
29200}
29201/// <p>Provides the facility to load an existing Scene</p>
29202///
29203/// C++ class: <span style='color: green;'>```Qt3DRender::QSceneLoader```</span>.
29204///
29205/// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides the facility to load an existing Scene</p>
29206/// <p>Given a 3D source file, the <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">Qt3DRender::QSceneLoader</a> will try to parse it and build a tree of <a href="http://doc.qt.io/qt-5/qt3dcore-qentity.html">Qt3DCore::QEntity</a> objects with proper <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">Qt3DRender::QGeometryRenderer</a>, <a href="http://doc.qt.io/qt-5/qt3dcore-qtransform.html">Qt3DCore::QTransform</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">Qt3DRender::QMaterial</a> components.</p>
29207/// <p>The loader will try to determine the best material to be used based on the properties of the model file. If you wish to use a custom material, you will have to traverse the tree and replace the default associated materials with yours.</p>
29208/// <p>As the name implies, <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">Qt3DRender::QSceneLoader</a> loads a complete scene subtree. If you wish to load a single piece of geometry, you should rather use the <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">Qt3DRender::QMesh</a> instead.</p>
29209/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">Qt3DRender::QSceneLoader</a> internally relies on the use of plugins to support a wide variety of 3D file formats. <a href="http://www.assimp.org/main_features_formats.html">Here</a> is a list of formats that are supported by Qt3D.</p>
29210/// <p><b>Note: </b>this component shouldn't be shared among several <a href="http://doc.qt.io/qt-5/qt3dcore-qentity.html">Qt3DCore::QEntity</a> instances. Undefined behavior will result.</p></div>
29211#[repr(C)]
29212pub struct QSceneLoader {
29213    _unused: u8,
29214}
29215impl QSceneLoader {
29216    /// <p>Holds the url to the source to be loaded.</p>
29217    ///
29218    /// Returns a built-in Qt slot `Qt3DRender::QSceneLoader::setSource` that can be passed to `qt_core::Signal::connect`.
29219    ///
29220    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the url to the source to be loaded.</p>
29221    /// <p><b>Access functions:</b></p>
29222    /// <div class="table"><table class="alignedsummary">
29223    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
29224    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSource</b></span>(const QUrl &amp;<i>arg</i>)</td></tr>
29225    /// </tbody></table></div>
29226    /// <p><b>Notifier signal:</b></p>
29227    /// <div class="table"><table class="alignedsummary">
29228    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
29229    /// </tbody></table></div></div>
29230    #[inline(always)]
29231    pub fn slot_set_source(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
29232        unsafe {
29233            ::qt_core::Receiver::new(
29234                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29235                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSource(QUrl const &)\0"),
29236            )
29237        }
29238    }
29239
29240    /// Returns a built-in Qt slot `Qt3DRender::QSceneLoader::setStatus` that can be passed to `qt_core::Signal::connect`.
29241    #[inline(always)]
29242    pub fn slot_set_status(&self) -> ::qt_core::Receiver<(crate::q_scene_loader::Status,)> {
29243        unsafe {
29244            ::qt_core::Receiver::new(
29245                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29246                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
29247                    b"1setStatus(Qt3DRender::QSceneLoader::Status)\0",
29248                ),
29249            )
29250        }
29251    }
29252
29253    /// <p>Holds the url to the source to be loaded.</p>
29254    ///
29255    /// Returns a built-in Qt signal `Qt3DRender::QSceneLoader::sourceChanged` that can be passed to `qt_core::Signal::connect`.
29256    ///
29257    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the url to the source to be loaded.</p>
29258    /// <p><b>Access functions:</b></p>
29259    /// <div class="table"><table class="alignedsummary">
29260    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
29261    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSource</b></span>(const QUrl &amp;<i>arg</i>)</td></tr>
29262    /// </tbody></table></div>
29263    /// <p><b>Notifier signal:</b></p>
29264    /// <div class="table"><table class="alignedsummary">
29265    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
29266    /// </tbody></table></div></div>
29267    #[inline(always)]
29268    pub fn source_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
29269        unsafe {
29270            ::qt_core::Signal::new(
29271                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29272                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2sourceChanged(QUrl const &)\0"),
29273            )
29274        }
29275    }
29276
29277    /// <p>Holds the status of scene loading.</p>
29278    ///
29279    /// Returns a built-in Qt signal `Qt3DRender::QSceneLoader::statusChanged` that can be passed to `qt_core::Signal::connect`.
29280    ///
29281    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the status of scene loading.</p>
29282    /// <ul>
29283    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-sceneloader.html">SceneLoader</a>.None</li>
29284    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-sceneloader.html">SceneLoader</a>.Loading</li>
29285    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-sceneloader.html">SceneLoader</a>.Ready</li>
29286    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-sceneloader.html">SceneLoader</a>.Error</li>
29287    /// </ul>
29288    /// <p><b>Access functions:</b></p>
29289    /// <div class="table"><table class="alignedsummary">
29290    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Status </td><td class="memItemRight bottomAlign"><span class="name"><b>status</b></span>() const</td></tr>
29291    /// </tbody></table></div>
29292    /// <p><b>Notifier signal:</b></p>
29293    /// <div class="table"><table class="alignedsummary">
29294    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Status <i>status</i>)</td></tr>
29295    /// </tbody></table></div>
29296    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#Status-enum">Qt3DRender::QSceneLoader::Status</a>.</p></div>
29297    #[inline(always)]
29298    pub fn status_changed(&self) -> ::qt_core::Signal<(crate::q_scene_loader::Status,)> {
29299        unsafe {
29300            ::qt_core::Signal::new(
29301                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29302                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
29303                    b"2statusChanged(Qt3DRender::QSceneLoader::Status)\0",
29304                ),
29305            )
29306        }
29307    }
29308
29309    /// <p>Returns a component matching <i>componentType</i> of a loaded entity with an <a href="http://doc.qt.io/qt-5/qobject.html#objectName-prop">objectName</a> matching the <i>entityName</i>. If the entity has multiple matching components, the first match in the component list of the entity is returned. If there is no match, a null pointer is returned.</p>
29310    ///
29311    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* Qt3DRender::QSceneLoader::component(const QString& entityName, Qt3DRender::QSceneLoader::ComponentType componentType) const```</span>.
29312    ///
29313    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#component">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a component matching <i>componentType</i> of a loaded entity with an <a href="http://doc.qt.io/qt-5/qobject.html#objectName-prop">objectName</a> matching the <i>entityName</i>. If the entity has multiple matching components, the first match in the component list of the entity is returned. If there is no match, a null pointer is returned.</p></div>
29314    #[inline(always)]
29315    pub unsafe fn component(
29316        &self,
29317        entity_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
29318        component_type: crate::q_scene_loader::ComponentType,
29319    ) -> ::qt_core::QPtr<::qt_3d_core::QComponent> {
29320        let ffi_result = {
29321            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_component(
29322                self as *const crate::QSceneLoader,
29323                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(entity_name)
29324                    .as_raw_ptr(),
29325                component_type,
29326            )
29327        };
29328        ::qt_core::QPtr::from_raw(ffi_result)
29329    }
29330
29331    /// <p>Returns a loaded entity with an <code>objectName</code> matching the <i>entityName</i> parameter. If multiple entities have the same name, it is undefined which one of them is returned, but it will always be the same one.</p>
29332    ///
29333    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QEntity* Qt3DRender::QSceneLoader::entity(const QString& entityName) const```</span>.
29334    ///
29335    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#entity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a loaded entity with an <code>objectName</code> matching the <i>entityName</i> parameter. If multiple entities have the same name, it is undefined which one of them is returned, but it will always be the same one.</p></div>
29336    #[inline(always)]
29337    pub unsafe fn entity(
29338        &self,
29339        entity_name: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QString>>,
29340    ) -> ::qt_core::QPtr<::qt_3d_core::QEntity> {
29341        let ffi_result = {
29342            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_entity(
29343                self as *const crate::QSceneLoader,
29344                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QString>>::cast_into(entity_name)
29345                    .as_raw_ptr(),
29346            )
29347        };
29348        ::qt_core::QPtr::from_raw(ffi_result)
29349    }
29350
29351    /// <p>Returns a list of the <code>objectNames</code> of the loaded entities.</p>
29352    ///
29353    /// Calls C++ function: <span style='color: green;'>```QStringList Qt3DRender::QSceneLoader::entityNames() const```</span>.
29354    ///
29355    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#entityNames">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a list of the <code>objectNames</code> of the loaded entities.</p></div>
29356    #[inline(always)]
29357    pub unsafe fn entity_names(&self) -> ::cpp_core::CppBox<::qt_core::QStringList> {
29358        let ffi_result = {
29359            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_entityNames(
29360                self as *const crate::QSceneLoader,
29361            )
29362        };
29363        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
29364    }
29365
29366    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QSceneLoader::metaObject() const```</span>.
29367    #[inline(always)]
29368    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
29369        let ffi_result = {
29370            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_metaObject(
29371                self as *const crate::QSceneLoader,
29372            )
29373        };
29374        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
29375    }
29376
29377    /// <p>Default constructs an instance of QSceneLoader.</p>
29378    ///
29379    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSceneLoader::QSceneLoader(Qt3DCore::QNode* parent = …)```</span>.
29380    ///
29381    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#QSceneLoader">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QSceneLoader.</p></div>
29382    #[inline(always)]
29383    pub unsafe fn new_1a(
29384        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
29385    ) -> ::qt_core::QBox<crate::QSceneLoader> {
29386        let ffi_result = {
29387            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_QSceneLoader(
29388                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
29389                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
29390            )
29391        };
29392        ::qt_core::QBox::from_raw(ffi_result)
29393    }
29394
29395    /// <p>Provides the facility to load an existing Scene</p>
29396    ///
29397    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSceneLoader::QSceneLoader()```</span>.
29398    ///
29399    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides the facility to load an existing Scene</p>
29400    /// <p>Given a 3D source file, the <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">Qt3DRender::QSceneLoader</a> will try to parse it and build a tree of <a href="http://doc.qt.io/qt-5/qt3dcore-qentity.html">Qt3DCore::QEntity</a> objects with proper <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryrenderer.html">Qt3DRender::QGeometryRenderer</a>, <a href="http://doc.qt.io/qt-5/qt3dcore-qtransform.html">Qt3DCore::QTransform</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html">Qt3DRender::QMaterial</a> components.</p>
29401    /// <p>The loader will try to determine the best material to be used based on the properties of the model file. If you wish to use a custom material, you will have to traverse the tree and replace the default associated materials with yours.</p>
29402    /// <p>As the name implies, <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">Qt3DRender::QSceneLoader</a> loads a complete scene subtree. If you wish to load a single piece of geometry, you should rather use the <a href="http://doc.qt.io/qt-5/qt3drender-qmesh.html">Qt3DRender::QMesh</a> instead.</p>
29403    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html">Qt3DRender::QSceneLoader</a> internally relies on the use of plugins to support a wide variety of 3D file formats. <a href="http://www.assimp.org/main_features_formats.html">Here</a> is a list of formats that are supported by Qt3D.</p>
29404    /// <p><b>Note: </b>this component shouldn't be shared among several <a href="http://doc.qt.io/qt-5/qt3dcore-qentity.html">Qt3DCore::QEntity</a> instances. Undefined behavior will result.</p></div>
29405    #[inline(always)]
29406    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QSceneLoader> {
29407        let ffi_result =
29408            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_QSceneLoader1() };
29409        ::qt_core::QBox::from_raw(ffi_result)
29410    }
29411
29412    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QSceneLoader::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
29413    #[inline(always)]
29414    pub unsafe fn qt_metacall(
29415        &self,
29416        arg1: ::qt_core::q_meta_object::Call,
29417        arg2: ::std::os::raw::c_int,
29418        arg3: *mut *mut ::std::ffi::c_void,
29419    ) -> ::std::os::raw::c_int {
29420        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_qt_metacall(
29421            self as *const crate::QSceneLoader as *mut crate::QSceneLoader,
29422            arg1,
29423            arg2,
29424            arg3,
29425        )
29426    }
29427
29428    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QSceneLoader::qt_metacast(const char* arg1)```</span>.
29429    #[inline(always)]
29430    pub unsafe fn qt_metacast(
29431        &self,
29432        arg1: *const ::std::os::raw::c_char,
29433    ) -> *mut ::std::ffi::c_void {
29434        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_qt_metacast(
29435            self as *const crate::QSceneLoader as *mut crate::QSceneLoader,
29436            arg1,
29437        )
29438    }
29439
29440    /// <p>Holds the url to the source to be loaded.</p>
29441    ///
29442    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSceneLoader::setSource(const QUrl& arg)```</span>.
29443    ///
29444    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the url to the source to be loaded.</p>
29445    /// <p><b>Access functions:</b></p>
29446    /// <div class="table"><table class="alignedsummary">
29447    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
29448    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSource</b></span>(const QUrl &amp;<i>arg</i>)</td></tr>
29449    /// </tbody></table></div>
29450    /// <p><b>Notifier signal:</b></p>
29451    /// <div class="table"><table class="alignedsummary">
29452    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
29453    /// </tbody></table></div></div>
29454    #[inline(always)]
29455    pub unsafe fn set_source(
29456        &self,
29457        arg: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
29458    ) {
29459        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_setSource(
29460            self as *const crate::QSceneLoader as *mut crate::QSceneLoader,
29461            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(arg).as_raw_ptr(),
29462        )
29463    }
29464
29465    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSceneLoader::setStatus(Qt3DRender::QSceneLoader::Status status)```</span>.
29466    #[inline(always)]
29467    pub unsafe fn set_status(&self, status: crate::q_scene_loader::Status) {
29468        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_setStatus(
29469            self as *const crate::QSceneLoader as *mut crate::QSceneLoader,
29470            status,
29471        )
29472    }
29473
29474    /// <p>Holds the url to the source to be loaded.</p>
29475    ///
29476    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QSceneLoader::source() const```</span>.
29477    ///
29478    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the url to the source to be loaded.</p>
29479    /// <p><b>Access functions:</b></p>
29480    /// <div class="table"><table class="alignedsummary">
29481    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
29482    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSource</b></span>(const QUrl &amp;<i>arg</i>)</td></tr>
29483    /// </tbody></table></div>
29484    /// <p><b>Notifier signal:</b></p>
29485    /// <div class="table"><table class="alignedsummary">
29486    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
29487    /// </tbody></table></div></div>
29488    #[inline(always)]
29489    pub unsafe fn source(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
29490        let ffi_result = {
29491            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_source(
29492                self as *const crate::QSceneLoader,
29493            )
29494        };
29495        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
29496    }
29497
29498    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
29499    #[inline(always)]
29500    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
29501        let ffi_result =
29502            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_staticMetaObject() };
29503        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
29504            .expect("attempted to construct a null Ref")
29505    }
29506
29507    /// <p>Holds the status of scene loading.</p>
29508    ///
29509    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSceneLoader::Status Qt3DRender::QSceneLoader::status() const```</span>.
29510    ///
29511    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the status of scene loading.</p>
29512    /// <ul>
29513    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-sceneloader.html">SceneLoader</a>.None</li>
29514    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-sceneloader.html">SceneLoader</a>.Loading</li>
29515    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-sceneloader.html">SceneLoader</a>.Ready</li>
29516    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-sceneloader.html">SceneLoader</a>.Error</li>
29517    /// </ul>
29518    /// <p><b>Access functions:</b></p>
29519    /// <div class="table"><table class="alignedsummary">
29520    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Status </td><td class="memItemRight bottomAlign"><span class="name"><b>status</b></span>() const</td></tr>
29521    /// </tbody></table></div>
29522    /// <p><b>Notifier signal:</b></p>
29523    /// <div class="table"><table class="alignedsummary">
29524    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Status <i>status</i>)</td></tr>
29525    /// </tbody></table></div>
29526    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qsceneloader.html#Status-enum">Qt3DRender::QSceneLoader::Status</a>.</p></div>
29527    #[inline(always)]
29528    pub unsafe fn status(&self) -> crate::q_scene_loader::Status {
29529        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_status(
29530            self as *const crate::QSceneLoader,
29531        )
29532    }
29533
29534    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSceneLoader::tr(const char* s, const char* c, int n)```</span>.
29535    #[inline(always)]
29536    pub unsafe fn tr(
29537        s: *const ::std::os::raw::c_char,
29538        c: *const ::std::os::raw::c_char,
29539        n: ::std::os::raw::c_int,
29540    ) -> ::cpp_core::CppBox<::qt_core::QString> {
29541        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_tr(s, c, n) };
29542        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
29543    }
29544
29545    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSceneLoader::trUtf8(const char* s, const char* c, int n)```</span>.
29546    #[inline(always)]
29547    pub unsafe fn tr_utf8(
29548        s: *const ::std::os::raw::c_char,
29549        c: *const ::std::os::raw::c_char,
29550        n: ::std::os::raw::c_int,
29551    ) -> ::cpp_core::CppBox<::qt_core::QString> {
29552        let ffi_result =
29553            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_trUtf8(s, c, n) };
29554        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
29555    }
29556}
29557
29558/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html">QScissorTest</a> class discards fragments that fall outside of a certain rectangular portion of the screen.</p>
29559///
29560/// C++ class: <span style='color: green;'>```Qt3DRender::QScissorTest```</span>.
29561///
29562/// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html">QScissorTest</a> class discards fragments that fall outside of a certain rectangular portion of the screen.</p>
29563/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html">QScissorTest</a> class enables scissor test, which discards fragments outside the rectangular area of the screen specified by the left, bottom, width and height properties.</p></div>
29564#[repr(C)]
29565pub struct QScissorTest {
29566    _unused: u8,
29567}
29568impl QScissorTest {
29569    /// <p>Holds the left coordinate of the scissor box.</p>
29570    ///
29571    /// Returns a built-in Qt slot `Qt3DRender::QScissorTest::setLeft` that can be passed to `qt_core::Signal::connect`.
29572    ///
29573    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#left-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the left coordinate of the scissor box.</p>
29574    /// <p><b>Access functions:</b></p>
29575    /// <div class="table"><table class="alignedsummary">
29576    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>left</b></span>() const</td></tr>
29577    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLeft</b></span>(int <i>left</i>)</td></tr>
29578    /// </tbody></table></div>
29579    /// <p><b>Notifier signal:</b></p>
29580    /// <div class="table"><table class="alignedsummary">
29581    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>leftChanged</b></span>(int <i>left</i>)</td></tr>
29582    /// </tbody></table></div></div>
29583    #[inline(always)]
29584    pub fn slot_set_left(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
29585        unsafe {
29586            ::qt_core::Receiver::new(
29587                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29588                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLeft(int)\0"),
29589            )
29590        }
29591    }
29592
29593    /// <p>Holds the bottom coordinate of the scissor box.</p>
29594    ///
29595    /// Returns a built-in Qt slot `Qt3DRender::QScissorTest::setBottom` that can be passed to `qt_core::Signal::connect`.
29596    ///
29597    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#bottom-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the bottom coordinate of the scissor box.</p>
29598    /// <p><b>Access functions:</b></p>
29599    /// <div class="table"><table class="alignedsummary">
29600    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>bottom</b></span>() const</td></tr>
29601    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBottom</b></span>(int <i>bottom</i>)</td></tr>
29602    /// </tbody></table></div>
29603    /// <p><b>Notifier signal:</b></p>
29604    /// <div class="table"><table class="alignedsummary">
29605    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bottomChanged</b></span>(int <i>bottom</i>)</td></tr>
29606    /// </tbody></table></div></div>
29607    #[inline(always)]
29608    pub fn slot_set_bottom(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
29609        unsafe {
29610            ::qt_core::Receiver::new(
29611                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29612                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setBottom(int)\0"),
29613            )
29614        }
29615    }
29616
29617    /// <p>Holds the width of the scissor box.</p>
29618    ///
29619    /// Returns a built-in Qt slot `Qt3DRender::QScissorTest::setWidth` that can be passed to `qt_core::Signal::connect`.
29620    ///
29621    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#width-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the width of the scissor box.</p>
29622    /// <p><b>Access functions:</b></p>
29623    /// <div class="table"><table class="alignedsummary">
29624    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>width</b></span>() const</td></tr>
29625    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWidth</b></span>(int <i>width</i>)</td></tr>
29626    /// </tbody></table></div>
29627    /// <p><b>Notifier signal:</b></p>
29628    /// <div class="table"><table class="alignedsummary">
29629    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>widthChanged</b></span>(int <i>width</i>)</td></tr>
29630    /// </tbody></table></div></div>
29631    #[inline(always)]
29632    pub fn slot_set_width(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
29633        unsafe {
29634            ::qt_core::Receiver::new(
29635                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29636                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setWidth(int)\0"),
29637            )
29638        }
29639    }
29640
29641    /// <p>Holds the height of the scissor box.</p>
29642    ///
29643    /// Returns a built-in Qt slot `Qt3DRender::QScissorTest::setHeight` that can be passed to `qt_core::Signal::connect`.
29644    ///
29645    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#height-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the height of the scissor box.</p>
29646    /// <p><b>Access functions:</b></p>
29647    /// <div class="table"><table class="alignedsummary">
29648    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>height</b></span>() const</td></tr>
29649    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHeight</b></span>(int <i>height</i>)</td></tr>
29650    /// </tbody></table></div>
29651    /// <p><b>Notifier signal:</b></p>
29652    /// <div class="table"><table class="alignedsummary">
29653    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>heightChanged</b></span>(int <i>height</i>)</td></tr>
29654    /// </tbody></table></div></div>
29655    #[inline(always)]
29656    pub fn slot_set_height(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
29657        unsafe {
29658            ::qt_core::Receiver::new(
29659                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29660                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setHeight(int)\0"),
29661            )
29662        }
29663    }
29664
29665    /// <p>Holds the left coordinate of the scissor box.</p>
29666    ///
29667    /// Returns a built-in Qt signal `Qt3DRender::QScissorTest::leftChanged` that can be passed to `qt_core::Signal::connect`.
29668    ///
29669    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#left-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the left coordinate of the scissor box.</p>
29670    /// <p><b>Access functions:</b></p>
29671    /// <div class="table"><table class="alignedsummary">
29672    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>left</b></span>() const</td></tr>
29673    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLeft</b></span>(int <i>left</i>)</td></tr>
29674    /// </tbody></table></div>
29675    /// <p><b>Notifier signal:</b></p>
29676    /// <div class="table"><table class="alignedsummary">
29677    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>leftChanged</b></span>(int <i>left</i>)</td></tr>
29678    /// </tbody></table></div></div>
29679    #[inline(always)]
29680    pub fn left_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
29681        unsafe {
29682            ::qt_core::Signal::new(
29683                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29684                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2leftChanged(int)\0"),
29685            )
29686        }
29687    }
29688
29689    /// <p>Holds the bottom coordinate of the scissor box.</p>
29690    ///
29691    /// Returns a built-in Qt signal `Qt3DRender::QScissorTest::bottomChanged` that can be passed to `qt_core::Signal::connect`.
29692    ///
29693    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#bottom-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the bottom coordinate of the scissor box.</p>
29694    /// <p><b>Access functions:</b></p>
29695    /// <div class="table"><table class="alignedsummary">
29696    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>bottom</b></span>() const</td></tr>
29697    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBottom</b></span>(int <i>bottom</i>)</td></tr>
29698    /// </tbody></table></div>
29699    /// <p><b>Notifier signal:</b></p>
29700    /// <div class="table"><table class="alignedsummary">
29701    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bottomChanged</b></span>(int <i>bottom</i>)</td></tr>
29702    /// </tbody></table></div></div>
29703    #[inline(always)]
29704    pub fn bottom_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
29705        unsafe {
29706            ::qt_core::Signal::new(
29707                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29708                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2bottomChanged(int)\0"),
29709            )
29710        }
29711    }
29712
29713    /// <p>Holds the width of the scissor box.</p>
29714    ///
29715    /// Returns a built-in Qt signal `Qt3DRender::QScissorTest::widthChanged` that can be passed to `qt_core::Signal::connect`.
29716    ///
29717    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#width-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the width of the scissor box.</p>
29718    /// <p><b>Access functions:</b></p>
29719    /// <div class="table"><table class="alignedsummary">
29720    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>width</b></span>() const</td></tr>
29721    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWidth</b></span>(int <i>width</i>)</td></tr>
29722    /// </tbody></table></div>
29723    /// <p><b>Notifier signal:</b></p>
29724    /// <div class="table"><table class="alignedsummary">
29725    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>widthChanged</b></span>(int <i>width</i>)</td></tr>
29726    /// </tbody></table></div></div>
29727    #[inline(always)]
29728    pub fn width_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
29729        unsafe {
29730            ::qt_core::Signal::new(
29731                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29732                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2widthChanged(int)\0"),
29733            )
29734        }
29735    }
29736
29737    /// <p>Holds the height of the scissor box.</p>
29738    ///
29739    /// Returns a built-in Qt signal `Qt3DRender::QScissorTest::heightChanged` that can be passed to `qt_core::Signal::connect`.
29740    ///
29741    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#height-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the height of the scissor box.</p>
29742    /// <p><b>Access functions:</b></p>
29743    /// <div class="table"><table class="alignedsummary">
29744    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>height</b></span>() const</td></tr>
29745    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHeight</b></span>(int <i>height</i>)</td></tr>
29746    /// </tbody></table></div>
29747    /// <p><b>Notifier signal:</b></p>
29748    /// <div class="table"><table class="alignedsummary">
29749    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>heightChanged</b></span>(int <i>height</i>)</td></tr>
29750    /// </tbody></table></div></div>
29751    #[inline(always)]
29752    pub fn height_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
29753        unsafe {
29754            ::qt_core::Signal::new(
29755                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
29756                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2heightChanged(int)\0"),
29757            )
29758        }
29759    }
29760
29761    /// <p>Holds the bottom coordinate of the scissor box.</p>
29762    ///
29763    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QScissorTest::bottom() const```</span>.
29764    ///
29765    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#bottom-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the bottom coordinate of the scissor box.</p>
29766    /// <p><b>Access functions:</b></p>
29767    /// <div class="table"><table class="alignedsummary">
29768    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>bottom</b></span>() const</td></tr>
29769    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBottom</b></span>(int <i>bottom</i>)</td></tr>
29770    /// </tbody></table></div>
29771    /// <p><b>Notifier signal:</b></p>
29772    /// <div class="table"><table class="alignedsummary">
29773    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bottomChanged</b></span>(int <i>bottom</i>)</td></tr>
29774    /// </tbody></table></div></div>
29775    #[inline(always)]
29776    pub unsafe fn bottom(&self) -> ::std::os::raw::c_int {
29777        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_bottom(
29778            self as *const crate::QScissorTest,
29779        )
29780    }
29781
29782    /// <p>Holds the height of the scissor box.</p>
29783    ///
29784    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QScissorTest::height() const```</span>.
29785    ///
29786    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#height-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the height of the scissor box.</p>
29787    /// <p><b>Access functions:</b></p>
29788    /// <div class="table"><table class="alignedsummary">
29789    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>height</b></span>() const</td></tr>
29790    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHeight</b></span>(int <i>height</i>)</td></tr>
29791    /// </tbody></table></div>
29792    /// <p><b>Notifier signal:</b></p>
29793    /// <div class="table"><table class="alignedsummary">
29794    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>heightChanged</b></span>(int <i>height</i>)</td></tr>
29795    /// </tbody></table></div></div>
29796    #[inline(always)]
29797    pub unsafe fn height(&self) -> ::std::os::raw::c_int {
29798        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_height(
29799            self as *const crate::QScissorTest,
29800        )
29801    }
29802
29803    /// <p>Holds the left coordinate of the scissor box.</p>
29804    ///
29805    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QScissorTest::left() const```</span>.
29806    ///
29807    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#left-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the left coordinate of the scissor box.</p>
29808    /// <p><b>Access functions:</b></p>
29809    /// <div class="table"><table class="alignedsummary">
29810    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>left</b></span>() const</td></tr>
29811    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLeft</b></span>(int <i>left</i>)</td></tr>
29812    /// </tbody></table></div>
29813    /// <p><b>Notifier signal:</b></p>
29814    /// <div class="table"><table class="alignedsummary">
29815    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>leftChanged</b></span>(int <i>left</i>)</td></tr>
29816    /// </tbody></table></div></div>
29817    #[inline(always)]
29818    pub unsafe fn left(&self) -> ::std::os::raw::c_int {
29819        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_left(
29820            self as *const crate::QScissorTest,
29821        )
29822    }
29823
29824    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QScissorTest::metaObject() const```</span>.
29825    #[inline(always)]
29826    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
29827        let ffi_result = {
29828            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_metaObject(
29829                self as *const crate::QScissorTest,
29830            )
29831        };
29832        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
29833    }
29834
29835    /// <p>Default constructs an instance of QScissorTest.</p>
29836    ///
29837    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QScissorTest::QScissorTest(Qt3DCore::QNode* parent = …)```</span>.
29838    ///
29839    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#QScissorTest">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QScissorTest.</p></div>
29840    #[inline(always)]
29841    pub unsafe fn new_1a(
29842        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
29843    ) -> ::qt_core::QBox<crate::QScissorTest> {
29844        let ffi_result = {
29845            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_QScissorTest(
29846                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
29847                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
29848            )
29849        };
29850        ::qt_core::QBox::from_raw(ffi_result)
29851    }
29852
29853    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html">QScissorTest</a> class discards fragments that fall outside of a certain rectangular portion of the screen.</p>
29854    ///
29855    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QScissorTest::QScissorTest()```</span>.
29856    ///
29857    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html">QScissorTest</a> class discards fragments that fall outside of a certain rectangular portion of the screen.</p>
29858    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html">QScissorTest</a> class enables scissor test, which discards fragments outside the rectangular area of the screen specified by the left, bottom, width and height properties.</p></div>
29859    #[inline(always)]
29860    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QScissorTest> {
29861        let ffi_result =
29862            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_QScissorTest1() };
29863        ::qt_core::QBox::from_raw(ffi_result)
29864    }
29865
29866    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QScissorTest::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
29867    #[inline(always)]
29868    pub unsafe fn qt_metacall(
29869        &self,
29870        arg1: ::qt_core::q_meta_object::Call,
29871        arg2: ::std::os::raw::c_int,
29872        arg3: *mut *mut ::std::ffi::c_void,
29873    ) -> ::std::os::raw::c_int {
29874        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_qt_metacall(
29875            self as *const crate::QScissorTest as *mut crate::QScissorTest,
29876            arg1,
29877            arg2,
29878            arg3,
29879        )
29880    }
29881
29882    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QScissorTest::qt_metacast(const char* arg1)```</span>.
29883    #[inline(always)]
29884    pub unsafe fn qt_metacast(
29885        &self,
29886        arg1: *const ::std::os::raw::c_char,
29887    ) -> *mut ::std::ffi::c_void {
29888        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_qt_metacast(
29889            self as *const crate::QScissorTest as *mut crate::QScissorTest,
29890            arg1,
29891        )
29892    }
29893
29894    /// <p>Holds the bottom coordinate of the scissor box.</p>
29895    ///
29896    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QScissorTest::setBottom(int bottom)```</span>.
29897    ///
29898    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#bottom-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the bottom coordinate of the scissor box.</p>
29899    /// <p><b>Access functions:</b></p>
29900    /// <div class="table"><table class="alignedsummary">
29901    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>bottom</b></span>() const</td></tr>
29902    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBottom</b></span>(int <i>bottom</i>)</td></tr>
29903    /// </tbody></table></div>
29904    /// <p><b>Notifier signal:</b></p>
29905    /// <div class="table"><table class="alignedsummary">
29906    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>bottomChanged</b></span>(int <i>bottom</i>)</td></tr>
29907    /// </tbody></table></div></div>
29908    #[inline(always)]
29909    pub unsafe fn set_bottom(&self, bottom: ::std::os::raw::c_int) {
29910        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_setBottom(
29911            self as *const crate::QScissorTest as *mut crate::QScissorTest,
29912            bottom,
29913        )
29914    }
29915
29916    /// <p>Holds the height of the scissor box.</p>
29917    ///
29918    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QScissorTest::setHeight(int height)```</span>.
29919    ///
29920    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#height-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the height of the scissor box.</p>
29921    /// <p><b>Access functions:</b></p>
29922    /// <div class="table"><table class="alignedsummary">
29923    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>height</b></span>() const</td></tr>
29924    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHeight</b></span>(int <i>height</i>)</td></tr>
29925    /// </tbody></table></div>
29926    /// <p><b>Notifier signal:</b></p>
29927    /// <div class="table"><table class="alignedsummary">
29928    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>heightChanged</b></span>(int <i>height</i>)</td></tr>
29929    /// </tbody></table></div></div>
29930    #[inline(always)]
29931    pub unsafe fn set_height(&self, height: ::std::os::raw::c_int) {
29932        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_setHeight(
29933            self as *const crate::QScissorTest as *mut crate::QScissorTest,
29934            height,
29935        )
29936    }
29937
29938    /// <p>Holds the left coordinate of the scissor box.</p>
29939    ///
29940    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QScissorTest::setLeft(int left)```</span>.
29941    ///
29942    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#left-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the left coordinate of the scissor box.</p>
29943    /// <p><b>Access functions:</b></p>
29944    /// <div class="table"><table class="alignedsummary">
29945    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>left</b></span>() const</td></tr>
29946    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLeft</b></span>(int <i>left</i>)</td></tr>
29947    /// </tbody></table></div>
29948    /// <p><b>Notifier signal:</b></p>
29949    /// <div class="table"><table class="alignedsummary">
29950    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>leftChanged</b></span>(int <i>left</i>)</td></tr>
29951    /// </tbody></table></div></div>
29952    #[inline(always)]
29953    pub unsafe fn set_left(&self, left: ::std::os::raw::c_int) {
29954        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_setLeft(
29955            self as *const crate::QScissorTest as *mut crate::QScissorTest,
29956            left,
29957        )
29958    }
29959
29960    /// <p>Holds the width of the scissor box.</p>
29961    ///
29962    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QScissorTest::setWidth(int width)```</span>.
29963    ///
29964    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#width-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the width of the scissor box.</p>
29965    /// <p><b>Access functions:</b></p>
29966    /// <div class="table"><table class="alignedsummary">
29967    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>width</b></span>() const</td></tr>
29968    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWidth</b></span>(int <i>width</i>)</td></tr>
29969    /// </tbody></table></div>
29970    /// <p><b>Notifier signal:</b></p>
29971    /// <div class="table"><table class="alignedsummary">
29972    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>widthChanged</b></span>(int <i>width</i>)</td></tr>
29973    /// </tbody></table></div></div>
29974    #[inline(always)]
29975    pub unsafe fn set_width(&self, width: ::std::os::raw::c_int) {
29976        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_setWidth(
29977            self as *const crate::QScissorTest as *mut crate::QScissorTest,
29978            width,
29979        )
29980    }
29981
29982    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
29983    #[inline(always)]
29984    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
29985        let ffi_result =
29986            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_staticMetaObject() };
29987        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
29988            .expect("attempted to construct a null Ref")
29989    }
29990
29991    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QScissorTest::tr(const char* s, const char* c, int n)```</span>.
29992    #[inline(always)]
29993    pub unsafe fn tr(
29994        s: *const ::std::os::raw::c_char,
29995        c: *const ::std::os::raw::c_char,
29996        n: ::std::os::raw::c_int,
29997    ) -> ::cpp_core::CppBox<::qt_core::QString> {
29998        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_tr(s, c, n) };
29999        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30000    }
30001
30002    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QScissorTest::trUtf8(const char* s, const char* c, int n)```</span>.
30003    #[inline(always)]
30004    pub unsafe fn tr_utf8(
30005        s: *const ::std::os::raw::c_char,
30006        c: *const ::std::os::raw::c_char,
30007        n: ::std::os::raw::c_int,
30008    ) -> ::cpp_core::CppBox<::qt_core::QString> {
30009        let ffi_result =
30010            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_trUtf8(s, c, n) };
30011        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30012    }
30013
30014    /// <p>Holds the width of the scissor box.</p>
30015    ///
30016    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QScissorTest::width() const```</span>.
30017    ///
30018    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscissortest.html#width-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the width of the scissor box.</p>
30019    /// <p><b>Access functions:</b></p>
30020    /// <div class="table"><table class="alignedsummary">
30021    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>width</b></span>() const</td></tr>
30022    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWidth</b></span>(int <i>width</i>)</td></tr>
30023    /// </tbody></table></div>
30024    /// <p><b>Notifier signal:</b></p>
30025    /// <div class="table"><table class="alignedsummary">
30026    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>widthChanged</b></span>(int <i>width</i>)</td></tr>
30027    /// </tbody></table></div></div>
30028    #[inline(always)]
30029    pub unsafe fn width(&self) -> ::std::os::raw::c_int {
30030        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_width(
30031            self as *const crate::QScissorTest,
30032        )
30033    }
30034}
30035
30036/// <p>Enables seamless cubemap texture filtering.</p>
30037///
30038/// C++ class: <span style='color: green;'>```Qt3DRender::QSeamlessCubemap```</span>.
30039///
30040/// <a href="http://doc.qt.io/qt-5/qt3drender-qseamlesscubemap.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables seamless cubemap texture filtering.</p>
30041/// <p>When present in a state set, enables the seamless cubemap texture filtering as provided by the GL_ARB_seamless_cubemap extension (if available).</p></div>
30042#[repr(C)]
30043pub struct QSeamlessCubemap {
30044    _unused: u8,
30045}
30046impl QSeamlessCubemap {
30047    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QSeamlessCubemap::metaObject() const```</span>.
30048    #[inline(always)]
30049    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
30050        let ffi_result = {
30051            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSeamlessCubemap_metaObject(
30052                self as *const crate::QSeamlessCubemap,
30053            )
30054        };
30055        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
30056    }
30057
30058    /// <p>Default constructs an instance of QSeamlessCubemap.</p>
30059    ///
30060    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSeamlessCubemap::QSeamlessCubemap(Qt3DCore::QNode* parent = …)```</span>.
30061    ///
30062    /// <a href="http://doc.qt.io/qt-5/qt3drender-qseamlesscubemap.html#QSeamlessCubemap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QSeamlessCubemap.</p></div>
30063    #[inline(always)]
30064    pub unsafe fn new_1a(
30065        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
30066    ) -> ::qt_core::QBox<crate::QSeamlessCubemap> {
30067        let ffi_result = {
30068            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSeamlessCubemap_QSeamlessCubemap(
30069                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
30070                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
30071            )
30072        };
30073        ::qt_core::QBox::from_raw(ffi_result)
30074    }
30075
30076    /// <p>Enables seamless cubemap texture filtering.</p>
30077    ///
30078    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSeamlessCubemap::QSeamlessCubemap()```</span>.
30079    ///
30080    /// <a href="http://doc.qt.io/qt-5/qt3drender-qseamlesscubemap.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Enables seamless cubemap texture filtering.</p>
30081    /// <p>When present in a state set, enables the seamless cubemap texture filtering as provided by the GL_ARB_seamless_cubemap extension (if available).</p></div>
30082    #[inline(always)]
30083    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QSeamlessCubemap> {
30084        let ffi_result =
30085            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSeamlessCubemap_QSeamlessCubemap1() };
30086        ::qt_core::QBox::from_raw(ffi_result)
30087    }
30088
30089    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QSeamlessCubemap::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
30090    #[inline(always)]
30091    pub unsafe fn qt_metacall(
30092        &self,
30093        arg1: ::qt_core::q_meta_object::Call,
30094        arg2: ::std::os::raw::c_int,
30095        arg3: *mut *mut ::std::ffi::c_void,
30096    ) -> ::std::os::raw::c_int {
30097        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSeamlessCubemap_qt_metacall(
30098            self as *const crate::QSeamlessCubemap as *mut crate::QSeamlessCubemap,
30099            arg1,
30100            arg2,
30101            arg3,
30102        )
30103    }
30104
30105    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QSeamlessCubemap::qt_metacast(const char* arg1)```</span>.
30106    #[inline(always)]
30107    pub unsafe fn qt_metacast(
30108        &self,
30109        arg1: *const ::std::os::raw::c_char,
30110    ) -> *mut ::std::ffi::c_void {
30111        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSeamlessCubemap_qt_metacast(
30112            self as *const crate::QSeamlessCubemap as *mut crate::QSeamlessCubemap,
30113            arg1,
30114        )
30115    }
30116
30117    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
30118    #[inline(always)]
30119    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
30120        let ffi_result =
30121            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSeamlessCubemap_staticMetaObject() };
30122        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
30123            .expect("attempted to construct a null Ref")
30124    }
30125
30126    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSeamlessCubemap::tr(const char* s, const char* c, int n)```</span>.
30127    #[inline(always)]
30128    pub unsafe fn tr(
30129        s: *const ::std::os::raw::c_char,
30130        c: *const ::std::os::raw::c_char,
30131        n: ::std::os::raw::c_int,
30132    ) -> ::cpp_core::CppBox<::qt_core::QString> {
30133        let ffi_result =
30134            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSeamlessCubemap_tr(s, c, n) };
30135        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30136    }
30137
30138    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSeamlessCubemap::trUtf8(const char* s, const char* c, int n)```</span>.
30139    #[inline(always)]
30140    pub unsafe fn tr_utf8(
30141        s: *const ::std::os::raw::c_char,
30142        c: *const ::std::os::raw::c_char,
30143        n: ::std::os::raw::c_int,
30144    ) -> ::cpp_core::CppBox<::qt_core::QString> {
30145        let ffi_result =
30146            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSeamlessCubemap_trUtf8(s, c, n) };
30147        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30148    }
30149}
30150
30151/// C++ class: <span style='color: green;'>```Qt3DRender::PropertyReaderInterface```</span>.
30152#[repr(C)]
30153pub struct PropertyReaderInterface {
30154    _unused: u8,
30155}
30156impl PropertyReaderInterface {
30157    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::PropertyReaderInterface& Qt3DRender::PropertyReaderInterface::operator=(const Qt3DRender::PropertyReaderInterface& other)```</span>.
30158    #[inline(always)]
30159    pub unsafe fn copy_from(
30160        &self,
30161        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::PropertyReaderInterface>>,
30162    ) -> ::cpp_core::Ref<crate::PropertyReaderInterface> {
30163        let ffi_result = {
30164            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_PropertyReaderInterface_operator_(
30165                self as *const crate::PropertyReaderInterface
30166                    as *mut crate::PropertyReaderInterface,
30167                ::cpp_core::CastInto::<::cpp_core::Ref<crate::PropertyReaderInterface>>::cast_into(
30168                    other,
30169                )
30170                .as_raw_ptr(),
30171            )
30172        };
30173        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
30174    }
30175
30176    /// <p>Returns the property identifies by <i>v</i></p>
30177    ///
30178    /// Calls C++ function: <span style='color: green;'>```pure virtual QVariant Qt3DRender::PropertyReaderInterface::readProperty(const QVariant& v)```</span>.
30179    ///
30180    /// <a href="http://doc.qt.io/qt-5/qt3drender-propertyreaderinterface.html#readProperty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the property identifies by <i>v</i></p></div>
30181    #[inline(always)]
30182    pub unsafe fn read_property(
30183        &self,
30184        v: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
30185    ) -> ::cpp_core::CppBox<::qt_core::QVariant> {
30186        let ffi_result = {
30187            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_PropertyReaderInterface_readProperty(
30188                self as *const crate::PropertyReaderInterface
30189                    as *mut crate::PropertyReaderInterface,
30190                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(v)
30191                    .as_raw_ptr(),
30192            )
30193        };
30194        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30195    }
30196}
30197
30198/// <p>Provides a way of specifying values of a Uniform Block or a shader structure.</p>
30199///
30200/// C++ class: <span style='color: green;'>```Qt3DRender::QShaderData```</span>.
30201///
30202/// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderdata.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a way of specifying values of a Uniform Block or a shader structure.</p>
30203/// <p><b>Note: </b>When subclassing and adding properties to <a href="http://doc.qt.io/qt-5/qt3drender-qshaderdata.html">QShaderData</a>, note that if you need to nest an inner <a href="http://doc.qt.io/qt-5/qt3drender-qshaderdata.html">Qt3DRender::QShaderData</a>, the data type of the property should be <a href="http://doc.qt.io/qt-5/qt3drender-qshaderdata.html">Qt3DRender::QShaderData</a>* instead of the name of your subclass.</p></div>
30204#[repr(C)]
30205pub struct QShaderData {
30206    _unused: u8,
30207}
30208impl QShaderData {
30209    /// Calls C++ function: <span style='color: green;'>```virtual bool Qt3DRender::QShaderData::event(QEvent* event)```</span>.
30210    #[inline(always)]
30211    pub unsafe fn event(
30212        &self,
30213        event: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QEvent>>,
30214    ) -> bool {
30215        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_event(
30216            self as *const crate::QShaderData as *mut crate::QShaderData,
30217            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QEvent>>::cast_into(event)
30218                .as_raw_ptr() as *mut ::qt_core::QEvent,
30219        )
30220    }
30221
30222    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QShaderData::metaObject() const```</span>.
30223    #[inline(always)]
30224    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
30225        let ffi_result = {
30226            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_metaObject(
30227                self as *const crate::QShaderData,
30228            )
30229        };
30230        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
30231    }
30232
30233    /// <p>Default constructs an instance of QShaderData.</p>
30234    ///
30235    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QShaderData::QShaderData(Qt3DCore::QNode* parent = …)```</span>.
30236    ///
30237    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderdata.html#QShaderData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QShaderData.</p></div>
30238    #[inline(always)]
30239    pub unsafe fn new_1a(
30240        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
30241    ) -> ::qt_core::QBox<crate::QShaderData> {
30242        let ffi_result = {
30243            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_QShaderData(
30244                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
30245                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
30246            )
30247        };
30248        ::qt_core::QBox::from_raw(ffi_result)
30249    }
30250
30251    /// <p>Provides a way of specifying values of a Uniform Block or a shader structure.</p>
30252    ///
30253    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QShaderData::QShaderData()```</span>.
30254    ///
30255    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderdata.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides a way of specifying values of a Uniform Block or a shader structure.</p>
30256    /// <p><b>Note: </b>When subclassing and adding properties to <a href="http://doc.qt.io/qt-5/qt3drender-qshaderdata.html">QShaderData</a>, note that if you need to nest an inner <a href="http://doc.qt.io/qt-5/qt3drender-qshaderdata.html">Qt3DRender::QShaderData</a>, the data type of the property should be <a href="http://doc.qt.io/qt-5/qt3drender-qshaderdata.html">Qt3DRender::QShaderData</a>* instead of the name of your subclass.</p></div>
30257    #[inline(always)]
30258    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QShaderData> {
30259        let ffi_result =
30260            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_QShaderData1() };
30261        ::qt_core::QBox::from_raw(ffi_result)
30262    }
30263
30264    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QShaderData::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
30265    #[inline(always)]
30266    pub unsafe fn qt_metacall(
30267        &self,
30268        arg1: ::qt_core::q_meta_object::Call,
30269        arg2: ::std::os::raw::c_int,
30270        arg3: *mut *mut ::std::ffi::c_void,
30271    ) -> ::std::os::raw::c_int {
30272        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_qt_metacall(
30273            self as *const crate::QShaderData as *mut crate::QShaderData,
30274            arg1,
30275            arg2,
30276            arg3,
30277        )
30278    }
30279
30280    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QShaderData::qt_metacast(const char* arg1)```</span>.
30281    #[inline(always)]
30282    pub unsafe fn qt_metacast(
30283        &self,
30284        arg1: *const ::std::os::raw::c_char,
30285    ) -> *mut ::std::ffi::c_void {
30286        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_qt_metacast(
30287            self as *const crate::QShaderData as *mut crate::QShaderData,
30288            arg1,
30289        )
30290    }
30291
30292    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
30293    #[inline(always)]
30294    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
30295        let ffi_result =
30296            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_staticMetaObject() };
30297        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
30298            .expect("attempted to construct a null Ref")
30299    }
30300
30301    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QShaderData::tr(const char* s, const char* c, int n)```</span>.
30302    #[inline(always)]
30303    pub unsafe fn tr(
30304        s: *const ::std::os::raw::c_char,
30305        c: *const ::std::os::raw::c_char,
30306        n: ::std::os::raw::c_int,
30307    ) -> ::cpp_core::CppBox<::qt_core::QString> {
30308        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_tr(s, c, n) };
30309        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30310    }
30311
30312    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QShaderData::trUtf8(const char* s, const char* c, int n)```</span>.
30313    #[inline(always)]
30314    pub unsafe fn tr_utf8(
30315        s: *const ::std::os::raw::c_char,
30316        c: *const ::std::os::raw::c_char,
30317        n: ::std::os::raw::c_int,
30318    ) -> ::cpp_core::CppBox<::qt_core::QString> {
30319        let ffi_result =
30320            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_trUtf8(s, c, n) };
30321        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30322    }
30323}
30324
30325pub mod q_sort_policy {
30326    //! C++ type: <span style='color: green;'>```Qt3DRender::QSortPolicy```</span>
30327
30328    /// C++ enum: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType```</span>.
30329    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
30330    #[repr(transparent)]
30331    pub struct SortType(::std::os::raw::c_int);
30332
30333    impl From<::std::os::raw::c_int> for SortType {
30334        fn from(value: ::std::os::raw::c_int) -> Self {
30335            SortType(value)
30336        }
30337    }
30338
30339    impl From<SortType> for ::std::os::raw::c_int {
30340        fn from(value: SortType) -> Self {
30341            value.0
30342        }
30343    }
30344
30345    impl SortType {
30346        pub fn to_int(&self) -> ::std::os::raw::c_int {
30347            self.0
30348        }
30349    }
30350
30351    impl SortType {
30352        /// C++ enum variant: <span style='color: green;'>```StateChangeCost = 1```</span>
30353        #[allow(non_upper_case_globals)]
30354        pub const StateChangeCost: crate::q_sort_policy::SortType =
30355            crate::q_sort_policy::SortType(1);
30356        /// C++ enum variant: <span style='color: green;'>```BackToFront = 2```</span>
30357        #[allow(non_upper_case_globals)]
30358        pub const BackToFront: crate::q_sort_policy::SortType = crate::q_sort_policy::SortType(2);
30359        /// C++ enum variant: <span style='color: green;'>```Material = 4```</span>
30360        #[allow(non_upper_case_globals)]
30361        pub const Material: crate::q_sort_policy::SortType = crate::q_sort_policy::SortType(4);
30362        /// C++ enum variant: <span style='color: green;'>```FrontToBack = 8```</span>
30363        #[allow(non_upper_case_globals)]
30364        pub const FrontToBack: crate::q_sort_policy::SortType = crate::q_sort_policy::SortType(8);
30365        /// C++ enum variant: <span style='color: green;'>```Texture = 16```</span>
30366        #[allow(non_upper_case_globals)]
30367        pub const Texture: crate::q_sort_policy::SortType = crate::q_sort_policy::SortType(16);
30368    }
30369}
30370/// <p>Provides storage for the sort types to be used</p>
30371///
30372/// C++ class: <span style='color: green;'>```Qt3DRender::QSortPolicy```</span>.
30373///
30374/// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides storage for the sort types to be used</p>
30375/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">Qt3DRender::QSortPolicy</a> class stores the sorting type used by the FrameGraph. The sort types determine how drawable entities are sorted before drawing to determine the drawing order. When <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">QSortPolicy</a> is present in the FrameGraph, the sorting mechanism is determined by the SortTypes list. Multiple sort types can be used simultaneously. If <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">QSortPolicy</a> is not present in the FrameGraph, entities are drawn in the order they appear in the entity hierarchy.</p></div>
30376#[repr(C)]
30377pub struct QSortPolicy {
30378    _unused: u8,
30379}
30380impl QSortPolicy {
30381    /// <p>Specifies the sorting types to be used.</p>
30382    ///
30383    /// Returns a built-in Qt slot `Qt3DRender::QSortPolicy::setSortTypes` that can be passed to `qt_core::Signal::connect`.
30384    ///
30385    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html#sortTypes-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sorting types to be used.</p>
30386    /// <p><b>Access functions:</b></p>
30387    /// <div class="table"><table class="alignedsummary">
30388    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;int&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesInt</b></span>() const</td></tr>
30389    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30390    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypesInt</i>)</td></tr>
30391    /// </tbody></table></div>
30392    /// <p><b>Notifier signal:</b></p>
30393    /// <div class="table"><table class="alignedsummary">
30394    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30395    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypes</i>)</td></tr>
30396    /// </tbody></table></div></div>
30397    #[inline(always)]
30398    pub fn slot_set_sort_types(&self) -> ::qt_core::Receiver<(*const ::qt_core::QVectorOfInt,)> {
30399        unsafe {
30400            ::qt_core::Receiver::new(
30401                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30402                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30403                    b"1setSortTypes(QVector< int > const &)\0",
30404                ),
30405            )
30406        }
30407    }
30408
30409    /// <p>Specifies the sorting types to be used.</p>
30410    ///
30411    /// Returns a built-in Qt signal `Qt3DRender::QSortPolicy::sortTypesChanged` that can be passed to `qt_core::Signal::connect`.
30412    ///
30413    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html#sortTypes-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sorting types to be used.</p>
30414    /// <p><b>Access functions:</b></p>
30415    /// <div class="table"><table class="alignedsummary">
30416    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;int&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesInt</b></span>() const</td></tr>
30417    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30418    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypesInt</i>)</td></tr>
30419    /// </tbody></table></div>
30420    /// <p><b>Notifier signal:</b></p>
30421    /// <div class="table"><table class="alignedsummary">
30422    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30423    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypes</i>)</td></tr>
30424    /// </tbody></table></div></div>
30425    #[inline(always)]
30426    pub fn sort_types_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QVectorOfInt,)> {
30427        unsafe {
30428            ::qt_core::Signal::new(
30429                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30430                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30431                    b"2sortTypesChanged(QVector< int > const &)\0",
30432                ),
30433            )
30434        }
30435    }
30436
30437    /// <p>Specifies the sorting types to be used.</p>
30438    ///
30439    /// Returns a built-in Qt slot `Qt3DRender::QSortPolicy::setSortTypes` that can be passed to `qt_core::Signal::connect`.
30440    ///
30441    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html#sortTypes-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sorting types to be used.</p>
30442    /// <p><b>Access functions:</b></p>
30443    /// <div class="table"><table class="alignedsummary">
30444    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;int&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesInt</b></span>() const</td></tr>
30445    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30446    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypesInt</i>)</td></tr>
30447    /// </tbody></table></div>
30448    /// <p><b>Notifier signal:</b></p>
30449    /// <div class="table"><table class="alignedsummary">
30450    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30451    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypes</i>)</td></tr>
30452    /// </tbody></table></div></div>
30453    #[inline(always)]
30454    pub fn slot_set_sort_types2(&self) -> ::qt_core::Receiver<(*const crate::QVectorOfSortType,)> {
30455        unsafe {
30456            ::qt_core::Receiver::new(
30457                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30458                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30459                    b"1setSortTypes(QVector< Qt3DRender::QSortPolicy::SortType > const &)\0",
30460                ),
30461            )
30462        }
30463    }
30464
30465    /// <p>Specifies the sorting types to be used.</p>
30466    ///
30467    /// Returns a built-in Qt signal `Qt3DRender::QSortPolicy::sortTypesChanged` that can be passed to `qt_core::Signal::connect`.
30468    ///
30469    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html#sortTypes-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sorting types to be used.</p>
30470    /// <p><b>Access functions:</b></p>
30471    /// <div class="table"><table class="alignedsummary">
30472    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;int&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesInt</b></span>() const</td></tr>
30473    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30474    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypesInt</i>)</td></tr>
30475    /// </tbody></table></div>
30476    /// <p><b>Notifier signal:</b></p>
30477    /// <div class="table"><table class="alignedsummary">
30478    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30479    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypes</i>)</td></tr>
30480    /// </tbody></table></div></div>
30481    #[inline(always)]
30482    pub fn sort_types_changed2(&self) -> ::qt_core::Signal<(*const crate::QVectorOfSortType,)> {
30483        unsafe {
30484            ::qt_core::Signal::new(
30485                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30486                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30487                    b"2sortTypesChanged(QVector< Qt3DRender::QSortPolicy::SortType > const &)\0",
30488                ),
30489            )
30490        }
30491    }
30492
30493    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QSortPolicy::metaObject() const```</span>.
30494    #[inline(always)]
30495    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
30496        let ffi_result = {
30497            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_metaObject(
30498                self as *const crate::QSortPolicy,
30499            )
30500        };
30501        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
30502    }
30503
30504    /// <p>Default constructs an instance of QSortPolicy.</p>
30505    ///
30506    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSortPolicy::QSortPolicy(Qt3DCore::QNode* parent = …)```</span>.
30507    ///
30508    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html#QSortPolicy">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QSortPolicy.</p></div>
30509    #[inline(always)]
30510    pub unsafe fn new_1a(
30511        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
30512    ) -> ::qt_core::QBox<crate::QSortPolicy> {
30513        let ffi_result = {
30514            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_QSortPolicy(
30515                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
30516                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
30517            )
30518        };
30519        ::qt_core::QBox::from_raw(ffi_result)
30520    }
30521
30522    /// <p>Provides storage for the sort types to be used</p>
30523    ///
30524    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSortPolicy::QSortPolicy()```</span>.
30525    ///
30526    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides storage for the sort types to be used</p>
30527    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">Qt3DRender::QSortPolicy</a> class stores the sorting type used by the FrameGraph. The sort types determine how drawable entities are sorted before drawing to determine the drawing order. When <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">QSortPolicy</a> is present in the FrameGraph, the sorting mechanism is determined by the SortTypes list. Multiple sort types can be used simultaneously. If <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html">QSortPolicy</a> is not present in the FrameGraph, entities are drawn in the order they appear in the entity hierarchy.</p></div>
30528    #[inline(always)]
30529    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QSortPolicy> {
30530        let ffi_result =
30531            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_QSortPolicy1() };
30532        ::qt_core::QBox::from_raw(ffi_result)
30533    }
30534
30535    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QSortPolicy::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
30536    #[inline(always)]
30537    pub unsafe fn qt_metacall(
30538        &self,
30539        arg1: ::qt_core::q_meta_object::Call,
30540        arg2: ::std::os::raw::c_int,
30541        arg3: *mut *mut ::std::ffi::c_void,
30542    ) -> ::std::os::raw::c_int {
30543        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_qt_metacall(
30544            self as *const crate::QSortPolicy as *mut crate::QSortPolicy,
30545            arg1,
30546            arg2,
30547            arg3,
30548        )
30549    }
30550
30551    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QSortPolicy::qt_metacast(const char* arg1)```</span>.
30552    #[inline(always)]
30553    pub unsafe fn qt_metacast(
30554        &self,
30555        arg1: *const ::std::os::raw::c_char,
30556    ) -> *mut ::std::ffi::c_void {
30557        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_qt_metacast(
30558            self as *const crate::QSortPolicy as *mut crate::QSortPolicy,
30559            arg1,
30560        )
30561    }
30562
30563    /// <p>Specifies the sorting types to be used.</p>
30564    ///
30565    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSortPolicy::setSortTypes(const QVector<Qt3DRender::QSortPolicy::SortType>& sortTypes)```</span>.
30566    ///
30567    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html#sortTypes-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sorting types to be used.</p>
30568    /// <p><b>Access functions:</b></p>
30569    /// <div class="table"><table class="alignedsummary">
30570    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;int&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesInt</b></span>() const</td></tr>
30571    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30572    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypesInt</i>)</td></tr>
30573    /// </tbody></table></div>
30574    /// <p><b>Notifier signal:</b></p>
30575    /// <div class="table"><table class="alignedsummary">
30576    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30577    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypes</i>)</td></tr>
30578    /// </tbody></table></div></div>
30579    #[inline(always)]
30580    pub unsafe fn set_sort_types_q_vector_of_sort_type(
30581        &self,
30582        sort_types: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
30583    ) {
30584        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_setSortTypes(
30585            self as *const crate::QSortPolicy as *mut crate::QSortPolicy,
30586            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(
30587                sort_types,
30588            )
30589            .as_raw_ptr(),
30590        )
30591    }
30592
30593    /// <p>Specifies the sorting types to be used.</p>
30594    ///
30595    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSortPolicy::setSortTypes(const QVector<int>& sortTypesInt)```</span>.
30596    ///
30597    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html#sortTypes-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sorting types to be used.</p>
30598    /// <p><b>Access functions:</b></p>
30599    /// <div class="table"><table class="alignedsummary">
30600    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;int&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesInt</b></span>() const</td></tr>
30601    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30602    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypesInt</i>)</td></tr>
30603    /// </tbody></table></div>
30604    /// <p><b>Notifier signal:</b></p>
30605    /// <div class="table"><table class="alignedsummary">
30606    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30607    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypes</i>)</td></tr>
30608    /// </tbody></table></div></div>
30609    #[inline(always)]
30610    pub unsafe fn set_sort_types_q_vector_of_int(
30611        &self,
30612        sort_types_int: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVectorOfInt>>,
30613    ) {
30614        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_setSortTypes1(
30615            self as *const crate::QSortPolicy as *mut crate::QSortPolicy,
30616            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVectorOfInt>>::cast_into(
30617                sort_types_int,
30618            )
30619            .as_raw_ptr(),
30620        )
30621    }
30622
30623    /// <p>Specifies the sorting types to be used.</p>
30624    ///
30625    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType> Qt3DRender::QSortPolicy::sortTypes() const```</span>.
30626    ///
30627    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html#sortTypes-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sorting types to be used.</p>
30628    /// <p><b>Access functions:</b></p>
30629    /// <div class="table"><table class="alignedsummary">
30630    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;int&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesInt</b></span>() const</td></tr>
30631    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30632    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypesInt</i>)</td></tr>
30633    /// </tbody></table></div>
30634    /// <p><b>Notifier signal:</b></p>
30635    /// <div class="table"><table class="alignedsummary">
30636    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30637    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypes</i>)</td></tr>
30638    /// </tbody></table></div></div>
30639    #[inline(always)]
30640    pub unsafe fn sort_types(&self) -> ::cpp_core::CppBox<crate::QVectorOfSortType> {
30641        let ffi_result = {
30642            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_sortTypes(
30643                self as *const crate::QSortPolicy,
30644            )
30645        };
30646        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30647    }
30648
30649    /// <p>Specifies the sorting types to be used.</p>
30650    ///
30651    /// Calls C++ function: <span style='color: green;'>```QVector<int> Qt3DRender::QSortPolicy::sortTypesInt() const```</span>.
30652    ///
30653    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsortpolicy.html#sortTypes-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the sorting types to be used.</p>
30654    /// <p><b>Access functions:</b></p>
30655    /// <div class="table"><table class="alignedsummary">
30656    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector&lt;int&gt; </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesInt</b></span>() const</td></tr>
30657    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30658    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSortTypes</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypesInt</i>)</td></tr>
30659    /// </tbody></table></div>
30660    /// <p><b>Notifier signal:</b></p>
30661    /// <div class="table"><table class="alignedsummary">
30662    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;SortType&gt; &amp;<i>sortTypes</i>)</td></tr>
30663    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sortTypesChanged</b></span>(const QVector&lt;int&gt; &amp;<i>sortTypes</i>)</td></tr>
30664    /// </tbody></table></div></div>
30665    #[inline(always)]
30666    pub unsafe fn sort_types_int(&self) -> ::cpp_core::CppBox<::qt_core::QVectorOfInt> {
30667        let ffi_result = {
30668            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_sortTypesInt(
30669                self as *const crate::QSortPolicy,
30670            )
30671        };
30672        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30673    }
30674
30675    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
30676    #[inline(always)]
30677    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
30678        let ffi_result =
30679            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_staticMetaObject() };
30680        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
30681            .expect("attempted to construct a null Ref")
30682    }
30683
30684    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSortPolicy::tr(const char* s, const char* c, int n)```</span>.
30685    #[inline(always)]
30686    pub unsafe fn tr(
30687        s: *const ::std::os::raw::c_char,
30688        c: *const ::std::os::raw::c_char,
30689        n: ::std::os::raw::c_int,
30690    ) -> ::cpp_core::CppBox<::qt_core::QString> {
30691        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_tr(s, c, n) };
30692        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30693    }
30694
30695    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSortPolicy::trUtf8(const char* s, const char* c, int n)```</span>.
30696    #[inline(always)]
30697    pub unsafe fn tr_utf8(
30698        s: *const ::std::os::raw::c_char,
30699        c: *const ::std::os::raw::c_char,
30700        n: ::std::os::raw::c_int,
30701    ) -> ::cpp_core::CppBox<::qt_core::QString> {
30702        let ffi_result =
30703            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_trUtf8(s, c, n) };
30704        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
30705    }
30706}
30707
30708/// <p>Encapsulate a Spot Light object in a Qt 3D scene.</p>
30709///
30710/// C++ class: <span style='color: green;'>```Qt3DRender::QSpotLight```</span>.
30711///
30712/// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulate a Spot Light object in a Qt 3D scene.</p></div>
30713#[repr(C)]
30714pub struct QSpotLight {
30715    _unused: u8,
30716}
30717impl QSpotLight {
30718    /// <p>Specifies the constant attenuation of the spot light</p>
30719    ///
30720    /// Returns a built-in Qt slot `Qt3DRender::QSpotLight::setConstantAttenuation` that can be passed to `qt_core::Signal::connect`.
30721    ///
30722    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#constantAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the constant attenuation of the spot light</p>
30723    /// <p><b>Access functions:</b></p>
30724    /// <div class="table"><table class="alignedsummary">
30725    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuation</b></span>() const</td></tr>
30726    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setConstantAttenuation</b></span>(float <i>value</i>)</td></tr>
30727    /// </tbody></table></div>
30728    /// <p><b>Notifier signal:</b></p>
30729    /// <div class="table"><table class="alignedsummary">
30730    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuationChanged</b></span>(float <i>constantAttenuation</i>)</td></tr>
30731    /// </tbody></table></div></div>
30732    #[inline(always)]
30733    pub fn slot_set_constant_attenuation(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
30734        unsafe {
30735            ::qt_core::Receiver::new(
30736                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30737                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30738                    b"1setConstantAttenuation(float)\0",
30739                ),
30740            )
30741        }
30742    }
30743
30744    /// <p>Specifies the linear attenuation of the spot light</p>
30745    ///
30746    /// Returns a built-in Qt slot `Qt3DRender::QSpotLight::setLinearAttenuation` that can be passed to `qt_core::Signal::connect`.
30747    ///
30748    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#linearAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the linear attenuation of the spot light</p>
30749    /// <p><b>Access functions:</b></p>
30750    /// <div class="table"><table class="alignedsummary">
30751    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuation</b></span>() const</td></tr>
30752    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLinearAttenuation</b></span>(float <i>value</i>)</td></tr>
30753    /// </tbody></table></div>
30754    /// <p><b>Notifier signal:</b></p>
30755    /// <div class="table"><table class="alignedsummary">
30756    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuationChanged</b></span>(float <i>linearAttenuation</i>)</td></tr>
30757    /// </tbody></table></div></div>
30758    #[inline(always)]
30759    pub fn slot_set_linear_attenuation(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
30760        unsafe {
30761            ::qt_core::Receiver::new(
30762                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30763                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLinearAttenuation(float)\0"),
30764            )
30765        }
30766    }
30767
30768    /// <p>Specifies the quadratic attenuation of the spot light</p>
30769    ///
30770    /// Returns a built-in Qt slot `Qt3DRender::QSpotLight::setQuadraticAttenuation` that can be passed to `qt_core::Signal::connect`.
30771    ///
30772    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#quadraticAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the quadratic attenuation of the spot light</p>
30773    /// <p><b>Access functions:</b></p>
30774    /// <div class="table"><table class="alignedsummary">
30775    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuation</b></span>() const</td></tr>
30776    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setQuadraticAttenuation</b></span>(float <i>value</i>)</td></tr>
30777    /// </tbody></table></div>
30778    /// <p><b>Notifier signal:</b></p>
30779    /// <div class="table"><table class="alignedsummary">
30780    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuationChanged</b></span>(float <i>quadraticAttenuation</i>)</td></tr>
30781    /// </tbody></table></div></div>
30782    #[inline(always)]
30783    pub fn slot_set_quadratic_attenuation(
30784        &self,
30785    ) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
30786        unsafe {
30787            ::qt_core::Receiver::new(
30788                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30789                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30790                    b"1setQuadraticAttenuation(float)\0",
30791                ),
30792            )
30793        }
30794    }
30795
30796    /// <p>Specifies the local direction of the spot light</p>
30797    ///
30798    /// Returns a built-in Qt slot `Qt3DRender::QSpotLight::setLocalDirection` that can be passed to `qt_core::Signal::connect`.
30799    ///
30800    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#localDirection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the local direction of the spot light</p>
30801    /// <p><b>Access functions:</b></p>
30802    /// <div class="table"><table class="alignedsummary">
30803    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>localDirection</b></span>() const</td></tr>
30804    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLocalDirection</b></span>(const QVector3D &amp;<i>localDirection</i>)</td></tr>
30805    /// </tbody></table></div>
30806    /// <p><b>Notifier signal:</b></p>
30807    /// <div class="table"><table class="alignedsummary">
30808    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>localDirectionChanged</b></span>(const QVector3D &amp;<i>localDirection</i>)</td></tr>
30809    /// </tbody></table></div></div>
30810    #[inline(always)]
30811    pub fn slot_set_local_direction(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QVector3D,)> {
30812        unsafe {
30813            ::qt_core::Receiver::new(
30814                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30815                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30816                    b"1setLocalDirection(QVector3D const &)\0",
30817                ),
30818            )
30819        }
30820    }
30821
30822    /// <p>Specifies the cut off angle of the spot light</p>
30823    ///
30824    /// Returns a built-in Qt slot `Qt3DRender::QSpotLight::setCutOffAngle` that can be passed to `qt_core::Signal::connect`.
30825    ///
30826    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#cutOffAngle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the cut off angle of the spot light</p>
30827    /// <p><b>Access functions:</b></p>
30828    /// <div class="table"><table class="alignedsummary">
30829    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>cutOffAngle</b></span>() const</td></tr>
30830    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCutOffAngle</b></span>(float <i>cutOffAngle</i>)</td></tr>
30831    /// </tbody></table></div>
30832    /// <p><b>Notifier signal:</b></p>
30833    /// <div class="table"><table class="alignedsummary">
30834    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cutOffAngleChanged</b></span>(float <i>cutOffAngle</i>)</td></tr>
30835    /// </tbody></table></div></div>
30836    #[inline(always)]
30837    pub fn slot_set_cut_off_angle(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
30838        unsafe {
30839            ::qt_core::Receiver::new(
30840                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30841                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setCutOffAngle(float)\0"),
30842            )
30843        }
30844    }
30845
30846    /// <p>Specifies the constant attenuation of the spot light</p>
30847    ///
30848    /// Returns a built-in Qt signal `Qt3DRender::QSpotLight::constantAttenuationChanged` that can be passed to `qt_core::Signal::connect`.
30849    ///
30850    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#constantAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the constant attenuation of the spot light</p>
30851    /// <p><b>Access functions:</b></p>
30852    /// <div class="table"><table class="alignedsummary">
30853    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuation</b></span>() const</td></tr>
30854    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setConstantAttenuation</b></span>(float <i>value</i>)</td></tr>
30855    /// </tbody></table></div>
30856    /// <p><b>Notifier signal:</b></p>
30857    /// <div class="table"><table class="alignedsummary">
30858    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuationChanged</b></span>(float <i>constantAttenuation</i>)</td></tr>
30859    /// </tbody></table></div></div>
30860    #[inline(always)]
30861    pub fn constant_attenuation_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
30862        unsafe {
30863            ::qt_core::Signal::new(
30864                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30865                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30866                    b"2constantAttenuationChanged(float)\0",
30867                ),
30868            )
30869        }
30870    }
30871
30872    /// <p>Specifies the linear attenuation of the spot light</p>
30873    ///
30874    /// Returns a built-in Qt signal `Qt3DRender::QSpotLight::linearAttenuationChanged` that can be passed to `qt_core::Signal::connect`.
30875    ///
30876    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#linearAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the linear attenuation of the spot light</p>
30877    /// <p><b>Access functions:</b></p>
30878    /// <div class="table"><table class="alignedsummary">
30879    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuation</b></span>() const</td></tr>
30880    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLinearAttenuation</b></span>(float <i>value</i>)</td></tr>
30881    /// </tbody></table></div>
30882    /// <p><b>Notifier signal:</b></p>
30883    /// <div class="table"><table class="alignedsummary">
30884    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuationChanged</b></span>(float <i>linearAttenuation</i>)</td></tr>
30885    /// </tbody></table></div></div>
30886    #[inline(always)]
30887    pub fn linear_attenuation_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
30888        unsafe {
30889            ::qt_core::Signal::new(
30890                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30891                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30892                    b"2linearAttenuationChanged(float)\0",
30893                ),
30894            )
30895        }
30896    }
30897
30898    /// <p>Specifies the quadratic attenuation of the spot light</p>
30899    ///
30900    /// Returns a built-in Qt signal `Qt3DRender::QSpotLight::quadraticAttenuationChanged` that can be passed to `qt_core::Signal::connect`.
30901    ///
30902    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#quadraticAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the quadratic attenuation of the spot light</p>
30903    /// <p><b>Access functions:</b></p>
30904    /// <div class="table"><table class="alignedsummary">
30905    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuation</b></span>() const</td></tr>
30906    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setQuadraticAttenuation</b></span>(float <i>value</i>)</td></tr>
30907    /// </tbody></table></div>
30908    /// <p><b>Notifier signal:</b></p>
30909    /// <div class="table"><table class="alignedsummary">
30910    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuationChanged</b></span>(float <i>quadraticAttenuation</i>)</td></tr>
30911    /// </tbody></table></div></div>
30912    #[inline(always)]
30913    pub fn quadratic_attenuation_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
30914        unsafe {
30915            ::qt_core::Signal::new(
30916                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30917                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30918                    b"2quadraticAttenuationChanged(float)\0",
30919                ),
30920            )
30921        }
30922    }
30923
30924    /// <p>Specifies the local direction of the spot light</p>
30925    ///
30926    /// Returns a built-in Qt signal `Qt3DRender::QSpotLight::localDirectionChanged` that can be passed to `qt_core::Signal::connect`.
30927    ///
30928    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#localDirection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the local direction of the spot light</p>
30929    /// <p><b>Access functions:</b></p>
30930    /// <div class="table"><table class="alignedsummary">
30931    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>localDirection</b></span>() const</td></tr>
30932    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLocalDirection</b></span>(const QVector3D &amp;<i>localDirection</i>)</td></tr>
30933    /// </tbody></table></div>
30934    /// <p><b>Notifier signal:</b></p>
30935    /// <div class="table"><table class="alignedsummary">
30936    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>localDirectionChanged</b></span>(const QVector3D &amp;<i>localDirection</i>)</td></tr>
30937    /// </tbody></table></div></div>
30938    #[inline(always)]
30939    pub fn local_direction_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
30940        unsafe {
30941            ::qt_core::Signal::new(
30942                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30943                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
30944                    b"2localDirectionChanged(QVector3D const &)\0",
30945                ),
30946            )
30947        }
30948    }
30949
30950    /// <p>Specifies the cut off angle of the spot light</p>
30951    ///
30952    /// Returns a built-in Qt signal `Qt3DRender::QSpotLight::cutOffAngleChanged` that can be passed to `qt_core::Signal::connect`.
30953    ///
30954    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#cutOffAngle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the cut off angle of the spot light</p>
30955    /// <p><b>Access functions:</b></p>
30956    /// <div class="table"><table class="alignedsummary">
30957    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>cutOffAngle</b></span>() const</td></tr>
30958    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCutOffAngle</b></span>(float <i>cutOffAngle</i>)</td></tr>
30959    /// </tbody></table></div>
30960    /// <p><b>Notifier signal:</b></p>
30961    /// <div class="table"><table class="alignedsummary">
30962    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cutOffAngleChanged</b></span>(float <i>cutOffAngle</i>)</td></tr>
30963    /// </tbody></table></div></div>
30964    #[inline(always)]
30965    pub fn cut_off_angle_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
30966        unsafe {
30967            ::qt_core::Signal::new(
30968                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
30969                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2cutOffAngleChanged(float)\0"),
30970            )
30971        }
30972    }
30973
30974    /// <p>Specifies the constant attenuation of the spot light</p>
30975    ///
30976    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QSpotLight::constantAttenuation() const```</span>.
30977    ///
30978    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#constantAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the constant attenuation of the spot light</p>
30979    /// <p><b>Access functions:</b></p>
30980    /// <div class="table"><table class="alignedsummary">
30981    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuation</b></span>() const</td></tr>
30982    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setConstantAttenuation</b></span>(float <i>value</i>)</td></tr>
30983    /// </tbody></table></div>
30984    /// <p><b>Notifier signal:</b></p>
30985    /// <div class="table"><table class="alignedsummary">
30986    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuationChanged</b></span>(float <i>constantAttenuation</i>)</td></tr>
30987    /// </tbody></table></div></div>
30988    #[inline(always)]
30989    pub unsafe fn constant_attenuation(&self) -> ::std::os::raw::c_float {
30990        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_constantAttenuation(
30991            self as *const crate::QSpotLight,
30992        )
30993    }
30994
30995    /// <p>Specifies the cut off angle of the spot light</p>
30996    ///
30997    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QSpotLight::cutOffAngle() const```</span>.
30998    ///
30999    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#cutOffAngle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the cut off angle of the spot light</p>
31000    /// <p><b>Access functions:</b></p>
31001    /// <div class="table"><table class="alignedsummary">
31002    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>cutOffAngle</b></span>() const</td></tr>
31003    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCutOffAngle</b></span>(float <i>cutOffAngle</i>)</td></tr>
31004    /// </tbody></table></div>
31005    /// <p><b>Notifier signal:</b></p>
31006    /// <div class="table"><table class="alignedsummary">
31007    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cutOffAngleChanged</b></span>(float <i>cutOffAngle</i>)</td></tr>
31008    /// </tbody></table></div></div>
31009    #[inline(always)]
31010    pub unsafe fn cut_off_angle(&self) -> ::std::os::raw::c_float {
31011        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_cutOffAngle(
31012            self as *const crate::QSpotLight,
31013        )
31014    }
31015
31016    /// <p>Specifies the linear attenuation of the spot light</p>
31017    ///
31018    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QSpotLight::linearAttenuation() const```</span>.
31019    ///
31020    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#linearAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the linear attenuation of the spot light</p>
31021    /// <p><b>Access functions:</b></p>
31022    /// <div class="table"><table class="alignedsummary">
31023    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuation</b></span>() const</td></tr>
31024    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLinearAttenuation</b></span>(float <i>value</i>)</td></tr>
31025    /// </tbody></table></div>
31026    /// <p><b>Notifier signal:</b></p>
31027    /// <div class="table"><table class="alignedsummary">
31028    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuationChanged</b></span>(float <i>linearAttenuation</i>)</td></tr>
31029    /// </tbody></table></div></div>
31030    #[inline(always)]
31031    pub unsafe fn linear_attenuation(&self) -> ::std::os::raw::c_float {
31032        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_linearAttenuation(
31033            self as *const crate::QSpotLight,
31034        )
31035    }
31036
31037    /// <p>Specifies the local direction of the spot light</p>
31038    ///
31039    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QSpotLight::localDirection() const```</span>.
31040    ///
31041    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#localDirection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the local direction of the spot light</p>
31042    /// <p><b>Access functions:</b></p>
31043    /// <div class="table"><table class="alignedsummary">
31044    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>localDirection</b></span>() const</td></tr>
31045    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLocalDirection</b></span>(const QVector3D &amp;<i>localDirection</i>)</td></tr>
31046    /// </tbody></table></div>
31047    /// <p><b>Notifier signal:</b></p>
31048    /// <div class="table"><table class="alignedsummary">
31049    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>localDirectionChanged</b></span>(const QVector3D &amp;<i>localDirection</i>)</td></tr>
31050    /// </tbody></table></div></div>
31051    #[inline(always)]
31052    pub unsafe fn local_direction(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
31053        let ffi_result = {
31054            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_localDirection(
31055                self as *const crate::QSpotLight,
31056            )
31057        };
31058        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
31059    }
31060
31061    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QSpotLight::metaObject() const```</span>.
31062    #[inline(always)]
31063    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
31064        let ffi_result = {
31065            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_metaObject(
31066                self as *const crate::QSpotLight,
31067            )
31068        };
31069        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
31070    }
31071
31072    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html">QSpotLight</a> with the specified <i>parent</i>.</p>
31073    ///
31074    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSpotLight::QSpotLight(Qt3DCore::QNode* parent = …)```</span>.
31075    ///
31076    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#QSpotLight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html">QSpotLight</a> with the specified <i>parent</i>.</p></div>
31077    #[inline(always)]
31078    pub unsafe fn new_1a(
31079        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
31080    ) -> ::qt_core::QBox<crate::QSpotLight> {
31081        let ffi_result = {
31082            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_QSpotLight(
31083                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
31084                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
31085            )
31086        };
31087        ::qt_core::QBox::from_raw(ffi_result)
31088    }
31089
31090    /// <p>Encapsulate a Spot Light object in a Qt 3D scene.</p>
31091    ///
31092    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSpotLight::QSpotLight()```</span>.
31093    ///
31094    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulate a Spot Light object in a Qt 3D scene.</p></div>
31095    #[inline(always)]
31096    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QSpotLight> {
31097        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_QSpotLight1() };
31098        ::qt_core::QBox::from_raw(ffi_result)
31099    }
31100
31101    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QSpotLight::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
31102    #[inline(always)]
31103    pub unsafe fn qt_metacall(
31104        &self,
31105        arg1: ::qt_core::q_meta_object::Call,
31106        arg2: ::std::os::raw::c_int,
31107        arg3: *mut *mut ::std::ffi::c_void,
31108    ) -> ::std::os::raw::c_int {
31109        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_qt_metacall(
31110            self as *const crate::QSpotLight as *mut crate::QSpotLight,
31111            arg1,
31112            arg2,
31113            arg3,
31114        )
31115    }
31116
31117    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QSpotLight::qt_metacast(const char* arg1)```</span>.
31118    #[inline(always)]
31119    pub unsafe fn qt_metacast(
31120        &self,
31121        arg1: *const ::std::os::raw::c_char,
31122    ) -> *mut ::std::ffi::c_void {
31123        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_qt_metacast(
31124            self as *const crate::QSpotLight as *mut crate::QSpotLight,
31125            arg1,
31126        )
31127    }
31128
31129    /// <p>Specifies the quadratic attenuation of the spot light</p>
31130    ///
31131    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QSpotLight::quadraticAttenuation() const```</span>.
31132    ///
31133    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#quadraticAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the quadratic attenuation of the spot light</p>
31134    /// <p><b>Access functions:</b></p>
31135    /// <div class="table"><table class="alignedsummary">
31136    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuation</b></span>() const</td></tr>
31137    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setQuadraticAttenuation</b></span>(float <i>value</i>)</td></tr>
31138    /// </tbody></table></div>
31139    /// <p><b>Notifier signal:</b></p>
31140    /// <div class="table"><table class="alignedsummary">
31141    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuationChanged</b></span>(float <i>quadraticAttenuation</i>)</td></tr>
31142    /// </tbody></table></div></div>
31143    #[inline(always)]
31144    pub unsafe fn quadratic_attenuation(&self) -> ::std::os::raw::c_float {
31145        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_quadraticAttenuation(
31146            self as *const crate::QSpotLight,
31147        )
31148    }
31149
31150    /// <p>Specifies the constant attenuation of the spot light</p>
31151    ///
31152    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSpotLight::setConstantAttenuation(float value)```</span>.
31153    ///
31154    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#constantAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the constant attenuation of the spot light</p>
31155    /// <p><b>Access functions:</b></p>
31156    /// <div class="table"><table class="alignedsummary">
31157    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuation</b></span>() const</td></tr>
31158    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setConstantAttenuation</b></span>(float <i>value</i>)</td></tr>
31159    /// </tbody></table></div>
31160    /// <p><b>Notifier signal:</b></p>
31161    /// <div class="table"><table class="alignedsummary">
31162    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>constantAttenuationChanged</b></span>(float <i>constantAttenuation</i>)</td></tr>
31163    /// </tbody></table></div></div>
31164    #[inline(always)]
31165    pub unsafe fn set_constant_attenuation(&self, value: ::std::os::raw::c_float) {
31166        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_setConstantAttenuation(
31167            self as *const crate::QSpotLight as *mut crate::QSpotLight,
31168            value,
31169        )
31170    }
31171
31172    /// <p>Specifies the cut off angle of the spot light</p>
31173    ///
31174    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSpotLight::setCutOffAngle(float cutOffAngle)```</span>.
31175    ///
31176    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#cutOffAngle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the cut off angle of the spot light</p>
31177    /// <p><b>Access functions:</b></p>
31178    /// <div class="table"><table class="alignedsummary">
31179    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>cutOffAngle</b></span>() const</td></tr>
31180    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setCutOffAngle</b></span>(float <i>cutOffAngle</i>)</td></tr>
31181    /// </tbody></table></div>
31182    /// <p><b>Notifier signal:</b></p>
31183    /// <div class="table"><table class="alignedsummary">
31184    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>cutOffAngleChanged</b></span>(float <i>cutOffAngle</i>)</td></tr>
31185    /// </tbody></table></div></div>
31186    #[inline(always)]
31187    pub unsafe fn set_cut_off_angle(&self, cut_off_angle: ::std::os::raw::c_float) {
31188        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_setCutOffAngle(
31189            self as *const crate::QSpotLight as *mut crate::QSpotLight,
31190            cut_off_angle,
31191        )
31192    }
31193
31194    /// <p>Specifies the linear attenuation of the spot light</p>
31195    ///
31196    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSpotLight::setLinearAttenuation(float value)```</span>.
31197    ///
31198    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#linearAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the linear attenuation of the spot light</p>
31199    /// <p><b>Access functions:</b></p>
31200    /// <div class="table"><table class="alignedsummary">
31201    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuation</b></span>() const</td></tr>
31202    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLinearAttenuation</b></span>(float <i>value</i>)</td></tr>
31203    /// </tbody></table></div>
31204    /// <p><b>Notifier signal:</b></p>
31205    /// <div class="table"><table class="alignedsummary">
31206    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>linearAttenuationChanged</b></span>(float <i>linearAttenuation</i>)</td></tr>
31207    /// </tbody></table></div></div>
31208    #[inline(always)]
31209    pub unsafe fn set_linear_attenuation(&self, value: ::std::os::raw::c_float) {
31210        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_setLinearAttenuation(
31211            self as *const crate::QSpotLight as *mut crate::QSpotLight,
31212            value,
31213        )
31214    }
31215
31216    /// <p>Specifies the local direction of the spot light</p>
31217    ///
31218    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSpotLight::setLocalDirection(const QVector3D& localDirection)```</span>.
31219    ///
31220    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#localDirection-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the local direction of the spot light</p>
31221    /// <p><b>Access functions:</b></p>
31222    /// <div class="table"><table class="alignedsummary">
31223    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>localDirection</b></span>() const</td></tr>
31224    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLocalDirection</b></span>(const QVector3D &amp;<i>localDirection</i>)</td></tr>
31225    /// </tbody></table></div>
31226    /// <p><b>Notifier signal:</b></p>
31227    /// <div class="table"><table class="alignedsummary">
31228    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>localDirectionChanged</b></span>(const QVector3D &amp;<i>localDirection</i>)</td></tr>
31229    /// </tbody></table></div></div>
31230    #[inline(always)]
31231    pub unsafe fn set_local_direction(
31232        &self,
31233        local_direction: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
31234    ) {
31235        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_setLocalDirection(
31236            self as *const crate::QSpotLight as *mut crate::QSpotLight,
31237            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
31238                local_direction,
31239            )
31240            .as_raw_ptr(),
31241        )
31242    }
31243
31244    /// <p>Specifies the quadratic attenuation of the spot light</p>
31245    ///
31246    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSpotLight::setQuadraticAttenuation(float value)```</span>.
31247    ///
31248    /// <a href="http://doc.qt.io/qt-5/qt3drender-qspotlight.html#quadraticAttenuation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the quadratic attenuation of the spot light</p>
31249    /// <p><b>Access functions:</b></p>
31250    /// <div class="table"><table class="alignedsummary">
31251    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuation</b></span>() const</td></tr>
31252    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setQuadraticAttenuation</b></span>(float <i>value</i>)</td></tr>
31253    /// </tbody></table></div>
31254    /// <p><b>Notifier signal:</b></p>
31255    /// <div class="table"><table class="alignedsummary">
31256    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>quadraticAttenuationChanged</b></span>(float <i>quadraticAttenuation</i>)</td></tr>
31257    /// </tbody></table></div></div>
31258    #[inline(always)]
31259    pub unsafe fn set_quadratic_attenuation(&self, value: ::std::os::raw::c_float) {
31260        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_setQuadraticAttenuation(
31261            self as *const crate::QSpotLight as *mut crate::QSpotLight,
31262            value,
31263        )
31264    }
31265
31266    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
31267    #[inline(always)]
31268    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
31269        let ffi_result =
31270            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_staticMetaObject() };
31271        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
31272            .expect("attempted to construct a null Ref")
31273    }
31274
31275    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSpotLight::tr(const char* s, const char* c, int n)```</span>.
31276    #[inline(always)]
31277    pub unsafe fn tr(
31278        s: *const ::std::os::raw::c_char,
31279        c: *const ::std::os::raw::c_char,
31280        n: ::std::os::raw::c_int,
31281    ) -> ::cpp_core::CppBox<::qt_core::QString> {
31282        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_tr(s, c, n) };
31283        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
31284    }
31285
31286    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSpotLight::trUtf8(const char* s, const char* c, int n)```</span>.
31287    #[inline(always)]
31288    pub unsafe fn tr_utf8(
31289        s: *const ::std::os::raw::c_char,
31290        c: *const ::std::os::raw::c_char,
31291        n: ::std::os::raw::c_int,
31292    ) -> ::cpp_core::CppBox<::qt_core::QString> {
31293        let ffi_result =
31294            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_trUtf8(s, c, n) };
31295        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
31296    }
31297}
31298
31299/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html">QStencilMask</a> class controls the front and back writing of individual bits in the stencil planes.</p>
31300///
31301/// C++ class: <span style='color: green;'>```Qt3DRender::QStencilMask```</span>.
31302///
31303/// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html">QStencilMask</a> class controls the front and back writing of individual bits in the stencil planes.</p>
31304/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html">Qt3DRender::QStencilMask</a> class specifies a write mask for the stencil values after the stencil test. Mask can be specified separately for the front-facing and back-facing polygons. The fragment stencil value is and'd with the mask before it is written to the stencil buffer.</p></div>
31305#[repr(C)]
31306pub struct QStencilMask {
31307    _unused: u8,
31308}
31309impl QStencilMask {
31310    /// <p>Holds the write mask for the fragment stencil values for front-facing polygons.</p>
31311    ///
31312    /// Returns a built-in Qt slot `Qt3DRender::QStencilMask::setFrontOutputMask` that can be passed to `qt_core::Signal::connect`.
31313    ///
31314    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html#frontOutputMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the write mask for the fragment stencil values for front-facing polygons.</p>
31315    /// <p><b>Access functions:</b></p>
31316    /// <div class="table"><table class="alignedsummary">
31317    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>frontOutputMask</b></span>() const</td></tr>
31318    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFrontOutputMask</b></span>(uint <i>frontOutputMask</i>)</td></tr>
31319    /// </tbody></table></div>
31320    /// <p><b>Notifier signal:</b></p>
31321    /// <div class="table"><table class="alignedsummary">
31322    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>frontOutputMaskChanged</b></span>(uint <i>frontOutputMask</i>)</td></tr>
31323    /// </tbody></table></div></div>
31324    #[inline(always)]
31325    pub fn slot_set_front_output_mask(&self) -> ::qt_core::Receiver<(::std::os::raw::c_uint,)> {
31326        unsafe {
31327            ::qt_core::Receiver::new(
31328                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
31329                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
31330                    b"1setFrontOutputMask(unsigned int)\0",
31331                ),
31332            )
31333        }
31334    }
31335
31336    /// <p>Holds the write mask for the fragment stencil values for back-facing polygons.</p>
31337    ///
31338    /// Returns a built-in Qt slot `Qt3DRender::QStencilMask::setBackOutputMask` that can be passed to `qt_core::Signal::connect`.
31339    ///
31340    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html#backOutputMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the write mask for the fragment stencil values for back-facing polygons.</p>
31341    /// <p><b>Access functions:</b></p>
31342    /// <div class="table"><table class="alignedsummary">
31343    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>backOutputMask</b></span>() const</td></tr>
31344    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBackOutputMask</b></span>(uint <i>backOutputMask</i>)</td></tr>
31345    /// </tbody></table></div>
31346    /// <p><b>Notifier signal:</b></p>
31347    /// <div class="table"><table class="alignedsummary">
31348    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>backOutputMaskChanged</b></span>(uint <i>backOutputMask</i>)</td></tr>
31349    /// </tbody></table></div></div>
31350    #[inline(always)]
31351    pub fn slot_set_back_output_mask(&self) -> ::qt_core::Receiver<(::std::os::raw::c_uint,)> {
31352        unsafe {
31353            ::qt_core::Receiver::new(
31354                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
31355                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
31356                    b"1setBackOutputMask(unsigned int)\0",
31357                ),
31358            )
31359        }
31360    }
31361
31362    /// <p>Holds the write mask for the fragment stencil values for front-facing polygons.</p>
31363    ///
31364    /// Returns a built-in Qt signal `Qt3DRender::QStencilMask::frontOutputMaskChanged` that can be passed to `qt_core::Signal::connect`.
31365    ///
31366    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html#frontOutputMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the write mask for the fragment stencil values for front-facing polygons.</p>
31367    /// <p><b>Access functions:</b></p>
31368    /// <div class="table"><table class="alignedsummary">
31369    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>frontOutputMask</b></span>() const</td></tr>
31370    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFrontOutputMask</b></span>(uint <i>frontOutputMask</i>)</td></tr>
31371    /// </tbody></table></div>
31372    /// <p><b>Notifier signal:</b></p>
31373    /// <div class="table"><table class="alignedsummary">
31374    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>frontOutputMaskChanged</b></span>(uint <i>frontOutputMask</i>)</td></tr>
31375    /// </tbody></table></div></div>
31376    #[inline(always)]
31377    pub fn front_output_mask_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
31378        unsafe {
31379            ::qt_core::Signal::new(
31380                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
31381                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
31382                    b"2frontOutputMaskChanged(unsigned int)\0",
31383                ),
31384            )
31385        }
31386    }
31387
31388    /// <p>Holds the write mask for the fragment stencil values for back-facing polygons.</p>
31389    ///
31390    /// Returns a built-in Qt signal `Qt3DRender::QStencilMask::backOutputMaskChanged` that can be passed to `qt_core::Signal::connect`.
31391    ///
31392    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html#backOutputMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the write mask for the fragment stencil values for back-facing polygons.</p>
31393    /// <p><b>Access functions:</b></p>
31394    /// <div class="table"><table class="alignedsummary">
31395    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>backOutputMask</b></span>() const</td></tr>
31396    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBackOutputMask</b></span>(uint <i>backOutputMask</i>)</td></tr>
31397    /// </tbody></table></div>
31398    /// <p><b>Notifier signal:</b></p>
31399    /// <div class="table"><table class="alignedsummary">
31400    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>backOutputMaskChanged</b></span>(uint <i>backOutputMask</i>)</td></tr>
31401    /// </tbody></table></div></div>
31402    #[inline(always)]
31403    pub fn back_output_mask_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
31404        unsafe {
31405            ::qt_core::Signal::new(
31406                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
31407                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
31408                    b"2backOutputMaskChanged(unsigned int)\0",
31409                ),
31410            )
31411        }
31412    }
31413
31414    /// <p>Holds the write mask for the fragment stencil values for back-facing polygons.</p>
31415    ///
31416    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QStencilMask::backOutputMask() const```</span>.
31417    ///
31418    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html#backOutputMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the write mask for the fragment stencil values for back-facing polygons.</p>
31419    /// <p><b>Access functions:</b></p>
31420    /// <div class="table"><table class="alignedsummary">
31421    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>backOutputMask</b></span>() const</td></tr>
31422    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBackOutputMask</b></span>(uint <i>backOutputMask</i>)</td></tr>
31423    /// </tbody></table></div>
31424    /// <p><b>Notifier signal:</b></p>
31425    /// <div class="table"><table class="alignedsummary">
31426    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>backOutputMaskChanged</b></span>(uint <i>backOutputMask</i>)</td></tr>
31427    /// </tbody></table></div></div>
31428    #[inline(always)]
31429    pub unsafe fn back_output_mask(&self) -> ::std::os::raw::c_uint {
31430        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_backOutputMask(
31431            self as *const crate::QStencilMask,
31432        )
31433    }
31434
31435    /// <p>Holds the write mask for the fragment stencil values for front-facing polygons.</p>
31436    ///
31437    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QStencilMask::frontOutputMask() const```</span>.
31438    ///
31439    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html#frontOutputMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the write mask for the fragment stencil values for front-facing polygons.</p>
31440    /// <p><b>Access functions:</b></p>
31441    /// <div class="table"><table class="alignedsummary">
31442    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>frontOutputMask</b></span>() const</td></tr>
31443    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFrontOutputMask</b></span>(uint <i>frontOutputMask</i>)</td></tr>
31444    /// </tbody></table></div>
31445    /// <p><b>Notifier signal:</b></p>
31446    /// <div class="table"><table class="alignedsummary">
31447    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>frontOutputMaskChanged</b></span>(uint <i>frontOutputMask</i>)</td></tr>
31448    /// </tbody></table></div></div>
31449    #[inline(always)]
31450    pub unsafe fn front_output_mask(&self) -> ::std::os::raw::c_uint {
31451        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_frontOutputMask(
31452            self as *const crate::QStencilMask,
31453        )
31454    }
31455
31456    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QStencilMask::metaObject() const```</span>.
31457    #[inline(always)]
31458    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
31459        let ffi_result = {
31460            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_metaObject(
31461                self as *const crate::QStencilMask,
31462            )
31463        };
31464        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
31465    }
31466
31467    /// <p>Default constructs an instance of QStencilMask.</p>
31468    ///
31469    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QStencilMask::QStencilMask(Qt3DCore::QNode* parent = …)```</span>.
31470    ///
31471    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html#QStencilMask">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QStencilMask.</p></div>
31472    #[inline(always)]
31473    pub unsafe fn new_1a(
31474        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
31475    ) -> ::qt_core::QBox<crate::QStencilMask> {
31476        let ffi_result = {
31477            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_QStencilMask(
31478                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
31479                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
31480            )
31481        };
31482        ::qt_core::QBox::from_raw(ffi_result)
31483    }
31484
31485    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html">QStencilMask</a> class controls the front and back writing of individual bits in the stencil planes.</p>
31486    ///
31487    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QStencilMask::QStencilMask()```</span>.
31488    ///
31489    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html">QStencilMask</a> class controls the front and back writing of individual bits in the stencil planes.</p>
31490    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html">Qt3DRender::QStencilMask</a> class specifies a write mask for the stencil values after the stencil test. Mask can be specified separately for the front-facing and back-facing polygons. The fragment stencil value is and'd with the mask before it is written to the stencil buffer.</p></div>
31491    #[inline(always)]
31492    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QStencilMask> {
31493        let ffi_result =
31494            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_QStencilMask1() };
31495        ::qt_core::QBox::from_raw(ffi_result)
31496    }
31497
31498    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QStencilMask::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
31499    #[inline(always)]
31500    pub unsafe fn qt_metacall(
31501        &self,
31502        arg1: ::qt_core::q_meta_object::Call,
31503        arg2: ::std::os::raw::c_int,
31504        arg3: *mut *mut ::std::ffi::c_void,
31505    ) -> ::std::os::raw::c_int {
31506        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_qt_metacall(
31507            self as *const crate::QStencilMask as *mut crate::QStencilMask,
31508            arg1,
31509            arg2,
31510            arg3,
31511        )
31512    }
31513
31514    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QStencilMask::qt_metacast(const char* arg1)```</span>.
31515    #[inline(always)]
31516    pub unsafe fn qt_metacast(
31517        &self,
31518        arg1: *const ::std::os::raw::c_char,
31519    ) -> *mut ::std::ffi::c_void {
31520        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_qt_metacast(
31521            self as *const crate::QStencilMask as *mut crate::QStencilMask,
31522            arg1,
31523        )
31524    }
31525
31526    /// <p>Holds the write mask for the fragment stencil values for back-facing polygons.</p>
31527    ///
31528    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QStencilMask::setBackOutputMask(unsigned int backOutputMask)```</span>.
31529    ///
31530    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html#backOutputMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the write mask for the fragment stencil values for back-facing polygons.</p>
31531    /// <p><b>Access functions:</b></p>
31532    /// <div class="table"><table class="alignedsummary">
31533    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>backOutputMask</b></span>() const</td></tr>
31534    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setBackOutputMask</b></span>(uint <i>backOutputMask</i>)</td></tr>
31535    /// </tbody></table></div>
31536    /// <p><b>Notifier signal:</b></p>
31537    /// <div class="table"><table class="alignedsummary">
31538    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>backOutputMaskChanged</b></span>(uint <i>backOutputMask</i>)</td></tr>
31539    /// </tbody></table></div></div>
31540    #[inline(always)]
31541    pub unsafe fn set_back_output_mask(&self, back_output_mask: ::std::os::raw::c_uint) {
31542        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_setBackOutputMask(
31543            self as *const crate::QStencilMask as *mut crate::QStencilMask,
31544            back_output_mask,
31545        )
31546    }
31547
31548    /// <p>Holds the write mask for the fragment stencil values for front-facing polygons.</p>
31549    ///
31550    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QStencilMask::setFrontOutputMask(unsigned int frontOutputMask)```</span>.
31551    ///
31552    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstencilmask.html#frontOutputMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the write mask for the fragment stencil values for front-facing polygons.</p>
31553    /// <p><b>Access functions:</b></p>
31554    /// <div class="table"><table class="alignedsummary">
31555    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>frontOutputMask</b></span>() const</td></tr>
31556    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFrontOutputMask</b></span>(uint <i>frontOutputMask</i>)</td></tr>
31557    /// </tbody></table></div>
31558    /// <p><b>Notifier signal:</b></p>
31559    /// <div class="table"><table class="alignedsummary">
31560    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>frontOutputMaskChanged</b></span>(uint <i>frontOutputMask</i>)</td></tr>
31561    /// </tbody></table></div></div>
31562    #[inline(always)]
31563    pub unsafe fn set_front_output_mask(&self, front_output_mask: ::std::os::raw::c_uint) {
31564        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_setFrontOutputMask(
31565            self as *const crate::QStencilMask as *mut crate::QStencilMask,
31566            front_output_mask,
31567        )
31568    }
31569
31570    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
31571    #[inline(always)]
31572    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
31573        let ffi_result =
31574            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_staticMetaObject() };
31575        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
31576            .expect("attempted to construct a null Ref")
31577    }
31578
31579    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilMask::tr(const char* s, const char* c, int n)```</span>.
31580    #[inline(always)]
31581    pub unsafe fn tr(
31582        s: *const ::std::os::raw::c_char,
31583        c: *const ::std::os::raw::c_char,
31584        n: ::std::os::raw::c_int,
31585    ) -> ::cpp_core::CppBox<::qt_core::QString> {
31586        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_tr(s, c, n) };
31587        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
31588    }
31589
31590    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilMask::trUtf8(const char* s, const char* c, int n)```</span>.
31591    #[inline(always)]
31592    pub unsafe fn tr_utf8(
31593        s: *const ::std::os::raw::c_char,
31594        c: *const ::std::os::raw::c_char,
31595        n: ::std::os::raw::c_int,
31596    ) -> ::cpp_core::CppBox<::qt_core::QString> {
31597        let ffi_result =
31598            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_trUtf8(s, c, n) };
31599        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
31600    }
31601}
31602
31603/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html">QStencilOperation</a> class specifies stencil operation</p>
31604///
31605/// C++ class: <span style='color: green;'>```Qt3DRender::QStencilOperation```</span>.
31606///
31607/// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html">QStencilOperation</a> class specifies stencil operation</p>
31608/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html">Qt3DRender::QStencilOperation</a> class specifies the stencil operations for the front- and back-facing polygons. The stencil operation control what is done to fragment when the stencil and depth test pass or fail.</p></div>
31609#[repr(C)]
31610pub struct QStencilOperation {
31611    _unused: u8,
31612}
31613impl QStencilOperation {
31614    /// <p>Holds the stencil operation arguments for back-facing polygons.</p>
31615    ///
31616    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments* Qt3DRender::QStencilOperation::back() const```</span>.
31617    ///
31618    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html#back-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil operation arguments for back-facing polygons.</p>
31619    /// <p><b>Access functions:</b></p>
31620    /// <div class="table"><table class="alignedsummary">
31621    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStencilOperationArguments *</td><td class="memItemRight bottomAlign"><span class="name"><b>back</b></span>() const</td></tr>
31622    /// </tbody></table></div></div>
31623    #[inline(always)]
31624    pub unsafe fn back(&self) -> ::qt_core::QPtr<crate::QStencilOperationArguments> {
31625        let ffi_result = {
31626            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_back(
31627                self as *const crate::QStencilOperation,
31628            )
31629        };
31630        ::qt_core::QPtr::from_raw(ffi_result)
31631    }
31632
31633    /// <p>Holds the stencil operation arguments for front-facing polygons.</p>
31634    ///
31635    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments* Qt3DRender::QStencilOperation::front() const```</span>.
31636    ///
31637    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html#front-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil operation arguments for front-facing polygons.</p>
31638    /// <p><b>Access functions:</b></p>
31639    /// <div class="table"><table class="alignedsummary">
31640    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStencilOperationArguments *</td><td class="memItemRight bottomAlign"><span class="name"><b>front</b></span>() const</td></tr>
31641    /// </tbody></table></div></div>
31642    #[inline(always)]
31643    pub unsafe fn front(&self) -> ::qt_core::QPtr<crate::QStencilOperationArguments> {
31644        let ffi_result = {
31645            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_front(
31646                self as *const crate::QStencilOperation,
31647            )
31648        };
31649        ::qt_core::QPtr::from_raw(ffi_result)
31650    }
31651
31652    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QStencilOperation::metaObject() const```</span>.
31653    #[inline(always)]
31654    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
31655        let ffi_result = {
31656            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_metaObject(
31657                self as *const crate::QStencilOperation,
31658            )
31659        };
31660        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
31661    }
31662
31663    /// <p>Default constructs an instance of QStencilOperation.</p>
31664    ///
31665    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QStencilOperation::QStencilOperation(Qt3DCore::QNode* parent = …)```</span>.
31666    ///
31667    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html#QStencilOperation">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QStencilOperation.</p></div>
31668    #[inline(always)]
31669    pub unsafe fn new_1a(
31670        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
31671    ) -> ::qt_core::QBox<crate::QStencilOperation> {
31672        let ffi_result = {
31673            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_QStencilOperation(
31674                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
31675                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
31676            )
31677        };
31678        ::qt_core::QBox::from_raw(ffi_result)
31679    }
31680
31681    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html">QStencilOperation</a> class specifies stencil operation</p>
31682    ///
31683    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QStencilOperation::QStencilOperation()```</span>.
31684    ///
31685    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html">QStencilOperation</a> class specifies stencil operation</p>
31686    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperation.html">Qt3DRender::QStencilOperation</a> class specifies the stencil operations for the front- and back-facing polygons. The stencil operation control what is done to fragment when the stencil and depth test pass or fail.</p></div>
31687    #[inline(always)]
31688    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QStencilOperation> {
31689        let ffi_result = {
31690            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_QStencilOperation1()
31691        };
31692        ::qt_core::QBox::from_raw(ffi_result)
31693    }
31694
31695    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QStencilOperation::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
31696    #[inline(always)]
31697    pub unsafe fn qt_metacall(
31698        &self,
31699        arg1: ::qt_core::q_meta_object::Call,
31700        arg2: ::std::os::raw::c_int,
31701        arg3: *mut *mut ::std::ffi::c_void,
31702    ) -> ::std::os::raw::c_int {
31703        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_qt_metacall(
31704            self as *const crate::QStencilOperation as *mut crate::QStencilOperation,
31705            arg1,
31706            arg2,
31707            arg3,
31708        )
31709    }
31710
31711    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QStencilOperation::qt_metacast(const char* arg1)```</span>.
31712    #[inline(always)]
31713    pub unsafe fn qt_metacast(
31714        &self,
31715        arg1: *const ::std::os::raw::c_char,
31716    ) -> *mut ::std::ffi::c_void {
31717        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_qt_metacast(
31718            self as *const crate::QStencilOperation as *mut crate::QStencilOperation,
31719            arg1,
31720        )
31721    }
31722
31723    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
31724    #[inline(always)]
31725    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
31726        let ffi_result =
31727            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_staticMetaObject() };
31728        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
31729            .expect("attempted to construct a null Ref")
31730    }
31731
31732    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilOperation::tr(const char* s, const char* c, int n)```</span>.
31733    #[inline(always)]
31734    pub unsafe fn tr(
31735        s: *const ::std::os::raw::c_char,
31736        c: *const ::std::os::raw::c_char,
31737        n: ::std::os::raw::c_int,
31738    ) -> ::cpp_core::CppBox<::qt_core::QString> {
31739        let ffi_result =
31740            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_tr(s, c, n) };
31741        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
31742    }
31743
31744    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilOperation::trUtf8(const char* s, const char* c, int n)```</span>.
31745    #[inline(always)]
31746    pub unsafe fn tr_utf8(
31747        s: *const ::std::os::raw::c_char,
31748        c: *const ::std::os::raw::c_char,
31749        n: ::std::os::raw::c_int,
31750    ) -> ::cpp_core::CppBox<::qt_core::QString> {
31751        let ffi_result =
31752            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_trUtf8(s, c, n) };
31753        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
31754    }
31755}
31756
31757pub mod q_stencil_operation_arguments {
31758    //! C++ type: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments```</span>
31759
31760    /// C++ enum: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments::FaceMode```</span>.
31761    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
31762    #[repr(transparent)]
31763    pub struct FaceMode(::std::os::raw::c_int);
31764
31765    impl From<::std::os::raw::c_int> for FaceMode {
31766        fn from(value: ::std::os::raw::c_int) -> Self {
31767            FaceMode(value)
31768        }
31769    }
31770
31771    impl From<FaceMode> for ::std::os::raw::c_int {
31772        fn from(value: FaceMode) -> Self {
31773            value.0
31774        }
31775    }
31776
31777    impl FaceMode {
31778        pub fn to_int(&self) -> ::std::os::raw::c_int {
31779            self.0
31780        }
31781    }
31782
31783    impl FaceMode {
31784        /// C++ enum variant: <span style='color: green;'>```Front = 1028```</span>
31785        #[allow(non_upper_case_globals)]
31786        pub const Front: crate::q_stencil_operation_arguments::FaceMode =
31787            crate::q_stencil_operation_arguments::FaceMode(1028);
31788        /// C++ enum variant: <span style='color: green;'>```Back = 1029```</span>
31789        #[allow(non_upper_case_globals)]
31790        pub const Back: crate::q_stencil_operation_arguments::FaceMode =
31791            crate::q_stencil_operation_arguments::FaceMode(1029);
31792        /// C++ enum variant: <span style='color: green;'>```FrontAndBack = 1032```</span>
31793        #[allow(non_upper_case_globals)]
31794        pub const FrontAndBack: crate::q_stencil_operation_arguments::FaceMode =
31795            crate::q_stencil_operation_arguments::FaceMode(1032);
31796    }
31797
31798    /// C++ enum: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments::Operation```</span>.
31799    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
31800    #[repr(transparent)]
31801    pub struct Operation(::std::os::raw::c_int);
31802
31803    impl From<::std::os::raw::c_int> for Operation {
31804        fn from(value: ::std::os::raw::c_int) -> Self {
31805            Operation(value)
31806        }
31807    }
31808
31809    impl From<Operation> for ::std::os::raw::c_int {
31810        fn from(value: Operation) -> Self {
31811            value.0
31812        }
31813    }
31814
31815    impl Operation {
31816        pub fn to_int(&self) -> ::std::os::raw::c_int {
31817            self.0
31818        }
31819    }
31820
31821    impl Operation {
31822        /// C++ enum variant: <span style='color: green;'>```Zero = 0```</span>
31823        #[allow(non_upper_case_globals)]
31824        pub const Zero: crate::q_stencil_operation_arguments::Operation =
31825            crate::q_stencil_operation_arguments::Operation(0);
31826        /// C++ enum variant: <span style='color: green;'>```Keep = 7680```</span>
31827        #[allow(non_upper_case_globals)]
31828        pub const Keep: crate::q_stencil_operation_arguments::Operation =
31829            crate::q_stencil_operation_arguments::Operation(7680);
31830        /// C++ enum variant: <span style='color: green;'>```Replace = 7681```</span>
31831        #[allow(non_upper_case_globals)]
31832        pub const Replace: crate::q_stencil_operation_arguments::Operation =
31833            crate::q_stencil_operation_arguments::Operation(7681);
31834        /// C++ enum variant: <span style='color: green;'>```Increment = 7682```</span>
31835        #[allow(non_upper_case_globals)]
31836        pub const Increment: crate::q_stencil_operation_arguments::Operation =
31837            crate::q_stencil_operation_arguments::Operation(7682);
31838        /// C++ enum variant: <span style='color: green;'>```Decrement = 7683```</span>
31839        #[allow(non_upper_case_globals)]
31840        pub const Decrement: crate::q_stencil_operation_arguments::Operation =
31841            crate::q_stencil_operation_arguments::Operation(7683);
31842        /// C++ enum variant: <span style='color: green;'>```IncrementWrap = 34055```</span>
31843        #[allow(non_upper_case_globals)]
31844        pub const IncrementWrap: crate::q_stencil_operation_arguments::Operation =
31845            crate::q_stencil_operation_arguments::Operation(34055);
31846        /// C++ enum variant: <span style='color: green;'>```DecrementWrap = 34056```</span>
31847        #[allow(non_upper_case_globals)]
31848        pub const DecrementWrap: crate::q_stencil_operation_arguments::Operation =
31849            crate::q_stencil_operation_arguments::Operation(34056);
31850        /// C++ enum variant: <span style='color: green;'>```Invert = 5386```</span>
31851        #[allow(non_upper_case_globals)]
31852        pub const Invert: crate::q_stencil_operation_arguments::Operation =
31853            crate::q_stencil_operation_arguments::Operation(5386);
31854    }
31855}
31856/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html">QStencilOperationArguments</a> class sets the actions to be taken when stencil and depth tests fail.</p>
31857///
31858/// C++ class: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments```</span>.
31859///
31860/// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html">QStencilOperationArguments</a> class sets the actions to be taken when stencil and depth tests fail.</p>
31861/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html">Qt3DRender::QStencilOperationArguments</a> class specifies the arguments for the stencil operations.</p></div>
31862#[repr(C)]
31863pub struct QStencilOperationArguments {
31864    _unused: u8,
31865}
31866impl QStencilOperationArguments {
31867    /// <p>Holds the stencil test operation for when the stencil test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31868    ///
31869    /// Returns a built-in Qt slot `Qt3DRender::QStencilOperationArguments::setStencilTestFailureOperation` that can be passed to `qt_core::Signal::connect`.
31870    ///
31871    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#stencilTestFailureOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when the stencil test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31872    /// <p><b>Access functions:</b></p>
31873    /// <div class="table"><table class="alignedsummary">
31874    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilTestFailureOperation</b></span>() const</td></tr>
31875    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setStencilTestFailureOperation</b></span>(Operation <i>operation</i>)</td></tr>
31876    /// </tbody></table></div>
31877    /// <p><b>Notifier signal:</b></p>
31878    /// <div class="table"><table class="alignedsummary">
31879    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilTestFailureOperationChanged</b></span>(Operation <i>stencilFail</i>)</td></tr>
31880    /// </tbody></table></div></div>
31881    #[inline(always)]
31882    pub fn slot_set_stencil_test_failure_operation(
31883        &self,
31884    ) -> ::qt_core::Receiver<(crate::q_stencil_operation_arguments::Operation,)> {
31885        unsafe {
31886            ::qt_core::Receiver::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setStencilTestFailureOperation(Qt3DRender::QStencilOperationArguments::Operation)\0"))
31887        }
31888    }
31889
31890    /// <p>Holds the stencil test operation for when the stencil test passes, but depth test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31891    ///
31892    /// Returns a built-in Qt slot `Qt3DRender::QStencilOperationArguments::setDepthTestFailureOperation` that can be passed to `qt_core::Signal::connect`.
31893    ///
31894    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#depthTestFailureOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when the stencil test passes, but depth test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31895    /// <p><b>Access functions:</b></p>
31896    /// <div class="table"><table class="alignedsummary">
31897    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>depthTestFailureOperation</b></span>() const</td></tr>
31898    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthTestFailureOperation</b></span>(Operation <i>operation</i>)</td></tr>
31899    /// </tbody></table></div>
31900    /// <p><b>Notifier signal:</b></p>
31901    /// <div class="table"><table class="alignedsummary">
31902    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthTestFailureOperationChanged</b></span>(Operation <i>depthFail</i>)</td></tr>
31903    /// </tbody></table></div></div>
31904    #[inline(always)]
31905    pub fn slot_set_depth_test_failure_operation(
31906        &self,
31907    ) -> ::qt_core::Receiver<(crate::q_stencil_operation_arguments::Operation,)> {
31908        unsafe {
31909            ::qt_core::Receiver::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setDepthTestFailureOperation(Qt3DRender::QStencilOperationArguments::Operation)\0"))
31910        }
31911    }
31912
31913    /// <p>Holds the stencil test operation for when depth and stencil test pass. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31914    ///
31915    /// Returns a built-in Qt slot `Qt3DRender::QStencilOperationArguments::setAllTestsPassOperation` that can be passed to `qt_core::Signal::connect`.
31916    ///
31917    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#allTestsPassOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when depth and stencil test pass. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31918    /// <p><b>Access functions:</b></p>
31919    /// <div class="table"><table class="alignedsummary">
31920    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>allTestsPassOperation</b></span>() const</td></tr>
31921    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAllTestsPassOperation</b></span>(Operation <i>operation</i>)</td></tr>
31922    /// </tbody></table></div>
31923    /// <p><b>Notifier signal:</b></p>
31924    /// <div class="table"><table class="alignedsummary">
31925    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>allTestsPassOperationChanged</b></span>(Operation <i>stencilDepthPass</i>)</td></tr>
31926    /// </tbody></table></div></div>
31927    #[inline(always)]
31928    pub fn slot_set_all_tests_pass_operation(
31929        &self,
31930    ) -> ::qt_core::Receiver<(crate::q_stencil_operation_arguments::Operation,)> {
31931        unsafe {
31932            ::qt_core::Receiver::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setAllTestsPassOperation(Qt3DRender::QStencilOperationArguments::Operation)\0"))
31933        }
31934    }
31935
31936    /// <p>Holds the stencil test operation for when the stencil test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31937    ///
31938    /// Returns a built-in Qt signal `Qt3DRender::QStencilOperationArguments::stencilTestFailureOperationChanged` that can be passed to `qt_core::Signal::connect`.
31939    ///
31940    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#stencilTestFailureOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when the stencil test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31941    /// <p><b>Access functions:</b></p>
31942    /// <div class="table"><table class="alignedsummary">
31943    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilTestFailureOperation</b></span>() const</td></tr>
31944    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setStencilTestFailureOperation</b></span>(Operation <i>operation</i>)</td></tr>
31945    /// </tbody></table></div>
31946    /// <p><b>Notifier signal:</b></p>
31947    /// <div class="table"><table class="alignedsummary">
31948    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilTestFailureOperationChanged</b></span>(Operation <i>stencilFail</i>)</td></tr>
31949    /// </tbody></table></div></div>
31950    #[inline(always)]
31951    pub fn stencil_test_failure_operation_changed(
31952        &self,
31953    ) -> ::qt_core::Signal<(crate::q_stencil_operation_arguments::Operation,)> {
31954        unsafe {
31955            ::qt_core::Signal::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2stencilTestFailureOperationChanged(Qt3DRender::QStencilOperationArguments::Operation)\0"))
31956        }
31957    }
31958
31959    /// <p>Holds the stencil test operation for when the stencil test passes, but depth test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31960    ///
31961    /// Returns a built-in Qt signal `Qt3DRender::QStencilOperationArguments::depthTestFailureOperationChanged` that can be passed to `qt_core::Signal::connect`.
31962    ///
31963    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#depthTestFailureOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when the stencil test passes, but depth test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31964    /// <p><b>Access functions:</b></p>
31965    /// <div class="table"><table class="alignedsummary">
31966    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>depthTestFailureOperation</b></span>() const</td></tr>
31967    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthTestFailureOperation</b></span>(Operation <i>operation</i>)</td></tr>
31968    /// </tbody></table></div>
31969    /// <p><b>Notifier signal:</b></p>
31970    /// <div class="table"><table class="alignedsummary">
31971    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthTestFailureOperationChanged</b></span>(Operation <i>depthFail</i>)</td></tr>
31972    /// </tbody></table></div></div>
31973    #[inline(always)]
31974    pub fn depth_test_failure_operation_changed(
31975        &self,
31976    ) -> ::qt_core::Signal<(crate::q_stencil_operation_arguments::Operation,)> {
31977        unsafe {
31978            ::qt_core::Signal::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2depthTestFailureOperationChanged(Qt3DRender::QStencilOperationArguments::Operation)\0"))
31979        }
31980    }
31981
31982    /// <p>Holds the stencil test operation for when depth and stencil test pass. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31983    ///
31984    /// Returns a built-in Qt signal `Qt3DRender::QStencilOperationArguments::allTestsPassOperationChanged` that can be passed to `qt_core::Signal::connect`.
31985    ///
31986    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#allTestsPassOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when depth and stencil test pass. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
31987    /// <p><b>Access functions:</b></p>
31988    /// <div class="table"><table class="alignedsummary">
31989    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>allTestsPassOperation</b></span>() const</td></tr>
31990    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAllTestsPassOperation</b></span>(Operation <i>operation</i>)</td></tr>
31991    /// </tbody></table></div>
31992    /// <p><b>Notifier signal:</b></p>
31993    /// <div class="table"><table class="alignedsummary">
31994    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>allTestsPassOperationChanged</b></span>(Operation <i>stencilDepthPass</i>)</td></tr>
31995    /// </tbody></table></div></div>
31996    #[inline(always)]
31997    pub fn all_tests_pass_operation_changed(
31998        &self,
31999    ) -> ::qt_core::Signal<(crate::q_stencil_operation_arguments::Operation,)> {
32000        unsafe {
32001            ::qt_core::Signal::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2allTestsPassOperationChanged(Qt3DRender::QStencilOperationArguments::Operation)\0"))
32002        }
32003    }
32004
32005    /// <p>Holds the faces the arguments are applied to.</p>
32006    ///
32007    /// Returns a built-in Qt signal `Qt3DRender::QStencilOperationArguments::faceModeChanged` that can be passed to `qt_core::Signal::connect`.
32008    ///
32009    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#faceMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the faces the arguments are applied to.</p>
32010    /// <p><b>Access functions:</b></p>
32011    /// <div class="table"><table class="alignedsummary">
32012    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> FaceMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceMode</b></span>() const</td></tr>
32013    /// </tbody></table></div>
32014    /// <p><b>Notifier signal:</b></p>
32015    /// <div class="table"><table class="alignedsummary">
32016    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceModeChanged</b></span>(FaceMode <i>faceMode</i>)</td></tr>
32017    /// </tbody></table></div></div>
32018    #[inline(always)]
32019    pub fn face_mode_changed(
32020        &self,
32021    ) -> ::qt_core::Signal<(crate::q_stencil_operation_arguments::FaceMode,)> {
32022        unsafe {
32023            ::qt_core::Signal::new(
32024                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
32025                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
32026                    b"2faceModeChanged(Qt3DRender::QStencilOperationArguments::FaceMode)\0",
32027                ),
32028            )
32029        }
32030    }
32031
32032    /// <p>Holds the stencil test operation for when depth and stencil test pass. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32033    ///
32034    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments::Operation Qt3DRender::QStencilOperationArguments::allTestsPassOperation() const```</span>.
32035    ///
32036    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#allTestsPassOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when depth and stencil test pass. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32037    /// <p><b>Access functions:</b></p>
32038    /// <div class="table"><table class="alignedsummary">
32039    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>allTestsPassOperation</b></span>() const</td></tr>
32040    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAllTestsPassOperation</b></span>(Operation <i>operation</i>)</td></tr>
32041    /// </tbody></table></div>
32042    /// <p><b>Notifier signal:</b></p>
32043    /// <div class="table"><table class="alignedsummary">
32044    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>allTestsPassOperationChanged</b></span>(Operation <i>stencilDepthPass</i>)</td></tr>
32045    /// </tbody></table></div></div>
32046    #[inline(always)]
32047    pub unsafe fn all_tests_pass_operation(
32048        &self,
32049    ) -> crate::q_stencil_operation_arguments::Operation {
32050        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_allTestsPassOperation(self as *const crate::QStencilOperationArguments)
32051    }
32052
32053    /// <p>Holds the stencil test operation for when the stencil test passes, but depth test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32054    ///
32055    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments::Operation Qt3DRender::QStencilOperationArguments::depthTestFailureOperation() const```</span>.
32056    ///
32057    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#depthTestFailureOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when the stencil test passes, but depth test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32058    /// <p><b>Access functions:</b></p>
32059    /// <div class="table"><table class="alignedsummary">
32060    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>depthTestFailureOperation</b></span>() const</td></tr>
32061    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthTestFailureOperation</b></span>(Operation <i>operation</i>)</td></tr>
32062    /// </tbody></table></div>
32063    /// <p><b>Notifier signal:</b></p>
32064    /// <div class="table"><table class="alignedsummary">
32065    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthTestFailureOperationChanged</b></span>(Operation <i>depthFail</i>)</td></tr>
32066    /// </tbody></table></div></div>
32067    #[inline(always)]
32068    pub unsafe fn depth_test_failure_operation(
32069        &self,
32070    ) -> crate::q_stencil_operation_arguments::Operation {
32071        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_depthTestFailureOperation(self as *const crate::QStencilOperationArguments)
32072    }
32073
32074    /// <p>Holds the faces the arguments are applied to.</p>
32075    ///
32076    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments::FaceMode Qt3DRender::QStencilOperationArguments::faceMode() const```</span>.
32077    ///
32078    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#faceMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the faces the arguments are applied to.</p>
32079    /// <p><b>Access functions:</b></p>
32080    /// <div class="table"><table class="alignedsummary">
32081    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> FaceMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceMode</b></span>() const</td></tr>
32082    /// </tbody></table></div>
32083    /// <p><b>Notifier signal:</b></p>
32084    /// <div class="table"><table class="alignedsummary">
32085    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceModeChanged</b></span>(FaceMode <i>faceMode</i>)</td></tr>
32086    /// </tbody></table></div></div>
32087    #[inline(always)]
32088    pub unsafe fn face_mode(&self) -> crate::q_stencil_operation_arguments::FaceMode {
32089        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_faceMode(
32090            self as *const crate::QStencilOperationArguments,
32091        )
32092    }
32093
32094    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QStencilOperationArguments::metaObject() const```</span>.
32095    #[inline(always)]
32096    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
32097        let ffi_result = {
32098            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_metaObject(
32099                self as *const crate::QStencilOperationArguments,
32100            )
32101        };
32102        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
32103    }
32104
32105    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QStencilOperationArguments::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
32106    #[inline(always)]
32107    pub unsafe fn qt_metacall(
32108        &self,
32109        arg1: ::qt_core::q_meta_object::Call,
32110        arg2: ::std::os::raw::c_int,
32111        arg3: *mut *mut ::std::ffi::c_void,
32112    ) -> ::std::os::raw::c_int {
32113        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_qt_metacall(
32114            self as *const crate::QStencilOperationArguments
32115                as *mut crate::QStencilOperationArguments,
32116            arg1,
32117            arg2,
32118            arg3,
32119        )
32120    }
32121
32122    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QStencilOperationArguments::qt_metacast(const char* arg1)```</span>.
32123    #[inline(always)]
32124    pub unsafe fn qt_metacast(
32125        &self,
32126        arg1: *const ::std::os::raw::c_char,
32127    ) -> *mut ::std::ffi::c_void {
32128        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_qt_metacast(
32129            self as *const crate::QStencilOperationArguments
32130                as *mut crate::QStencilOperationArguments,
32131            arg1,
32132        )
32133    }
32134
32135    /// <p>Holds the stencil test operation for when depth and stencil test pass. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32136    ///
32137    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QStencilOperationArguments::setAllTestsPassOperation(Qt3DRender::QStencilOperationArguments::Operation operation)```</span>.
32138    ///
32139    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#allTestsPassOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when depth and stencil test pass. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32140    /// <p><b>Access functions:</b></p>
32141    /// <div class="table"><table class="alignedsummary">
32142    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>allTestsPassOperation</b></span>() const</td></tr>
32143    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAllTestsPassOperation</b></span>(Operation <i>operation</i>)</td></tr>
32144    /// </tbody></table></div>
32145    /// <p><b>Notifier signal:</b></p>
32146    /// <div class="table"><table class="alignedsummary">
32147    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>allTestsPassOperationChanged</b></span>(Operation <i>stencilDepthPass</i>)</td></tr>
32148    /// </tbody></table></div></div>
32149    #[inline(always)]
32150    pub unsafe fn set_all_tests_pass_operation(
32151        &self,
32152        operation: crate::q_stencil_operation_arguments::Operation,
32153    ) {
32154        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_setAllTestsPassOperation(self as *const crate::QStencilOperationArguments as *mut crate::QStencilOperationArguments, operation)
32155    }
32156
32157    /// <p>Holds the stencil test operation for when the stencil test passes, but depth test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32158    ///
32159    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QStencilOperationArguments::setDepthTestFailureOperation(Qt3DRender::QStencilOperationArguments::Operation operation)```</span>.
32160    ///
32161    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#depthTestFailureOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when the stencil test passes, but depth test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32162    /// <p><b>Access functions:</b></p>
32163    /// <div class="table"><table class="alignedsummary">
32164    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>depthTestFailureOperation</b></span>() const</td></tr>
32165    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDepthTestFailureOperation</b></span>(Operation <i>operation</i>)</td></tr>
32166    /// </tbody></table></div>
32167    /// <p><b>Notifier signal:</b></p>
32168    /// <div class="table"><table class="alignedsummary">
32169    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>depthTestFailureOperationChanged</b></span>(Operation <i>depthFail</i>)</td></tr>
32170    /// </tbody></table></div></div>
32171    #[inline(always)]
32172    pub unsafe fn set_depth_test_failure_operation(
32173        &self,
32174        operation: crate::q_stencil_operation_arguments::Operation,
32175    ) {
32176        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_setDepthTestFailureOperation(self as *const crate::QStencilOperationArguments as *mut crate::QStencilOperationArguments, operation)
32177    }
32178
32179    /// <p>Holds the stencil test operation for when the stencil test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32180    ///
32181    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QStencilOperationArguments::setStencilTestFailureOperation(Qt3DRender::QStencilOperationArguments::Operation operation)```</span>.
32182    ///
32183    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#stencilTestFailureOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when the stencil test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32184    /// <p><b>Access functions:</b></p>
32185    /// <div class="table"><table class="alignedsummary">
32186    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilTestFailureOperation</b></span>() const</td></tr>
32187    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setStencilTestFailureOperation</b></span>(Operation <i>operation</i>)</td></tr>
32188    /// </tbody></table></div>
32189    /// <p><b>Notifier signal:</b></p>
32190    /// <div class="table"><table class="alignedsummary">
32191    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilTestFailureOperationChanged</b></span>(Operation <i>stencilFail</i>)</td></tr>
32192    /// </tbody></table></div></div>
32193    #[inline(always)]
32194    pub unsafe fn set_stencil_test_failure_operation(
32195        &self,
32196        operation: crate::q_stencil_operation_arguments::Operation,
32197    ) {
32198        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_setStencilTestFailureOperation(self as *const crate::QStencilOperationArguments as *mut crate::QStencilOperationArguments, operation)
32199    }
32200
32201    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
32202    #[inline(always)]
32203    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
32204        let ffi_result = {
32205            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_staticMetaObject()
32206        };
32207        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
32208            .expect("attempted to construct a null Ref")
32209    }
32210
32211    /// <p>Holds the stencil test operation for when the stencil test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32212    ///
32213    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments::Operation Qt3DRender::QStencilOperationArguments::stencilTestFailureOperation() const```</span>.
32214    ///
32215    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciloperationarguments.html#stencilTestFailureOperation-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test operation for when the stencil test fails. Default is <a href="http://doc.qt.io/qt-5/qml-qt3d-render-stenciloperationarguments.html">StencilOperationArguments</a>.Keep.</p>
32216    /// <p><b>Access functions:</b></p>
32217    /// <div class="table"><table class="alignedsummary">
32218    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Operation </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilTestFailureOperation</b></span>() const</td></tr>
32219    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setStencilTestFailureOperation</b></span>(Operation <i>operation</i>)</td></tr>
32220    /// </tbody></table></div>
32221    /// <p><b>Notifier signal:</b></p>
32222    /// <div class="table"><table class="alignedsummary">
32223    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilTestFailureOperationChanged</b></span>(Operation <i>stencilFail</i>)</td></tr>
32224    /// </tbody></table></div></div>
32225    #[inline(always)]
32226    pub unsafe fn stencil_test_failure_operation(
32227        &self,
32228    ) -> crate::q_stencil_operation_arguments::Operation {
32229        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_stencilTestFailureOperation(self as *const crate::QStencilOperationArguments)
32230    }
32231
32232    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilOperationArguments::tr(const char* s, const char* c, int n)```</span>.
32233    #[inline(always)]
32234    pub unsafe fn tr(
32235        s: *const ::std::os::raw::c_char,
32236        c: *const ::std::os::raw::c_char,
32237        n: ::std::os::raw::c_int,
32238    ) -> ::cpp_core::CppBox<::qt_core::QString> {
32239        let ffi_result = {
32240            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_tr(s, c, n)
32241        };
32242        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
32243    }
32244
32245    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilOperationArguments::trUtf8(const char* s, const char* c, int n)```</span>.
32246    #[inline(always)]
32247    pub unsafe fn tr_utf8(
32248        s: *const ::std::os::raw::c_char,
32249        c: *const ::std::os::raw::c_char,
32250        n: ::std::os::raw::c_int,
32251    ) -> ::cpp_core::CppBox<::qt_core::QString> {
32252        let ffi_result = {
32253            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_trUtf8(s, c, n)
32254        };
32255        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
32256    }
32257}
32258
32259/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">QStencilTest</a> class specifies arguments for the stecil test</p>
32260///
32261/// C++ class: <span style='color: green;'>```Qt3DRender::QStencilTest```</span>.
32262///
32263/// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">QStencilTest</a> class specifies arguments for the stecil test</p>
32264/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">Qt3DRender::QStencilTest</a> class specifies argument for the stencil test. The stencil test comprises of three arguments: stencil test function, stencil test mask and stencil reference value. <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">QStencilTest</a> allows these arguments to be set for both front- and back-facing polygons separately.</p></div>
32265#[repr(C)]
32266pub struct QStencilTest {
32267    _unused: u8,
32268}
32269impl QStencilTest {
32270    /// <p>Holds the stencil test arguments for back-facing polygons.</p>
32271    ///
32272    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTestArguments* Qt3DRender::QStencilTest::back() const```</span>.
32273    ///
32274    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html#back-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test arguments for back-facing polygons.</p>
32275    /// <p><b>Access functions:</b></p>
32276    /// <div class="table"><table class="alignedsummary">
32277    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStencilTestArguments *</td><td class="memItemRight bottomAlign"><span class="name"><b>back</b></span>() const</td></tr>
32278    /// </tbody></table></div></div>
32279    #[inline(always)]
32280    pub unsafe fn back(&self) -> ::qt_core::QPtr<crate::QStencilTestArguments> {
32281        let ffi_result = {
32282            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_back(
32283                self as *const crate::QStencilTest,
32284            )
32285        };
32286        ::qt_core::QPtr::from_raw(ffi_result)
32287    }
32288
32289    /// <p>Holds the stencil test arguments for front-facing polygons.</p>
32290    ///
32291    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTestArguments* Qt3DRender::QStencilTest::front() const```</span>.
32292    ///
32293    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html#front-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test arguments for front-facing polygons.</p>
32294    /// <p><b>Access functions:</b></p>
32295    /// <div class="table"><table class="alignedsummary">
32296    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStencilTestArguments *</td><td class="memItemRight bottomAlign"><span class="name"><b>front</b></span>() const</td></tr>
32297    /// </tbody></table></div></div>
32298    #[inline(always)]
32299    pub unsafe fn front(&self) -> ::qt_core::QPtr<crate::QStencilTestArguments> {
32300        let ffi_result = {
32301            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_front(
32302                self as *const crate::QStencilTest,
32303            )
32304        };
32305        ::qt_core::QPtr::from_raw(ffi_result)
32306    }
32307
32308    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QStencilTest::metaObject() const```</span>.
32309    #[inline(always)]
32310    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
32311        let ffi_result = {
32312            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_metaObject(
32313                self as *const crate::QStencilTest,
32314            )
32315        };
32316        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
32317    }
32318
32319    /// <p>Default constructs an instance of QStencilTest.</p>
32320    ///
32321    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QStencilTest::QStencilTest(Qt3DCore::QNode* parent = …)```</span>.
32322    ///
32323    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html#QStencilTest">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QStencilTest.</p></div>
32324    #[inline(always)]
32325    pub unsafe fn new_1a(
32326        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
32327    ) -> ::qt_core::QBox<crate::QStencilTest> {
32328        let ffi_result = {
32329            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_QStencilTest(
32330                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
32331                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
32332            )
32333        };
32334        ::qt_core::QBox::from_raw(ffi_result)
32335    }
32336
32337    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">QStencilTest</a> class specifies arguments for the stecil test</p>
32338    ///
32339    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QStencilTest::QStencilTest()```</span>.
32340    ///
32341    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">QStencilTest</a> class specifies arguments for the stecil test</p>
32342    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">Qt3DRender::QStencilTest</a> class specifies argument for the stencil test. The stencil test comprises of three arguments: stencil test function, stencil test mask and stencil reference value. <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltest.html">QStencilTest</a> allows these arguments to be set for both front- and back-facing polygons separately.</p></div>
32343    #[inline(always)]
32344    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QStencilTest> {
32345        let ffi_result =
32346            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_QStencilTest1() };
32347        ::qt_core::QBox::from_raw(ffi_result)
32348    }
32349
32350    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QStencilTest::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
32351    #[inline(always)]
32352    pub unsafe fn qt_metacall(
32353        &self,
32354        arg1: ::qt_core::q_meta_object::Call,
32355        arg2: ::std::os::raw::c_int,
32356        arg3: *mut *mut ::std::ffi::c_void,
32357    ) -> ::std::os::raw::c_int {
32358        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_qt_metacall(
32359            self as *const crate::QStencilTest as *mut crate::QStencilTest,
32360            arg1,
32361            arg2,
32362            arg3,
32363        )
32364    }
32365
32366    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QStencilTest::qt_metacast(const char* arg1)```</span>.
32367    #[inline(always)]
32368    pub unsafe fn qt_metacast(
32369        &self,
32370        arg1: *const ::std::os::raw::c_char,
32371    ) -> *mut ::std::ffi::c_void {
32372        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_qt_metacast(
32373            self as *const crate::QStencilTest as *mut crate::QStencilTest,
32374            arg1,
32375        )
32376    }
32377
32378    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
32379    #[inline(always)]
32380    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
32381        let ffi_result =
32382            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_staticMetaObject() };
32383        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
32384            .expect("attempted to construct a null Ref")
32385    }
32386
32387    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilTest::tr(const char* s, const char* c, int n)```</span>.
32388    #[inline(always)]
32389    pub unsafe fn tr(
32390        s: *const ::std::os::raw::c_char,
32391        c: *const ::std::os::raw::c_char,
32392        n: ::std::os::raw::c_int,
32393    ) -> ::cpp_core::CppBox<::qt_core::QString> {
32394        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_tr(s, c, n) };
32395        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
32396    }
32397
32398    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilTest::trUtf8(const char* s, const char* c, int n)```</span>.
32399    #[inline(always)]
32400    pub unsafe fn tr_utf8(
32401        s: *const ::std::os::raw::c_char,
32402        c: *const ::std::os::raw::c_char,
32403        n: ::std::os::raw::c_int,
32404    ) -> ::cpp_core::CppBox<::qt_core::QString> {
32405        let ffi_result =
32406            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_trUtf8(s, c, n) };
32407        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
32408    }
32409}
32410
32411pub mod q_stencil_test_arguments {
32412    //! C++ type: <span style='color: green;'>```Qt3DRender::QStencilTestArguments```</span>
32413
32414    /// C++ enum: <span style='color: green;'>```Qt3DRender::QStencilTestArguments::StencilFaceMode```</span>.
32415    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
32416    #[repr(transparent)]
32417    pub struct StencilFaceMode(::std::os::raw::c_int);
32418
32419    impl From<::std::os::raw::c_int> for StencilFaceMode {
32420        fn from(value: ::std::os::raw::c_int) -> Self {
32421            StencilFaceMode(value)
32422        }
32423    }
32424
32425    impl From<StencilFaceMode> for ::std::os::raw::c_int {
32426        fn from(value: StencilFaceMode) -> Self {
32427            value.0
32428        }
32429    }
32430
32431    impl StencilFaceMode {
32432        pub fn to_int(&self) -> ::std::os::raw::c_int {
32433            self.0
32434        }
32435    }
32436
32437    impl StencilFaceMode {
32438        /// C++ enum variant: <span style='color: green;'>```Front = 1028```</span>
32439        #[allow(non_upper_case_globals)]
32440        pub const Front: crate::q_stencil_test_arguments::StencilFaceMode =
32441            crate::q_stencil_test_arguments::StencilFaceMode(1028);
32442        /// C++ enum variant: <span style='color: green;'>```Back = 1029```</span>
32443        #[allow(non_upper_case_globals)]
32444        pub const Back: crate::q_stencil_test_arguments::StencilFaceMode =
32445            crate::q_stencil_test_arguments::StencilFaceMode(1029);
32446        /// C++ enum variant: <span style='color: green;'>```FrontAndBack = 1032```</span>
32447        #[allow(non_upper_case_globals)]
32448        pub const FrontAndBack: crate::q_stencil_test_arguments::StencilFaceMode =
32449            crate::q_stencil_test_arguments::StencilFaceMode(1032);
32450    }
32451
32452    /// C++ enum: <span style='color: green;'>```Qt3DRender::QStencilTestArguments::StencilFunction```</span>.
32453    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
32454    #[repr(transparent)]
32455    pub struct StencilFunction(::std::os::raw::c_int);
32456
32457    impl From<::std::os::raw::c_int> for StencilFunction {
32458        fn from(value: ::std::os::raw::c_int) -> Self {
32459            StencilFunction(value)
32460        }
32461    }
32462
32463    impl From<StencilFunction> for ::std::os::raw::c_int {
32464        fn from(value: StencilFunction) -> Self {
32465            value.0
32466        }
32467    }
32468
32469    impl StencilFunction {
32470        pub fn to_int(&self) -> ::std::os::raw::c_int {
32471            self.0
32472        }
32473    }
32474
32475    impl StencilFunction {
32476        /// C++ enum variant: <span style='color: green;'>```Never = 512```</span>
32477        #[allow(non_upper_case_globals)]
32478        pub const Never: crate::q_stencil_test_arguments::StencilFunction =
32479            crate::q_stencil_test_arguments::StencilFunction(512);
32480        /// C++ enum variant: <span style='color: green;'>```Always = 519```</span>
32481        #[allow(non_upper_case_globals)]
32482        pub const Always: crate::q_stencil_test_arguments::StencilFunction =
32483            crate::q_stencil_test_arguments::StencilFunction(519);
32484        /// C++ enum variant: <span style='color: green;'>```Less = 513```</span>
32485        #[allow(non_upper_case_globals)]
32486        pub const Less: crate::q_stencil_test_arguments::StencilFunction =
32487            crate::q_stencil_test_arguments::StencilFunction(513);
32488        /// C++ enum variant: <span style='color: green;'>```LessOrEqual = 515```</span>
32489        #[allow(non_upper_case_globals)]
32490        pub const LessOrEqual: crate::q_stencil_test_arguments::StencilFunction =
32491            crate::q_stencil_test_arguments::StencilFunction(515);
32492        /// C++ enum variant: <span style='color: green;'>```Equal = 514```</span>
32493        #[allow(non_upper_case_globals)]
32494        pub const Equal: crate::q_stencil_test_arguments::StencilFunction =
32495            crate::q_stencil_test_arguments::StencilFunction(514);
32496        /// C++ enum variant: <span style='color: green;'>```GreaterOrEqual = 518```</span>
32497        #[allow(non_upper_case_globals)]
32498        pub const GreaterOrEqual: crate::q_stencil_test_arguments::StencilFunction =
32499            crate::q_stencil_test_arguments::StencilFunction(518);
32500        /// C++ enum variant: <span style='color: green;'>```Greater = 516```</span>
32501        #[allow(non_upper_case_globals)]
32502        pub const Greater: crate::q_stencil_test_arguments::StencilFunction =
32503            crate::q_stencil_test_arguments::StencilFunction(516);
32504        /// C++ enum variant: <span style='color: green;'>```NotEqual = 517```</span>
32505        #[allow(non_upper_case_globals)]
32506        pub const NotEqual: crate::q_stencil_test_arguments::StencilFunction =
32507            crate::q_stencil_test_arguments::StencilFunction(517);
32508    }
32509}
32510/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html">QStencilTestArguments</a> class specifies arguments for stencil test</p>
32511///
32512/// C++ class: <span style='color: green;'>```Qt3DRender::QStencilTestArguments```</span>.
32513///
32514/// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html">QStencilTestArguments</a> class specifies arguments for stencil test</p>
32515/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html">Qt3DRender::QStencilTestArguments</a> class specifies the arguments for the stencil test.</p></div>
32516#[repr(C)]
32517pub struct QStencilTestArguments {
32518    _unused: u8,
32519}
32520impl QStencilTestArguments {
32521    /// <p>Holds the stencil test comparison mask. Default is all zeroes.</p>
32522    ///
32523    /// Returns a built-in Qt slot `Qt3DRender::QStencilTestArguments::setComparisonMask` that can be passed to `qt_core::Signal::connect`.
32524    ///
32525    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#comparisonMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test comparison mask. Default is all zeroes.</p>
32526    /// <p><b>Access functions:</b></p>
32527    /// <div class="table"><table class="alignedsummary">
32528    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonMask</b></span>() const</td></tr>
32529    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComparisonMask</b></span>(uint <i>comparisonMask</i>)</td></tr>
32530    /// </tbody></table></div>
32531    /// <p><b>Notifier signal:</b></p>
32532    /// <div class="table"><table class="alignedsummary">
32533    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonMaskChanged</b></span>(uint <i>comparisonMask</i>)</td></tr>
32534    /// </tbody></table></div></div>
32535    #[inline(always)]
32536    pub fn slot_set_comparison_mask(&self) -> ::qt_core::Receiver<(::std::os::raw::c_uint,)> {
32537        unsafe {
32538            ::qt_core::Receiver::new(
32539                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
32540                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
32541                    b"1setComparisonMask(unsigned int)\0",
32542                ),
32543            )
32544        }
32545    }
32546
32547    /// <p>Holds the stencil test reference value. Default is zero.</p>
32548    ///
32549    /// Returns a built-in Qt slot `Qt3DRender::QStencilTestArguments::setReferenceValue` that can be passed to `qt_core::Signal::connect`.
32550    ///
32551    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#referenceValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test reference value. Default is zero.</p>
32552    /// <p><b>Access functions:</b></p>
32553    /// <div class="table"><table class="alignedsummary">
32554    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValue</b></span>() const</td></tr>
32555    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setReferenceValue</b></span>(int <i>referenceValue</i>)</td></tr>
32556    /// </tbody></table></div>
32557    /// <p><b>Notifier signal:</b></p>
32558    /// <div class="table"><table class="alignedsummary">
32559    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValueChanged</b></span>(int <i>referenceValue</i>)</td></tr>
32560    /// </tbody></table></div></div>
32561    #[inline(always)]
32562    pub fn slot_set_reference_value(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
32563        unsafe {
32564            ::qt_core::Receiver::new(
32565                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
32566                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setReferenceValue(int)\0"),
32567            )
32568        }
32569    }
32570
32571    /// <p>Holds the stencil test function. Default is Never.</p>
32572    ///
32573    /// Returns a built-in Qt slot `Qt3DRender::QStencilTestArguments::setStencilFunction` that can be passed to `qt_core::Signal::connect`.
32574    ///
32575    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#stencilFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test function. Default is Never.</p>
32576    /// <p><b>Access functions:</b></p>
32577    /// <div class="table"><table class="alignedsummary">
32578    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> StencilFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilFunction</b></span>() const</td></tr>
32579    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setStencilFunction</b></span>(StencilFunction <i>stencilFunction</i>)</td></tr>
32580    /// </tbody></table></div>
32581    /// <p><b>Notifier signal:</b></p>
32582    /// <div class="table"><table class="alignedsummary">
32583    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilFunctionChanged</b></span>(StencilFunction <i>stencilFunction</i>)</td></tr>
32584    /// </tbody></table></div>
32585    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#StencilFunction-enum">Qt3DRender::QStencilTestArguments::StencilFunction</a>.</p></div>
32586    #[inline(always)]
32587    pub fn slot_set_stencil_function(
32588        &self,
32589    ) -> ::qt_core::Receiver<(crate::q_stencil_test_arguments::StencilFunction,)> {
32590        unsafe {
32591            ::qt_core::Receiver::new(
32592                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
32593                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
32594                    b"1setStencilFunction(Qt3DRender::QStencilTestArguments::StencilFunction)\0",
32595                ),
32596            )
32597        }
32598    }
32599
32600    /// <p>Holds the stencil test comparison mask. Default is all zeroes.</p>
32601    ///
32602    /// Returns a built-in Qt signal `Qt3DRender::QStencilTestArguments::comparisonMaskChanged` that can be passed to `qt_core::Signal::connect`.
32603    ///
32604    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#comparisonMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test comparison mask. Default is all zeroes.</p>
32605    /// <p><b>Access functions:</b></p>
32606    /// <div class="table"><table class="alignedsummary">
32607    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonMask</b></span>() const</td></tr>
32608    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComparisonMask</b></span>(uint <i>comparisonMask</i>)</td></tr>
32609    /// </tbody></table></div>
32610    /// <p><b>Notifier signal:</b></p>
32611    /// <div class="table"><table class="alignedsummary">
32612    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonMaskChanged</b></span>(uint <i>comparisonMask</i>)</td></tr>
32613    /// </tbody></table></div></div>
32614    #[inline(always)]
32615    pub fn comparison_mask_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
32616        unsafe {
32617            ::qt_core::Signal::new(
32618                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
32619                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
32620                    b"2comparisonMaskChanged(unsigned int)\0",
32621                ),
32622            )
32623        }
32624    }
32625
32626    /// <p>Holds the stencil test function. Default is Never.</p>
32627    ///
32628    /// Returns a built-in Qt signal `Qt3DRender::QStencilTestArguments::stencilFunctionChanged` that can be passed to `qt_core::Signal::connect`.
32629    ///
32630    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#stencilFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test function. Default is Never.</p>
32631    /// <p><b>Access functions:</b></p>
32632    /// <div class="table"><table class="alignedsummary">
32633    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> StencilFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilFunction</b></span>() const</td></tr>
32634    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setStencilFunction</b></span>(StencilFunction <i>stencilFunction</i>)</td></tr>
32635    /// </tbody></table></div>
32636    /// <p><b>Notifier signal:</b></p>
32637    /// <div class="table"><table class="alignedsummary">
32638    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilFunctionChanged</b></span>(StencilFunction <i>stencilFunction</i>)</td></tr>
32639    /// </tbody></table></div>
32640    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#StencilFunction-enum">Qt3DRender::QStencilTestArguments::StencilFunction</a>.</p></div>
32641    #[inline(always)]
32642    pub fn stencil_function_changed(
32643        &self,
32644    ) -> ::qt_core::Signal<(crate::q_stencil_test_arguments::StencilFunction,)> {
32645        unsafe {
32646            ::qt_core::Signal::new(::cpp_core::Ref::from_raw(self) .expect("attempted to construct a null Ref"), ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2stencilFunctionChanged(Qt3DRender::QStencilTestArguments::StencilFunction)\0"))
32647        }
32648    }
32649
32650    /// <p>Holds the stencil test reference value. Default is zero.</p>
32651    ///
32652    /// Returns a built-in Qt signal `Qt3DRender::QStencilTestArguments::referenceValueChanged` that can be passed to `qt_core::Signal::connect`.
32653    ///
32654    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#referenceValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test reference value. Default is zero.</p>
32655    /// <p><b>Access functions:</b></p>
32656    /// <div class="table"><table class="alignedsummary">
32657    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValue</b></span>() const</td></tr>
32658    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setReferenceValue</b></span>(int <i>referenceValue</i>)</td></tr>
32659    /// </tbody></table></div>
32660    /// <p><b>Notifier signal:</b></p>
32661    /// <div class="table"><table class="alignedsummary">
32662    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValueChanged</b></span>(int <i>referenceValue</i>)</td></tr>
32663    /// </tbody></table></div></div>
32664    #[inline(always)]
32665    pub fn reference_value_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
32666        unsafe {
32667            ::qt_core::Signal::new(
32668                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
32669                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2referenceValueChanged(int)\0"),
32670            )
32671        }
32672    }
32673
32674    /// <p>Holds the faces the arguments are applied to.</p>
32675    ///
32676    /// Returns a built-in Qt signal `Qt3DRender::QStencilTestArguments::faceModeChanged` that can be passed to `qt_core::Signal::connect`.
32677    ///
32678    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#faceMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the faces the arguments are applied to.</p>
32679    /// <p><b>Access functions:</b></p>
32680    /// <div class="table"><table class="alignedsummary">
32681    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> StencilFaceMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceMode</b></span>() const</td></tr>
32682    /// </tbody></table></div>
32683    /// <p><b>Notifier signal:</b></p>
32684    /// <div class="table"><table class="alignedsummary">
32685    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceModeChanged</b></span>(StencilFaceMode <i>faceMode</i>)</td></tr>
32686    /// </tbody></table></div></div>
32687    #[inline(always)]
32688    pub fn face_mode_changed(
32689        &self,
32690    ) -> ::qt_core::Signal<(crate::q_stencil_test_arguments::StencilFaceMode,)> {
32691        unsafe {
32692            ::qt_core::Signal::new(
32693                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
32694                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
32695                    b"2faceModeChanged(Qt3DRender::QStencilTestArguments::StencilFaceMode)\0",
32696                ),
32697            )
32698        }
32699    }
32700
32701    /// <p>Holds the stencil test comparison mask. Default is all zeroes.</p>
32702    ///
32703    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QStencilTestArguments::comparisonMask() const```</span>.
32704    ///
32705    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#comparisonMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test comparison mask. Default is all zeroes.</p>
32706    /// <p><b>Access functions:</b></p>
32707    /// <div class="table"><table class="alignedsummary">
32708    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonMask</b></span>() const</td></tr>
32709    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComparisonMask</b></span>(uint <i>comparisonMask</i>)</td></tr>
32710    /// </tbody></table></div>
32711    /// <p><b>Notifier signal:</b></p>
32712    /// <div class="table"><table class="alignedsummary">
32713    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonMaskChanged</b></span>(uint <i>comparisonMask</i>)</td></tr>
32714    /// </tbody></table></div></div>
32715    #[inline(always)]
32716    pub unsafe fn comparison_mask(&self) -> ::std::os::raw::c_uint {
32717        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_comparisonMask(
32718            self as *const crate::QStencilTestArguments,
32719        )
32720    }
32721
32722    /// <p>Holds the faces the arguments are applied to.</p>
32723    ///
32724    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTestArguments::StencilFaceMode Qt3DRender::QStencilTestArguments::faceMode() const```</span>.
32725    ///
32726    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#faceMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the faces the arguments are applied to.</p>
32727    /// <p><b>Access functions:</b></p>
32728    /// <div class="table"><table class="alignedsummary">
32729    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> StencilFaceMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceMode</b></span>() const</td></tr>
32730    /// </tbody></table></div>
32731    /// <p><b>Notifier signal:</b></p>
32732    /// <div class="table"><table class="alignedsummary">
32733    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceModeChanged</b></span>(StencilFaceMode <i>faceMode</i>)</td></tr>
32734    /// </tbody></table></div></div>
32735    #[inline(always)]
32736    pub unsafe fn face_mode(&self) -> crate::q_stencil_test_arguments::StencilFaceMode {
32737        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_faceMode(
32738            self as *const crate::QStencilTestArguments,
32739        )
32740    }
32741
32742    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QStencilTestArguments::metaObject() const```</span>.
32743    #[inline(always)]
32744    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
32745        let ffi_result = {
32746            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_metaObject(
32747                self as *const crate::QStencilTestArguments,
32748            )
32749        };
32750        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
32751    }
32752
32753    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QStencilTestArguments::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
32754    #[inline(always)]
32755    pub unsafe fn qt_metacall(
32756        &self,
32757        arg1: ::qt_core::q_meta_object::Call,
32758        arg2: ::std::os::raw::c_int,
32759        arg3: *mut *mut ::std::ffi::c_void,
32760    ) -> ::std::os::raw::c_int {
32761        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_qt_metacall(
32762            self as *const crate::QStencilTestArguments as *mut crate::QStencilTestArguments,
32763            arg1,
32764            arg2,
32765            arg3,
32766        )
32767    }
32768
32769    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QStencilTestArguments::qt_metacast(const char* arg1)```</span>.
32770    #[inline(always)]
32771    pub unsafe fn qt_metacast(
32772        &self,
32773        arg1: *const ::std::os::raw::c_char,
32774    ) -> *mut ::std::ffi::c_void {
32775        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_qt_metacast(
32776            self as *const crate::QStencilTestArguments as *mut crate::QStencilTestArguments,
32777            arg1,
32778        )
32779    }
32780
32781    /// <p>Holds the stencil test reference value. Default is zero.</p>
32782    ///
32783    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QStencilTestArguments::referenceValue() const```</span>.
32784    ///
32785    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#referenceValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test reference value. Default is zero.</p>
32786    /// <p><b>Access functions:</b></p>
32787    /// <div class="table"><table class="alignedsummary">
32788    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValue</b></span>() const</td></tr>
32789    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setReferenceValue</b></span>(int <i>referenceValue</i>)</td></tr>
32790    /// </tbody></table></div>
32791    /// <p><b>Notifier signal:</b></p>
32792    /// <div class="table"><table class="alignedsummary">
32793    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValueChanged</b></span>(int <i>referenceValue</i>)</td></tr>
32794    /// </tbody></table></div></div>
32795    #[inline(always)]
32796    pub unsafe fn reference_value(&self) -> ::std::os::raw::c_int {
32797        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_referenceValue(
32798            self as *const crate::QStencilTestArguments,
32799        )
32800    }
32801
32802    /// <p>Holds the stencil test comparison mask. Default is all zeroes.</p>
32803    ///
32804    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QStencilTestArguments::setComparisonMask(unsigned int comparisonMask)```</span>.
32805    ///
32806    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#comparisonMask-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test comparison mask. Default is all zeroes.</p>
32807    /// <p><b>Access functions:</b></p>
32808    /// <div class="table"><table class="alignedsummary">
32809    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonMask</b></span>() const</td></tr>
32810    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComparisonMask</b></span>(uint <i>comparisonMask</i>)</td></tr>
32811    /// </tbody></table></div>
32812    /// <p><b>Notifier signal:</b></p>
32813    /// <div class="table"><table class="alignedsummary">
32814    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>comparisonMaskChanged</b></span>(uint <i>comparisonMask</i>)</td></tr>
32815    /// </tbody></table></div></div>
32816    #[inline(always)]
32817    pub unsafe fn set_comparison_mask(&self, comparison_mask: ::std::os::raw::c_uint) {
32818        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_setComparisonMask(
32819            self as *const crate::QStencilTestArguments as *mut crate::QStencilTestArguments,
32820            comparison_mask,
32821        )
32822    }
32823
32824    /// <p>Holds the stencil test reference value. Default is zero.</p>
32825    ///
32826    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QStencilTestArguments::setReferenceValue(int referenceValue)```</span>.
32827    ///
32828    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#referenceValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test reference value. Default is zero.</p>
32829    /// <p><b>Access functions:</b></p>
32830    /// <div class="table"><table class="alignedsummary">
32831    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValue</b></span>() const</td></tr>
32832    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setReferenceValue</b></span>(int <i>referenceValue</i>)</td></tr>
32833    /// </tbody></table></div>
32834    /// <p><b>Notifier signal:</b></p>
32835    /// <div class="table"><table class="alignedsummary">
32836    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>referenceValueChanged</b></span>(int <i>referenceValue</i>)</td></tr>
32837    /// </tbody></table></div></div>
32838    #[inline(always)]
32839    pub unsafe fn set_reference_value(&self, reference_value: ::std::os::raw::c_int) {
32840        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_setReferenceValue(
32841            self as *const crate::QStencilTestArguments as *mut crate::QStencilTestArguments,
32842            reference_value,
32843        )
32844    }
32845
32846    /// <p>Holds the stencil test function. Default is Never.</p>
32847    ///
32848    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QStencilTestArguments::setStencilFunction(Qt3DRender::QStencilTestArguments::StencilFunction stencilFunction)```</span>.
32849    ///
32850    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#stencilFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test function. Default is Never.</p>
32851    /// <p><b>Access functions:</b></p>
32852    /// <div class="table"><table class="alignedsummary">
32853    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> StencilFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilFunction</b></span>() const</td></tr>
32854    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setStencilFunction</b></span>(StencilFunction <i>stencilFunction</i>)</td></tr>
32855    /// </tbody></table></div>
32856    /// <p><b>Notifier signal:</b></p>
32857    /// <div class="table"><table class="alignedsummary">
32858    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilFunctionChanged</b></span>(StencilFunction <i>stencilFunction</i>)</td></tr>
32859    /// </tbody></table></div>
32860    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#StencilFunction-enum">Qt3DRender::QStencilTestArguments::StencilFunction</a>.</p></div>
32861    #[inline(always)]
32862    pub unsafe fn set_stencil_function(
32863        &self,
32864        stencil_function: crate::q_stencil_test_arguments::StencilFunction,
32865    ) {
32866        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_setStencilFunction(
32867            self as *const crate::QStencilTestArguments as *mut crate::QStencilTestArguments,
32868            stencil_function,
32869        )
32870    }
32871
32872    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
32873    #[inline(always)]
32874    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
32875        let ffi_result = {
32876            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_staticMetaObject()
32877        };
32878        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
32879            .expect("attempted to construct a null Ref")
32880    }
32881
32882    /// <p>Holds the stencil test function. Default is Never.</p>
32883    ///
32884    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTestArguments::StencilFunction Qt3DRender::QStencilTestArguments::stencilFunction() const```</span>.
32885    ///
32886    /// <a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#stencilFunction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the stencil test function. Default is Never.</p>
32887    /// <p><b>Access functions:</b></p>
32888    /// <div class="table"><table class="alignedsummary">
32889    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> StencilFunction </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilFunction</b></span>() const</td></tr>
32890    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setStencilFunction</b></span>(StencilFunction <i>stencilFunction</i>)</td></tr>
32891    /// </tbody></table></div>
32892    /// <p><b>Notifier signal:</b></p>
32893    /// <div class="table"><table class="alignedsummary">
32894    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>stencilFunctionChanged</b></span>(StencilFunction <i>stencilFunction</i>)</td></tr>
32895    /// </tbody></table></div>
32896    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qstenciltestarguments.html#StencilFunction-enum">Qt3DRender::QStencilTestArguments::StencilFunction</a>.</p></div>
32897    #[inline(always)]
32898    pub unsafe fn stencil_function(&self) -> crate::q_stencil_test_arguments::StencilFunction {
32899        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_stencilFunction(
32900            self as *const crate::QStencilTestArguments,
32901        )
32902    }
32903
32904    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilTestArguments::tr(const char* s, const char* c, int n)```</span>.
32905    #[inline(always)]
32906    pub unsafe fn tr(
32907        s: *const ::std::os::raw::c_char,
32908        c: *const ::std::os::raw::c_char,
32909        n: ::std::os::raw::c_int,
32910    ) -> ::cpp_core::CppBox<::qt_core::QString> {
32911        let ffi_result =
32912            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_tr(s, c, n) };
32913        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
32914    }
32915
32916    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QStencilTestArguments::trUtf8(const char* s, const char* c, int n)```</span>.
32917    #[inline(always)]
32918    pub unsafe fn tr_utf8(
32919        s: *const ::std::os::raw::c_char,
32920        c: *const ::std::os::raw::c_char,
32921        n: ::std::os::raw::c_int,
32922    ) -> ::cpp_core::CppBox<::qt_core::QString> {
32923        let ffi_result =
32924            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_trUtf8(s, c, n) };
32925        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
32926    }
32927}
32928
32929/// <p>Encapsulates a Technique.</p>
32930///
32931/// C++ class: <span style='color: green;'>```Qt3DRender::QTechnique```</span>.
32932///
32933/// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates a Technique.</p>
32934/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a> specifies a set of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> objects, <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects, <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">Qt3DRender::QParameter</a> objects and a <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">Qt3DRender::QGraphicsApiFilter</a>, which together define a rendering technique the given graphics API can render. The filter keys are used by <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">Qt3DRender::QTechniqueFilter</a> to select specific techniques at specific parts of the FrameGraph. If two <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> instances with the same name are specified in a <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> and a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>, the one in Technique overrides the one used in the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>.</p>
32935/// <p>When creating an <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> that targets several versions of a graphics API, it is useful to create several <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> nodes each with a <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#graphicsApiFilter-prop">graphicsApiFilter</a> set to match one of the targeted GL versions. At runtime, the Qt3D renderer will select the most appropriate <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> based on which graphics API versions are supported and (if specified) the <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> nodes that satisfy a given <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> in the FrameGraph.</p>
32936/// <p><b>Note: </b>When using OpenGL as the graphics API for rendering, Qt3D relies on the <a href="http://doc.qt.io/qt-5/qsurfaceformat.html">QSurfaceFormat</a> returned by <a href="http://doc.qt.io/qt-5/qsurfaceformat.html#defaultFormat">QSurfaceFormat::defaultFormat</a>() at runtime to decide what is the most appropriate GL version available. If you need to customize the <a href="http://doc.qt.io/qt-5/qsurfaceformat.html">QSurfaceFormat</a>, do not forget to apply it with <a href="http://doc.qt.io/qt-5/qsurfaceformat.html#setDefaultFormat">QSurfaceFormat::setDefaultFormat</a>(). Setting the <a href="http://doc.qt.io/qt-5/qsurfaceformat.html">QSurfaceFormat</a> on the view will likely have no effect on Qt3D related rendering.</p><pre class="cpp">
32937///
32938///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#QTechnique">QTechnique</a></span> <span class="operator">*</span>gl3Technique <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#QTechnique">QTechnique</a></span>();
32939///
32940///   <span class="comment">// Create the render passes</span>
32941///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>firstPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
32942///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>secondPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
32943///
32944///   <span class="comment">// Add the passes to the technique</span>
32945///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addRenderPass(firstPass);
32946///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addRenderPass(secondPass);
32947///
32948///   <span class="comment">// Set the targeted GL version for the technique</span>
32949///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setApi(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>OpenGL);
32950///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMajorVersion(<span class="number">3</span>);
32951///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMinorVersion(<span class="number">1</span>);
32952///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setProfile(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>CoreProfile);
32953///
32954///   <span class="comment">// Create a FilterKey</span>
32955///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a></span> <span class="operator">*</span>filterKey <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a></span>();
32956///   filterKey<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"name"</span>));
32957///   fitlerKey<span class="operator">-</span><span class="operator">&gt;</span>setValue(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"zFillPass"</span>));
32958///
32959///   <span class="comment">// Add the FilterKey to the Technique</span>
32960///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addFilterKey(filterKey);
32961///
32962///   <span class="comment">// Create a QParameter</span>
32963///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span> <span class="operator">*</span>colorParameter <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"color"</span>)<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>));
32964///
32965///   <span class="comment">// Add parameter to technique</span>
32966///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addParameter(colorParameter);
32967///
32968/// </pre></div>
32969#[repr(C)]
32970pub struct QTechnique {
32971    _unused: u8,
32972}
32973impl QTechnique {
32974    /// <p>Add <i>filterKey</i> to the <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a> local filter keys.</p>
32975    ///
32976    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechnique::addFilterKey(Qt3DRender::QFilterKey* filterKey)```</span>.
32977    ///
32978    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#addFilterKey">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add <i>filterKey</i> to the <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a> local filter keys.</p></div>
32979    #[inline(always)]
32980    pub unsafe fn add_filter_key(
32981        &self,
32982        filter_key: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFilterKey>>,
32983    ) {
32984        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_addFilterKey(
32985            self as *const crate::QTechnique as *mut crate::QTechnique,
32986            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFilterKey>>::cast_into(filter_key)
32987                .as_raw_ptr() as *mut crate::QFilterKey,
32988        )
32989    }
32990
32991    /// <p>Add <i>parameter</i> to the technique's parameters.</p>
32992    ///
32993    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechnique::addParameter(Qt3DRender::QParameter* p)```</span>.
32994    ///
32995    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#addParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add <i>parameter</i> to the technique's parameters.</p></div>
32996    #[inline(always)]
32997    pub unsafe fn add_parameter(
32998        &self,
32999        p: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
33000    ) {
33001        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_addParameter(
33002            self as *const crate::QTechnique as *mut crate::QTechnique,
33003            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(p).as_raw_ptr()
33004                as *mut crate::QParameter,
33005        )
33006    }
33007
33008    /// <p>Appends a <i>pass</i> to the technique.</p>
33009    ///
33010    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechnique::addRenderPass(Qt3DRender::QRenderPass* pass)```</span>.
33011    ///
33012    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#addRenderPass">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends a <i>pass</i> to the technique.</p></div>
33013    #[inline(always)]
33014    pub unsafe fn add_render_pass(
33015        &self,
33016        pass: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderPass>>,
33017    ) {
33018        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_addRenderPass(
33019            self as *const crate::QTechnique as *mut crate::QTechnique,
33020            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderPass>>::cast_into(pass)
33021                .as_raw_ptr() as *mut crate::QRenderPass,
33022        )
33023    }
33024
33025    /// <p>Returns the list of Qt3DCore::QFilterKey key objects making up the filter keys of the <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a>.</p>
33026    ///
33027    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*> Qt3DRender::QTechnique::filterKeys() const```</span>.
33028    ///
33029    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#filterKeys">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of Qt3DCore::QFilterKey key objects making up the filter keys of the <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a>.</p></div>
33030    #[inline(always)]
33031    pub unsafe fn filter_keys(&self) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
33032        let ffi_result = {
33033            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_filterKeys(
33034                self as *const crate::QTechnique,
33035            )
33036        };
33037        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33038    }
33039
33040    /// <p>Specifies the graphics API filter being used</p>
33041    ///
33042    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGraphicsApiFilter* Qt3DRender::QTechnique::graphicsApiFilter()```</span>.
33043    ///
33044    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#graphicsApiFilter-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the graphics API filter being used</p>
33045    /// <p><b>Access functions:</b></p>
33046    /// <div class="table"><table class="alignedsummary">
33047    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QGraphicsApiFilter *</td><td class="memItemRight bottomAlign"><span class="name"><b>graphicsApiFilter</b></span>()</td></tr>
33048    /// </tbody></table></div></div>
33049    #[inline(always)]
33050    pub unsafe fn graphics_api_filter_mut(&self) -> ::qt_core::QPtr<crate::QGraphicsApiFilter> {
33051        let ffi_result = {
33052            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_graphicsApiFilter(
33053                self as *const crate::QTechnique as *mut crate::QTechnique,
33054            )
33055        };
33056        ::qt_core::QPtr::from_raw(ffi_result)
33057    }
33058
33059    /// <p>Specifies the graphics API filter being used</p>
33060    ///
33061    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QGraphicsApiFilter* Qt3DRender::QTechnique::graphicsApiFilter() const```</span>.
33062    ///
33063    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#graphicsApiFilter-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the graphics API filter being used</p>
33064    /// <p><b>Access functions:</b></p>
33065    /// <div class="table"><table class="alignedsummary">
33066    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QGraphicsApiFilter *</td><td class="memItemRight bottomAlign"><span class="name"><b>graphicsApiFilter</b></span>()</td></tr>
33067    /// <tr><td class="memItemLeft topAlign rightAlign"> const Qt3DRender::QGraphicsApiFilter *</td><td class="memItemRight bottomAlign"><span class="name"><b>graphicsApiFilter</b></span>() const</td></tr>
33068    /// </tbody></table></div></div>
33069    #[inline(always)]
33070    #[cfg_attr(
33071        feature = "ritual_rustdoc_nightly",
33072        doc(cfg(cpp_lib_version = "5.14.0"))
33073    )]
33074    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
33075    pub unsafe fn graphics_api_filter(&self) -> ::qt_core::QPtr<crate::QGraphicsApiFilter> {
33076        let ffi_result = {
33077            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_graphicsApiFilter2(
33078                self as *const crate::QTechnique,
33079            )
33080        };
33081        ::qt_core::QPtr::from_raw(ffi_result as *mut crate::QGraphicsApiFilter)
33082    }
33083
33084    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTechnique::metaObject() const```</span>.
33085    #[inline(always)]
33086    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
33087        let ffi_result = {
33088            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_metaObject(
33089                self as *const crate::QTechnique,
33090            )
33091        };
33092        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
33093    }
33094
33095    /// <p>Default constructs an instance of QTechnique.</p>
33096    ///
33097    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTechnique::QTechnique(Qt3DCore::QNode* parent = …)```</span>.
33098    ///
33099    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#QTechnique">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTechnique.</p></div>
33100    #[inline(always)]
33101    pub unsafe fn new_1a(
33102        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
33103    ) -> ::qt_core::QBox<crate::QTechnique> {
33104        let ffi_result = {
33105            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_QTechnique(
33106                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
33107                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
33108            )
33109        };
33110        ::qt_core::QBox::from_raw(ffi_result)
33111    }
33112
33113    /// <p>Encapsulates a Technique.</p>
33114    ///
33115    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTechnique::QTechnique()```</span>.
33116    ///
33117    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates a Technique.</p>
33118    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a> specifies a set of <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">Qt3DRender::QRenderPass</a> objects, <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects, <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">Qt3DRender::QParameter</a> objects and a <a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">Qt3DRender::QGraphicsApiFilter</a>, which together define a rendering technique the given graphics API can render. The filter keys are used by <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">Qt3DRender::QTechniqueFilter</a> to select specific techniques at specific parts of the FrameGraph. If two <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a> instances with the same name are specified in a <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> and a <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>, the one in Technique overrides the one used in the <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>.</p>
33119    /// <p>When creating an <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html">QEffect</a> that targets several versions of a graphics API, it is useful to create several <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> nodes each with a <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#graphicsApiFilter-prop">graphicsApiFilter</a> set to match one of the targeted GL versions. At runtime, the Qt3D renderer will select the most appropriate <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> based on which graphics API versions are supported and (if specified) the <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a> nodes that satisfy a given <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> in the FrameGraph.</p>
33120    /// <p><b>Note: </b>When using OpenGL as the graphics API for rendering, Qt3D relies on the <a href="http://doc.qt.io/qt-5/qsurfaceformat.html">QSurfaceFormat</a> returned by <a href="http://doc.qt.io/qt-5/qsurfaceformat.html#defaultFormat">QSurfaceFormat::defaultFormat</a>() at runtime to decide what is the most appropriate GL version available. If you need to customize the <a href="http://doc.qt.io/qt-5/qsurfaceformat.html">QSurfaceFormat</a>, do not forget to apply it with <a href="http://doc.qt.io/qt-5/qsurfaceformat.html#setDefaultFormat">QSurfaceFormat::setDefaultFormat</a>(). Setting the <a href="http://doc.qt.io/qt-5/qsurfaceformat.html">QSurfaceFormat</a> on the view will likely have no effect on Qt3D related rendering.</p><pre class="cpp">
33121    ///
33122    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#QTechnique">QTechnique</a></span> <span class="operator">*</span>gl3Technique <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#QTechnique">QTechnique</a></span>();
33123    ///
33124    ///   <span class="comment">// Create the render passes</span>
33125    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>firstPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
33126    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span> <span class="operator">*</span>secondPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a></span>();
33127    ///
33128    ///   <span class="comment">// Add the passes to the technique</span>
33129    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addRenderPass(firstPass);
33130    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addRenderPass(secondPass);
33131    ///
33132    ///   <span class="comment">// Set the targeted GL version for the technique</span>
33133    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setApi(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>OpenGL);
33134    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMajorVersion(<span class="number">3</span>);
33135    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setMinorVersion(<span class="number">1</span>);
33136    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>graphicsApiFilter()<span class="operator">-</span><span class="operator">&gt;</span>setProfile(<span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qgraphicsapifilter.html">QGraphicsApiFilter</a></span><span class="operator">::</span>CoreProfile);
33137    ///
33138    ///   <span class="comment">// Create a FilterKey</span>
33139    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a></span> <span class="operator">*</span>filterKey <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">QFilterKey</a></span>();
33140    ///   filterKey<span class="operator">-</span><span class="operator">&gt;</span>setName(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"name"</span>));
33141    ///   fitlerKey<span class="operator">-</span><span class="operator">&gt;</span>setValue(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"zFillPass"</span>));
33142    ///
33143    ///   <span class="comment">// Add the FilterKey to the Technique</span>
33144    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addFilterKey(filterKey);
33145    ///
33146    ///   <span class="comment">// Create a QParameter</span>
33147    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span> <span class="operator">*</span>colorParameter <span class="operator">=</span> <span class="keyword">new</span> <span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a></span>(<span class="type"><a href="http://doc.qt.io/qt-5/qstring.html#QStringLiteral">QStringLiteral</a></span>(<span class="string">"color"</span>)<span class="operator">,</span> <span class="type"><a href="http://doc.qt.io/qt-5/qcolor.html">QColor</a></span><span class="operator">::</span>fromRgbF(<span class="number">0.0f</span><span class="operator">,</span> <span class="number">0.0f</span><span class="operator">,</span> <span class="number">1.0f</span><span class="operator">,</span> <span class="number">1.0f</span>));
33148    ///
33149    ///   <span class="comment">// Add parameter to technique</span>
33150    ///   gl3Technique<span class="operator">-</span><span class="operator">&gt;</span>addParameter(colorParameter);
33151    ///
33152    /// </pre></div>
33153    #[inline(always)]
33154    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTechnique> {
33155        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_QTechnique1() };
33156        ::qt_core::QBox::from_raw(ffi_result)
33157    }
33158
33159    /// <p>Returns a vector of the techniques current parameters</p>
33160    ///
33161    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*> Qt3DRender::QTechnique::parameters() const```</span>.
33162    ///
33163    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#parameters">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector of the techniques current parameters</p></div>
33164    #[inline(always)]
33165    pub unsafe fn parameters(&self) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
33166        let ffi_result = {
33167            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_parameters(
33168                self as *const crate::QTechnique,
33169            )
33170        };
33171        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33172    }
33173
33174    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTechnique::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
33175    #[inline(always)]
33176    pub unsafe fn qt_metacall(
33177        &self,
33178        arg1: ::qt_core::q_meta_object::Call,
33179        arg2: ::std::os::raw::c_int,
33180        arg3: *mut *mut ::std::ffi::c_void,
33181    ) -> ::std::os::raw::c_int {
33182        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_qt_metacall(
33183            self as *const crate::QTechnique as *mut crate::QTechnique,
33184            arg1,
33185            arg2,
33186            arg3,
33187        )
33188    }
33189
33190    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTechnique::qt_metacast(const char* arg1)```</span>.
33191    #[inline(always)]
33192    pub unsafe fn qt_metacast(
33193        &self,
33194        arg1: *const ::std::os::raw::c_char,
33195    ) -> *mut ::std::ffi::c_void {
33196        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_qt_metacast(
33197            self as *const crate::QTechnique as *mut crate::QTechnique,
33198            arg1,
33199        )
33200    }
33201
33202    /// <p>Removes <i>filterKey</i> from the <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a> local filter keys.</p>
33203    ///
33204    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechnique::removeFilterKey(Qt3DRender::QFilterKey* filterKey)```</span>.
33205    ///
33206    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#removeFilterKey">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes <i>filterKey</i> from the <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">Qt3DRender::QTechnique</a> local filter keys.</p></div>
33207    #[inline(always)]
33208    pub unsafe fn remove_filter_key(
33209        &self,
33210        filter_key: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFilterKey>>,
33211    ) {
33212        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_removeFilterKey(
33213            self as *const crate::QTechnique as *mut crate::QTechnique,
33214            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFilterKey>>::cast_into(filter_key)
33215                .as_raw_ptr() as *mut crate::QFilterKey,
33216        )
33217    }
33218
33219    /// <p>Remove <i>parameter</i> from the technique's parameters.</p>
33220    ///
33221    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechnique::removeParameter(Qt3DRender::QParameter* p)```</span>.
33222    ///
33223    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#removeParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove <i>parameter</i> from the technique's parameters.</p></div>
33224    #[inline(always)]
33225    pub unsafe fn remove_parameter(
33226        &self,
33227        p: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
33228    ) {
33229        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_removeParameter(
33230            self as *const crate::QTechnique as *mut crate::QTechnique,
33231            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(p).as_raw_ptr()
33232                as *mut crate::QParameter,
33233        )
33234    }
33235
33236    /// <p>Removes a <i>pass</i> from the technique.</p>
33237    ///
33238    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechnique::removeRenderPass(Qt3DRender::QRenderPass* pass)```</span>.
33239    ///
33240    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#removeRenderPass">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes a <i>pass</i> from the technique.</p></div>
33241    #[inline(always)]
33242    pub unsafe fn remove_render_pass(
33243        &self,
33244        pass: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderPass>>,
33245    ) {
33246        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_removeRenderPass(
33247            self as *const crate::QTechnique as *mut crate::QTechnique,
33248            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderPass>>::cast_into(pass)
33249                .as_raw_ptr() as *mut crate::QRenderPass,
33250        )
33251    }
33252
33253    /// <p>Returns the list of render passes contained in the technique.</p>
33254    ///
33255    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*> Qt3DRender::QTechnique::renderPasses() const```</span>.
33256    ///
33257    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html#renderPasses">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the list of render passes contained in the technique.</p></div>
33258    #[inline(always)]
33259    pub unsafe fn render_passes(&self) -> ::cpp_core::CppBox<crate::QVectorOfQRenderPass> {
33260        let ffi_result = {
33261            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_renderPasses(
33262                self as *const crate::QTechnique,
33263            )
33264        };
33265        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33266    }
33267
33268    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
33269    #[inline(always)]
33270    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
33271        let ffi_result =
33272            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_staticMetaObject() };
33273        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
33274            .expect("attempted to construct a null Ref")
33275    }
33276
33277    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTechnique::tr(const char* s, const char* c, int n)```</span>.
33278    #[inline(always)]
33279    pub unsafe fn tr(
33280        s: *const ::std::os::raw::c_char,
33281        c: *const ::std::os::raw::c_char,
33282        n: ::std::os::raw::c_int,
33283    ) -> ::cpp_core::CppBox<::qt_core::QString> {
33284        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_tr(s, c, n) };
33285        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33286    }
33287
33288    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTechnique::trUtf8(const char* s, const char* c, int n)```</span>.
33289    #[inline(always)]
33290    pub unsafe fn tr_utf8(
33291        s: *const ::std::os::raw::c_char,
33292        c: *const ::std::os::raw::c_char,
33293        n: ::std::os::raw::c_int,
33294    ) -> ::cpp_core::CppBox<::qt_core::QString> {
33295        let ffi_result =
33296            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_trUtf8(s, c, n) };
33297        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33298    }
33299}
33300
33301/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">QFrameGraphNode</a> used to select QTechniques to use</p>
33302///
33303/// C++ class: <span style='color: green;'>```Qt3DRender::QTechniqueFilter```</span>.
33304///
33305/// <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">QFrameGraphNode</a> used to select QTechniques to use</p>
33306/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">Qt3DRender::QTechniqueFilter</a> specifies which techniques are used by the FrameGraph when rendering the entities. <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> specifies a list of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects and <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">Qt3DRender::QParameter</a> objects. When <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> is present in the FrameGraph, only the techiques matching the keys in the list are used for rendering. The parameters in the list can be used to set values for shader parameters. The parameters in <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> are overridden by parameters in <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>.</p></div>
33307#[repr(C)]
33308pub struct QTechniqueFilter {
33309    _unused: u8,
33310}
33311impl QTechniqueFilter {
33312    /// <p>Add the <i>filterKey</i> to the match vector.</p>
33313    ///
33314    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechniqueFilter::addMatch(Qt3DRender::QFilterKey* filterKey)```</span>.
33315    ///
33316    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html#addMatch">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add the <i>filterKey</i> to the match vector.</p></div>
33317    #[inline(always)]
33318    pub unsafe fn add_match(
33319        &self,
33320        filter_key: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFilterKey>>,
33321    ) {
33322        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_addMatch(
33323            self as *const crate::QTechniqueFilter as *mut crate::QTechniqueFilter,
33324            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFilterKey>>::cast_into(filter_key)
33325                .as_raw_ptr() as *mut crate::QFilterKey,
33326        )
33327    }
33328
33329    /// <p>Add <i>parameter</i> to the vector of parameters that will be passed to the graphics pipeline.</p>
33330    ///
33331    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechniqueFilter::addParameter(Qt3DRender::QParameter* p)```</span>.
33332    ///
33333    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html#addParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add <i>parameter</i> to the vector of parameters that will be passed to the graphics pipeline.</p></div>
33334    #[inline(always)]
33335    pub unsafe fn add_parameter(
33336        &self,
33337        p: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
33338    ) {
33339        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_addParameter(
33340            self as *const crate::QTechniqueFilter as *mut crate::QTechniqueFilter,
33341            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(p).as_raw_ptr()
33342                as *mut crate::QParameter,
33343        )
33344    }
33345
33346    /// <p>Returns a vector of the current keys for the filter.</p>
33347    ///
33348    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*> Qt3DRender::QTechniqueFilter::matchAll() const```</span>.
33349    ///
33350    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html#matchAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector of the current keys for the filter.</p></div>
33351    #[inline(always)]
33352    pub unsafe fn match_all(&self) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
33353        let ffi_result = {
33354            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_matchAll(
33355                self as *const crate::QTechniqueFilter,
33356            )
33357        };
33358        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33359    }
33360
33361    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTechniqueFilter::metaObject() const```</span>.
33362    #[inline(always)]
33363    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
33364        let ffi_result = {
33365            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_metaObject(
33366                self as *const crate::QTechniqueFilter,
33367            )
33368        };
33369        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
33370    }
33371
33372    /// <p>Default constructs an instance of QTechniqueFilter.</p>
33373    ///
33374    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTechniqueFilter::QTechniqueFilter(Qt3DCore::QNode* parent = …)```</span>.
33375    ///
33376    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html#QTechniqueFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTechniqueFilter.</p></div>
33377    #[inline(always)]
33378    pub unsafe fn new_1a(
33379        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
33380    ) -> ::qt_core::QBox<crate::QTechniqueFilter> {
33381        let ffi_result = {
33382            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_QTechniqueFilter(
33383                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
33384                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
33385            )
33386        };
33387        ::qt_core::QBox::from_raw(ffi_result)
33388    }
33389
33390    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">QFrameGraphNode</a> used to select QTechniques to use</p>
33391    ///
33392    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTechniqueFilter::QTechniqueFilter()```</span>.
33393    ///
33394    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qframegraphnode.html">QFrameGraphNode</a> used to select QTechniques to use</p>
33395    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">Qt3DRender::QTechniqueFilter</a> specifies which techniques are used by the FrameGraph when rendering the entities. <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> specifies a list of <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html">Qt3DRender::QFilterKey</a> objects and <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">Qt3DRender::QParameter</a> objects. When <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> is present in the FrameGraph, only the techiques matching the keys in the list are used for rendering. The parameters in the list can be used to set values for shader parameters. The parameters in <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html">QTechniqueFilter</a> are overridden by parameters in <a href="http://doc.qt.io/qt-5/qt3drender-qtechnique.html">QTechnique</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qrenderpass.html">QRenderPass</a>.</p></div>
33396    #[inline(always)]
33397    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTechniqueFilter> {
33398        let ffi_result =
33399            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_QTechniqueFilter1() };
33400        ::qt_core::QBox::from_raw(ffi_result)
33401    }
33402
33403    /// <p>Returns the current vector of parameters.</p>
33404    ///
33405    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*> Qt3DRender::QTechniqueFilter::parameters() const```</span>.
33406    ///
33407    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html#parameters">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current vector of parameters.</p></div>
33408    #[inline(always)]
33409    pub unsafe fn parameters(&self) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
33410        let ffi_result = {
33411            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_parameters(
33412                self as *const crate::QTechniqueFilter,
33413            )
33414        };
33415        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33416    }
33417
33418    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTechniqueFilter::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
33419    #[inline(always)]
33420    pub unsafe fn qt_metacall(
33421        &self,
33422        arg1: ::qt_core::q_meta_object::Call,
33423        arg2: ::std::os::raw::c_int,
33424        arg3: *mut *mut ::std::ffi::c_void,
33425    ) -> ::std::os::raw::c_int {
33426        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_qt_metacall(
33427            self as *const crate::QTechniqueFilter as *mut crate::QTechniqueFilter,
33428            arg1,
33429            arg2,
33430            arg3,
33431        )
33432    }
33433
33434    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTechniqueFilter::qt_metacast(const char* arg1)```</span>.
33435    #[inline(always)]
33436    pub unsafe fn qt_metacast(
33437        &self,
33438        arg1: *const ::std::os::raw::c_char,
33439    ) -> *mut ::std::ffi::c_void {
33440        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_qt_metacast(
33441            self as *const crate::QTechniqueFilter as *mut crate::QTechniqueFilter,
33442            arg1,
33443        )
33444    }
33445
33446    /// <p>Remove the <i>filterKey</i> from the match vector.</p>
33447    ///
33448    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechniqueFilter::removeMatch(Qt3DRender::QFilterKey* filterKey)```</span>.
33449    ///
33450    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html#removeMatch">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove the <i>filterKey</i> from the match vector.</p></div>
33451    #[inline(always)]
33452    pub unsafe fn remove_match(
33453        &self,
33454        filter_key: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFilterKey>>,
33455    ) {
33456        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_removeMatch(
33457            self as *const crate::QTechniqueFilter as *mut crate::QTechniqueFilter,
33458            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFilterKey>>::cast_into(filter_key)
33459                .as_raw_ptr() as *mut crate::QFilterKey,
33460        )
33461    }
33462
33463    /// <p>Remove <i>parameter</i> from the vector of parameters passed to the graphics pipeline.</p>
33464    ///
33465    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTechniqueFilter::removeParameter(Qt3DRender::QParameter* p)```</span>.
33466    ///
33467    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtechniquefilter.html#removeParameter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove <i>parameter</i> from the vector of parameters passed to the graphics pipeline.</p></div>
33468    #[inline(always)]
33469    pub unsafe fn remove_parameter(
33470        &self,
33471        p: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QParameter>>,
33472    ) {
33473        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_removeParameter(
33474            self as *const crate::QTechniqueFilter as *mut crate::QTechniqueFilter,
33475            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QParameter>>::cast_into(p).as_raw_ptr()
33476                as *mut crate::QParameter,
33477        )
33478    }
33479
33480    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
33481    #[inline(always)]
33482    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
33483        let ffi_result =
33484            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_staticMetaObject() };
33485        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
33486            .expect("attempted to construct a null Ref")
33487    }
33488
33489    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTechniqueFilter::tr(const char* s, const char* c, int n)```</span>.
33490    #[inline(always)]
33491    pub unsafe fn tr(
33492        s: *const ::std::os::raw::c_char,
33493        c: *const ::std::os::raw::c_char,
33494        n: ::std::os::raw::c_int,
33495    ) -> ::cpp_core::CppBox<::qt_core::QString> {
33496        let ffi_result =
33497            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_tr(s, c, n) };
33498        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33499    }
33500
33501    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTechniqueFilter::trUtf8(const char* s, const char* c, int n)```</span>.
33502    #[inline(always)]
33503    pub unsafe fn tr_utf8(
33504        s: *const ::std::os::raw::c_char,
33505        c: *const ::std::os::raw::c_char,
33506        n: ::std::os::raw::c_int,
33507    ) -> ::cpp_core::CppBox<::qt_core::QString> {
33508        let ffi_result =
33509            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_trUtf8(s, c, n) };
33510        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33511    }
33512}
33513
33514pub mod q_texture_wrap_mode {
33515    //! C++ type: <span style='color: green;'>```Qt3DRender::QTextureWrapMode```</span>
33516
33517    /// C++ enum: <span style='color: green;'>```Qt3DRender::QTextureWrapMode::WrapMode```</span>.
33518    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
33519    #[repr(transparent)]
33520    pub struct WrapMode(::std::os::raw::c_int);
33521
33522    impl From<::std::os::raw::c_int> for WrapMode {
33523        fn from(value: ::std::os::raw::c_int) -> Self {
33524            WrapMode(value)
33525        }
33526    }
33527
33528    impl From<WrapMode> for ::std::os::raw::c_int {
33529        fn from(value: WrapMode) -> Self {
33530            value.0
33531        }
33532    }
33533
33534    impl WrapMode {
33535        pub fn to_int(&self) -> ::std::os::raw::c_int {
33536            self.0
33537        }
33538    }
33539
33540    impl WrapMode {
33541        /// C++ enum variant: <span style='color: green;'>```Repeat = 10497```</span>
33542        #[allow(non_upper_case_globals)]
33543        pub const Repeat: crate::q_texture_wrap_mode::WrapMode =
33544            crate::q_texture_wrap_mode::WrapMode(10497);
33545        /// C++ enum variant: <span style='color: green;'>```MirroredRepeat = 33648```</span>
33546        #[allow(non_upper_case_globals)]
33547        pub const MirroredRepeat: crate::q_texture_wrap_mode::WrapMode =
33548            crate::q_texture_wrap_mode::WrapMode(33648);
33549        /// C++ enum variant: <span style='color: green;'>```ClampToEdge = 33071```</span>
33550        #[allow(non_upper_case_globals)]
33551        pub const ClampToEdge: crate::q_texture_wrap_mode::WrapMode =
33552            crate::q_texture_wrap_mode::WrapMode(33071);
33553        /// C++ enum variant: <span style='color: green;'>```ClampToBorder = 33069```</span>
33554        #[allow(non_upper_case_globals)]
33555        pub const ClampToBorder: crate::q_texture_wrap_mode::WrapMode =
33556            crate::q_texture_wrap_mode::WrapMode(33069);
33557    }
33558}
33559/// <p>Defines the wrap mode a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">Qt3DRender::QAbstractTexture</a> should apply to a texture.</p>
33560///
33561/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureWrapMode```</span>.
33562///
33563/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines the wrap mode a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">Qt3DRender::QAbstractTexture</a> should apply to a texture.</p></div>
33564#[repr(C)]
33565pub struct QTextureWrapMode {
33566    _unused: u8,
33567}
33568impl QTextureWrapMode {
33569    /// <p>Sets the wrap mode of the x dimension to <i>x</i>.</p>
33570    ///
33571    /// Returns a built-in Qt slot `Qt3DRender::QTextureWrapMode::setX` that can be passed to `qt_core::Signal::connect`.
33572    ///
33573    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setX">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the wrap mode of the x dimension to <i>x</i>.</p>
33574    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#x-prop">x</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#x-prop">x</a>().</p></div>
33575    #[inline(always)]
33576    pub fn slot_set_x(&self) -> ::qt_core::Receiver<(crate::q_texture_wrap_mode::WrapMode,)> {
33577        unsafe {
33578            ::qt_core::Receiver::new(
33579                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
33580                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
33581                    b"1setX(Qt3DRender::QTextureWrapMode::WrapMode)\0",
33582                ),
33583            )
33584        }
33585    }
33586
33587    /// <p>Sets the wrap mode of the y dimension to <i>y</i>.</p>
33588    ///
33589    /// Returns a built-in Qt slot `Qt3DRender::QTextureWrapMode::setY` that can be passed to `qt_core::Signal::connect`.
33590    ///
33591    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setY">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the wrap mode of the y dimension to <i>y</i>.</p>
33592    /// <p><b>Note: </b>this is not available on 1D textures.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#y-prop">y</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#y-prop">y</a>().</p></div>
33593    #[inline(always)]
33594    pub fn slot_set_y(&self) -> ::qt_core::Receiver<(crate::q_texture_wrap_mode::WrapMode,)> {
33595        unsafe {
33596            ::qt_core::Receiver::new(
33597                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
33598                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
33599                    b"1setY(Qt3DRender::QTextureWrapMode::WrapMode)\0",
33600                ),
33601            )
33602        }
33603    }
33604
33605    /// <p>Sets the wrap mode of the z dimension to <i>z</i>.</p>
33606    ///
33607    /// Returns a built-in Qt slot `Qt3DRender::QTextureWrapMode::setZ` that can be passed to `qt_core::Signal::connect`.
33608    ///
33609    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setZ">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the wrap mode of the z dimension to <i>z</i>.</p>
33610    /// <p><b>Note: </b>this is only available on 3D textures.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#z-prop">z</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#z-prop">z</a>().</p></div>
33611    #[inline(always)]
33612    pub fn slot_set_z(&self) -> ::qt_core::Receiver<(crate::q_texture_wrap_mode::WrapMode,)> {
33613        unsafe {
33614            ::qt_core::Receiver::new(
33615                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
33616                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
33617                    b"1setZ(Qt3DRender::QTextureWrapMode::WrapMode)\0",
33618                ),
33619            )
33620        }
33621    }
33622
33623    /// <p>Returns the wrap mode of the x dimension.</p>
33624    ///
33625    /// Returns a built-in Qt signal `Qt3DRender::QTextureWrapMode::xChanged` that can be passed to `qt_core::Signal::connect`.
33626    ///
33627    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#x-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the wrap mode of the x dimension.</p>
33628    /// <p><b>Access functions:</b></p>
33629    /// <div class="table"><table class="alignedsummary">
33630    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WrapMode </td><td class="memItemRight bottomAlign"><span class="name"><b>x</b></span>() const</td></tr>
33631    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setX">setX</a></b></span>(WrapMode <i>x</i>)</td></tr>
33632    /// </tbody></table></div>
33633    /// <p><b>Notifier signal:</b></p>
33634    /// <div class="table"><table class="alignedsummary">
33635    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>xChanged</b></span>(WrapMode <i>x</i>)</td></tr>
33636    /// </tbody></table></div></div>
33637    #[inline(always)]
33638    pub fn x_changed(&self) -> ::qt_core::Signal<(crate::q_texture_wrap_mode::WrapMode,)> {
33639        unsafe {
33640            ::qt_core::Signal::new(
33641                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
33642                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
33643                    b"2xChanged(Qt3DRender::QTextureWrapMode::WrapMode)\0",
33644                ),
33645            )
33646        }
33647    }
33648
33649    /// <p>Returns the wrap mode of the y dimension.</p>
33650    ///
33651    /// Returns a built-in Qt signal `Qt3DRender::QTextureWrapMode::yChanged` that can be passed to `qt_core::Signal::connect`.
33652    ///
33653    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#y-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the wrap mode of the y dimension.</p>
33654    /// <p><b>Access functions:</b></p>
33655    /// <div class="table"><table class="alignedsummary">
33656    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WrapMode </td><td class="memItemRight bottomAlign"><span class="name"><b>y</b></span>() const</td></tr>
33657    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setY">setY</a></b></span>(WrapMode <i>y</i>)</td></tr>
33658    /// </tbody></table></div>
33659    /// <p><b>Notifier signal:</b></p>
33660    /// <div class="table"><table class="alignedsummary">
33661    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>yChanged</b></span>(WrapMode <i>y</i>)</td></tr>
33662    /// </tbody></table></div></div>
33663    #[inline(always)]
33664    pub fn y_changed(&self) -> ::qt_core::Signal<(crate::q_texture_wrap_mode::WrapMode,)> {
33665        unsafe {
33666            ::qt_core::Signal::new(
33667                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
33668                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
33669                    b"2yChanged(Qt3DRender::QTextureWrapMode::WrapMode)\0",
33670                ),
33671            )
33672        }
33673    }
33674
33675    /// <p>Returns the wrap mode of the z dimension.</p>
33676    ///
33677    /// Returns a built-in Qt signal `Qt3DRender::QTextureWrapMode::zChanged` that can be passed to `qt_core::Signal::connect`.
33678    ///
33679    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#z-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the wrap mode of the z dimension.</p>
33680    /// <p><b>Access functions:</b></p>
33681    /// <div class="table"><table class="alignedsummary">
33682    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WrapMode </td><td class="memItemRight bottomAlign"><span class="name"><b>z</b></span>() const</td></tr>
33683    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setZ">setZ</a></b></span>(WrapMode <i>z</i>)</td></tr>
33684    /// </tbody></table></div>
33685    /// <p><b>Notifier signal:</b></p>
33686    /// <div class="table"><table class="alignedsummary">
33687    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>zChanged</b></span>(WrapMode <i>z</i>)</td></tr>
33688    /// </tbody></table></div></div>
33689    #[inline(always)]
33690    pub fn z_changed(&self) -> ::qt_core::Signal<(crate::q_texture_wrap_mode::WrapMode,)> {
33691        unsafe {
33692            ::qt_core::Signal::new(
33693                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
33694                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
33695                    b"2zChanged(Qt3DRender::QTextureWrapMode::WrapMode)\0",
33696                ),
33697            )
33698        }
33699    }
33700
33701    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTextureWrapMode::metaObject() const```</span>.
33702    #[inline(always)]
33703    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
33704        let ffi_result = {
33705            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_metaObject(
33706                self as *const crate::QTextureWrapMode,
33707            )
33708        };
33709        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
33710    }
33711
33712    /// <p>Default constructs an instance of QTextureWrapMode.</p>
33713    ///
33714    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureWrapMode::QTextureWrapMode(Qt3DRender::QTextureWrapMode::WrapMode wrapMode = …, QObject* parent = …)```</span>.
33715    ///
33716    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#QTextureWrapMode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTextureWrapMode.</p></div>
33717    #[inline(always)]
33718    pub unsafe fn new_2a(
33719        wrap_mode: crate::q_texture_wrap_mode::WrapMode,
33720        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
33721    ) -> ::qt_core::QBox<crate::QTextureWrapMode> {
33722        let ffi_result = {
33723            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_QTextureWrapMode(
33724                wrap_mode,
33725                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
33726                    .as_raw_ptr() as *mut ::qt_core::QObject,
33727            )
33728        };
33729        ::qt_core::QBox::from_raw(ffi_result)
33730    }
33731
33732    /// <p>Contrusts a new <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html">Qt3DRender::QTextureWrapMode</a> instance with the wrap mode to apply to each dimension <i>x</i>, <i>y</i> <i>z</i> of the texture and <i>parent</i> as parent.</p>
33733    ///
33734    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureWrapMode::QTextureWrapMode(Qt3DRender::QTextureWrapMode::WrapMode x, Qt3DRender::QTextureWrapMode::WrapMode y, Qt3DRender::QTextureWrapMode::WrapMode z, QObject* parent = …)```</span>.
33735    ///
33736    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#QTextureWrapMode-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Contrusts a new <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html">Qt3DRender::QTextureWrapMode</a> instance with the wrap mode to apply to each dimension <i>x</i>, <i>y</i> <i>z</i> of the texture and <i>parent</i> as parent.</p></div>
33737    #[inline(always)]
33738    pub unsafe fn new_4a(
33739        x: crate::q_texture_wrap_mode::WrapMode,
33740        y: crate::q_texture_wrap_mode::WrapMode,
33741        z: crate::q_texture_wrap_mode::WrapMode,
33742        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
33743    ) -> ::qt_core::QBox<crate::QTextureWrapMode> {
33744        let ffi_result = {
33745            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_QTextureWrapMode1(
33746                x,
33747                y,
33748                z,
33749                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent)
33750                    .as_raw_ptr() as *mut ::qt_core::QObject,
33751            )
33752        };
33753        ::qt_core::QBox::from_raw(ffi_result)
33754    }
33755
33756    /// <p>Defines the wrap mode a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">Qt3DRender::QAbstractTexture</a> should apply to a texture.</p>
33757    ///
33758    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureWrapMode::QTextureWrapMode()```</span>.
33759    ///
33760    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Defines the wrap mode a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">Qt3DRender::QAbstractTexture</a> should apply to a texture.</p></div>
33761    #[inline(always)]
33762    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTextureWrapMode> {
33763        let ffi_result =
33764            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_QTextureWrapMode2() };
33765        ::qt_core::QBox::from_raw(ffi_result)
33766    }
33767
33768    /// <p>Default constructs an instance of QTextureWrapMode.</p>
33769    ///
33770    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureWrapMode::QTextureWrapMode(Qt3DRender::QTextureWrapMode::WrapMode wrapMode = …)```</span>.
33771    ///
33772    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#QTextureWrapMode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTextureWrapMode.</p></div>
33773    #[inline(always)]
33774    pub unsafe fn new_1a(
33775        wrap_mode: crate::q_texture_wrap_mode::WrapMode,
33776    ) -> ::qt_core::QBox<crate::QTextureWrapMode> {
33777        let ffi_result = {
33778            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_QTextureWrapMode4(
33779                wrap_mode,
33780            )
33781        };
33782        ::qt_core::QBox::from_raw(ffi_result)
33783    }
33784
33785    /// <p>Contrusts a new <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html">Qt3DRender::QTextureWrapMode</a> instance with the wrap mode to apply to each dimension <i>x</i>, <i>y</i> <i>z</i> of the texture and <i>parent</i> as parent.</p>
33786    ///
33787    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureWrapMode::QTextureWrapMode(Qt3DRender::QTextureWrapMode::WrapMode x, Qt3DRender::QTextureWrapMode::WrapMode y, Qt3DRender::QTextureWrapMode::WrapMode z)```</span>.
33788    ///
33789    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#QTextureWrapMode-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Contrusts a new <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html">Qt3DRender::QTextureWrapMode</a> instance with the wrap mode to apply to each dimension <i>x</i>, <i>y</i> <i>z</i> of the texture and <i>parent</i> as parent.</p></div>
33790    #[inline(always)]
33791    pub unsafe fn new_3a(
33792        x: crate::q_texture_wrap_mode::WrapMode,
33793        y: crate::q_texture_wrap_mode::WrapMode,
33794        z: crate::q_texture_wrap_mode::WrapMode,
33795    ) -> ::qt_core::QBox<crate::QTextureWrapMode> {
33796        let ffi_result = {
33797            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_QTextureWrapMode5(
33798                x, y, z,
33799            )
33800        };
33801        ::qt_core::QBox::from_raw(ffi_result)
33802    }
33803
33804    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTextureWrapMode::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
33805    #[inline(always)]
33806    pub unsafe fn qt_metacall(
33807        &self,
33808        arg1: ::qt_core::q_meta_object::Call,
33809        arg2: ::std::os::raw::c_int,
33810        arg3: *mut *mut ::std::ffi::c_void,
33811    ) -> ::std::os::raw::c_int {
33812        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_qt_metacall(
33813            self as *const crate::QTextureWrapMode as *mut crate::QTextureWrapMode,
33814            arg1,
33815            arg2,
33816            arg3,
33817        )
33818    }
33819
33820    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTextureWrapMode::qt_metacast(const char* arg1)```</span>.
33821    #[inline(always)]
33822    pub unsafe fn qt_metacast(
33823        &self,
33824        arg1: *const ::std::os::raw::c_char,
33825    ) -> *mut ::std::ffi::c_void {
33826        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_qt_metacast(
33827            self as *const crate::QTextureWrapMode as *mut crate::QTextureWrapMode,
33828            arg1,
33829        )
33830    }
33831
33832    /// <p>Sets the wrap mode of the x dimension to <i>x</i>.</p>
33833    ///
33834    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QTextureWrapMode::setX(Qt3DRender::QTextureWrapMode::WrapMode x)```</span>.
33835    ///
33836    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setX">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the wrap mode of the x dimension to <i>x</i>.</p>
33837    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#x-prop">x</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#x-prop">x</a>().</p></div>
33838    #[inline(always)]
33839    pub unsafe fn set_x(&self, x: crate::q_texture_wrap_mode::WrapMode) {
33840        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_setX(
33841            self as *const crate::QTextureWrapMode as *mut crate::QTextureWrapMode,
33842            x,
33843        )
33844    }
33845
33846    /// <p>Sets the wrap mode of the y dimension to <i>y</i>.</p>
33847    ///
33848    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QTextureWrapMode::setY(Qt3DRender::QTextureWrapMode::WrapMode y)```</span>.
33849    ///
33850    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setY">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the wrap mode of the y dimension to <i>y</i>.</p>
33851    /// <p><b>Note: </b>this is not available on 1D textures.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#y-prop">y</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#y-prop">y</a>().</p></div>
33852    #[inline(always)]
33853    pub unsafe fn set_y(&self, y: crate::q_texture_wrap_mode::WrapMode) {
33854        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_setY(
33855            self as *const crate::QTextureWrapMode as *mut crate::QTextureWrapMode,
33856            y,
33857        )
33858    }
33859
33860    /// <p>Sets the wrap mode of the z dimension to <i>z</i>.</p>
33861    ///
33862    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QTextureWrapMode::setZ(Qt3DRender::QTextureWrapMode::WrapMode z)```</span>.
33863    ///
33864    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setZ">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the wrap mode of the z dimension to <i>z</i>.</p>
33865    /// <p><b>Note: </b>this is only available on 3D textures.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#z-prop">z</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#z-prop">z</a>().</p></div>
33866    #[inline(always)]
33867    pub unsafe fn set_z(&self, z: crate::q_texture_wrap_mode::WrapMode) {
33868        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_setZ(
33869            self as *const crate::QTextureWrapMode as *mut crate::QTextureWrapMode,
33870            z,
33871        )
33872    }
33873
33874    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
33875    #[inline(always)]
33876    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
33877        let ffi_result =
33878            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_staticMetaObject() };
33879        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
33880            .expect("attempted to construct a null Ref")
33881    }
33882
33883    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureWrapMode::tr(const char* s, const char* c, int n)```</span>.
33884    #[inline(always)]
33885    pub unsafe fn tr(
33886        s: *const ::std::os::raw::c_char,
33887        c: *const ::std::os::raw::c_char,
33888        n: ::std::os::raw::c_int,
33889    ) -> ::cpp_core::CppBox<::qt_core::QString> {
33890        let ffi_result =
33891            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_tr(s, c, n) };
33892        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33893    }
33894
33895    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureWrapMode::trUtf8(const char* s, const char* c, int n)```</span>.
33896    #[inline(always)]
33897    pub unsafe fn tr_utf8(
33898        s: *const ::std::os::raw::c_char,
33899        c: *const ::std::os::raw::c_char,
33900        n: ::std::os::raw::c_int,
33901    ) -> ::cpp_core::CppBox<::qt_core::QString> {
33902        let ffi_result =
33903            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_trUtf8(s, c, n) };
33904        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
33905    }
33906
33907    /// <p>Returns the wrap mode of the x dimension.</p>
33908    ///
33909    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureWrapMode::WrapMode Qt3DRender::QTextureWrapMode::x() const```</span>.
33910    ///
33911    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#x-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the wrap mode of the x dimension.</p>
33912    /// <p><b>Access functions:</b></p>
33913    /// <div class="table"><table class="alignedsummary">
33914    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WrapMode </td><td class="memItemRight bottomAlign"><span class="name"><b>x</b></span>() const</td></tr>
33915    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setX">setX</a></b></span>(WrapMode <i>x</i>)</td></tr>
33916    /// </tbody></table></div>
33917    /// <p><b>Notifier signal:</b></p>
33918    /// <div class="table"><table class="alignedsummary">
33919    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>xChanged</b></span>(WrapMode <i>x</i>)</td></tr>
33920    /// </tbody></table></div></div>
33921    #[inline(always)]
33922    pub unsafe fn x(&self) -> crate::q_texture_wrap_mode::WrapMode {
33923        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_x(
33924            self as *const crate::QTextureWrapMode,
33925        )
33926    }
33927
33928    /// <p>Returns the wrap mode of the y dimension.</p>
33929    ///
33930    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureWrapMode::WrapMode Qt3DRender::QTextureWrapMode::y() const```</span>.
33931    ///
33932    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#y-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the wrap mode of the y dimension.</p>
33933    /// <p><b>Access functions:</b></p>
33934    /// <div class="table"><table class="alignedsummary">
33935    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WrapMode </td><td class="memItemRight bottomAlign"><span class="name"><b>y</b></span>() const</td></tr>
33936    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setY">setY</a></b></span>(WrapMode <i>y</i>)</td></tr>
33937    /// </tbody></table></div>
33938    /// <p><b>Notifier signal:</b></p>
33939    /// <div class="table"><table class="alignedsummary">
33940    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>yChanged</b></span>(WrapMode <i>y</i>)</td></tr>
33941    /// </tbody></table></div></div>
33942    #[inline(always)]
33943    pub unsafe fn y(&self) -> crate::q_texture_wrap_mode::WrapMode {
33944        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_y(
33945            self as *const crate::QTextureWrapMode,
33946        )
33947    }
33948
33949    /// <p>Returns the wrap mode of the z dimension.</p>
33950    ///
33951    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureWrapMode::WrapMode Qt3DRender::QTextureWrapMode::z() const```</span>.
33952    ///
33953    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#z-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the wrap mode of the z dimension.</p>
33954    /// <p><b>Access functions:</b></p>
33955    /// <div class="table"><table class="alignedsummary">
33956    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> WrapMode </td><td class="memItemRight bottomAlign"><span class="name"><b>z</b></span>() const</td></tr>
33957    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturewrapmode.html#setZ">setZ</a></b></span>(WrapMode <i>z</i>)</td></tr>
33958    /// </tbody></table></div>
33959    /// <p><b>Notifier signal:</b></p>
33960    /// <div class="table"><table class="alignedsummary">
33961    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>zChanged</b></span>(WrapMode <i>z</i>)</td></tr>
33962    /// </tbody></table></div></div>
33963    #[inline(always)]
33964    pub unsafe fn z(&self) -> crate::q_texture_wrap_mode::WrapMode {
33965        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_z(
33966            self as *const crate::QTextureWrapMode,
33967        )
33968    }
33969}
33970
33971pub mod q_texture_image {
33972    //! C++ type: <span style='color: green;'>```Qt3DRender::QTextureImage```</span>
33973
33974    /// C++ enum: <span style='color: green;'>```Qt3DRender::QTextureImage::Status```</span>.
33975    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
33976    #[repr(transparent)]
33977    pub struct Status(::std::os::raw::c_int);
33978
33979    impl From<::std::os::raw::c_int> for Status {
33980        fn from(value: ::std::os::raw::c_int) -> Self {
33981            Status(value)
33982        }
33983    }
33984
33985    impl From<Status> for ::std::os::raw::c_int {
33986        fn from(value: Status) -> Self {
33987            value.0
33988        }
33989    }
33990
33991    impl Status {
33992        pub fn to_int(&self) -> ::std::os::raw::c_int {
33993            self.0
33994        }
33995    }
33996
33997    impl Status {
33998        /// C++ enum variant: <span style='color: green;'>```None = 0```</span>
33999        #[allow(non_upper_case_globals)]
34000        pub const None: crate::q_texture_image::Status = crate::q_texture_image::Status(0);
34001        /// C++ enum variant: <span style='color: green;'>```Loading = 1```</span>
34002        #[allow(non_upper_case_globals)]
34003        pub const Loading: crate::q_texture_image::Status = crate::q_texture_image::Status(1);
34004        /// C++ enum variant: <span style='color: green;'>```Ready = 2```</span>
34005        #[allow(non_upper_case_globals)]
34006        pub const Ready: crate::q_texture_image::Status = crate::q_texture_image::Status(2);
34007        /// C++ enum variant: <span style='color: green;'>```Error = 3```</span>
34008        #[allow(non_upper_case_globals)]
34009        pub const Error: crate::q_texture_image::Status = crate::q_texture_image::Status(3);
34010    }
34011}
34012/// <p>Encapsulates the necessary information to create an OpenGL texture image from an image source.</p>
34013///
34014/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureImage```</span>.
34015///
34016/// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates the necessary information to create an OpenGL texture image from an image source.</p>
34017/// <p>It contains the necessary information mipmap level, layer, cube face and source URL to load at the proper place data into an OpenGL texture.</p></div>
34018#[repr(C)]
34019pub struct QTextureImage {
34020    _unused: u8,
34021}
34022impl QTextureImage {
34023    /// <p>Sets the source url of the texture image to <i>source</i>.</p>
34024    ///
34025    /// Returns a built-in Qt slot `Qt3DRender::QTextureImage::setSource` that can be passed to `qt_core::Signal::connect`.
34026    ///
34027    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#setSource">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the source url of the texture image to <i>source</i>.</p>
34028    /// <p><b>Note: </b>This internally triggers a call to update the data generator.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#source-prop">source</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#source">source</a>().</p></div>
34029    #[inline(always)]
34030    pub fn slot_set_source(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
34031        unsafe {
34032            ::qt_core::Receiver::new(
34033                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
34034                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSource(QUrl const &)\0"),
34035            )
34036        }
34037    }
34038
34039    /// <p>Sets mirroring to <i>mirrored</i>.</p>
34040    ///
34041    /// Returns a built-in Qt slot `Qt3DRender::QTextureImage::setMirrored` that can be passed to `qt_core::Signal::connect`.
34042    ///
34043    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#setMirrored">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets mirroring to <i>mirrored</i>.</p>
34044    /// <p><b>Note: </b>This internally triggers a call to update the data generator.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#mirrored-prop">mirrored</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#isMirrored">isMirrored</a>().</p></div>
34045    #[inline(always)]
34046    pub fn slot_set_mirrored(&self) -> ::qt_core::Receiver<(bool,)> {
34047        unsafe {
34048            ::qt_core::Receiver::new(
34049                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
34050                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setMirrored(bool)\0"),
34051            )
34052        }
34053    }
34054
34055    /// <p>This property holds the source url from which data for the texture image will be loaded.</p>
34056    ///
34057    /// Returns a built-in Qt signal `Qt3DRender::QTextureImage::sourceChanged` that can be passed to `qt_core::Signal::connect`.
34058    ///
34059    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the source url from which data for the texture image will be loaded.</p>
34060    /// <p><b>Access functions:</b></p>
34061    /// <div class="table"><table class="alignedsummary">
34062    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#source">source</a></b></span>() const</td></tr>
34063    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#setSource">setSource</a></b></span>(const QUrl &amp;<i>source</i>)</td></tr>
34064    /// </tbody></table></div>
34065    /// <p><b>Notifier signal:</b></p>
34066    /// <div class="table"><table class="alignedsummary">
34067    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
34068    /// </tbody></table></div></div>
34069    #[inline(always)]
34070    pub fn source_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
34071        unsafe {
34072            ::qt_core::Signal::new(
34073                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
34074                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2sourceChanged(QUrl const &)\0"),
34075            )
34076        }
34077    }
34078
34079    /// <p>This property holds the status of the texture image loading.</p>
34080    ///
34081    /// Returns a built-in Qt signal `Qt3DRender::QTextureImage::statusChanged` that can be passed to `qt_core::Signal::connect`.
34082    ///
34083    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the status of the texture image loading.</p>
34084    /// <ul>
34085    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-textureimage.html">TextureImage</a>.None</li>
34086    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-textureimage.html">TextureImage</a>.Loading</li>
34087    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-textureimage.html">TextureImage</a>.Ready</li>
34088    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-textureimage.html">TextureImage</a>.Error</li>
34089    /// </ul>
34090    /// <p><b>Access functions:</b></p>
34091    /// <div class="table"><table class="alignedsummary">
34092    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Status </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#status">status</a></b></span>() const</td></tr>
34093    /// </tbody></table></div>
34094    /// <p><b>Notifier signal:</b></p>
34095    /// <div class="table"><table class="alignedsummary">
34096    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Status <i>status</i>)</td></tr>
34097    /// </tbody></table></div></div>
34098    #[inline(always)]
34099    pub fn status_changed(&self) -> ::qt_core::Signal<(crate::q_texture_image::Status,)> {
34100        unsafe {
34101            ::qt_core::Signal::new(
34102                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
34103                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
34104                    b"2statusChanged(Qt3DRender::QTextureImage::Status)\0",
34105                ),
34106            )
34107        }
34108    }
34109
34110    /// <p>This property specifies whether the image should be mirrored when loaded. This is a convenience to avoid having to manipulate images to match the origin of the texture coordinates used by the rendering API. By default this property is set to true. This has no effect when using compressed texture formats.</p>
34111    ///
34112    /// Returns a built-in Qt signal `Qt3DRender::QTextureImage::mirroredChanged` that can be passed to `qt_core::Signal::connect`.
34113    ///
34114    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#mirrored-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property specifies whether the image should be mirrored when loaded. This is a convenience to avoid having to manipulate images to match the origin of the texture coordinates used by the rendering API. By default this property is set to true. This has no effect when using compressed texture formats.</p>
34115    /// <p><b>Note: </b>OpenGL specifies the origin of texture coordinates from the lower left hand corner whereas DirectX uses the the upper left hand corner.</p><p><b>Note: </b>When using cube map texture you'll probably want mirroring disabled as the cube map sampler takes a direction rather than regular texture coordinates.</p><p><b>Access functions:</b></p>
34116    /// <div class="table"><table class="alignedsummary">
34117    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#isMirrored">isMirrored</a></b></span>() const</td></tr>
34118    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#setMirrored">setMirrored</a></b></span>(bool <i>mirrored</i>)</td></tr>
34119    /// </tbody></table></div>
34120    /// <p><b>Notifier signal:</b></p>
34121    /// <div class="table"><table class="alignedsummary">
34122    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mirroredChanged</b></span>(bool <i>mirrored</i>)</td></tr>
34123    /// </tbody></table></div></div>
34124    #[inline(always)]
34125    pub fn mirrored_changed(&self) -> ::qt_core::Signal<(bool,)> {
34126        unsafe {
34127            ::qt_core::Signal::new(
34128                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
34129                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2mirroredChanged(bool)\0"),
34130            )
34131        }
34132    }
34133
34134    /// <p>Returns whether mirroring is enabled or not.</p>
34135    ///
34136    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QTextureImage::isMirrored() const```</span>.
34137    ///
34138    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#isMirrored">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns whether mirroring is enabled or not.</p>
34139    /// <p><b>Note:</b> Getter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#mirrored-prop">mirrored</a>. </p></div>
34140    #[inline(always)]
34141    pub unsafe fn is_mirrored(&self) -> bool {
34142        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_isMirrored(
34143            self as *const crate::QTextureImage,
34144        )
34145    }
34146
34147    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTextureImage::metaObject() const```</span>.
34148    #[inline(always)]
34149    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
34150        let ffi_result = {
34151            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_metaObject(
34152                self as *const crate::QTextureImage,
34153            )
34154        };
34155        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34156    }
34157
34158    /// <p>Default constructs an instance of QTextureImage.</p>
34159    ///
34160    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureImage::QTextureImage(Qt3DCore::QNode* parent = …)```</span>.
34161    ///
34162    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#QTextureImage">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTextureImage.</p></div>
34163    #[inline(always)]
34164    pub unsafe fn new_1a(
34165        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
34166    ) -> ::qt_core::QBox<crate::QTextureImage> {
34167        let ffi_result = {
34168            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_QTextureImage(
34169                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
34170                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
34171            )
34172        };
34173        ::qt_core::QBox::from_raw(ffi_result)
34174    }
34175
34176    /// <p>Encapsulates the necessary information to create an OpenGL texture image from an image source.</p>
34177    ///
34178    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureImage::QTextureImage()```</span>.
34179    ///
34180    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Encapsulates the necessary information to create an OpenGL texture image from an image source.</p>
34181    /// <p>It contains the necessary information mipmap level, layer, cube face and source URL to load at the proper place data into an OpenGL texture.</p></div>
34182    #[inline(always)]
34183    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTextureImage> {
34184        let ffi_result =
34185            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_QTextureImage1() };
34186        ::qt_core::QBox::from_raw(ffi_result)
34187    }
34188
34189    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTextureImage::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
34190    #[inline(always)]
34191    pub unsafe fn qt_metacall(
34192        &self,
34193        arg1: ::qt_core::q_meta_object::Call,
34194        arg2: ::std::os::raw::c_int,
34195        arg3: *mut *mut ::std::ffi::c_void,
34196    ) -> ::std::os::raw::c_int {
34197        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_qt_metacall(
34198            self as *const crate::QTextureImage as *mut crate::QTextureImage,
34199            arg1,
34200            arg2,
34201            arg3,
34202        )
34203    }
34204
34205    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTextureImage::qt_metacast(const char* arg1)```</span>.
34206    #[inline(always)]
34207    pub unsafe fn qt_metacast(
34208        &self,
34209        arg1: *const ::std::os::raw::c_char,
34210    ) -> *mut ::std::ffi::c_void {
34211        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_qt_metacast(
34212            self as *const crate::QTextureImage as *mut crate::QTextureImage,
34213            arg1,
34214        )
34215    }
34216
34217    /// <p>Sets mirroring to <i>mirrored</i>.</p>
34218    ///
34219    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QTextureImage::setMirrored(bool mirrored)```</span>.
34220    ///
34221    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#setMirrored">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets mirroring to <i>mirrored</i>.</p>
34222    /// <p><b>Note: </b>This internally triggers a call to update the data generator.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#mirrored-prop">mirrored</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#isMirrored">isMirrored</a>().</p></div>
34223    #[inline(always)]
34224    pub unsafe fn set_mirrored(&self, mirrored: bool) {
34225        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_setMirrored(
34226            self as *const crate::QTextureImage as *mut crate::QTextureImage,
34227            mirrored,
34228        )
34229    }
34230
34231    /// <p>Sets the source url of the texture image to <i>source</i>.</p>
34232    ///
34233    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QTextureImage::setSource(const QUrl& source)```</span>.
34234    ///
34235    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#setSource">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the source url of the texture image to <i>source</i>.</p>
34236    /// <p><b>Note: </b>This internally triggers a call to update the data generator.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#source-prop">source</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#source">source</a>().</p></div>
34237    #[inline(always)]
34238    pub unsafe fn set_source(
34239        &self,
34240        source: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
34241    ) {
34242        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_setSource(
34243            self as *const crate::QTextureImage as *mut crate::QTextureImage,
34244            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(source)
34245                .as_raw_ptr(),
34246        )
34247    }
34248
34249    /// <p>This property holds the source url from which data for the texture image will be loaded.</p>
34250    ///
34251    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QTextureImage::source() const```</span>.
34252    ///
34253    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the source url from which data for the texture image will be loaded.</p>
34254    /// <p><b>Access functions:</b></p>
34255    /// <div class="table"><table class="alignedsummary">
34256    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#source">source</a></b></span>() const</td></tr>
34257    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#setSource">setSource</a></b></span>(const QUrl &amp;<i>source</i>)</td></tr>
34258    /// </tbody></table></div>
34259    /// <p><b>Notifier signal:</b></p>
34260    /// <div class="table"><table class="alignedsummary">
34261    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
34262    /// </tbody></table></div></div>
34263    #[inline(always)]
34264    pub unsafe fn source(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
34265        let ffi_result = {
34266            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_source(
34267                self as *const crate::QTextureImage,
34268            )
34269        };
34270        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34271    }
34272
34273    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
34274    #[inline(always)]
34275    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
34276        let ffi_result =
34277            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_staticMetaObject() };
34278        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34279            .expect("attempted to construct a null Ref")
34280    }
34281
34282    /// <p>This property holds the status of the texture image loading.</p>
34283    ///
34284    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImage::Status Qt3DRender::QTextureImage::status() const```</span>.
34285    ///
34286    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#status-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the status of the texture image loading.</p>
34287    /// <ul>
34288    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-textureimage.html">TextureImage</a>.None</li>
34289    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-textureimage.html">TextureImage</a>.Loading</li>
34290    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-textureimage.html">TextureImage</a>.Ready</li>
34291    /// <li><a href="http://doc.qt.io/qt-5/qml-qt3d-render-textureimage.html">TextureImage</a>.Error</li>
34292    /// </ul>
34293    /// <p><b>Access functions:</b></p>
34294    /// <div class="table"><table class="alignedsummary">
34295    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Status </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureimage.html#status">status</a></b></span>() const</td></tr>
34296    /// </tbody></table></div>
34297    /// <p><b>Notifier signal:</b></p>
34298    /// <div class="table"><table class="alignedsummary">
34299    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>statusChanged</b></span>(Status <i>status</i>)</td></tr>
34300    /// </tbody></table></div></div>
34301    #[inline(always)]
34302    pub unsafe fn status(&self) -> crate::q_texture_image::Status {
34303        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_status(
34304            self as *const crate::QTextureImage,
34305        )
34306    }
34307
34308    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureImage::tr(const char* s, const char* c, int n)```</span>.
34309    #[inline(always)]
34310    pub unsafe fn tr(
34311        s: *const ::std::os::raw::c_char,
34312        c: *const ::std::os::raw::c_char,
34313        n: ::std::os::raw::c_int,
34314    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34315        let ffi_result =
34316            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_tr(s, c, n) };
34317        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34318    }
34319
34320    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureImage::trUtf8(const char* s, const char* c, int n)```</span>.
34321    #[inline(always)]
34322    pub unsafe fn tr_utf8(
34323        s: *const ::std::os::raw::c_char,
34324        c: *const ::std::os::raw::c_char,
34325        n: ::std::os::raw::c_int,
34326    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34327        let ffi_result =
34328            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_trUtf8(s, c, n) };
34329        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34330    }
34331}
34332
34333/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target1D</a> target format.</p>
34334///
34335/// C++ class: <span style='color: green;'>```Qt3DRender::QTexture1D```</span>.
34336///
34337/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture1d.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target1D</a> target format.</p></div>
34338#[repr(C)]
34339pub struct QTexture1D {
34340    _unused: u8,
34341}
34342impl QTexture1D {
34343    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTexture1D::metaObject() const```</span>.
34344    #[inline(always)]
34345    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
34346        let ffi_result = {
34347            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1D_metaObject(
34348                self as *const crate::QTexture1D,
34349            )
34350        };
34351        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34352    }
34353
34354    /// <p>Default constructs an instance of QTexture1D.</p>
34355    ///
34356    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture1D::QTexture1D(Qt3DCore::QNode* parent = …)```</span>.
34357    ///
34358    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture1d.html#QTexture1D">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTexture1D.</p></div>
34359    #[inline(always)]
34360    pub unsafe fn new_1a(
34361        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
34362    ) -> ::qt_core::QBox<crate::QTexture1D> {
34363        let ffi_result = {
34364            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1D_QTexture1D(
34365                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
34366                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
34367            )
34368        };
34369        ::qt_core::QBox::from_raw(ffi_result)
34370    }
34371
34372    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target1D</a> target format.</p>
34373    ///
34374    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture1D::QTexture1D()```</span>.
34375    ///
34376    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture1d.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target1D</a> target format.</p></div>
34377    #[inline(always)]
34378    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTexture1D> {
34379        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1D_QTexture1D1() };
34380        ::qt_core::QBox::from_raw(ffi_result)
34381    }
34382
34383    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTexture1D::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
34384    #[inline(always)]
34385    pub unsafe fn qt_metacall(
34386        &self,
34387        arg1: ::qt_core::q_meta_object::Call,
34388        arg2: ::std::os::raw::c_int,
34389        arg3: *mut *mut ::std::ffi::c_void,
34390    ) -> ::std::os::raw::c_int {
34391        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1D_qt_metacall(
34392            self as *const crate::QTexture1D as *mut crate::QTexture1D,
34393            arg1,
34394            arg2,
34395            arg3,
34396        )
34397    }
34398
34399    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTexture1D::qt_metacast(const char* arg1)```</span>.
34400    #[inline(always)]
34401    pub unsafe fn qt_metacast(
34402        &self,
34403        arg1: *const ::std::os::raw::c_char,
34404    ) -> *mut ::std::ffi::c_void {
34405        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1D_qt_metacast(
34406            self as *const crate::QTexture1D as *mut crate::QTexture1D,
34407            arg1,
34408        )
34409    }
34410
34411    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
34412    #[inline(always)]
34413    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
34414        let ffi_result =
34415            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1D_staticMetaObject() };
34416        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34417            .expect("attempted to construct a null Ref")
34418    }
34419
34420    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture1D::tr(const char* s, const char* c, int n)```</span>.
34421    #[inline(always)]
34422    pub unsafe fn tr(
34423        s: *const ::std::os::raw::c_char,
34424        c: *const ::std::os::raw::c_char,
34425        n: ::std::os::raw::c_int,
34426    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34427        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1D_tr(s, c, n) };
34428        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34429    }
34430
34431    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture1D::trUtf8(const char* s, const char* c, int n)```</span>.
34432    #[inline(always)]
34433    pub unsafe fn tr_utf8(
34434        s: *const ::std::os::raw::c_char,
34435        c: *const ::std::os::raw::c_char,
34436        n: ::std::os::raw::c_int,
34437    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34438        let ffi_result =
34439            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1D_trUtf8(s, c, n) };
34440        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34441    }
34442}
34443
34444/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target1DArray</a> target format.</p>
34445///
34446/// C++ class: <span style='color: green;'>```Qt3DRender::QTexture1DArray```</span>.
34447///
34448/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture1darray.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target1DArray</a> target format.</p></div>
34449#[repr(C)]
34450pub struct QTexture1DArray {
34451    _unused: u8,
34452}
34453impl QTexture1DArray {
34454    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTexture1DArray::metaObject() const```</span>.
34455    #[inline(always)]
34456    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
34457        let ffi_result = {
34458            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1DArray_metaObject(
34459                self as *const crate::QTexture1DArray,
34460            )
34461        };
34462        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34463    }
34464
34465    /// <p>Default constructs an instance of QTexture1DArray.</p>
34466    ///
34467    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture1DArray::QTexture1DArray(Qt3DCore::QNode* parent = …)```</span>.
34468    ///
34469    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture1darray.html#QTexture1DArray">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTexture1DArray.</p></div>
34470    #[inline(always)]
34471    pub unsafe fn new_1a(
34472        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
34473    ) -> ::qt_core::QBox<crate::QTexture1DArray> {
34474        let ffi_result = {
34475            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1DArray_QTexture1DArray(
34476                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
34477                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
34478            )
34479        };
34480        ::qt_core::QBox::from_raw(ffi_result)
34481    }
34482
34483    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target1DArray</a> target format.</p>
34484    ///
34485    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture1DArray::QTexture1DArray()```</span>.
34486    ///
34487    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture1darray.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target1DArray</a> target format.</p></div>
34488    #[inline(always)]
34489    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTexture1DArray> {
34490        let ffi_result =
34491            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1DArray_QTexture1DArray1() };
34492        ::qt_core::QBox::from_raw(ffi_result)
34493    }
34494
34495    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTexture1DArray::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
34496    #[inline(always)]
34497    pub unsafe fn qt_metacall(
34498        &self,
34499        arg1: ::qt_core::q_meta_object::Call,
34500        arg2: ::std::os::raw::c_int,
34501        arg3: *mut *mut ::std::ffi::c_void,
34502    ) -> ::std::os::raw::c_int {
34503        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1DArray_qt_metacall(
34504            self as *const crate::QTexture1DArray as *mut crate::QTexture1DArray,
34505            arg1,
34506            arg2,
34507            arg3,
34508        )
34509    }
34510
34511    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTexture1DArray::qt_metacast(const char* arg1)```</span>.
34512    #[inline(always)]
34513    pub unsafe fn qt_metacast(
34514        &self,
34515        arg1: *const ::std::os::raw::c_char,
34516    ) -> *mut ::std::ffi::c_void {
34517        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1DArray_qt_metacast(
34518            self as *const crate::QTexture1DArray as *mut crate::QTexture1DArray,
34519            arg1,
34520        )
34521    }
34522
34523    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
34524    #[inline(always)]
34525    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
34526        let ffi_result =
34527            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1DArray_staticMetaObject() };
34528        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34529            .expect("attempted to construct a null Ref")
34530    }
34531
34532    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture1DArray::tr(const char* s, const char* c, int n)```</span>.
34533    #[inline(always)]
34534    pub unsafe fn tr(
34535        s: *const ::std::os::raw::c_char,
34536        c: *const ::std::os::raw::c_char,
34537        n: ::std::os::raw::c_int,
34538    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34539        let ffi_result =
34540            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1DArray_tr(s, c, n) };
34541        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34542    }
34543
34544    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture1DArray::trUtf8(const char* s, const char* c, int n)```</span>.
34545    #[inline(always)]
34546    pub unsafe fn tr_utf8(
34547        s: *const ::std::os::raw::c_char,
34548        c: *const ::std::os::raw::c_char,
34549        n: ::std::os::raw::c_int,
34550    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34551        let ffi_result =
34552            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1DArray_trUtf8(s, c, n) };
34553        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34554    }
34555}
34556
34557/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2D</a> target format.</p>
34558///
34559/// C++ class: <span style='color: green;'>```Qt3DRender::QTexture2D```</span>.
34560///
34561/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2D</a> target format.</p></div>
34562#[repr(C)]
34563pub struct QTexture2D {
34564    _unused: u8,
34565}
34566impl QTexture2D {
34567    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTexture2D::metaObject() const```</span>.
34568    #[inline(always)]
34569    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
34570        let ffi_result = {
34571            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2D_metaObject(
34572                self as *const crate::QTexture2D,
34573            )
34574        };
34575        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34576    }
34577
34578    /// <p>Default constructs an instance of QTexture2D.</p>
34579    ///
34580    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture2D::QTexture2D(Qt3DCore::QNode* parent = …)```</span>.
34581    ///
34582    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html#QTexture2D">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTexture2D.</p></div>
34583    #[inline(always)]
34584    pub unsafe fn new_1a(
34585        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
34586    ) -> ::qt_core::QBox<crate::QTexture2D> {
34587        let ffi_result = {
34588            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2D_QTexture2D(
34589                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
34590                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
34591            )
34592        };
34593        ::qt_core::QBox::from_raw(ffi_result)
34594    }
34595
34596    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2D</a> target format.</p>
34597    ///
34598    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture2D::QTexture2D()```</span>.
34599    ///
34600    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2D</a> target format.</p></div>
34601    #[inline(always)]
34602    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTexture2D> {
34603        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2D_QTexture2D1() };
34604        ::qt_core::QBox::from_raw(ffi_result)
34605    }
34606
34607    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTexture2D::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
34608    #[inline(always)]
34609    pub unsafe fn qt_metacall(
34610        &self,
34611        arg1: ::qt_core::q_meta_object::Call,
34612        arg2: ::std::os::raw::c_int,
34613        arg3: *mut *mut ::std::ffi::c_void,
34614    ) -> ::std::os::raw::c_int {
34615        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2D_qt_metacall(
34616            self as *const crate::QTexture2D as *mut crate::QTexture2D,
34617            arg1,
34618            arg2,
34619            arg3,
34620        )
34621    }
34622
34623    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTexture2D::qt_metacast(const char* arg1)```</span>.
34624    #[inline(always)]
34625    pub unsafe fn qt_metacast(
34626        &self,
34627        arg1: *const ::std::os::raw::c_char,
34628    ) -> *mut ::std::ffi::c_void {
34629        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2D_qt_metacast(
34630            self as *const crate::QTexture2D as *mut crate::QTexture2D,
34631            arg1,
34632        )
34633    }
34634
34635    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
34636    #[inline(always)]
34637    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
34638        let ffi_result =
34639            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2D_staticMetaObject() };
34640        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34641            .expect("attempted to construct a null Ref")
34642    }
34643
34644    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture2D::tr(const char* s, const char* c, int n)```</span>.
34645    #[inline(always)]
34646    pub unsafe fn tr(
34647        s: *const ::std::os::raw::c_char,
34648        c: *const ::std::os::raw::c_char,
34649        n: ::std::os::raw::c_int,
34650    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34651        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2D_tr(s, c, n) };
34652        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34653    }
34654
34655    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture2D::trUtf8(const char* s, const char* c, int n)```</span>.
34656    #[inline(always)]
34657    pub unsafe fn tr_utf8(
34658        s: *const ::std::os::raw::c_char,
34659        c: *const ::std::os::raw::c_char,
34660        n: ::std::os::raw::c_int,
34661    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34662        let ffi_result =
34663            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2D_trUtf8(s, c, n) };
34664        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34665    }
34666}
34667
34668/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DArray</a> target format.</p>
34669///
34670/// C++ class: <span style='color: green;'>```Qt3DRender::QTexture2DArray```</span>.
34671///
34672/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DArray</a> target format.</p></div>
34673#[repr(C)]
34674pub struct QTexture2DArray {
34675    _unused: u8,
34676}
34677impl QTexture2DArray {
34678    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTexture2DArray::metaObject() const```</span>.
34679    #[inline(always)]
34680    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
34681        let ffi_result = {
34682            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DArray_metaObject(
34683                self as *const crate::QTexture2DArray,
34684            )
34685        };
34686        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34687    }
34688
34689    /// <p>Default constructs an instance of QTexture2DArray.</p>
34690    ///
34691    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture2DArray::QTexture2DArray(Qt3DCore::QNode* parent = …)```</span>.
34692    ///
34693    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html#QTexture2DArray">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTexture2DArray.</p></div>
34694    #[inline(always)]
34695    pub unsafe fn new_1a(
34696        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
34697    ) -> ::qt_core::QBox<crate::QTexture2DArray> {
34698        let ffi_result = {
34699            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DArray_QTexture2DArray(
34700                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
34701                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
34702            )
34703        };
34704        ::qt_core::QBox::from_raw(ffi_result)
34705    }
34706
34707    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DArray</a> target format.</p>
34708    ///
34709    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture2DArray::QTexture2DArray()```</span>.
34710    ///
34711    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DArray</a> target format.</p></div>
34712    #[inline(always)]
34713    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTexture2DArray> {
34714        let ffi_result =
34715            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DArray_QTexture2DArray1() };
34716        ::qt_core::QBox::from_raw(ffi_result)
34717    }
34718
34719    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTexture2DArray::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
34720    #[inline(always)]
34721    pub unsafe fn qt_metacall(
34722        &self,
34723        arg1: ::qt_core::q_meta_object::Call,
34724        arg2: ::std::os::raw::c_int,
34725        arg3: *mut *mut ::std::ffi::c_void,
34726    ) -> ::std::os::raw::c_int {
34727        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DArray_qt_metacall(
34728            self as *const crate::QTexture2DArray as *mut crate::QTexture2DArray,
34729            arg1,
34730            arg2,
34731            arg3,
34732        )
34733    }
34734
34735    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTexture2DArray::qt_metacast(const char* arg1)```</span>.
34736    #[inline(always)]
34737    pub unsafe fn qt_metacast(
34738        &self,
34739        arg1: *const ::std::os::raw::c_char,
34740    ) -> *mut ::std::ffi::c_void {
34741        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DArray_qt_metacast(
34742            self as *const crate::QTexture2DArray as *mut crate::QTexture2DArray,
34743            arg1,
34744        )
34745    }
34746
34747    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
34748    #[inline(always)]
34749    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
34750        let ffi_result =
34751            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DArray_staticMetaObject() };
34752        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34753            .expect("attempted to construct a null Ref")
34754    }
34755
34756    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture2DArray::tr(const char* s, const char* c, int n)```</span>.
34757    #[inline(always)]
34758    pub unsafe fn tr(
34759        s: *const ::std::os::raw::c_char,
34760        c: *const ::std::os::raw::c_char,
34761        n: ::std::os::raw::c_int,
34762    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34763        let ffi_result =
34764            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DArray_tr(s, c, n) };
34765        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34766    }
34767
34768    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture2DArray::trUtf8(const char* s, const char* c, int n)```</span>.
34769    #[inline(always)]
34770    pub unsafe fn tr_utf8(
34771        s: *const ::std::os::raw::c_char,
34772        c: *const ::std::os::raw::c_char,
34773        n: ::std::os::raw::c_int,
34774    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34775        let ffi_result =
34776            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DArray_trUtf8(s, c, n) };
34777        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34778    }
34779}
34780
34781/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target3D</a> target format.</p>
34782///
34783/// C++ class: <span style='color: green;'>```Qt3DRender::QTexture3D```</span>.
34784///
34785/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target3D</a> target format.</p></div>
34786#[repr(C)]
34787pub struct QTexture3D {
34788    _unused: u8,
34789}
34790impl QTexture3D {
34791    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTexture3D::metaObject() const```</span>.
34792    #[inline(always)]
34793    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
34794        let ffi_result = {
34795            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture3D_metaObject(
34796                self as *const crate::QTexture3D,
34797            )
34798        };
34799        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34800    }
34801
34802    /// <p>Default constructs an instance of QTexture3D.</p>
34803    ///
34804    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture3D::QTexture3D(Qt3DCore::QNode* parent = …)```</span>.
34805    ///
34806    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html#QTexture3D">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTexture3D.</p></div>
34807    #[inline(always)]
34808    pub unsafe fn new_1a(
34809        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
34810    ) -> ::qt_core::QBox<crate::QTexture3D> {
34811        let ffi_result = {
34812            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture3D_QTexture3D(
34813                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
34814                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
34815            )
34816        };
34817        ::qt_core::QBox::from_raw(ffi_result)
34818    }
34819
34820    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target3D</a> target format.</p>
34821    ///
34822    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture3D::QTexture3D()```</span>.
34823    ///
34824    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target3D</a> target format.</p></div>
34825    #[inline(always)]
34826    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTexture3D> {
34827        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture3D_QTexture3D1() };
34828        ::qt_core::QBox::from_raw(ffi_result)
34829    }
34830
34831    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTexture3D::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
34832    #[inline(always)]
34833    pub unsafe fn qt_metacall(
34834        &self,
34835        arg1: ::qt_core::q_meta_object::Call,
34836        arg2: ::std::os::raw::c_int,
34837        arg3: *mut *mut ::std::ffi::c_void,
34838    ) -> ::std::os::raw::c_int {
34839        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture3D_qt_metacall(
34840            self as *const crate::QTexture3D as *mut crate::QTexture3D,
34841            arg1,
34842            arg2,
34843            arg3,
34844        )
34845    }
34846
34847    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTexture3D::qt_metacast(const char* arg1)```</span>.
34848    #[inline(always)]
34849    pub unsafe fn qt_metacast(
34850        &self,
34851        arg1: *const ::std::os::raw::c_char,
34852    ) -> *mut ::std::ffi::c_void {
34853        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture3D_qt_metacast(
34854            self as *const crate::QTexture3D as *mut crate::QTexture3D,
34855            arg1,
34856        )
34857    }
34858
34859    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
34860    #[inline(always)]
34861    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
34862        let ffi_result =
34863            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture3D_staticMetaObject() };
34864        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34865            .expect("attempted to construct a null Ref")
34866    }
34867
34868    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture3D::tr(const char* s, const char* c, int n)```</span>.
34869    #[inline(always)]
34870    pub unsafe fn tr(
34871        s: *const ::std::os::raw::c_char,
34872        c: *const ::std::os::raw::c_char,
34873        n: ::std::os::raw::c_int,
34874    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34875        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture3D_tr(s, c, n) };
34876        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34877    }
34878
34879    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture3D::trUtf8(const char* s, const char* c, int n)```</span>.
34880    #[inline(always)]
34881    pub unsafe fn tr_utf8(
34882        s: *const ::std::os::raw::c_char,
34883        c: *const ::std::os::raw::c_char,
34884        n: ::std::os::raw::c_int,
34885    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34886        let ffi_result =
34887            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture3D_trUtf8(s, c, n) };
34888        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34889    }
34890}
34891
34892/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMap</a> target format.</p>
34893///
34894/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureCubeMap```</span>.
34895///
34896/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMap</a> target format.</p></div>
34897#[repr(C)]
34898pub struct QTextureCubeMap {
34899    _unused: u8,
34900}
34901impl QTextureCubeMap {
34902    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTextureCubeMap::metaObject() const```</span>.
34903    #[inline(always)]
34904    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
34905        let ffi_result = {
34906            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMap_metaObject(
34907                self as *const crate::QTextureCubeMap,
34908            )
34909        };
34910        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34911    }
34912
34913    /// <p>Default constructs an instance of QTextureCubeMap.</p>
34914    ///
34915    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureCubeMap::QTextureCubeMap(Qt3DCore::QNode* parent = …)```</span>.
34916    ///
34917    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html#QTextureCubeMap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTextureCubeMap.</p></div>
34918    #[inline(always)]
34919    pub unsafe fn new_1a(
34920        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
34921    ) -> ::qt_core::QBox<crate::QTextureCubeMap> {
34922        let ffi_result = {
34923            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMap_QTextureCubeMap(
34924                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
34925                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
34926            )
34927        };
34928        ::qt_core::QBox::from_raw(ffi_result)
34929    }
34930
34931    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMap</a> target format.</p>
34932    ///
34933    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureCubeMap::QTextureCubeMap()```</span>.
34934    ///
34935    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMap</a> target format.</p></div>
34936    #[inline(always)]
34937    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTextureCubeMap> {
34938        let ffi_result =
34939            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMap_QTextureCubeMap1() };
34940        ::qt_core::QBox::from_raw(ffi_result)
34941    }
34942
34943    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTextureCubeMap::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
34944    #[inline(always)]
34945    pub unsafe fn qt_metacall(
34946        &self,
34947        arg1: ::qt_core::q_meta_object::Call,
34948        arg2: ::std::os::raw::c_int,
34949        arg3: *mut *mut ::std::ffi::c_void,
34950    ) -> ::std::os::raw::c_int {
34951        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMap_qt_metacall(
34952            self as *const crate::QTextureCubeMap as *mut crate::QTextureCubeMap,
34953            arg1,
34954            arg2,
34955            arg3,
34956        )
34957    }
34958
34959    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTextureCubeMap::qt_metacast(const char* arg1)```</span>.
34960    #[inline(always)]
34961    pub unsafe fn qt_metacast(
34962        &self,
34963        arg1: *const ::std::os::raw::c_char,
34964    ) -> *mut ::std::ffi::c_void {
34965        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMap_qt_metacast(
34966            self as *const crate::QTextureCubeMap as *mut crate::QTextureCubeMap,
34967            arg1,
34968        )
34969    }
34970
34971    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
34972    #[inline(always)]
34973    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
34974        let ffi_result =
34975            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMap_staticMetaObject() };
34976        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
34977            .expect("attempted to construct a null Ref")
34978    }
34979
34980    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureCubeMap::tr(const char* s, const char* c, int n)```</span>.
34981    #[inline(always)]
34982    pub unsafe fn tr(
34983        s: *const ::std::os::raw::c_char,
34984        c: *const ::std::os::raw::c_char,
34985        n: ::std::os::raw::c_int,
34986    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34987        let ffi_result =
34988            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMap_tr(s, c, n) };
34989        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
34990    }
34991
34992    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureCubeMap::trUtf8(const char* s, const char* c, int n)```</span>.
34993    #[inline(always)]
34994    pub unsafe fn tr_utf8(
34995        s: *const ::std::os::raw::c_char,
34996        c: *const ::std::os::raw::c_char,
34997        n: ::std::os::raw::c_int,
34998    ) -> ::cpp_core::CppBox<::qt_core::QString> {
34999        let ffi_result =
35000            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMap_trUtf8(s, c, n) };
35001        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35002    }
35003}
35004
35005/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMapArray</a> target format.</p>
35006///
35007/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureCubeMapArray```</span>.
35008///
35009/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMapArray</a> target format.</p></div>
35010#[repr(C)]
35011pub struct QTextureCubeMapArray {
35012    _unused: u8,
35013}
35014impl QTextureCubeMapArray {
35015    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTextureCubeMapArray::metaObject() const```</span>.
35016    #[inline(always)]
35017    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
35018        let ffi_result = {
35019            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMapArray_metaObject(
35020                self as *const crate::QTextureCubeMapArray,
35021            )
35022        };
35023        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35024    }
35025
35026    /// <p>Default constructs an instance of QTextureCubeMapArray.</p>
35027    ///
35028    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureCubeMapArray::QTextureCubeMapArray(Qt3DCore::QNode* parent = …)```</span>.
35029    ///
35030    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html#QTextureCubeMapArray">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTextureCubeMapArray.</p></div>
35031    #[inline(always)]
35032    pub unsafe fn new_1a(
35033        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
35034    ) -> ::qt_core::QBox<crate::QTextureCubeMapArray> {
35035        let ffi_result = {
35036            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMapArray_QTextureCubeMapArray(
35037                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
35038                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
35039            )
35040        };
35041        ::qt_core::QBox::from_raw(ffi_result)
35042    }
35043
35044    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMapArray</a> target format.</p>
35045    ///
35046    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureCubeMapArray::QTextureCubeMapArray()```</span>.
35047    ///
35048    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetCubeMapArray</a> target format.</p></div>
35049    #[inline(always)]
35050    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTextureCubeMapArray> {
35051        let ffi_result = {
35052            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMapArray_QTextureCubeMapArray1(
35053            )
35054        };
35055        ::qt_core::QBox::from_raw(ffi_result)
35056    }
35057
35058    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTextureCubeMapArray::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
35059    #[inline(always)]
35060    pub unsafe fn qt_metacall(
35061        &self,
35062        arg1: ::qt_core::q_meta_object::Call,
35063        arg2: ::std::os::raw::c_int,
35064        arg3: *mut *mut ::std::ffi::c_void,
35065    ) -> ::std::os::raw::c_int {
35066        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMapArray_qt_metacall(
35067            self as *const crate::QTextureCubeMapArray as *mut crate::QTextureCubeMapArray,
35068            arg1,
35069            arg2,
35070            arg3,
35071        )
35072    }
35073
35074    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTextureCubeMapArray::qt_metacast(const char* arg1)```</span>.
35075    #[inline(always)]
35076    pub unsafe fn qt_metacast(
35077        &self,
35078        arg1: *const ::std::os::raw::c_char,
35079    ) -> *mut ::std::ffi::c_void {
35080        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMapArray_qt_metacast(
35081            self as *const crate::QTextureCubeMapArray as *mut crate::QTextureCubeMapArray,
35082            arg1,
35083        )
35084    }
35085
35086    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
35087    #[inline(always)]
35088    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
35089        let ffi_result = {
35090            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMapArray_staticMetaObject()
35091        };
35092        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35093            .expect("attempted to construct a null Ref")
35094    }
35095
35096    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureCubeMapArray::tr(const char* s, const char* c, int n)```</span>.
35097    #[inline(always)]
35098    pub unsafe fn tr(
35099        s: *const ::std::os::raw::c_char,
35100        c: *const ::std::os::raw::c_char,
35101        n: ::std::os::raw::c_int,
35102    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35103        let ffi_result =
35104            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMapArray_tr(s, c, n) };
35105        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35106    }
35107
35108    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureCubeMapArray::trUtf8(const char* s, const char* c, int n)```</span>.
35109    #[inline(always)]
35110    pub unsafe fn tr_utf8(
35111        s: *const ::std::os::raw::c_char,
35112        c: *const ::std::os::raw::c_char,
35113        n: ::std::os::raw::c_int,
35114    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35115        let ffi_result =
35116            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMapArray_trUtf8(s, c, n) };
35117        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35118    }
35119}
35120
35121/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DMultisample</a> target format.</p>
35122///
35123/// C++ class: <span style='color: green;'>```Qt3DRender::QTexture2DMultisample```</span>.
35124///
35125/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisample.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DMultisample</a> target format.</p></div>
35126#[repr(C)]
35127pub struct QTexture2DMultisample {
35128    _unused: u8,
35129}
35130impl QTexture2DMultisample {
35131    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTexture2DMultisample::metaObject() const```</span>.
35132    #[inline(always)]
35133    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
35134        let ffi_result = {
35135            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisample_metaObject(
35136                self as *const crate::QTexture2DMultisample,
35137            )
35138        };
35139        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35140    }
35141
35142    /// <p>Default constructs an instance of QTexture2DMultisample.</p>
35143    ///
35144    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture2DMultisample::QTexture2DMultisample(Qt3DCore::QNode* parent = …)```</span>.
35145    ///
35146    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisample.html#QTexture2DMultisample">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTexture2DMultisample.</p></div>
35147    #[inline(always)]
35148    pub unsafe fn new_1a(
35149        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
35150    ) -> ::qt_core::QBox<crate::QTexture2DMultisample> {
35151        let ffi_result = {
35152            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisample_QTexture2DMultisample(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent).as_raw_ptr() as *mut ::qt_3d_core::QNode)
35153        };
35154        ::qt_core::QBox::from_raw(ffi_result)
35155    }
35156
35157    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DMultisample</a> target format.</p>
35158    ///
35159    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture2DMultisample::QTexture2DMultisample()```</span>.
35160    ///
35161    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisample.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DMultisample</a> target format.</p></div>
35162    #[inline(always)]
35163    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTexture2DMultisample> {
35164        let ffi_result = {
35165            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisample_QTexture2DMultisample1()
35166        };
35167        ::qt_core::QBox::from_raw(ffi_result)
35168    }
35169
35170    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTexture2DMultisample::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
35171    #[inline(always)]
35172    pub unsafe fn qt_metacall(
35173        &self,
35174        arg1: ::qt_core::q_meta_object::Call,
35175        arg2: ::std::os::raw::c_int,
35176        arg3: *mut *mut ::std::ffi::c_void,
35177    ) -> ::std::os::raw::c_int {
35178        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisample_qt_metacall(
35179            self as *const crate::QTexture2DMultisample as *mut crate::QTexture2DMultisample,
35180            arg1,
35181            arg2,
35182            arg3,
35183        )
35184    }
35185
35186    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTexture2DMultisample::qt_metacast(const char* arg1)```</span>.
35187    #[inline(always)]
35188    pub unsafe fn qt_metacast(
35189        &self,
35190        arg1: *const ::std::os::raw::c_char,
35191    ) -> *mut ::std::ffi::c_void {
35192        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisample_qt_metacast(
35193            self as *const crate::QTexture2DMultisample as *mut crate::QTexture2DMultisample,
35194            arg1,
35195        )
35196    }
35197
35198    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
35199    #[inline(always)]
35200    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
35201        let ffi_result = {
35202            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisample_staticMetaObject()
35203        };
35204        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35205            .expect("attempted to construct a null Ref")
35206    }
35207
35208    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture2DMultisample::tr(const char* s, const char* c, int n)```</span>.
35209    #[inline(always)]
35210    pub unsafe fn tr(
35211        s: *const ::std::os::raw::c_char,
35212        c: *const ::std::os::raw::c_char,
35213        n: ::std::os::raw::c_int,
35214    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35215        let ffi_result =
35216            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisample_tr(s, c, n) };
35217        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35218    }
35219
35220    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture2DMultisample::trUtf8(const char* s, const char* c, int n)```</span>.
35221    #[inline(always)]
35222    pub unsafe fn tr_utf8(
35223        s: *const ::std::os::raw::c_char,
35224        c: *const ::std::os::raw::c_char,
35225        n: ::std::os::raw::c_int,
35226    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35227        let ffi_result =
35228            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisample_trUtf8(s, c, n) };
35229        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35230    }
35231}
35232
35233/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DMultisampleArray</a> target format.</p>
35234///
35235/// C++ class: <span style='color: green;'>```Qt3DRender::QTexture2DMultisampleArray```</span>.
35236///
35237/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisamplearray.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DMultisampleArray</a> target format.</p></div>
35238#[repr(C)]
35239pub struct QTexture2DMultisampleArray {
35240    _unused: u8,
35241}
35242impl QTexture2DMultisampleArray {
35243    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTexture2DMultisampleArray::metaObject() const```</span>.
35244    #[inline(always)]
35245    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
35246        let ffi_result = {
35247            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisampleArray_metaObject(
35248                self as *const crate::QTexture2DMultisampleArray,
35249            )
35250        };
35251        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35252    }
35253
35254    /// <p>Default constructs an instance of QTexture2DMultisampleArray.</p>
35255    ///
35256    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture2DMultisampleArray::QTexture2DMultisampleArray(Qt3DCore::QNode* parent = …)```</span>.
35257    ///
35258    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisamplearray.html#QTexture2DMultisampleArray">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTexture2DMultisampleArray.</p></div>
35259    #[inline(always)]
35260    pub unsafe fn new_1a(
35261        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
35262    ) -> ::qt_core::QBox<crate::QTexture2DMultisampleArray> {
35263        let ffi_result = {
35264            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisampleArray_QTexture2DMultisampleArray(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent).as_raw_ptr() as *mut ::qt_3d_core::QNode)
35265        };
35266        ::qt_core::QBox::from_raw(ffi_result)
35267    }
35268
35269    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DMultisampleArray</a> target format.</p>
35270    ///
35271    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTexture2DMultisampleArray::QTexture2DMultisampleArray()```</span>.
35272    ///
35273    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisamplearray.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">Target2DMultisampleArray</a> target format.</p></div>
35274    #[inline(always)]
35275    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTexture2DMultisampleArray> {
35276        let ffi_result = {
35277            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisampleArray_QTexture2DMultisampleArray1()
35278        };
35279        ::qt_core::QBox::from_raw(ffi_result)
35280    }
35281
35282    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTexture2DMultisampleArray::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
35283    #[inline(always)]
35284    pub unsafe fn qt_metacall(
35285        &self,
35286        arg1: ::qt_core::q_meta_object::Call,
35287        arg2: ::std::os::raw::c_int,
35288        arg3: *mut *mut ::std::ffi::c_void,
35289    ) -> ::std::os::raw::c_int {
35290        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisampleArray_qt_metacall(
35291            self as *const crate::QTexture2DMultisampleArray
35292                as *mut crate::QTexture2DMultisampleArray,
35293            arg1,
35294            arg2,
35295            arg3,
35296        )
35297    }
35298
35299    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTexture2DMultisampleArray::qt_metacast(const char* arg1)```</span>.
35300    #[inline(always)]
35301    pub unsafe fn qt_metacast(
35302        &self,
35303        arg1: *const ::std::os::raw::c_char,
35304    ) -> *mut ::std::ffi::c_void {
35305        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisampleArray_qt_metacast(
35306            self as *const crate::QTexture2DMultisampleArray
35307                as *mut crate::QTexture2DMultisampleArray,
35308            arg1,
35309        )
35310    }
35311
35312    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
35313    #[inline(always)]
35314    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
35315        let ffi_result = {
35316            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisampleArray_staticMetaObject()
35317        };
35318        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35319            .expect("attempted to construct a null Ref")
35320    }
35321
35322    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture2DMultisampleArray::tr(const char* s, const char* c, int n)```</span>.
35323    #[inline(always)]
35324    pub unsafe fn tr(
35325        s: *const ::std::os::raw::c_char,
35326        c: *const ::std::os::raw::c_char,
35327        n: ::std::os::raw::c_int,
35328    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35329        let ffi_result = {
35330            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisampleArray_tr(s, c, n)
35331        };
35332        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35333    }
35334
35335    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTexture2DMultisampleArray::trUtf8(const char* s, const char* c, int n)```</span>.
35336    #[inline(always)]
35337    pub unsafe fn tr_utf8(
35338        s: *const ::std::os::raw::c_char,
35339        c: *const ::std::os::raw::c_char,
35340        n: ::std::os::raw::c_int,
35341    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35342        let ffi_result = {
35343            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisampleArray_trUtf8(s, c, n)
35344        };
35345        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35346    }
35347}
35348
35349/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetRectangle</a> target format.</p>
35350///
35351/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureRectangle```</span>.
35352///
35353/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturerectangle.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetRectangle</a> target format.</p></div>
35354#[repr(C)]
35355pub struct QTextureRectangle {
35356    _unused: u8,
35357}
35358impl QTextureRectangle {
35359    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTextureRectangle::metaObject() const```</span>.
35360    #[inline(always)]
35361    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
35362        let ffi_result = {
35363            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureRectangle_metaObject(
35364                self as *const crate::QTextureRectangle,
35365            )
35366        };
35367        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35368    }
35369
35370    /// <p>Default constructs an instance of QTextureRectangle.</p>
35371    ///
35372    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureRectangle::QTextureRectangle(Qt3DCore::QNode* parent = …)```</span>.
35373    ///
35374    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturerectangle.html#QTextureRectangle">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTextureRectangle.</p></div>
35375    #[inline(always)]
35376    pub unsafe fn new_1a(
35377        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
35378    ) -> ::qt_core::QBox<crate::QTextureRectangle> {
35379        let ffi_result = {
35380            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureRectangle_QTextureRectangle(
35381                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
35382                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
35383            )
35384        };
35385        ::qt_core::QBox::from_raw(ffi_result)
35386    }
35387
35388    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetRectangle</a> target format.</p>
35389    ///
35390    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureRectangle::QTextureRectangle()```</span>.
35391    ///
35392    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturerectangle.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetRectangle</a> target format.</p></div>
35393    #[inline(always)]
35394    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTextureRectangle> {
35395        let ffi_result = {
35396            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureRectangle_QTextureRectangle1()
35397        };
35398        ::qt_core::QBox::from_raw(ffi_result)
35399    }
35400
35401    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTextureRectangle::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
35402    #[inline(always)]
35403    pub unsafe fn qt_metacall(
35404        &self,
35405        arg1: ::qt_core::q_meta_object::Call,
35406        arg2: ::std::os::raw::c_int,
35407        arg3: *mut *mut ::std::ffi::c_void,
35408    ) -> ::std::os::raw::c_int {
35409        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureRectangle_qt_metacall(
35410            self as *const crate::QTextureRectangle as *mut crate::QTextureRectangle,
35411            arg1,
35412            arg2,
35413            arg3,
35414        )
35415    }
35416
35417    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTextureRectangle::qt_metacast(const char* arg1)```</span>.
35418    #[inline(always)]
35419    pub unsafe fn qt_metacast(
35420        &self,
35421        arg1: *const ::std::os::raw::c_char,
35422    ) -> *mut ::std::ffi::c_void {
35423        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureRectangle_qt_metacast(
35424            self as *const crate::QTextureRectangle as *mut crate::QTextureRectangle,
35425            arg1,
35426        )
35427    }
35428
35429    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
35430    #[inline(always)]
35431    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
35432        let ffi_result =
35433            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureRectangle_staticMetaObject() };
35434        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35435            .expect("attempted to construct a null Ref")
35436    }
35437
35438    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureRectangle::tr(const char* s, const char* c, int n)```</span>.
35439    #[inline(always)]
35440    pub unsafe fn tr(
35441        s: *const ::std::os::raw::c_char,
35442        c: *const ::std::os::raw::c_char,
35443        n: ::std::os::raw::c_int,
35444    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35445        let ffi_result =
35446            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureRectangle_tr(s, c, n) };
35447        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35448    }
35449
35450    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureRectangle::trUtf8(const char* s, const char* c, int n)```</span>.
35451    #[inline(always)]
35452    pub unsafe fn tr_utf8(
35453        s: *const ::std::os::raw::c_char,
35454        c: *const ::std::os::raw::c_char,
35455        n: ::std::os::raw::c_int,
35456    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35457        let ffi_result =
35458            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureRectangle_trUtf8(s, c, n) };
35459        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35460    }
35461}
35462
35463/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetBuffer</a> target format.</p>
35464///
35465/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureBuffer```</span>.
35466///
35467/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetBuffer</a> target format.</p></div>
35468#[repr(C)]
35469pub struct QTextureBuffer {
35470    _unused: u8,
35471}
35472impl QTextureBuffer {
35473    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTextureBuffer::metaObject() const```</span>.
35474    #[inline(always)]
35475    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
35476        let ffi_result = {
35477            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureBuffer_metaObject(
35478                self as *const crate::QTextureBuffer,
35479            )
35480        };
35481        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35482    }
35483
35484    /// <p>Default constructs an instance of QTextureBuffer.</p>
35485    ///
35486    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureBuffer::QTextureBuffer(Qt3DCore::QNode* parent = …)```</span>.
35487    ///
35488    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html#QTextureBuffer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTextureBuffer.</p></div>
35489    #[inline(always)]
35490    pub unsafe fn new_1a(
35491        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
35492    ) -> ::qt_core::QBox<crate::QTextureBuffer> {
35493        let ffi_result = {
35494            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureBuffer_QTextureBuffer(
35495                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
35496                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
35497            )
35498        };
35499        ::qt_core::QBox::from_raw(ffi_result)
35500    }
35501
35502    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetBuffer</a> target format.</p>
35503    ///
35504    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureBuffer::QTextureBuffer()```</span>.
35505    ///
35506    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">QAbstractTexture</a> with a <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html#Target-enum">TargetBuffer</a> target format.</p></div>
35507    #[inline(always)]
35508    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTextureBuffer> {
35509        let ffi_result =
35510            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureBuffer_QTextureBuffer1() };
35511        ::qt_core::QBox::from_raw(ffi_result)
35512    }
35513
35514    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTextureBuffer::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
35515    #[inline(always)]
35516    pub unsafe fn qt_metacall(
35517        &self,
35518        arg1: ::qt_core::q_meta_object::Call,
35519        arg2: ::std::os::raw::c_int,
35520        arg3: *mut *mut ::std::ffi::c_void,
35521    ) -> ::std::os::raw::c_int {
35522        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureBuffer_qt_metacall(
35523            self as *const crate::QTextureBuffer as *mut crate::QTextureBuffer,
35524            arg1,
35525            arg2,
35526            arg3,
35527        )
35528    }
35529
35530    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTextureBuffer::qt_metacast(const char* arg1)```</span>.
35531    #[inline(always)]
35532    pub unsafe fn qt_metacast(
35533        &self,
35534        arg1: *const ::std::os::raw::c_char,
35535    ) -> *mut ::std::ffi::c_void {
35536        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureBuffer_qt_metacast(
35537            self as *const crate::QTextureBuffer as *mut crate::QTextureBuffer,
35538            arg1,
35539        )
35540    }
35541
35542    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
35543    #[inline(always)]
35544    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
35545        let ffi_result =
35546            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureBuffer_staticMetaObject() };
35547        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35548            .expect("attempted to construct a null Ref")
35549    }
35550
35551    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureBuffer::tr(const char* s, const char* c, int n)```</span>.
35552    #[inline(always)]
35553    pub unsafe fn tr(
35554        s: *const ::std::os::raw::c_char,
35555        c: *const ::std::os::raw::c_char,
35556        n: ::std::os::raw::c_int,
35557    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35558        let ffi_result =
35559            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureBuffer_tr(s, c, n) };
35560        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35561    }
35562
35563    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureBuffer::trUtf8(const char* s, const char* c, int n)```</span>.
35564    #[inline(always)]
35565    pub unsafe fn tr_utf8(
35566        s: *const ::std::os::raw::c_char,
35567        c: *const ::std::os::raw::c_char,
35568        n: ::std::os::raw::c_int,
35569    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35570        let ffi_result =
35571            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureBuffer_trUtf8(s, c, n) };
35572        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35573    }
35574}
35575
35576/// <p>Handles the texture loading and setting the texture's properties.</p>
35577///
35578/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureLoader```</span>.
35579///
35580/// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Handles the texture loading and setting the texture's properties.</p></div>
35581#[repr(C)]
35582pub struct QTextureLoader {
35583    _unused: u8,
35584}
35585impl QTextureLoader {
35586    /// <p>Sets the texture loader source to <i>source</i>. <i>source</i></p>
35587    ///
35588    /// Returns a built-in Qt slot `Qt3DRender::QTextureLoader::setSource` that can be passed to `qt_core::Signal::connect`.
35589    ///
35590    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#setSource">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the texture loader source to <i>source</i>. <i>source</i></p>
35591    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#source-prop">source</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#source-prop">source</a>().</p></div>
35592    #[inline(always)]
35593    pub fn slot_set_source(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
35594        unsafe {
35595            ::qt_core::Receiver::new(
35596                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
35597                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSource(QUrl const &)\0"),
35598            )
35599        }
35600    }
35601
35602    /// <p>Sets mirroring to <i>mirrored</i>.</p>
35603    ///
35604    /// Returns a built-in Qt slot `Qt3DRender::QTextureLoader::setMirrored` that can be passed to `qt_core::Signal::connect`.
35605    ///
35606    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#setMirrored">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets mirroring to <i>mirrored</i>.</p>
35607    /// <p><b>Note: </b>This internally triggers a call to update the data generator.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#mirrored-prop">mirrored</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#mirrored-prop">isMirrored</a>().</p></div>
35608    #[inline(always)]
35609    pub fn slot_set_mirrored(&self) -> ::qt_core::Receiver<(bool,)> {
35610        unsafe {
35611            ::qt_core::Receiver::new(
35612                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
35613                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setMirrored(bool)\0"),
35614            )
35615        }
35616    }
35617
35618    /// <p>Returns the current texture source.</p>
35619    ///
35620    /// Returns a built-in Qt signal `Qt3DRender::QTextureLoader::sourceChanged` that can be passed to `qt_core::Signal::connect`.
35621    ///
35622    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current texture source.</p>
35623    /// <p><b>Access functions:</b></p>
35624    /// <div class="table"><table class="alignedsummary">
35625    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
35626    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#setSource">setSource</a></b></span>(const QUrl &amp;<i>source</i>)</td></tr>
35627    /// </tbody></table></div>
35628    /// <p><b>Notifier signal:</b></p>
35629    /// <div class="table"><table class="alignedsummary">
35630    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
35631    /// </tbody></table></div></div>
35632    #[inline(always)]
35633    pub fn source_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
35634        unsafe {
35635            ::qt_core::Signal::new(
35636                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
35637                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2sourceChanged(QUrl const &)\0"),
35638            )
35639        }
35640    }
35641
35642    /// <p>This property specifies whether the texture should be mirrored when loaded. This is a convenience to avoid having to manipulate images to match the origin of the texture coordinates used by the rendering API. By default this property is set to true. This has no effect when using compressed texture formats.</p>
35643    ///
35644    /// Returns a built-in Qt signal `Qt3DRender::QTextureLoader::mirroredChanged` that can be passed to `qt_core::Signal::connect`.
35645    ///
35646    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#mirrored-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property specifies whether the texture should be mirrored when loaded. This is a convenience to avoid having to manipulate images to match the origin of the texture coordinates used by the rendering API. By default this property is set to true. This has no effect when using compressed texture formats.</p>
35647    /// <p><b>Note: </b>OpenGL specifies the origin of texture coordinates from the lower left hand corner whereas DirectX uses the the upper left hand corner.</p><p><b>Note: </b>When using cube map texture you'll probably want mirroring disabled as the cube map sampler takes a direction rather than regular texture coordinates.</p><p><b>Access functions:</b></p>
35648    /// <div class="table"><table class="alignedsummary">
35649    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isMirrored</b></span>() const</td></tr>
35650    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#setMirrored">setMirrored</a></b></span>(bool <i>mirrored</i>)</td></tr>
35651    /// </tbody></table></div>
35652    /// <p><b>Notifier signal:</b></p>
35653    /// <div class="table"><table class="alignedsummary">
35654    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mirroredChanged</b></span>(bool <i>mirrored</i>)</td></tr>
35655    /// </tbody></table></div></div>
35656    #[inline(always)]
35657    pub fn mirrored_changed(&self) -> ::qt_core::Signal<(bool,)> {
35658        unsafe {
35659            ::qt_core::Signal::new(
35660                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
35661                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2mirroredChanged(bool)\0"),
35662            )
35663        }
35664    }
35665
35666    /// <p>This property specifies whether the texture should be mirrored when loaded. This is a convenience to avoid having to manipulate images to match the origin of the texture coordinates used by the rendering API. By default this property is set to true. This has no effect when using compressed texture formats.</p>
35667    ///
35668    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QTextureLoader::isMirrored() const```</span>.
35669    ///
35670    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#mirrored-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property specifies whether the texture should be mirrored when loaded. This is a convenience to avoid having to manipulate images to match the origin of the texture coordinates used by the rendering API. By default this property is set to true. This has no effect when using compressed texture formats.</p>
35671    /// <p><b>Note: </b>OpenGL specifies the origin of texture coordinates from the lower left hand corner whereas DirectX uses the the upper left hand corner.</p><p><b>Note: </b>When using cube map texture you'll probably want mirroring disabled as the cube map sampler takes a direction rather than regular texture coordinates.</p><p><b>Access functions:</b></p>
35672    /// <div class="table"><table class="alignedsummary">
35673    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>isMirrored</b></span>() const</td></tr>
35674    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#setMirrored">setMirrored</a></b></span>(bool <i>mirrored</i>)</td></tr>
35675    /// </tbody></table></div>
35676    /// <p><b>Notifier signal:</b></p>
35677    /// <div class="table"><table class="alignedsummary">
35678    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mirroredChanged</b></span>(bool <i>mirrored</i>)</td></tr>
35679    /// </tbody></table></div></div>
35680    #[inline(always)]
35681    pub unsafe fn is_mirrored(&self) -> bool {
35682        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_isMirrored(
35683            self as *const crate::QTextureLoader,
35684        )
35685    }
35686
35687    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QTextureLoader::metaObject() const```</span>.
35688    #[inline(always)]
35689    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
35690        let ffi_result = {
35691            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_metaObject(
35692                self as *const crate::QTextureLoader,
35693            )
35694        };
35695        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35696    }
35697
35698    /// <p>Default constructs an instance of QTextureLoader.</p>
35699    ///
35700    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureLoader::QTextureLoader(Qt3DCore::QNode* parent = …)```</span>.
35701    ///
35702    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#QTextureLoader">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QTextureLoader.</p></div>
35703    #[inline(always)]
35704    pub unsafe fn new_1a(
35705        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
35706    ) -> ::qt_core::QBox<crate::QTextureLoader> {
35707        let ffi_result = {
35708            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_QTextureLoader(
35709                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
35710                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
35711            )
35712        };
35713        ::qt_core::QBox::from_raw(ffi_result)
35714    }
35715
35716    /// <p>Handles the texture loading and setting the texture's properties.</p>
35717    ///
35718    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureLoader::QTextureLoader()```</span>.
35719    ///
35720    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Handles the texture loading and setting the texture's properties.</p></div>
35721    #[inline(always)]
35722    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QTextureLoader> {
35723        let ffi_result =
35724            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_QTextureLoader1() };
35725        ::qt_core::QBox::from_raw(ffi_result)
35726    }
35727
35728    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QTextureLoader::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
35729    #[inline(always)]
35730    pub unsafe fn qt_metacall(
35731        &self,
35732        arg1: ::qt_core::q_meta_object::Call,
35733        arg2: ::std::os::raw::c_int,
35734        arg3: *mut *mut ::std::ffi::c_void,
35735    ) -> ::std::os::raw::c_int {
35736        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_qt_metacall(
35737            self as *const crate::QTextureLoader as *mut crate::QTextureLoader,
35738            arg1,
35739            arg2,
35740            arg3,
35741        )
35742    }
35743
35744    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QTextureLoader::qt_metacast(const char* arg1)```</span>.
35745    #[inline(always)]
35746    pub unsafe fn qt_metacast(
35747        &self,
35748        arg1: *const ::std::os::raw::c_char,
35749    ) -> *mut ::std::ffi::c_void {
35750        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_qt_metacast(
35751            self as *const crate::QTextureLoader as *mut crate::QTextureLoader,
35752            arg1,
35753        )
35754    }
35755
35756    /// <p>Sets mirroring to <i>mirrored</i>.</p>
35757    ///
35758    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QTextureLoader::setMirrored(bool mirrored)```</span>.
35759    ///
35760    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#setMirrored">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets mirroring to <i>mirrored</i>.</p>
35761    /// <p><b>Note: </b>This internally triggers a call to update the data generator.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#mirrored-prop">mirrored</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#mirrored-prop">isMirrored</a>().</p></div>
35762    #[inline(always)]
35763    pub unsafe fn set_mirrored(&self, mirrored: bool) {
35764        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_setMirrored(
35765            self as *const crate::QTextureLoader as *mut crate::QTextureLoader,
35766            mirrored,
35767        )
35768    }
35769
35770    /// <p>Sets the texture loader source to <i>source</i>. <i>source</i></p>
35771    ///
35772    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QTextureLoader::setSource(const QUrl& source)```</span>.
35773    ///
35774    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#setSource">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the texture loader source to <i>source</i>. <i>source</i></p>
35775    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#source-prop">source</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#source-prop">source</a>().</p></div>
35776    #[inline(always)]
35777    pub unsafe fn set_source(
35778        &self,
35779        source: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
35780    ) {
35781        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_setSource(
35782            self as *const crate::QTextureLoader as *mut crate::QTextureLoader,
35783            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(source)
35784                .as_raw_ptr(),
35785        )
35786    }
35787
35788    /// <p>Returns the current texture source.</p>
35789    ///
35790    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QTextureLoader::source() const```</span>.
35791    ///
35792    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current texture source.</p>
35793    /// <p><b>Access functions:</b></p>
35794    /// <div class="table"><table class="alignedsummary">
35795    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>source</b></span>() const</td></tr>
35796    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qtextureloader.html#setSource">setSource</a></b></span>(const QUrl &amp;<i>source</i>)</td></tr>
35797    /// </tbody></table></div>
35798    /// <p><b>Notifier signal:</b></p>
35799    /// <div class="table"><table class="alignedsummary">
35800    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>(const QUrl &amp;<i>source</i>)</td></tr>
35801    /// </tbody></table></div></div>
35802    #[inline(always)]
35803    pub unsafe fn source(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
35804        let ffi_result = {
35805            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_source(
35806                self as *const crate::QTextureLoader,
35807            )
35808        };
35809        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35810    }
35811
35812    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
35813    #[inline(always)]
35814    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
35815        let ffi_result =
35816            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_staticMetaObject() };
35817        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
35818            .expect("attempted to construct a null Ref")
35819    }
35820
35821    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureLoader::tr(const char* s, const char* c, int n)```</span>.
35822    #[inline(always)]
35823    pub unsafe fn tr(
35824        s: *const ::std::os::raw::c_char,
35825        c: *const ::std::os::raw::c_char,
35826        n: ::std::os::raw::c_int,
35827    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35828        let ffi_result =
35829            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_tr(s, c, n) };
35830        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35831    }
35832
35833    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QTextureLoader::trUtf8(const char* s, const char* c, int n)```</span>.
35834    #[inline(always)]
35835    pub unsafe fn tr_utf8(
35836        s: *const ::std::os::raw::c_char,
35837        c: *const ::std::os::raw::c_char,
35838        n: ::std::os::raw::c_int,
35839    ) -> ::cpp_core::CppBox<::qt_core::QString> {
35840        let ffi_result =
35841            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_trUtf8(s, c, n) };
35842        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
35843    }
35844}
35845
35846/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">QTextureData</a> class stores texture information such as the target, height, width, depth, layers, wrap, and if mipmaps are enabled.</p>
35847///
35848/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureData```</span>.
35849///
35850/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">QTextureData</a> class stores texture information such as the target, height, width, depth, layers, wrap, and if mipmaps are enabled.</p></div>
35851#[repr(C)]
35852pub struct QTextureData {
35853    _unused: u8,
35854}
35855impl QTextureData {
35856    /// <p>Returns the current comparison function.</p>
35857    ///
35858    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonFunction Qt3DRender::QTextureData::comparisonFunction() const```</span>.
35859    ///
35860    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#comparisonFunction">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current comparison function.</p>
35861    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setComparisonFunction">setComparisonFunction</a>().</p></div>
35862    #[inline(always)]
35863    pub unsafe fn comparison_function(&self) -> crate::q_abstract_texture::ComparisonFunction {
35864        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_comparisonFunction(
35865            self as *const crate::QTextureData,
35866        )
35867    }
35868
35869    /// <p>Returns the current comparison mode.</p>
35870    ///
35871    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonMode Qt3DRender::QTextureData::comparisonMode() const```</span>.
35872    ///
35873    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#comparisonMode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current comparison mode.</p>
35874    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setComparisonMode">setComparisonMode</a>().</p></div>
35875    #[inline(always)]
35876    pub unsafe fn comparison_mode(&self) -> crate::q_abstract_texture::ComparisonMode {
35877        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_comparisonMode(
35878            self as *const crate::QTextureData,
35879        )
35880    }
35881
35882    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">QTextureData</a> class stores texture information such as the target, height, width, depth, layers, wrap, and if mipmaps are enabled.</p>
35883    ///
35884    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureData& Qt3DRender::QTextureData::operator=(const Qt3DRender::QTextureData& other)```</span>.
35885    ///
35886    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">QTextureData</a> class stores texture information such as the target, height, width, depth, layers, wrap, and if mipmaps are enabled.</p></div>
35887    #[inline(always)]
35888    pub unsafe fn copy_from(
35889        &self,
35890        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureData>>,
35891    ) -> ::cpp_core::Ref<crate::QTextureData> {
35892        let ffi_result = {
35893            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_operator_(
35894                self as *const crate::QTextureData as *mut crate::QTextureData,
35895                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureData>>::cast_into(other)
35896                    .as_raw_ptr(),
35897            )
35898        };
35899        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
35900    }
35901
35902    /// <p>Returns the texture depth.</p>
35903    ///
35904    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureData::depth() const```</span>.
35905    ///
35906    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#depth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the texture depth.</p>
35907    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setDepth">setDepth</a>().</p></div>
35908    #[inline(always)]
35909    pub unsafe fn depth(&self) -> ::std::os::raw::c_int {
35910        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_depth(
35911            self as *const crate::QTextureData,
35912        )
35913    }
35914
35915    /// <p>Returns the texture format</p>
35916    ///
35917    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::TextureFormat Qt3DRender::QTextureData::format() const```</span>.
35918    ///
35919    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#format">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the texture format</p>
35920    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setFormat">setFormat</a>().</p></div>
35921    #[inline(always)]
35922    pub unsafe fn format(&self) -> crate::q_abstract_texture::TextureFormat {
35923        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_format(
35924            self as *const crate::QTextureData,
35925        )
35926    }
35927
35928    /// <p>Returns the texture height.</p>
35929    ///
35930    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureData::height() const```</span>.
35931    ///
35932    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#height">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the texture height.</p>
35933    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setHeight">setHeight</a>().</p></div>
35934    #[inline(always)]
35935    pub unsafe fn height(&self) -> ::std::os::raw::c_int {
35936        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_height(
35937            self as *const crate::QTextureData,
35938        )
35939    }
35940
35941    /// <p>Returns whether the texture has auto mipmap generation enabled.</p>
35942    ///
35943    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QTextureData::isAutoMipMapGenerationEnabled() const```</span>.
35944    ///
35945    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#isAutoMipMapGenerationEnabled">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns whether the texture has auto mipmap generation enabled.</p></div>
35946    #[inline(always)]
35947    pub unsafe fn is_auto_mip_map_generation_enabled(&self) -> bool {
35948        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_isAutoMipMapGenerationEnabled(
35949            self as *const crate::QTextureData,
35950        )
35951    }
35952
35953    /// <p>Returns the texture layers.</p>
35954    ///
35955    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureData::layers() const```</span>.
35956    ///
35957    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#layers">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the texture layers.</p>
35958    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setLayers">setLayers</a>().</p></div>
35959    #[inline(always)]
35960    pub unsafe fn layers(&self) -> ::std::os::raw::c_int {
35961        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_layers(
35962            self as *const crate::QTextureData,
35963        )
35964    }
35965
35966    /// <p>Returns the current magnification filter.</p>
35967    ///
35968    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Filter Qt3DRender::QTextureData::magnificationFilter() const```</span>.
35969    ///
35970    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#magnificationFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current magnification filter.</p>
35971    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setMagnificationFilter">setMagnificationFilter</a>().</p></div>
35972    #[inline(always)]
35973    pub unsafe fn magnification_filter(&self) -> crate::q_abstract_texture::Filter {
35974        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_magnificationFilter(
35975            self as *const crate::QTextureData,
35976        )
35977    }
35978
35979    /// <p>Returns the current maximum anisotropy.</p>
35980    ///
35981    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QTextureData::maximumAnisotropy() const```</span>.
35982    ///
35983    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#maximumAnisotropy">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current maximum anisotropy.</p>
35984    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setMaximumAnisotropy">setMaximumAnisotropy</a>().</p></div>
35985    #[inline(always)]
35986    pub unsafe fn maximum_anisotropy(&self) -> ::std::os::raw::c_float {
35987        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_maximumAnisotropy(
35988            self as *const crate::QTextureData,
35989        )
35990    }
35991
35992    /// <p>Returns the current minification filter.</p>
35993    ///
35994    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Filter Qt3DRender::QTextureData::minificationFilter() const```</span>.
35995    ///
35996    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#minificationFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current minification filter.</p>
35997    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setMinificationFilter">setMinificationFilter</a>().</p></div>
35998    #[inline(always)]
35999    pub unsafe fn minification_filter(&self) -> crate::q_abstract_texture::Filter {
36000        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_minificationFilter(
36001            self as *const crate::QTextureData,
36002        )
36003    }
36004
36005    /// <p>Creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">QTextureData</a> instance.</p>
36006    ///
36007    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureData::QTextureData()```</span>.
36008    ///
36009    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#QTextureData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Creates a new <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">QTextureData</a> instance.</p></div>
36010    #[inline(always)]
36011    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QTextureData> {
36012        let ffi_result =
36013            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_QTextureData() };
36014        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
36015    }
36016
36017    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">QTextureData</a> class stores texture information such as the target, height, width, depth, layers, wrap, and if mipmaps are enabled.</p>
36018    ///
36019    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureData::QTextureData(const Qt3DRender::QTextureData& other)```</span>.
36020    ///
36021    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html">QTextureData</a> class stores texture information such as the target, height, width, depth, layers, wrap, and if mipmaps are enabled.</p></div>
36022    #[inline(always)]
36023    pub unsafe fn new_copy(
36024        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureData>>,
36025    ) -> ::cpp_core::CppBox<crate::QTextureData> {
36026        let ffi_result = {
36027            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_QTextureData1(
36028                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureData>>::cast_into(other)
36029                    .as_raw_ptr(),
36030            )
36031        };
36032        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
36033    }
36034
36035    /// <p>Sets whether the texture has automatic mipmap generation enabled, to <i>autoMipMap</i>.</p>
36036    ///
36037    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setAutoMipMapGenerationEnabled(bool isAutoMipMapGenerationEnabled)```</span>.
36038    ///
36039    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setAutoMipMapGenerationEnabled">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets whether the texture has automatic mipmap generation enabled, to <i>autoMipMap</i>.</p>
36040    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#isAutoMipMapGenerationEnabled">isAutoMipMapGenerationEnabled</a>().</p></div>
36041    #[inline(always)]
36042    pub unsafe fn set_auto_mip_map_generation_enabled(
36043        &self,
36044        is_auto_mip_map_generation_enabled: bool,
36045    ) {
36046        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setAutoMipMapGenerationEnabled(
36047            self as *const crate::QTextureData as *mut crate::QTextureData,
36048            is_auto_mip_map_generation_enabled,
36049        )
36050    }
36051
36052    /// <p>Sets the comparison function to <i>comparisonFunction</i>.</p>
36053    ///
36054    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setComparisonFunction(Qt3DRender::QAbstractTexture::ComparisonFunction comparisonFunction)```</span>.
36055    ///
36056    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setComparisonFunction">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the comparison function to <i>comparisonFunction</i>.</p>
36057    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#comparisonFunction">comparisonFunction</a>().</p></div>
36058    #[inline(always)]
36059    pub unsafe fn set_comparison_function(
36060        &self,
36061        comparison_function: crate::q_abstract_texture::ComparisonFunction,
36062    ) {
36063        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setComparisonFunction(
36064            self as *const crate::QTextureData as *mut crate::QTextureData,
36065            comparison_function,
36066        )
36067    }
36068
36069    /// <p>Sets the comparison mode to <i>comparisonMode</i>.</p>
36070    ///
36071    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setComparisonMode(Qt3DRender::QAbstractTexture::ComparisonMode comparisonMode)```</span>.
36072    ///
36073    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setComparisonMode">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the comparison mode to <i>comparisonMode</i>.</p>
36074    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#comparisonMode">comparisonMode</a>().</p></div>
36075    #[inline(always)]
36076    pub unsafe fn set_comparison_mode(
36077        &self,
36078        comparison_mode: crate::q_abstract_texture::ComparisonMode,
36079    ) {
36080        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setComparisonMode(
36081            self as *const crate::QTextureData as *mut crate::QTextureData,
36082            comparison_mode,
36083        )
36084    }
36085
36086    /// <p>Sets the texture depth to <i>depth</i></p>
36087    ///
36088    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setDepth(int depth)```</span>.
36089    ///
36090    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setDepth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the texture depth to <i>depth</i></p>
36091    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#depth">depth</a>().</p></div>
36092    #[inline(always)]
36093    pub unsafe fn set_depth(&self, depth: ::std::os::raw::c_int) {
36094        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setDepth(
36095            self as *const crate::QTextureData as *mut crate::QTextureData,
36096            depth,
36097        )
36098    }
36099
36100    /// <p>Sets the texture format to <i>format</i>.</p>
36101    ///
36102    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setFormat(Qt3DRender::QAbstractTexture::TextureFormat arg1)```</span>.
36103    ///
36104    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setFormat">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the texture format to <i>format</i>.</p>
36105    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#format">format</a>().</p></div>
36106    #[inline(always)]
36107    pub unsafe fn set_format(&self, arg1: crate::q_abstract_texture::TextureFormat) {
36108        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setFormat(
36109            self as *const crate::QTextureData as *mut crate::QTextureData,
36110            arg1,
36111        )
36112    }
36113
36114    /// <p>Sets the target height to <i>height</i>.</p>
36115    ///
36116    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setHeight(int height)```</span>.
36117    ///
36118    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setHeight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the target height to <i>height</i>.</p>
36119    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#height">height</a>().</p></div>
36120    #[inline(always)]
36121    pub unsafe fn set_height(&self, height: ::std::os::raw::c_int) {
36122        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setHeight(
36123            self as *const crate::QTextureData as *mut crate::QTextureData,
36124            height,
36125        )
36126    }
36127
36128    /// <p>Sets the texture layers to <i>layers</i>.</p>
36129    ///
36130    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setLayers(int layers)```</span>.
36131    ///
36132    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setLayers">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the texture layers to <i>layers</i>.</p>
36133    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#layers">layers</a>().</p></div>
36134    #[inline(always)]
36135    pub unsafe fn set_layers(&self, layers: ::std::os::raw::c_int) {
36136        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setLayers(
36137            self as *const crate::QTextureData as *mut crate::QTextureData,
36138            layers,
36139        )
36140    }
36141
36142    /// <p>Sets the magnification filter to <i>filter</i>.</p>
36143    ///
36144    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setMagnificationFilter(Qt3DRender::QAbstractTexture::Filter filter)```</span>.
36145    ///
36146    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setMagnificationFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the magnification filter to <i>filter</i>.</p>
36147    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#magnificationFilter">magnificationFilter</a>().</p></div>
36148    #[inline(always)]
36149    pub unsafe fn set_magnification_filter(&self, filter: crate::q_abstract_texture::Filter) {
36150        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setMagnificationFilter(
36151            self as *const crate::QTextureData as *mut crate::QTextureData,
36152            filter,
36153        )
36154    }
36155
36156    /// <p>Sets the maximum anisotropy to <i>maximumAnisotropy</i>.</p>
36157    ///
36158    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setMaximumAnisotropy(float maximumAnisotropy)```</span>.
36159    ///
36160    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setMaximumAnisotropy">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the maximum anisotropy to <i>maximumAnisotropy</i>.</p>
36161    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#maximumAnisotropy">maximumAnisotropy</a>().</p></div>
36162    #[inline(always)]
36163    pub unsafe fn set_maximum_anisotropy(&self, maximum_anisotropy: ::std::os::raw::c_float) {
36164        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setMaximumAnisotropy(
36165            self as *const crate::QTextureData as *mut crate::QTextureData,
36166            maximum_anisotropy,
36167        )
36168    }
36169
36170    /// <p>Sets the minification filter to <i>filter</i>.</p>
36171    ///
36172    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setMinificationFilter(Qt3DRender::QAbstractTexture::Filter filter)```</span>.
36173    ///
36174    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setMinificationFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the minification filter to <i>filter</i>.</p>
36175    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#minificationFilter">minificationFilter</a>().</p></div>
36176    #[inline(always)]
36177    pub unsafe fn set_minification_filter(&self, filter: crate::q_abstract_texture::Filter) {
36178        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setMinificationFilter(
36179            self as *const crate::QTextureData as *mut crate::QTextureData,
36180            filter,
36181        )
36182    }
36183
36184    /// <p>Sets the target texture to <i>target</i>.</p>
36185    ///
36186    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setTarget(Qt3DRender::QAbstractTexture::Target target)```</span>.
36187    ///
36188    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setTarget">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the target texture to <i>target</i>.</p>
36189    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#target">target</a>().</p></div>
36190    #[inline(always)]
36191    pub unsafe fn set_target(&self, target: crate::q_abstract_texture::Target) {
36192        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setTarget(
36193            self as *const crate::QTextureData as *mut crate::QTextureData,
36194            target,
36195        )
36196    }
36197
36198    /// <p>Sets the texture width to <i>width</i>.</p>
36199    ///
36200    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setWidth(int width)```</span>.
36201    ///
36202    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setWidth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the texture width to <i>width</i>.</p>
36203    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#width">width</a>().</p></div>
36204    #[inline(always)]
36205    pub unsafe fn set_width(&self, width: ::std::os::raw::c_int) {
36206        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setWidth(
36207            self as *const crate::QTextureData as *mut crate::QTextureData,
36208            width,
36209        )
36210    }
36211
36212    /// <p>Sets the wrap mode X to <i>wrapModeX</i>.</p>
36213    ///
36214    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setWrapModeX(Qt3DRender::QTextureWrapMode::WrapMode wrapModeX)```</span>.
36215    ///
36216    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setWrapModeX">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the wrap mode X to <i>wrapModeX</i>.</p>
36217    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#wrapModeX">wrapModeX</a>().</p></div>
36218    #[inline(always)]
36219    pub unsafe fn set_wrap_mode_x(&self, wrap_mode_x: crate::q_texture_wrap_mode::WrapMode) {
36220        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setWrapModeX(
36221            self as *const crate::QTextureData as *mut crate::QTextureData,
36222            wrap_mode_x,
36223        )
36224    }
36225
36226    /// <p>Sets the wrap mode Y to <i>wrapModeY</i>.</p>
36227    ///
36228    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setWrapModeY(Qt3DRender::QTextureWrapMode::WrapMode wrapModeY)```</span>.
36229    ///
36230    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setWrapModeY">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the wrap mode Y to <i>wrapModeY</i>.</p>
36231    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#wrapModeY">wrapModeY</a>().</p></div>
36232    #[inline(always)]
36233    pub unsafe fn set_wrap_mode_y(&self, wrap_mode_y: crate::q_texture_wrap_mode::WrapMode) {
36234        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setWrapModeY(
36235            self as *const crate::QTextureData as *mut crate::QTextureData,
36236            wrap_mode_y,
36237        )
36238    }
36239
36240    /// <p>Sets the wrap mode Z to <i>wrapModeZ</i>.</p>
36241    ///
36242    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureData::setWrapModeZ(Qt3DRender::QTextureWrapMode::WrapMode wrapModeZ)```</span>.
36243    ///
36244    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setWrapModeZ">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the wrap mode Z to <i>wrapModeZ</i>.</p>
36245    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#wrapModeZ">wrapModeZ</a>().</p></div>
36246    #[inline(always)]
36247    pub unsafe fn set_wrap_mode_z(&self, wrap_mode_z: crate::q_texture_wrap_mode::WrapMode) {
36248        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_setWrapModeZ(
36249            self as *const crate::QTextureData as *mut crate::QTextureData,
36250            wrap_mode_z,
36251        )
36252    }
36253
36254    /// <p>Returns the texture data target.</p>
36255    ///
36256    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::Target Qt3DRender::QTextureData::target() const```</span>.
36257    ///
36258    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#target">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the texture data target.</p>
36259    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setTarget">setTarget</a>().</p></div>
36260    #[inline(always)]
36261    pub unsafe fn target(&self) -> crate::q_abstract_texture::Target {
36262        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_target(
36263            self as *const crate::QTextureData,
36264        )
36265    }
36266
36267    /// <p>Returns the texture width.</p>
36268    ///
36269    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureData::width() const```</span>.
36270    ///
36271    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#width">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the texture width.</p>
36272    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setWidth">setWidth</a>().</p></div>
36273    #[inline(always)]
36274    pub unsafe fn width(&self) -> ::std::os::raw::c_int {
36275        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_width(
36276            self as *const crate::QTextureData,
36277        )
36278    }
36279
36280    /// <p>Returns the current wrap mode X.</p>
36281    ///
36282    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureWrapMode::WrapMode Qt3DRender::QTextureData::wrapModeX() const```</span>.
36283    ///
36284    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#wrapModeX">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current wrap mode X.</p>
36285    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setWrapModeX">setWrapModeX</a>().</p></div>
36286    #[inline(always)]
36287    pub unsafe fn wrap_mode_x(&self) -> crate::q_texture_wrap_mode::WrapMode {
36288        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_wrapModeX(
36289            self as *const crate::QTextureData,
36290        )
36291    }
36292
36293    /// <p>Returns the current wrap mode Y.</p>
36294    ///
36295    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureWrapMode::WrapMode Qt3DRender::QTextureData::wrapModeY() const```</span>.
36296    ///
36297    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#wrapModeY">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current wrap mode Y.</p>
36298    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setWrapModeY">setWrapModeY</a>().</p></div>
36299    #[inline(always)]
36300    pub unsafe fn wrap_mode_y(&self) -> crate::q_texture_wrap_mode::WrapMode {
36301        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_wrapModeY(
36302            self as *const crate::QTextureData,
36303        )
36304    }
36305
36306    /// <p>Returns the current wrap mode Z.</p>
36307    ///
36308    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureWrapMode::WrapMode Qt3DRender::QTextureData::wrapModeZ() const```</span>.
36309    ///
36310    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#wrapModeZ">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current wrap mode Z.</p>
36311    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qtexturedata.html#setWrapModeZ">setWrapModeZ</a>().</p></div>
36312    #[inline(always)]
36313    pub unsafe fn wrap_mode_z(&self) -> crate::q_texture_wrap_mode::WrapMode {
36314        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_wrapModeZ(
36315            self as *const crate::QTextureData,
36316        )
36317    }
36318}
36319
36320/// <p>Provides the image data for a texture.</p>
36321///
36322/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureGenerator```</span>.
36323///
36324/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturegenerator.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Provides the image data for a texture.</p></div>
36325#[repr(C)]
36326pub struct QTextureGenerator {
36327    _unused: u8,
36328}
36329/// <p>A viewport on the Qt3D Scene</p>
36330///
36331/// C++ class: <span style='color: green;'>```Qt3DRender::QViewport```</span>.
36332///
36333/// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A viewport on the Qt3D Scene</p>
36334/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">Qt3DRender::QViewport</a> of the scene specifies at which portion of the render surface Qt3D is rendering to. Area outside the viewport is left untouched. It also controls global parameters to the rendering in that viewport like gamma.</p></div>
36335#[repr(C)]
36336pub struct QViewport {
36337    _unused: u8,
36338}
36339impl QViewport {
36340    /// <p>Specifies the normalised rectangle for the viewport, i.e. the viewport rectangle is specified relative to the render surface size. Whole surface sized viewport is specified as [0.0, 0.0, 1.0, 1.0], which is the default.</p>
36341    ///
36342    /// Returns a built-in Qt slot `Qt3DRender::QViewport::setNormalizedRect` that can be passed to `qt_core::Signal::connect`.
36343    ///
36344    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html#normalizedRect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the normalised rectangle for the viewport, i.e. the viewport rectangle is specified relative to the render surface size. Whole surface sized viewport is specified as [0.0, 0.0, 1.0, 1.0], which is the default.</p>
36345    /// <p><b>Access functions:</b></p>
36346    /// <div class="table"><table class="alignedsummary">
36347    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRectF </td><td class="memItemRight bottomAlign"><span class="name"><b>normalizedRect</b></span>() const</td></tr>
36348    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNormalizedRect</b></span>(const QRectF &amp;<i>normalizedRect</i>)</td></tr>
36349    /// </tbody></table></div>
36350    /// <p><b>Notifier signal:</b></p>
36351    /// <div class="table"><table class="alignedsummary">
36352    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>normalizedRectChanged</b></span>(const QRectF &amp;<i>normalizedRect</i>)</td></tr>
36353    /// </tbody></table></div></div>
36354    #[inline(always)]
36355    pub fn slot_set_normalized_rect(&self) -> ::qt_core::Receiver<(*const ::qt_core::QRectF,)> {
36356        unsafe {
36357            ::qt_core::Receiver::new(
36358                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
36359                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
36360                    b"1setNormalizedRect(QRectF const &)\0",
36361                ),
36362            )
36363        }
36364    }
36365
36366    /// <p>Specifies the gamma factor for the viewport. The default is 2.2 which should give proper result on most screens.</p>
36367    ///
36368    /// Returns a built-in Qt slot `Qt3DRender::QViewport::setGamma` that can be passed to `qt_core::Signal::connect`.
36369    ///
36370    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html#gamma-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the gamma factor for the viewport. The default is 2.2 which should give proper result on most screens.</p>
36371    /// <p><b>Access functions:</b></p>
36372    /// <div class="table"><table class="alignedsummary">
36373    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>gamma</b></span>() const</td></tr>
36374    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGamma</b></span>(float <i>gamma</i>)</td></tr>
36375    /// </tbody></table></div>
36376    /// <p><b>Notifier signal:</b></p>
36377    /// <div class="table"><table class="alignedsummary">
36378    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>gammaChanged</b></span>(float <i>gamma</i>)</td></tr>
36379    /// </tbody></table></div></div>
36380    #[inline(always)]
36381    pub fn slot_set_gamma(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
36382        unsafe {
36383            ::qt_core::Receiver::new(
36384                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
36385                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setGamma(float)\0"),
36386            )
36387        }
36388    }
36389
36390    /// <p>Specifies the normalised rectangle for the viewport, i.e. the viewport rectangle is specified relative to the render surface size. Whole surface sized viewport is specified as [0.0, 0.0, 1.0, 1.0], which is the default.</p>
36391    ///
36392    /// Returns a built-in Qt signal `Qt3DRender::QViewport::normalizedRectChanged` that can be passed to `qt_core::Signal::connect`.
36393    ///
36394    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html#normalizedRect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the normalised rectangle for the viewport, i.e. the viewport rectangle is specified relative to the render surface size. Whole surface sized viewport is specified as [0.0, 0.0, 1.0, 1.0], which is the default.</p>
36395    /// <p><b>Access functions:</b></p>
36396    /// <div class="table"><table class="alignedsummary">
36397    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRectF </td><td class="memItemRight bottomAlign"><span class="name"><b>normalizedRect</b></span>() const</td></tr>
36398    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNormalizedRect</b></span>(const QRectF &amp;<i>normalizedRect</i>)</td></tr>
36399    /// </tbody></table></div>
36400    /// <p><b>Notifier signal:</b></p>
36401    /// <div class="table"><table class="alignedsummary">
36402    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>normalizedRectChanged</b></span>(const QRectF &amp;<i>normalizedRect</i>)</td></tr>
36403    /// </tbody></table></div></div>
36404    #[inline(always)]
36405    pub fn normalized_rect_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QRectF,)> {
36406        unsafe {
36407            ::qt_core::Signal::new(
36408                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
36409                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
36410                    b"2normalizedRectChanged(QRectF const &)\0",
36411                ),
36412            )
36413        }
36414    }
36415
36416    /// <p>Specifies the gamma factor for the viewport. The default is 2.2 which should give proper result on most screens.</p>
36417    ///
36418    /// Returns a built-in Qt signal `Qt3DRender::QViewport::gammaChanged` that can be passed to `qt_core::Signal::connect`.
36419    ///
36420    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html#gamma-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the gamma factor for the viewport. The default is 2.2 which should give proper result on most screens.</p>
36421    /// <p><b>Access functions:</b></p>
36422    /// <div class="table"><table class="alignedsummary">
36423    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>gamma</b></span>() const</td></tr>
36424    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGamma</b></span>(float <i>gamma</i>)</td></tr>
36425    /// </tbody></table></div>
36426    /// <p><b>Notifier signal:</b></p>
36427    /// <div class="table"><table class="alignedsummary">
36428    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>gammaChanged</b></span>(float <i>gamma</i>)</td></tr>
36429    /// </tbody></table></div></div>
36430    #[inline(always)]
36431    pub fn gamma_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
36432        unsafe {
36433            ::qt_core::Signal::new(
36434                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
36435                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2gammaChanged(float)\0"),
36436            )
36437        }
36438    }
36439
36440    /// <p>Specifies the gamma factor for the viewport. The default is 2.2 which should give proper result on most screens.</p>
36441    ///
36442    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QViewport::gamma() const```</span>.
36443    ///
36444    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html#gamma-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the gamma factor for the viewport. The default is 2.2 which should give proper result on most screens.</p>
36445    /// <p><b>Access functions:</b></p>
36446    /// <div class="table"><table class="alignedsummary">
36447    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>gamma</b></span>() const</td></tr>
36448    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGamma</b></span>(float <i>gamma</i>)</td></tr>
36449    /// </tbody></table></div>
36450    /// <p><b>Notifier signal:</b></p>
36451    /// <div class="table"><table class="alignedsummary">
36452    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>gammaChanged</b></span>(float <i>gamma</i>)</td></tr>
36453    /// </tbody></table></div></div>
36454    #[inline(always)]
36455    pub unsafe fn gamma(&self) -> ::std::os::raw::c_float {
36456        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_gamma(
36457            self as *const crate::QViewport,
36458        )
36459    }
36460
36461    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QViewport::metaObject() const```</span>.
36462    #[inline(always)]
36463    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
36464        let ffi_result = {
36465            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_metaObject(
36466                self as *const crate::QViewport,
36467            )
36468        };
36469        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
36470    }
36471
36472    /// <p>Default constructs an instance of QViewport.</p>
36473    ///
36474    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QViewport::QViewport(Qt3DCore::QNode* parent = …)```</span>.
36475    ///
36476    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html#QViewport">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QViewport.</p></div>
36477    #[inline(always)]
36478    pub unsafe fn new_1a(
36479        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
36480    ) -> ::qt_core::QBox<crate::QViewport> {
36481        let ffi_result = {
36482            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_QViewport(
36483                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
36484                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
36485            )
36486        };
36487        ::qt_core::QBox::from_raw(ffi_result)
36488    }
36489
36490    /// <p>A viewport on the Qt3D Scene</p>
36491    ///
36492    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QViewport::QViewport()```</span>.
36493    ///
36494    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>A viewport on the Qt3D Scene</p>
36495    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">Qt3DRender::QViewport</a> of the scene specifies at which portion of the render surface Qt3D is rendering to. Area outside the viewport is left untouched. It also controls global parameters to the rendering in that viewport like gamma.</p></div>
36496    #[inline(always)]
36497    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QViewport> {
36498        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_QViewport1() };
36499        ::qt_core::QBox::from_raw(ffi_result)
36500    }
36501
36502    /// <p>Specifies the normalised rectangle for the viewport, i.e. the viewport rectangle is specified relative to the render surface size. Whole surface sized viewport is specified as [0.0, 0.0, 1.0, 1.0], which is the default.</p>
36503    ///
36504    /// Calls C++ function: <span style='color: green;'>```QRectF Qt3DRender::QViewport::normalizedRect() const```</span>.
36505    ///
36506    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html#normalizedRect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the normalised rectangle for the viewport, i.e. the viewport rectangle is specified relative to the render surface size. Whole surface sized viewport is specified as [0.0, 0.0, 1.0, 1.0], which is the default.</p>
36507    /// <p><b>Access functions:</b></p>
36508    /// <div class="table"><table class="alignedsummary">
36509    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRectF </td><td class="memItemRight bottomAlign"><span class="name"><b>normalizedRect</b></span>() const</td></tr>
36510    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNormalizedRect</b></span>(const QRectF &amp;<i>normalizedRect</i>)</td></tr>
36511    /// </tbody></table></div>
36512    /// <p><b>Notifier signal:</b></p>
36513    /// <div class="table"><table class="alignedsummary">
36514    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>normalizedRectChanged</b></span>(const QRectF &amp;<i>normalizedRect</i>)</td></tr>
36515    /// </tbody></table></div></div>
36516    #[inline(always)]
36517    pub unsafe fn normalized_rect(&self) -> ::cpp_core::CppBox<::qt_core::QRectF> {
36518        let ffi_result = {
36519            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_normalizedRect(
36520                self as *const crate::QViewport,
36521            )
36522        };
36523        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
36524    }
36525
36526    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QViewport::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
36527    #[inline(always)]
36528    pub unsafe fn qt_metacall(
36529        &self,
36530        arg1: ::qt_core::q_meta_object::Call,
36531        arg2: ::std::os::raw::c_int,
36532        arg3: *mut *mut ::std::ffi::c_void,
36533    ) -> ::std::os::raw::c_int {
36534        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_qt_metacall(
36535            self as *const crate::QViewport as *mut crate::QViewport,
36536            arg1,
36537            arg2,
36538            arg3,
36539        )
36540    }
36541
36542    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QViewport::qt_metacast(const char* arg1)```</span>.
36543    #[inline(always)]
36544    pub unsafe fn qt_metacast(
36545        &self,
36546        arg1: *const ::std::os::raw::c_char,
36547    ) -> *mut ::std::ffi::c_void {
36548        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_qt_metacast(
36549            self as *const crate::QViewport as *mut crate::QViewport,
36550            arg1,
36551        )
36552    }
36553
36554    /// <p>Specifies the gamma factor for the viewport. The default is 2.2 which should give proper result on most screens.</p>
36555    ///
36556    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QViewport::setGamma(float gamma)```</span>.
36557    ///
36558    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html#gamma-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the gamma factor for the viewport. The default is 2.2 which should give proper result on most screens.</p>
36559    /// <p><b>Access functions:</b></p>
36560    /// <div class="table"><table class="alignedsummary">
36561    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>gamma</b></span>() const</td></tr>
36562    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGamma</b></span>(float <i>gamma</i>)</td></tr>
36563    /// </tbody></table></div>
36564    /// <p><b>Notifier signal:</b></p>
36565    /// <div class="table"><table class="alignedsummary">
36566    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>gammaChanged</b></span>(float <i>gamma</i>)</td></tr>
36567    /// </tbody></table></div></div>
36568    #[inline(always)]
36569    pub unsafe fn set_gamma(&self, gamma: ::std::os::raw::c_float) {
36570        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_setGamma(
36571            self as *const crate::QViewport as *mut crate::QViewport,
36572            gamma,
36573        )
36574    }
36575
36576    /// <p>Specifies the normalised rectangle for the viewport, i.e. the viewport rectangle is specified relative to the render surface size. Whole surface sized viewport is specified as [0.0, 0.0, 1.0, 1.0], which is the default.</p>
36577    ///
36578    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QViewport::setNormalizedRect(const QRectF& normalizedRect)```</span>.
36579    ///
36580    /// <a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html#normalizedRect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the normalised rectangle for the viewport, i.e. the viewport rectangle is specified relative to the render surface size. Whole surface sized viewport is specified as [0.0, 0.0, 1.0, 1.0], which is the default.</p>
36581    /// <p><b>Access functions:</b></p>
36582    /// <div class="table"><table class="alignedsummary">
36583    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRectF </td><td class="memItemRight bottomAlign"><span class="name"><b>normalizedRect</b></span>() const</td></tr>
36584    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNormalizedRect</b></span>(const QRectF &amp;<i>normalizedRect</i>)</td></tr>
36585    /// </tbody></table></div>
36586    /// <p><b>Notifier signal:</b></p>
36587    /// <div class="table"><table class="alignedsummary">
36588    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>normalizedRectChanged</b></span>(const QRectF &amp;<i>normalizedRect</i>)</td></tr>
36589    /// </tbody></table></div></div>
36590    #[inline(always)]
36591    pub unsafe fn set_normalized_rect(
36592        &self,
36593        normalized_rect: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QRectF>>,
36594    ) {
36595        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_setNormalizedRect(
36596            self as *const crate::QViewport as *mut crate::QViewport,
36597            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QRectF>>::cast_into(normalized_rect)
36598                .as_raw_ptr(),
36599        )
36600    }
36601
36602    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
36603    #[inline(always)]
36604    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
36605        let ffi_result =
36606            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_staticMetaObject() };
36607        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
36608            .expect("attempted to construct a null Ref")
36609    }
36610
36611    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QViewport::tr(const char* s, const char* c, int n)```</span>.
36612    #[inline(always)]
36613    pub unsafe fn tr(
36614        s: *const ::std::os::raw::c_char,
36615        c: *const ::std::os::raw::c_char,
36616        n: ::std::os::raw::c_int,
36617    ) -> ::cpp_core::CppBox<::qt_core::QString> {
36618        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_tr(s, c, n) };
36619        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
36620    }
36621
36622    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QViewport::trUtf8(const char* s, const char* c, int n)```</span>.
36623    #[inline(always)]
36624    pub unsafe fn tr_utf8(
36625        s: *const ::std::os::raw::c_char,
36626        c: *const ::std::os::raw::c_char,
36627        n: ::std::os::raw::c_int,
36628    ) -> ::cpp_core::CppBox<::qt_core::QString> {
36629        let ffi_result =
36630            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_trUtf8(s, c, n) };
36631        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
36632    }
36633}
36634
36635/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
36636///
36637/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*>```</span>.
36638///
36639/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
36640/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
36641/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
36642/// <ul>
36643/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
36644/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
36645/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
36646/// </ul>
36647/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
36648/// <pre class="cpp">
36649///
36650///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
36651///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
36652///
36653/// </pre>
36654/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
36655/// <pre class="cpp">
36656///
36657///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
36658///
36659/// </pre>
36660/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
36661/// <pre class="cpp">
36662///
36663///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
36664///
36665/// </pre>
36666/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
36667/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
36668/// <pre class="cpp">
36669///
36670///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
36671/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
36672///
36673/// </pre>
36674/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
36675/// <pre class="cpp">
36676///
36677///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
36678/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
36679/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
36680///   }
36681///
36682/// </pre>
36683/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
36684/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
36685/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
36686/// <pre class="cpp">
36687///
36688///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
36689///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
36690/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
36691///
36692/// </pre>
36693/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
36694/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
36695/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
36696/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
36697/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
36698/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
36699/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
36700/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
36701/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
36702/// <a name="more-information-on-using-qt-containers"></a>
36703/// <h4>More Information on Using Qt Containers</h4>
36704/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
36705#[repr(C)]
36706pub struct QVectorOfQAbstractTextureImage {
36707    _unused: u8,
36708}
36709impl QVectorOfQAbstractTextureImage {
36710    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
36711    ///
36712    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*>& QVector<Qt3DRender::QAbstractTextureImage*>::operator+=(const QVector<Qt3DRender::QAbstractTextureImage*>& l)```</span>.
36713    ///
36714    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
36715    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
36716    #[inline(always)]
36717    pub unsafe fn add_assign_q_vector_of_q_abstract_texture_image(
36718        &self,
36719        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
36720    ) -> ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage> {
36721        let ffi_result = {
36722            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_operator__4(self as *const crate::QVectorOfQAbstractTextureImage as *mut crate::QVectorOfQAbstractTextureImage, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(l).as_raw_ptr())
36723        };
36724        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
36725    }
36726
36727    /// <p>This is an overloaded function.</p>
36728    ///
36729    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*>& QVector<Qt3DRender::QAbstractTextureImage*>::operator+=(const Qt3DRender::QAbstractTextureImage*& t)```</span>.
36730    ///
36731    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
36732    /// <p>Appends <i>value</i> to the vector.</p>
36733    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
36734    #[inline(always)]
36735    pub unsafe fn add_assign_q_abstract_texture_image(
36736        &self,
36737        t: *const *mut crate::QAbstractTextureImage,
36738    ) -> ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage> {
36739        let ffi_result = {
36740            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_operator__5(self as *const crate::QVectorOfQAbstractTextureImage as *mut crate::QVectorOfQAbstractTextureImage, t)
36741        };
36742        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
36743    }
36744
36745    /// <p>Inserts <i>value</i> at the end of the vector.</p>
36746    ///
36747    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::append(const Qt3DRender::QAbstractTextureImage*& t)```</span>.
36748    ///
36749    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
36750    /// <p>Example:</p>
36751    /// <pre class="cpp">
36752    ///
36753    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
36754    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
36755    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
36756    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
36757    ///   vector<span class="operator">.</span>append(three);
36758    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
36759    ///   <span class="comment">// three: "three"</span>
36760    ///
36761    /// </pre>
36762    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
36763    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
36764    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
36765    #[inline(always)]
36766    pub unsafe fn append_q_abstract_texture_image(
36767        &self,
36768        t: *const *mut crate::QAbstractTextureImage,
36769    ) {
36770        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_append(
36771            self as *const crate::QVectorOfQAbstractTextureImage
36772                as *mut crate::QVectorOfQAbstractTextureImage,
36773            t,
36774        )
36775    }
36776
36777    /// <p>This is an overloaded function.</p>
36778    ///
36779    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::append(const QVector<Qt3DRender::QAbstractTextureImage*>& l)```</span>.
36780    ///
36781    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
36782    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
36783    /// <p>This function was introduced in  Qt 5.5.</p>
36784    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
36785    #[inline(always)]
36786    pub unsafe fn append_q_vector_of_q_abstract_texture_image(
36787        &self,
36788        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
36789    ) {
36790        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_append2(self as *const crate::QVectorOfQAbstractTextureImage as *mut crate::QVectorOfQAbstractTextureImage, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(l).as_raw_ptr())
36791    }
36792
36793    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
36794    ///
36795    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::at(int i) const```</span>.
36796    ///
36797    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
36798    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
36799    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
36800    #[inline(always)]
36801    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QAbstractTextureImage {
36802        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_at(
36803            self as *const crate::QVectorOfQAbstractTextureImage,
36804            i,
36805        )
36806    }
36807
36808    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
36809    ///
36810    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::back()```</span>.
36811    ///
36812    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
36813    #[inline(always)]
36814    pub unsafe fn back_mut(&self) -> *mut *mut crate::QAbstractTextureImage {
36815        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_back(
36816            self as *const crate::QVectorOfQAbstractTextureImage
36817                as *mut crate::QVectorOfQAbstractTextureImage,
36818        )
36819    }
36820
36821    /// <p>This is an overloaded function.</p>
36822    ///
36823    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::back() const```</span>.
36824    ///
36825    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
36826    #[inline(always)]
36827    pub unsafe fn back(&self) -> *const *mut crate::QAbstractTextureImage {
36828        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_back1(
36829            self as *const crate::QVectorOfQAbstractTextureImage,
36830        )
36831    }
36832
36833    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
36834    ///
36835    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::capacity() const```</span>.
36836    ///
36837    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
36838    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
36839    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
36840    #[inline(always)]
36841    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
36842        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_capacity(
36843            self as *const crate::QVectorOfQAbstractTextureImage,
36844        )
36845    }
36846
36847    /// <p>Removes all the elements from the vector.</p>
36848    ///
36849    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::clear()```</span>.
36850    ///
36851    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
36852    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
36853    ///
36854    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
36855    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
36856    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
36857    ///
36858    /// </pre>
36859    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
36860    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
36861    #[inline(always)]
36862    pub unsafe fn clear(&self) {
36863        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_clear(
36864            self as *const crate::QVectorOfQAbstractTextureImage
36865                as *mut crate::QVectorOfQAbstractTextureImage,
36866        )
36867    }
36868
36869    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
36870    ///
36871    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage** QVector<Qt3DRender::QAbstractTextureImage*>::constData() const```</span>.
36872    ///
36873    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
36874    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
36875    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
36876    #[inline(always)]
36877    pub unsafe fn const_data(&self) -> *const *mut crate::QAbstractTextureImage {
36878        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_constData(
36879            self as *const crate::QVectorOfQAbstractTextureImage,
36880        )
36881    }
36882
36883    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
36884    ///
36885    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::constFirst() const```</span>.
36886    ///
36887    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
36888    /// <p>This function was introduced in  Qt 5.6.</p>
36889    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
36890    #[inline(always)]
36891    pub unsafe fn const_first(&self) -> *const *mut crate::QAbstractTextureImage {
36892        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_constFirst(
36893            self as *const crate::QVectorOfQAbstractTextureImage,
36894        )
36895    }
36896
36897    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
36898    ///
36899    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::constLast() const```</span>.
36900    ///
36901    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
36902    /// <p>This function was introduced in  Qt 5.6.</p>
36903    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
36904    #[inline(always)]
36905    pub unsafe fn const_last(&self) -> *const *mut crate::QAbstractTextureImage {
36906        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_constLast(
36907            self as *const crate::QVectorOfQAbstractTextureImage,
36908        )
36909    }
36910
36911    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
36912    ///
36913    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAbstractTextureImage*>::contains(const Qt3DRender::QAbstractTextureImage*& t) const```</span>.
36914    ///
36915    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
36916    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
36917    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
36918    #[inline(always)]
36919    pub unsafe fn contains(&self, t: *const *mut crate::QAbstractTextureImage) -> bool {
36920        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_contains(
36921            self as *const crate::QVectorOfQAbstractTextureImage,
36922            t,
36923        )
36924    }
36925
36926    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
36927    ///
36928    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*>& QVector<Qt3DRender::QAbstractTextureImage*>::operator=(const QVector<Qt3DRender::QAbstractTextureImage*>& v)```</span>.
36929    ///
36930    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
36931    #[inline(always)]
36932    pub unsafe fn copy_from(
36933        &self,
36934        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
36935    ) -> ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage> {
36936        let ffi_result = {
36937            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_operator_(self as *const crate::QVectorOfQAbstractTextureImage as *mut crate::QVectorOfQAbstractTextureImage, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(v).as_raw_ptr())
36938        };
36939        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
36940    }
36941
36942    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
36943    ///
36944    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::count(const Qt3DRender::QAbstractTextureImage*& t) const```</span>.
36945    ///
36946    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
36947    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
36948    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
36949    #[inline(always)]
36950    pub unsafe fn count_1a(
36951        &self,
36952        t: *const *mut crate::QAbstractTextureImage,
36953    ) -> ::std::os::raw::c_int {
36954        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_count(
36955            self as *const crate::QVectorOfQAbstractTextureImage,
36956            t,
36957        )
36958    }
36959
36960    /// <p>This is an overloaded function.</p>
36961    ///
36962    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::count() const```</span>.
36963    ///
36964    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
36965    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
36966    #[inline(always)]
36967    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
36968        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_count1(
36969            self as *const crate::QVectorOfQAbstractTextureImage,
36970        )
36971    }
36972
36973    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
36974    ///
36975    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage** QVector<Qt3DRender::QAbstractTextureImage*>::data()```</span>.
36976    ///
36977    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
36978    /// <p>Example:</p>
36979    /// <pre class="cpp">
36980    ///
36981    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
36982    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
36983    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
36984    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
36985    ///
36986    /// </pre>
36987    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
36988    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
36989    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
36990    #[inline(always)]
36991    pub unsafe fn data_mut(&self) -> *mut *mut crate::QAbstractTextureImage {
36992        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_data(
36993            self as *const crate::QVectorOfQAbstractTextureImage
36994                as *mut crate::QVectorOfQAbstractTextureImage,
36995        )
36996    }
36997
36998    /// <p>This is an overloaded function.</p>
36999    ///
37000    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage** QVector<Qt3DRender::QAbstractTextureImage*>::data() const```</span>.
37001    ///
37002    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
37003    #[inline(always)]
37004    pub unsafe fn data(&self) -> *const *mut crate::QAbstractTextureImage {
37005        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_data1(
37006            self as *const crate::QVectorOfQAbstractTextureImage,
37007        )
37008    }
37009
37010    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::detach()```</span>.
37011    #[inline(always)]
37012    pub unsafe fn detach(&self) {
37013        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_detach(
37014            self as *const crate::QVectorOfQAbstractTextureImage
37015                as *mut crate::QVectorOfQAbstractTextureImage,
37016        )
37017    }
37018
37019    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
37020    ///
37021    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAbstractTextureImage*>::empty() const```</span>.
37022    ///
37023    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
37024    #[inline(always)]
37025    pub unsafe fn empty(&self) -> bool {
37026        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_empty(
37027            self as *const crate::QVectorOfQAbstractTextureImage,
37028        )
37029    }
37030
37031    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
37032    ///
37033    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAbstractTextureImage*>::endsWith(const Qt3DRender::QAbstractTextureImage*& t) const```</span>.
37034    ///
37035    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
37036    /// <p>This function was introduced in  Qt 4.5.</p>
37037    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
37038    #[inline(always)]
37039    pub unsafe fn ends_with(&self, t: *const *mut crate::QAbstractTextureImage) -> bool {
37040        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_endsWith(
37041            self as *const crate::QVectorOfQAbstractTextureImage,
37042            t,
37043        )
37044    }
37045
37046    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
37047    ///
37048    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*>& QVector<Qt3DRender::QAbstractTextureImage*>::fill(const Qt3DRender::QAbstractTextureImage*& t, int size = …)```</span>.
37049    ///
37050    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
37051    /// <p>Example:</p>
37052    /// <pre class="cpp">
37053    ///
37054    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
37055    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
37056    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
37057    ///
37058    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
37059    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
37060    ///
37061    /// </pre>
37062    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
37063    #[inline(always)]
37064    pub unsafe fn fill_2a(
37065        &self,
37066        t: *const *mut crate::QAbstractTextureImage,
37067        size: ::std::os::raw::c_int,
37068    ) -> ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage> {
37069        let ffi_result = {
37070            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_fill(
37071                self as *const crate::QVectorOfQAbstractTextureImage
37072                    as *mut crate::QVectorOfQAbstractTextureImage,
37073                t,
37074                size,
37075            )
37076        };
37077        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
37078    }
37079
37080    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
37081    ///
37082    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*>& QVector<Qt3DRender::QAbstractTextureImage*>::fill(const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37083    ///
37084    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
37085    /// <p>Example:</p>
37086    /// <pre class="cpp">
37087    ///
37088    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
37089    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
37090    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
37091    ///
37092    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
37093    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
37094    ///
37095    /// </pre>
37096    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
37097    #[inline(always)]
37098    pub unsafe fn fill_1a(
37099        &self,
37100        t: *const *mut crate::QAbstractTextureImage,
37101    ) -> ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage> {
37102        let ffi_result = {
37103            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_fill1(
37104                self as *const crate::QVectorOfQAbstractTextureImage
37105                    as *mut crate::QVectorOfQAbstractTextureImage,
37106                t,
37107            )
37108        };
37109        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
37110    }
37111
37112    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
37113    ///
37114    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::first()```</span>.
37115    ///
37116    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
37117    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
37118    #[inline(always)]
37119    pub unsafe fn first_mut(&self) -> *mut *mut crate::QAbstractTextureImage {
37120        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_first(
37121            self as *const crate::QVectorOfQAbstractTextureImage
37122                as *mut crate::QVectorOfQAbstractTextureImage,
37123        )
37124    }
37125
37126    /// <p>This is an overloaded function.</p>
37127    ///
37128    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::first() const```</span>.
37129    ///
37130    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
37131    #[inline(always)]
37132    pub unsafe fn first(&self) -> *const *mut crate::QAbstractTextureImage {
37133        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_first1(
37134            self as *const crate::QVectorOfQAbstractTextureImage,
37135        )
37136    }
37137
37138    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
37139    ///
37140    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::front()```</span>.
37141    ///
37142    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
37143    #[inline(always)]
37144    pub unsafe fn front_mut(&self) -> *mut *mut crate::QAbstractTextureImage {
37145        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_front(
37146            self as *const crate::QVectorOfQAbstractTextureImage
37147                as *mut crate::QVectorOfQAbstractTextureImage,
37148        )
37149    }
37150
37151    /// <p>This is an overloaded function.</p>
37152    ///
37153    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::front() const```</span>.
37154    ///
37155    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
37156    #[inline(always)]
37157    pub unsafe fn front(&self) -> *const *mut crate::QAbstractTextureImage {
37158        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_front1(
37159            self as *const crate::QVectorOfQAbstractTextureImage,
37160        )
37161    }
37162
37163    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
37164    ///
37165    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::operator[](int i)```</span>.
37166    ///
37167    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
37168    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
37169    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
37170    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
37171    #[inline(always)]
37172    pub unsafe fn index_mut(
37173        &self,
37174        i: ::std::os::raw::c_int,
37175    ) -> *mut *mut crate::QAbstractTextureImage {
37176        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_operator__2(
37177            self as *const crate::QVectorOfQAbstractTextureImage
37178                as *mut crate::QVectorOfQAbstractTextureImage,
37179            i,
37180        )
37181    }
37182
37183    /// <p>This is an overloaded function.</p>
37184    ///
37185    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::operator[](int i) const```</span>.
37186    ///
37187    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
37188    /// <p>Same as at(<i>i</i>).</p></div>
37189    #[inline(always)]
37190    pub unsafe fn index(
37191        &self,
37192        i: ::std::os::raw::c_int,
37193    ) -> *const *mut crate::QAbstractTextureImage {
37194        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_operator__3(
37195            self as *const crate::QVectorOfQAbstractTextureImage,
37196            i,
37197        )
37198    }
37199
37200    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
37201    ///
37202    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::indexOf(const Qt3DRender::QAbstractTextureImage*& t, int from = …) const```</span>.
37203    ///
37204    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
37205    /// <p>Example:</p>
37206    /// <pre class="cpp">
37207    ///
37208    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
37209    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
37210    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
37211    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
37212    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
37213    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
37214    ///
37215    /// </pre>
37216    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
37217    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
37218    #[inline(always)]
37219    pub unsafe fn index_of_2a(
37220        &self,
37221        t: *const *mut crate::QAbstractTextureImage,
37222        from: ::std::os::raw::c_int,
37223    ) -> ::std::os::raw::c_int {
37224        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_indexOf(
37225            self as *const crate::QVectorOfQAbstractTextureImage,
37226            t,
37227            from,
37228        )
37229    }
37230
37231    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
37232    ///
37233    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::indexOf(const Qt3DRender::QAbstractTextureImage*& t) const```</span>.
37234    ///
37235    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
37236    /// <p>Example:</p>
37237    /// <pre class="cpp">
37238    ///
37239    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
37240    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
37241    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
37242    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
37243    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
37244    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
37245    ///
37246    /// </pre>
37247    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
37248    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
37249    #[inline(always)]
37250    pub unsafe fn index_of_1a(
37251        &self,
37252        t: *const *mut crate::QAbstractTextureImage,
37253    ) -> ::std::os::raw::c_int {
37254        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_indexOf1(
37255            self as *const crate::QVectorOfQAbstractTextureImage,
37256            t,
37257        )
37258    }
37259
37260    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
37261    ///
37262    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::insert(int i, const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37263    ///
37264    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
37265    /// <p>Example:</p>
37266    /// <pre class="cpp">
37267    ///
37268    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
37269    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
37270    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
37271    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
37272    ///
37273    /// </pre>
37274    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
37275    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
37276    #[inline(always)]
37277    pub unsafe fn insert_2a(
37278        &self,
37279        i: ::std::os::raw::c_int,
37280        t: *const *mut crate::QAbstractTextureImage,
37281    ) {
37282        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_insert(
37283            self as *const crate::QVectorOfQAbstractTextureImage
37284                as *mut crate::QVectorOfQAbstractTextureImage,
37285            i,
37286            t,
37287        )
37288    }
37289
37290    /// <p>This is an overloaded function.</p>
37291    ///
37292    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::insert(int i, int n, const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37293    ///
37294    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
37295    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
37296    /// <p>Example:</p>
37297    /// <pre class="cpp">
37298    ///
37299    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
37300    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
37301    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
37302    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
37303    ///
37304    /// </pre></div>
37305    #[inline(always)]
37306    pub unsafe fn insert_3a(
37307        &self,
37308        i: ::std::os::raw::c_int,
37309        n: ::std::os::raw::c_int,
37310        t: *const *mut crate::QAbstractTextureImage,
37311    ) {
37312        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_insert1(
37313            self as *const crate::QVectorOfQAbstractTextureImage
37314                as *mut crate::QVectorOfQAbstractTextureImage,
37315            i,
37316            n,
37317            t,
37318        )
37319    }
37320
37321    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAbstractTextureImage*>::isDetached() const```</span>.
37322    #[inline(always)]
37323    pub unsafe fn is_detached(&self) -> bool {
37324        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_isDetached(
37325            self as *const crate::QVectorOfQAbstractTextureImage,
37326        )
37327    }
37328
37329    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
37330    ///
37331    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAbstractTextureImage*>::isEmpty() const```</span>.
37332    ///
37333    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
37334    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
37335    #[inline(always)]
37336    pub unsafe fn is_empty(&self) -> bool {
37337        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_isEmpty(
37338            self as *const crate::QVectorOfQAbstractTextureImage,
37339        )
37340    }
37341
37342    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAbstractTextureImage*>::isSharedWith(const QVector<Qt3DRender::QAbstractTextureImage*>& other) const```</span>.
37343    #[inline(always)]
37344    pub unsafe fn is_shared_with(
37345        &self,
37346        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
37347    ) -> bool {
37348        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_isSharedWith(self as *const crate::QVectorOfQAbstractTextureImage, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(other).as_raw_ptr())
37349    }
37350
37351    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
37352    ///
37353    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::last()```</span>.
37354    ///
37355    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
37356    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
37357    #[inline(always)]
37358    pub unsafe fn last_mut(&self) -> *mut *mut crate::QAbstractTextureImage {
37359        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_last(
37360            self as *const crate::QVectorOfQAbstractTextureImage
37361                as *mut crate::QVectorOfQAbstractTextureImage,
37362        )
37363    }
37364
37365    /// <p>This is an overloaded function.</p>
37366    ///
37367    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage*& QVector<Qt3DRender::QAbstractTextureImage*>::last() const```</span>.
37368    ///
37369    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
37370    #[inline(always)]
37371    pub unsafe fn last(&self) -> *const *mut crate::QAbstractTextureImage {
37372        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_last1(
37373            self as *const crate::QVectorOfQAbstractTextureImage,
37374        )
37375    }
37376
37377    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
37378    ///
37379    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::lastIndexOf(const Qt3DRender::QAbstractTextureImage*& t, int from = …) const```</span>.
37380    ///
37381    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
37382    /// <p>Example:</p>
37383    /// <pre class="cpp">
37384    ///
37385    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
37386    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
37387    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
37388    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
37389    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
37390    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
37391    ///
37392    /// </pre>
37393    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
37394    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
37395    #[inline(always)]
37396    pub unsafe fn last_index_of_2a(
37397        &self,
37398        t: *const *mut crate::QAbstractTextureImage,
37399        from: ::std::os::raw::c_int,
37400    ) -> ::std::os::raw::c_int {
37401        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_lastIndexOf(
37402            self as *const crate::QVectorOfQAbstractTextureImage,
37403            t,
37404            from,
37405        )
37406    }
37407
37408    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
37409    ///
37410    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::lastIndexOf(const Qt3DRender::QAbstractTextureImage*& t) const```</span>.
37411    ///
37412    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
37413    /// <p>Example:</p>
37414    /// <pre class="cpp">
37415    ///
37416    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
37417    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
37418    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
37419    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
37420    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
37421    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
37422    ///
37423    /// </pre>
37424    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
37425    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
37426    #[inline(always)]
37427    pub unsafe fn last_index_of_1a(
37428        &self,
37429        t: *const *mut crate::QAbstractTextureImage,
37430    ) -> ::std::os::raw::c_int {
37431        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_lastIndexOf1(
37432            self as *const crate::QVectorOfQAbstractTextureImage,
37433            t,
37434        )
37435    }
37436
37437    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
37438    ///
37439    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::length() const```</span>.
37440    ///
37441    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
37442    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
37443    /// <p>This function was introduced in  Qt 5.2.</p>
37444    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
37445    #[inline(always)]
37446    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
37447        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_length(
37448            self as *const crate::QVectorOfQAbstractTextureImage,
37449        )
37450    }
37451
37452    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
37453    ///
37454    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*> QVector<Qt3DRender::QAbstractTextureImage*>::mid(int pos, int len = …) const```</span>.
37455    ///
37456    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
37457    #[inline(always)]
37458    pub unsafe fn mid_2a(
37459        &self,
37460        pos: ::std::os::raw::c_int,
37461        len: ::std::os::raw::c_int,
37462    ) -> ::cpp_core::CppBox<crate::QVectorOfQAbstractTextureImage> {
37463        let ffi_result = {
37464            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_mid(
37465                self as *const crate::QVectorOfQAbstractTextureImage,
37466                pos,
37467                len,
37468            )
37469        };
37470        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
37471    }
37472
37473    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
37474    ///
37475    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*> QVector<Qt3DRender::QAbstractTextureImage*>::mid(int pos) const```</span>.
37476    ///
37477    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
37478    #[inline(always)]
37479    pub unsafe fn mid_1a(
37480        &self,
37481        pos: ::std::os::raw::c_int,
37482    ) -> ::cpp_core::CppBox<crate::QVectorOfQAbstractTextureImage> {
37483        let ffi_result = {
37484            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_mid1(
37485                self as *const crate::QVectorOfQAbstractTextureImage,
37486                pos,
37487            )
37488        };
37489        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
37490    }
37491
37492    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
37493    ///
37494    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::move(int from, int to)```</span>.
37495    ///
37496    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
37497    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
37498    /// <p>This function was introduced in  Qt 5.6.</p>
37499    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
37500    #[inline(always)]
37501    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
37502        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_move(
37503            self as *const crate::QVectorOfQAbstractTextureImage
37504                as *mut crate::QVectorOfQAbstractTextureImage,
37505            from,
37506            to,
37507        )
37508    }
37509
37510    /// <p>Constructs an empty vector.</p>
37511    ///
37512    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QAbstractTextureImage*>::QVector()```</span>.
37513    ///
37514    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
37515    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
37516    #[inline(always)]
37517    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQAbstractTextureImage> {
37518        let ffi_result = {
37519            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_QVector(
37520            )
37521        };
37522        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
37523    }
37524
37525    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
37526    ///
37527    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QAbstractTextureImage*>::QVector(int size)```</span>.
37528    ///
37529    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
37530    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
37531    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
37532    #[inline(always)]
37533    pub unsafe fn new_1a(
37534        size: ::std::os::raw::c_int,
37535    ) -> ::cpp_core::CppBox<crate::QVectorOfQAbstractTextureImage> {
37536        let ffi_result = {
37537            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_QVector1(
37538                size,
37539            )
37540        };
37541        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
37542    }
37543
37544    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
37545    ///
37546    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QAbstractTextureImage*>::QVector(int size, const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37547    ///
37548    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
37549    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
37550    #[inline(always)]
37551    pub unsafe fn new_2a(
37552        size: ::std::os::raw::c_int,
37553        t: *const *mut crate::QAbstractTextureImage,
37554    ) -> ::cpp_core::CppBox<crate::QVectorOfQAbstractTextureImage> {
37555        let ffi_result = {
37556            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_QVector2(
37557                size, t,
37558            )
37559        };
37560        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
37561    }
37562
37563    /// <p>Constructs a copy of <i>other</i>.</p>
37564    ///
37565    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QAbstractTextureImage*>::QVector(const QVector<Qt3DRender::QAbstractTextureImage*>& v)```</span>.
37566    ///
37567    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
37568    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
37569    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
37570    #[inline(always)]
37571    pub unsafe fn new_copy(
37572        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
37573    ) -> ::cpp_core::CppBox<crate::QVectorOfQAbstractTextureImage> {
37574        let ffi_result = {
37575            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_QVector3(::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(v).as_raw_ptr())
37576        };
37577        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
37578    }
37579
37580    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
37581    ///
37582    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::pop_back()```</span>.
37583    ///
37584    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
37585    #[inline(always)]
37586    pub unsafe fn pop_back(&self) {
37587        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_pop_back(
37588            self as *const crate::QVectorOfQAbstractTextureImage
37589                as *mut crate::QVectorOfQAbstractTextureImage,
37590        )
37591    }
37592
37593    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
37594    ///
37595    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::pop_front()```</span>.
37596    ///
37597    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
37598    #[inline(always)]
37599    pub unsafe fn pop_front(&self) {
37600        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_pop_front(
37601            self as *const crate::QVectorOfQAbstractTextureImage
37602                as *mut crate::QVectorOfQAbstractTextureImage,
37603        )
37604    }
37605
37606    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
37607    ///
37608    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::prepend(const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37609    ///
37610    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
37611    /// <p>Example:</p>
37612    /// <pre class="cpp">
37613    ///
37614    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
37615    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
37616    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
37617    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
37618    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
37619    ///
37620    /// </pre>
37621    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
37622    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
37623    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
37624    #[inline(always)]
37625    pub unsafe fn prepend(&self, t: *const *mut crate::QAbstractTextureImage) {
37626        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_prepend(
37627            self as *const crate::QVectorOfQAbstractTextureImage
37628                as *mut crate::QVectorOfQAbstractTextureImage,
37629            t,
37630        )
37631    }
37632
37633    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
37634    ///
37635    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::push_back(const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37636    ///
37637    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
37638    #[inline(always)]
37639    pub unsafe fn push_back(&self, t: *const *mut crate::QAbstractTextureImage) {
37640        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_push_back(
37641            self as *const crate::QVectorOfQAbstractTextureImage
37642                as *mut crate::QVectorOfQAbstractTextureImage,
37643            t,
37644        )
37645    }
37646
37647    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
37648    ///
37649    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::push_front(const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37650    ///
37651    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
37652    #[inline(always)]
37653    pub unsafe fn push_front(&self, t: *const *mut crate::QAbstractTextureImage) {
37654        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_push_front(
37655            self as *const crate::QVectorOfQAbstractTextureImage
37656                as *mut crate::QVectorOfQAbstractTextureImage,
37657            t,
37658        )
37659    }
37660
37661    /// <p>This is an overloaded function.</p>
37662    ///
37663    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::remove(int i)```</span>.
37664    ///
37665    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
37666    /// <p>Removes the element at index position <i>i</i>.</p>
37667    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
37668    #[inline(always)]
37669    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
37670        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_remove(
37671            self as *const crate::QVectorOfQAbstractTextureImage
37672                as *mut crate::QVectorOfQAbstractTextureImage,
37673            i,
37674        )
37675    }
37676
37677    /// <p>This is an overloaded function.</p>
37678    ///
37679    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::remove(int i, int n)```</span>.
37680    ///
37681    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
37682    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
37683    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
37684    #[inline(always)]
37685    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
37686        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_remove1(
37687            self as *const crate::QVectorOfQAbstractTextureImage
37688                as *mut crate::QVectorOfQAbstractTextureImage,
37689            i,
37690            n,
37691        )
37692    }
37693
37694    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
37695    ///
37696    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::removeAll(const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37697    ///
37698    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
37699    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
37700    /// <p>This function was introduced in  Qt 5.4.</p>
37701    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
37702    #[inline(always)]
37703    pub unsafe fn remove_all(
37704        &self,
37705        t: *const *mut crate::QAbstractTextureImage,
37706    ) -> ::std::os::raw::c_int {
37707        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_removeAll(
37708            self as *const crate::QVectorOfQAbstractTextureImage
37709                as *mut crate::QVectorOfQAbstractTextureImage,
37710            t,
37711        )
37712    }
37713
37714    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
37715    ///
37716    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::removeAt(int i)```</span>.
37717    ///
37718    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
37719    /// <pre class="cpp">
37720    ///
37721    ///   remove(i);
37722    ///
37723    /// </pre>
37724    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
37725    /// <p>This function was introduced in  Qt 5.2.</p>
37726    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
37727    #[inline(always)]
37728    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
37729        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_removeAt(
37730            self as *const crate::QVectorOfQAbstractTextureImage
37731                as *mut crate::QVectorOfQAbstractTextureImage,
37732            i,
37733        )
37734    }
37735
37736    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
37737    ///
37738    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::removeFirst()```</span>.
37739    ///
37740    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
37741    /// <p>This function was introduced in  Qt 5.1.</p>
37742    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
37743    #[inline(always)]
37744    pub unsafe fn remove_first(&self) {
37745        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_removeFirst(
37746            self as *const crate::QVectorOfQAbstractTextureImage
37747                as *mut crate::QVectorOfQAbstractTextureImage,
37748        )
37749    }
37750
37751    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
37752    ///
37753    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::removeLast()```</span>.
37754    ///
37755    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
37756    /// <p>This function was introduced in  Qt 5.1.</p>
37757    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
37758    #[inline(always)]
37759    pub unsafe fn remove_last(&self) {
37760        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_removeLast(
37761            self as *const crate::QVectorOfQAbstractTextureImage
37762                as *mut crate::QVectorOfQAbstractTextureImage,
37763        )
37764    }
37765
37766    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
37767    ///
37768    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAbstractTextureImage*>::removeOne(const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37769    ///
37770    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
37771    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
37772    /// <p>This function was introduced in  Qt 5.4.</p>
37773    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
37774    #[inline(always)]
37775    pub unsafe fn remove_one(&self, t: *const *mut crate::QAbstractTextureImage) -> bool {
37776        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_removeOne(
37777            self as *const crate::QVectorOfQAbstractTextureImage
37778                as *mut crate::QVectorOfQAbstractTextureImage,
37779            t,
37780        )
37781    }
37782
37783    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
37784    ///
37785    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::replace(int i, const Qt3DRender::QAbstractTextureImage*& t)```</span>.
37786    ///
37787    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
37788    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
37789    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
37790    #[inline(always)]
37791    pub unsafe fn replace(
37792        &self,
37793        i: ::std::os::raw::c_int,
37794        t: *const *mut crate::QAbstractTextureImage,
37795    ) {
37796        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_replace(
37797            self as *const crate::QVectorOfQAbstractTextureImage
37798                as *mut crate::QVectorOfQAbstractTextureImage,
37799            i,
37800            t,
37801        )
37802    }
37803
37804    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
37805    ///
37806    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::reserve(int size)```</span>.
37807    ///
37808    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
37809    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
37810    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
37811    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
37812    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
37813    #[inline(always)]
37814    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
37815        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_reserve(
37816            self as *const crate::QVectorOfQAbstractTextureImage
37817                as *mut crate::QVectorOfQAbstractTextureImage,
37818            size,
37819        )
37820    }
37821
37822    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
37823    ///
37824    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::resize(int size)```</span>.
37825    ///
37826    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
37827    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
37828    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
37829    #[inline(always)]
37830    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
37831        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_resize(
37832            self as *const crate::QVectorOfQAbstractTextureImage
37833                as *mut crate::QVectorOfQAbstractTextureImage,
37834            size,
37835        )
37836    }
37837
37838    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::setSharable(bool sharable)```</span>.
37839    #[inline(always)]
37840    pub unsafe fn set_sharable(&self, sharable: bool) {
37841        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_setSharable(
37842            self as *const crate::QVectorOfQAbstractTextureImage
37843                as *mut crate::QVectorOfQAbstractTextureImage,
37844            sharable,
37845        )
37846    }
37847
37848    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
37849    ///
37850    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::shrink_to_fit()```</span>.
37851    ///
37852    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
37853    /// <p>This function was introduced in  Qt 5.10.</p></div>
37854    #[inline(always)]
37855    #[cfg_attr(
37856        feature = "ritual_rustdoc_nightly",
37857        doc(cfg(any(
37858            cpp_lib_version = "5.11.3",
37859            cpp_lib_version = "5.12.2",
37860            cpp_lib_version = "5.13.0",
37861            cpp_lib_version = "5.14.0"
37862        )))
37863    )]
37864    #[cfg(any(
37865        any(
37866            cpp_lib_version = "5.11.3",
37867            cpp_lib_version = "5.12.2",
37868            cpp_lib_version = "5.13.0",
37869            cpp_lib_version = "5.14.0"
37870        ),
37871        feature = "ritual_rustdoc"
37872    ))]
37873    pub unsafe fn shrink_to_fit(&self) {
37874        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_shrink_to_fit(self as *const crate::QVectorOfQAbstractTextureImage as *mut crate::QVectorOfQAbstractTextureImage)
37875    }
37876
37877    /// <p>Returns the number of items in the vector.</p>
37878    ///
37879    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::size() const```</span>.
37880    ///
37881    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
37882    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
37883    #[inline(always)]
37884    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
37885        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_size(
37886            self as *const crate::QVectorOfQAbstractTextureImage,
37887        )
37888    }
37889
37890    /// <p>Releases any memory not required to store the items.</p>
37891    ///
37892    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::squeeze()```</span>.
37893    ///
37894    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
37895    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
37896    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
37897    #[inline(always)]
37898    pub unsafe fn squeeze(&self) {
37899        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_squeeze(
37900            self as *const crate::QVectorOfQAbstractTextureImage
37901                as *mut crate::QVectorOfQAbstractTextureImage,
37902        )
37903    }
37904
37905    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
37906    ///
37907    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAbstractTextureImage*>::startsWith(const Qt3DRender::QAbstractTextureImage*& t) const```</span>.
37908    ///
37909    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
37910    /// <p>This function was introduced in  Qt 4.5.</p>
37911    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
37912    #[inline(always)]
37913    pub unsafe fn starts_with(&self, t: *const *mut crate::QAbstractTextureImage) -> bool {
37914        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_startsWith(
37915            self as *const crate::QVectorOfQAbstractTextureImage,
37916            t,
37917        )
37918    }
37919
37920    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
37921    ///
37922    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::swap(QVector<Qt3DRender::QAbstractTextureImage*>& other)```</span>.
37923    ///
37924    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
37925    /// <p>This function was introduced in  Qt 4.8.</p></div>
37926    #[inline(always)]
37927    pub unsafe fn swap(
37928        &self,
37929        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
37930    ) {
37931        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_swap(self as *const crate::QVectorOfQAbstractTextureImage as *mut crate::QVectorOfQAbstractTextureImage, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(other).as_raw_ptr() as *mut crate::QVectorOfQAbstractTextureImage)
37932    }
37933
37934    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
37935    ///
37936    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAbstractTextureImage*>::swapItemsAt(int i, int j)```</span>.
37937    ///
37938    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
37939    /// <p>This function was introduced in  Qt 5.14.</p></div>
37940    #[inline(always)]
37941    #[cfg_attr(
37942        feature = "ritual_rustdoc_nightly",
37943        doc(cfg(cpp_lib_version = "5.14.0"))
37944    )]
37945    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
37946    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
37947        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_swapItemsAt(
37948            self as *const crate::QVectorOfQAbstractTextureImage
37949                as *mut crate::QVectorOfQAbstractTextureImage,
37950            i,
37951            j,
37952        )
37953    }
37954
37955    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
37956    ///
37957    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* QVector<Qt3DRender::QAbstractTextureImage*>::takeAt(int i)```</span>.
37958    ///
37959    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
37960    /// <p>Equivalent to</p>
37961    /// <pre class="cpp">
37962    ///
37963    ///   T t <span class="operator">=</span> at(i);
37964    ///   remove(i);
37965    ///   <span class="keyword">return</span> t;
37966    ///
37967    /// </pre>
37968    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
37969    /// <p>This function was introduced in  Qt 5.2.</p>
37970    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
37971    #[inline(always)]
37972    pub unsafe fn take_at(
37973        &self,
37974        i: ::std::os::raw::c_int,
37975    ) -> ::qt_core::QPtr<crate::QAbstractTextureImage> {
37976        let ffi_result = {
37977            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_takeAt(
37978                self as *const crate::QVectorOfQAbstractTextureImage
37979                    as *mut crate::QVectorOfQAbstractTextureImage,
37980                i,
37981            )
37982        };
37983        ::qt_core::QPtr::from_raw(ffi_result)
37984    }
37985
37986    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
37987    ///
37988    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* QVector<Qt3DRender::QAbstractTextureImage*>::takeFirst()```</span>.
37989    ///
37990    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
37991    /// <p>This function was introduced in  Qt 5.1.</p>
37992    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
37993    #[inline(always)]
37994    pub unsafe fn take_first(&self) -> ::qt_core::QPtr<crate::QAbstractTextureImage> {
37995        let ffi_result = {
37996            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_takeFirst(self as *const crate::QVectorOfQAbstractTextureImage as *mut crate::QVectorOfQAbstractTextureImage)
37997        };
37998        ::qt_core::QPtr::from_raw(ffi_result)
37999    }
38000
38001    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
38002    ///
38003    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* QVector<Qt3DRender::QAbstractTextureImage*>::takeLast()```</span>.
38004    ///
38005    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
38006    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
38007    /// <p>This function was introduced in  Qt 5.1.</p>
38008    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
38009    #[inline(always)]
38010    pub unsafe fn take_last(&self) -> ::qt_core::QPtr<crate::QAbstractTextureImage> {
38011        let ffi_result = {
38012            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_takeLast(
38013                self as *const crate::QVectorOfQAbstractTextureImage
38014                    as *mut crate::QVectorOfQAbstractTextureImage,
38015            )
38016        };
38017        ::qt_core::QPtr::from_raw(ffi_result)
38018    }
38019
38020    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
38021    ///
38022    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* QVector<Qt3DRender::QAbstractTextureImage*>::value(int i) const```</span>.
38023    ///
38024    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
38025    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
38026    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
38027    #[inline(always)]
38028    pub unsafe fn value_1a(
38029        &self,
38030        i: ::std::os::raw::c_int,
38031    ) -> ::qt_core::QPtr<crate::QAbstractTextureImage> {
38032        let ffi_result = {
38033            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_value(
38034                self as *const crate::QVectorOfQAbstractTextureImage,
38035                i,
38036            )
38037        };
38038        ::qt_core::QPtr::from_raw(ffi_result)
38039    }
38040
38041    /// <p>This is an overloaded function.</p>
38042    ///
38043    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* QVector<Qt3DRender::QAbstractTextureImage*>::value(int i, const Qt3DRender::QAbstractTextureImage*& defaultValue) const```</span>.
38044    ///
38045    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
38046    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
38047    #[inline(always)]
38048    pub unsafe fn value_2a(
38049        &self,
38050        i: ::std::os::raw::c_int,
38051        default_value: *const *mut crate::QAbstractTextureImage,
38052    ) -> ::qt_core::QPtr<crate::QAbstractTextureImage> {
38053        let ffi_result = {
38054            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_value1(
38055                self as *const crate::QVectorOfQAbstractTextureImage,
38056                i,
38057                default_value,
38058            )
38059        };
38060        ::qt_core::QPtr::from_raw(ffi_result)
38061    }
38062}
38063
38064/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
38065///
38066/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QParameter*>```</span>.
38067///
38068/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
38069/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
38070/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
38071/// <ul>
38072/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
38073/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
38074/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
38075/// </ul>
38076/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
38077/// <pre class="cpp">
38078///
38079///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
38080///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
38081///
38082/// </pre>
38083/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
38084/// <pre class="cpp">
38085///
38086///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
38087///
38088/// </pre>
38089/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
38090/// <pre class="cpp">
38091///
38092///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
38093///
38094/// </pre>
38095/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
38096/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
38097/// <pre class="cpp">
38098///
38099///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
38100/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
38101///
38102/// </pre>
38103/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
38104/// <pre class="cpp">
38105///
38106///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
38107/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
38108/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
38109///   }
38110///
38111/// </pre>
38112/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
38113/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
38114/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
38115/// <pre class="cpp">
38116///
38117///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
38118///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
38119/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
38120///
38121/// </pre>
38122/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
38123/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
38124/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
38125/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
38126/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
38127/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
38128/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
38129/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
38130/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
38131/// <a name="more-information-on-using-qt-containers"></a>
38132/// <h4>More Information on Using Qt Containers</h4>
38133/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
38134#[repr(C)]
38135pub struct QVectorOfQParameter {
38136    _unused: u8,
38137}
38138impl QVectorOfQParameter {
38139    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
38140    ///
38141    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*>& QVector<Qt3DRender::QParameter*>::operator+=(const QVector<Qt3DRender::QParameter*>& l)```</span>.
38142    ///
38143    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
38144    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
38145    #[inline(always)]
38146    pub unsafe fn add_assign_q_vector_of_q_parameter(
38147        &self,
38148        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
38149    ) -> ::cpp_core::Ref<crate::QVectorOfQParameter> {
38150        let ffi_result = {
38151            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_operator__4(
38152                self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38153                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(l)
38154                    .as_raw_ptr(),
38155            )
38156        };
38157        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
38158    }
38159
38160    /// <p>This is an overloaded function.</p>
38161    ///
38162    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*>& QVector<Qt3DRender::QParameter*>::operator+=(const Qt3DRender::QParameter*& t)```</span>.
38163    ///
38164    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
38165    /// <p>Appends <i>value</i> to the vector.</p>
38166    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
38167    #[inline(always)]
38168    pub unsafe fn add_assign_q_parameter(
38169        &self,
38170        t: *const *mut crate::QParameter,
38171    ) -> ::cpp_core::Ref<crate::QVectorOfQParameter> {
38172        let ffi_result = {
38173            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_operator__5(
38174                self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38175                t,
38176            )
38177        };
38178        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
38179    }
38180
38181    /// <p>Inserts <i>value</i> at the end of the vector.</p>
38182    ///
38183    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::append(const Qt3DRender::QParameter*& t)```</span>.
38184    ///
38185    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
38186    /// <p>Example:</p>
38187    /// <pre class="cpp">
38188    ///
38189    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
38190    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
38191    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
38192    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
38193    ///   vector<span class="operator">.</span>append(three);
38194    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
38195    ///   <span class="comment">// three: "three"</span>
38196    ///
38197    /// </pre>
38198    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
38199    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
38200    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
38201    #[inline(always)]
38202    pub unsafe fn append_q_parameter(&self, t: *const *mut crate::QParameter) {
38203        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_append(
38204            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38205            t,
38206        )
38207    }
38208
38209    /// <p>This is an overloaded function.</p>
38210    ///
38211    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::append(const QVector<Qt3DRender::QParameter*>& l)```</span>.
38212    ///
38213    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
38214    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
38215    /// <p>This function was introduced in  Qt 5.5.</p>
38216    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
38217    #[inline(always)]
38218    pub unsafe fn append_q_vector_of_q_parameter(
38219        &self,
38220        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
38221    ) {
38222        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_append2(
38223            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38224            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(l)
38225                .as_raw_ptr(),
38226        )
38227    }
38228
38229    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
38230    ///
38231    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::at(int i) const```</span>.
38232    ///
38233    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
38234    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
38235    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
38236    #[inline(always)]
38237    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QParameter {
38238        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_at(
38239            self as *const crate::QVectorOfQParameter,
38240            i,
38241        )
38242    }
38243
38244    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
38245    ///
38246    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::back()```</span>.
38247    ///
38248    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
38249    #[inline(always)]
38250    pub unsafe fn back_mut(&self) -> *mut *mut crate::QParameter {
38251        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_back(
38252            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38253        )
38254    }
38255
38256    /// <p>This is an overloaded function.</p>
38257    ///
38258    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::back() const```</span>.
38259    ///
38260    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
38261    #[inline(always)]
38262    pub unsafe fn back(&self) -> *const *mut crate::QParameter {
38263        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_back1(
38264            self as *const crate::QVectorOfQParameter,
38265        )
38266    }
38267
38268    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
38269    ///
38270    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::capacity() const```</span>.
38271    ///
38272    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
38273    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
38274    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
38275    #[inline(always)]
38276    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
38277        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_capacity(
38278            self as *const crate::QVectorOfQParameter,
38279        )
38280    }
38281
38282    /// <p>Removes all the elements from the vector.</p>
38283    ///
38284    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::clear()```</span>.
38285    ///
38286    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
38287    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
38288    ///
38289    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
38290    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
38291    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
38292    ///
38293    /// </pre>
38294    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
38295    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
38296    #[inline(always)]
38297    pub unsafe fn clear(&self) {
38298        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_clear(
38299            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38300        )
38301    }
38302
38303    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
38304    ///
38305    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter** QVector<Qt3DRender::QParameter*>::constData() const```</span>.
38306    ///
38307    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
38308    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
38309    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
38310    #[inline(always)]
38311    pub unsafe fn const_data(&self) -> *const *mut crate::QParameter {
38312        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_constData(
38313            self as *const crate::QVectorOfQParameter,
38314        )
38315    }
38316
38317    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
38318    ///
38319    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::constFirst() const```</span>.
38320    ///
38321    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
38322    /// <p>This function was introduced in  Qt 5.6.</p>
38323    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
38324    #[inline(always)]
38325    pub unsafe fn const_first(&self) -> *const *mut crate::QParameter {
38326        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_constFirst(
38327            self as *const crate::QVectorOfQParameter,
38328        )
38329    }
38330
38331    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
38332    ///
38333    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::constLast() const```</span>.
38334    ///
38335    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
38336    /// <p>This function was introduced in  Qt 5.6.</p>
38337    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
38338    #[inline(always)]
38339    pub unsafe fn const_last(&self) -> *const *mut crate::QParameter {
38340        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_constLast(
38341            self as *const crate::QVectorOfQParameter,
38342        )
38343    }
38344
38345    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
38346    ///
38347    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QParameter*>::contains(const Qt3DRender::QParameter*& t) const```</span>.
38348    ///
38349    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
38350    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
38351    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
38352    #[inline(always)]
38353    pub unsafe fn contains(&self, t: *const *mut crate::QParameter) -> bool {
38354        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_contains(
38355            self as *const crate::QVectorOfQParameter,
38356            t,
38357        )
38358    }
38359
38360    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
38361    ///
38362    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*>& QVector<Qt3DRender::QParameter*>::operator=(const QVector<Qt3DRender::QParameter*>& v)```</span>.
38363    ///
38364    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
38365    #[inline(always)]
38366    pub unsafe fn copy_from(
38367        &self,
38368        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
38369    ) -> ::cpp_core::Ref<crate::QVectorOfQParameter> {
38370        let ffi_result = {
38371            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_operator_(
38372                self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38373                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(v)
38374                    .as_raw_ptr(),
38375            )
38376        };
38377        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
38378    }
38379
38380    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
38381    ///
38382    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::count(const Qt3DRender::QParameter*& t) const```</span>.
38383    ///
38384    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
38385    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
38386    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
38387    #[inline(always)]
38388    pub unsafe fn count_1a(&self, t: *const *mut crate::QParameter) -> ::std::os::raw::c_int {
38389        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_count(
38390            self as *const crate::QVectorOfQParameter,
38391            t,
38392        )
38393    }
38394
38395    /// <p>This is an overloaded function.</p>
38396    ///
38397    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::count() const```</span>.
38398    ///
38399    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
38400    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
38401    #[inline(always)]
38402    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
38403        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_count1(
38404            self as *const crate::QVectorOfQParameter,
38405        )
38406    }
38407
38408    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
38409    ///
38410    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter** QVector<Qt3DRender::QParameter*>::data()```</span>.
38411    ///
38412    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
38413    /// <p>Example:</p>
38414    /// <pre class="cpp">
38415    ///
38416    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
38417    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
38418    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
38419    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
38420    ///
38421    /// </pre>
38422    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
38423    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
38424    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
38425    #[inline(always)]
38426    pub unsafe fn data_mut(&self) -> *mut *mut crate::QParameter {
38427        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_data(
38428            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38429        )
38430    }
38431
38432    /// <p>This is an overloaded function.</p>
38433    ///
38434    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter** QVector<Qt3DRender::QParameter*>::data() const```</span>.
38435    ///
38436    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
38437    #[inline(always)]
38438    pub unsafe fn data(&self) -> *const *mut crate::QParameter {
38439        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_data1(
38440            self as *const crate::QVectorOfQParameter,
38441        )
38442    }
38443
38444    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::detach()```</span>.
38445    #[inline(always)]
38446    pub unsafe fn detach(&self) {
38447        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_detach(
38448            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38449        )
38450    }
38451
38452    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
38453    ///
38454    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QParameter*>::empty() const```</span>.
38455    ///
38456    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
38457    #[inline(always)]
38458    pub unsafe fn empty(&self) -> bool {
38459        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_empty(
38460            self as *const crate::QVectorOfQParameter,
38461        )
38462    }
38463
38464    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
38465    ///
38466    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QParameter*>::endsWith(const Qt3DRender::QParameter*& t) const```</span>.
38467    ///
38468    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
38469    /// <p>This function was introduced in  Qt 4.5.</p>
38470    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
38471    #[inline(always)]
38472    pub unsafe fn ends_with(&self, t: *const *mut crate::QParameter) -> bool {
38473        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_endsWith(
38474            self as *const crate::QVectorOfQParameter,
38475            t,
38476        )
38477    }
38478
38479    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
38480    ///
38481    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*>& QVector<Qt3DRender::QParameter*>::fill(const Qt3DRender::QParameter*& t, int size = …)```</span>.
38482    ///
38483    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
38484    /// <p>Example:</p>
38485    /// <pre class="cpp">
38486    ///
38487    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
38488    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
38489    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
38490    ///
38491    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
38492    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
38493    ///
38494    /// </pre>
38495    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
38496    #[inline(always)]
38497    pub unsafe fn fill_2a(
38498        &self,
38499        t: *const *mut crate::QParameter,
38500        size: ::std::os::raw::c_int,
38501    ) -> ::cpp_core::Ref<crate::QVectorOfQParameter> {
38502        let ffi_result = {
38503            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_fill(
38504                self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38505                t,
38506                size,
38507            )
38508        };
38509        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
38510    }
38511
38512    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
38513    ///
38514    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*>& QVector<Qt3DRender::QParameter*>::fill(const Qt3DRender::QParameter*& t)```</span>.
38515    ///
38516    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
38517    /// <p>Example:</p>
38518    /// <pre class="cpp">
38519    ///
38520    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
38521    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
38522    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
38523    ///
38524    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
38525    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
38526    ///
38527    /// </pre>
38528    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
38529    #[inline(always)]
38530    pub unsafe fn fill_1a(
38531        &self,
38532        t: *const *mut crate::QParameter,
38533    ) -> ::cpp_core::Ref<crate::QVectorOfQParameter> {
38534        let ffi_result = {
38535            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_fill1(
38536                self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38537                t,
38538            )
38539        };
38540        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
38541    }
38542
38543    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
38544    ///
38545    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::first()```</span>.
38546    ///
38547    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
38548    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
38549    #[inline(always)]
38550    pub unsafe fn first_mut(&self) -> *mut *mut crate::QParameter {
38551        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_first(
38552            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38553        )
38554    }
38555
38556    /// <p>This is an overloaded function.</p>
38557    ///
38558    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::first() const```</span>.
38559    ///
38560    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
38561    #[inline(always)]
38562    pub unsafe fn first(&self) -> *const *mut crate::QParameter {
38563        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_first1(
38564            self as *const crate::QVectorOfQParameter,
38565        )
38566    }
38567
38568    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
38569    ///
38570    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::front()```</span>.
38571    ///
38572    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
38573    #[inline(always)]
38574    pub unsafe fn front_mut(&self) -> *mut *mut crate::QParameter {
38575        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_front(
38576            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38577        )
38578    }
38579
38580    /// <p>This is an overloaded function.</p>
38581    ///
38582    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::front() const```</span>.
38583    ///
38584    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
38585    #[inline(always)]
38586    pub unsafe fn front(&self) -> *const *mut crate::QParameter {
38587        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_front1(
38588            self as *const crate::QVectorOfQParameter,
38589        )
38590    }
38591
38592    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
38593    ///
38594    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::operator[](int i)```</span>.
38595    ///
38596    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
38597    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
38598    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
38599    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
38600    #[inline(always)]
38601    pub unsafe fn index_mut(&self, i: ::std::os::raw::c_int) -> *mut *mut crate::QParameter {
38602        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_operator__2(
38603            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38604            i,
38605        )
38606    }
38607
38608    /// <p>This is an overloaded function.</p>
38609    ///
38610    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::operator[](int i) const```</span>.
38611    ///
38612    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
38613    /// <p>Same as at(<i>i</i>).</p></div>
38614    #[inline(always)]
38615    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QParameter {
38616        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_operator__3(
38617            self as *const crate::QVectorOfQParameter,
38618            i,
38619        )
38620    }
38621
38622    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
38623    ///
38624    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::indexOf(const Qt3DRender::QParameter*& t, int from = …) const```</span>.
38625    ///
38626    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
38627    /// <p>Example:</p>
38628    /// <pre class="cpp">
38629    ///
38630    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
38631    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
38632    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
38633    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
38634    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
38635    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
38636    ///
38637    /// </pre>
38638    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
38639    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
38640    #[inline(always)]
38641    pub unsafe fn index_of_2a(
38642        &self,
38643        t: *const *mut crate::QParameter,
38644        from: ::std::os::raw::c_int,
38645    ) -> ::std::os::raw::c_int {
38646        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_indexOf(
38647            self as *const crate::QVectorOfQParameter,
38648            t,
38649            from,
38650        )
38651    }
38652
38653    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
38654    ///
38655    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::indexOf(const Qt3DRender::QParameter*& t) const```</span>.
38656    ///
38657    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
38658    /// <p>Example:</p>
38659    /// <pre class="cpp">
38660    ///
38661    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
38662    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
38663    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
38664    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
38665    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
38666    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
38667    ///
38668    /// </pre>
38669    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
38670    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
38671    #[inline(always)]
38672    pub unsafe fn index_of_1a(&self, t: *const *mut crate::QParameter) -> ::std::os::raw::c_int {
38673        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_indexOf1(
38674            self as *const crate::QVectorOfQParameter,
38675            t,
38676        )
38677    }
38678
38679    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
38680    ///
38681    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::insert(int i, const Qt3DRender::QParameter*& t)```</span>.
38682    ///
38683    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
38684    /// <p>Example:</p>
38685    /// <pre class="cpp">
38686    ///
38687    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
38688    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
38689    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
38690    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
38691    ///
38692    /// </pre>
38693    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
38694    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
38695    #[inline(always)]
38696    pub unsafe fn insert_2a(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QParameter) {
38697        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_insert(
38698            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38699            i,
38700            t,
38701        )
38702    }
38703
38704    /// <p>This is an overloaded function.</p>
38705    ///
38706    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::insert(int i, int n, const Qt3DRender::QParameter*& t)```</span>.
38707    ///
38708    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
38709    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
38710    /// <p>Example:</p>
38711    /// <pre class="cpp">
38712    ///
38713    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
38714    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
38715    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
38716    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
38717    ///
38718    /// </pre></div>
38719    #[inline(always)]
38720    pub unsafe fn insert_3a(
38721        &self,
38722        i: ::std::os::raw::c_int,
38723        n: ::std::os::raw::c_int,
38724        t: *const *mut crate::QParameter,
38725    ) {
38726        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_insert1(
38727            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38728            i,
38729            n,
38730            t,
38731        )
38732    }
38733
38734    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QParameter*>::isDetached() const```</span>.
38735    #[inline(always)]
38736    pub unsafe fn is_detached(&self) -> bool {
38737        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_isDetached(
38738            self as *const crate::QVectorOfQParameter,
38739        )
38740    }
38741
38742    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
38743    ///
38744    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QParameter*>::isEmpty() const```</span>.
38745    ///
38746    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
38747    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
38748    #[inline(always)]
38749    pub unsafe fn is_empty(&self) -> bool {
38750        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_isEmpty(
38751            self as *const crate::QVectorOfQParameter,
38752        )
38753    }
38754
38755    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QParameter*>::isSharedWith(const QVector<Qt3DRender::QParameter*>& other) const```</span>.
38756    #[inline(always)]
38757    pub unsafe fn is_shared_with(
38758        &self,
38759        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
38760    ) -> bool {
38761        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_isSharedWith(
38762            self as *const crate::QVectorOfQParameter,
38763            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(other)
38764                .as_raw_ptr(),
38765        )
38766    }
38767
38768    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
38769    ///
38770    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::last()```</span>.
38771    ///
38772    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
38773    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
38774    #[inline(always)]
38775    pub unsafe fn last_mut(&self) -> *mut *mut crate::QParameter {
38776        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_last(
38777            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38778        )
38779    }
38780
38781    /// <p>This is an overloaded function.</p>
38782    ///
38783    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter*& QVector<Qt3DRender::QParameter*>::last() const```</span>.
38784    ///
38785    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
38786    #[inline(always)]
38787    pub unsafe fn last(&self) -> *const *mut crate::QParameter {
38788        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_last1(
38789            self as *const crate::QVectorOfQParameter,
38790        )
38791    }
38792
38793    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
38794    ///
38795    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::lastIndexOf(const Qt3DRender::QParameter*& t, int from = …) const```</span>.
38796    ///
38797    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
38798    /// <p>Example:</p>
38799    /// <pre class="cpp">
38800    ///
38801    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
38802    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
38803    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
38804    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
38805    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
38806    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
38807    ///
38808    /// </pre>
38809    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
38810    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
38811    #[inline(always)]
38812    pub unsafe fn last_index_of_2a(
38813        &self,
38814        t: *const *mut crate::QParameter,
38815        from: ::std::os::raw::c_int,
38816    ) -> ::std::os::raw::c_int {
38817        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_lastIndexOf(
38818            self as *const crate::QVectorOfQParameter,
38819            t,
38820            from,
38821        )
38822    }
38823
38824    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
38825    ///
38826    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::lastIndexOf(const Qt3DRender::QParameter*& t) const```</span>.
38827    ///
38828    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
38829    /// <p>Example:</p>
38830    /// <pre class="cpp">
38831    ///
38832    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
38833    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
38834    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
38835    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
38836    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
38837    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
38838    ///
38839    /// </pre>
38840    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
38841    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
38842    #[inline(always)]
38843    pub unsafe fn last_index_of_1a(
38844        &self,
38845        t: *const *mut crate::QParameter,
38846    ) -> ::std::os::raw::c_int {
38847        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_lastIndexOf1(
38848            self as *const crate::QVectorOfQParameter,
38849            t,
38850        )
38851    }
38852
38853    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
38854    ///
38855    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::length() const```</span>.
38856    ///
38857    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
38858    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
38859    /// <p>This function was introduced in  Qt 5.2.</p>
38860    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
38861    #[inline(always)]
38862    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
38863        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_length(
38864            self as *const crate::QVectorOfQParameter,
38865        )
38866    }
38867
38868    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
38869    ///
38870    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*> QVector<Qt3DRender::QParameter*>::mid(int pos, int len = …) const```</span>.
38871    ///
38872    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
38873    #[inline(always)]
38874    pub unsafe fn mid_2a(
38875        &self,
38876        pos: ::std::os::raw::c_int,
38877        len: ::std::os::raw::c_int,
38878    ) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
38879        let ffi_result = {
38880            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_mid(
38881                self as *const crate::QVectorOfQParameter,
38882                pos,
38883                len,
38884            )
38885        };
38886        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
38887    }
38888
38889    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
38890    ///
38891    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*> QVector<Qt3DRender::QParameter*>::mid(int pos) const```</span>.
38892    ///
38893    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
38894    #[inline(always)]
38895    pub unsafe fn mid_1a(
38896        &self,
38897        pos: ::std::os::raw::c_int,
38898    ) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
38899        let ffi_result = {
38900            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_mid1(
38901                self as *const crate::QVectorOfQParameter,
38902                pos,
38903            )
38904        };
38905        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
38906    }
38907
38908    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
38909    ///
38910    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::move(int from, int to)```</span>.
38911    ///
38912    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
38913    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
38914    /// <p>This function was introduced in  Qt 5.6.</p>
38915    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
38916    #[inline(always)]
38917    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
38918        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_move(
38919            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
38920            from,
38921            to,
38922        )
38923    }
38924
38925    /// <p>Constructs an empty vector.</p>
38926    ///
38927    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QParameter*>::QVector()```</span>.
38928    ///
38929    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
38930    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
38931    #[inline(always)]
38932    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
38933        let ffi_result =
38934            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_QVector() };
38935        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
38936    }
38937
38938    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
38939    ///
38940    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QParameter*>::QVector(int size)```</span>.
38941    ///
38942    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
38943    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
38944    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
38945    #[inline(always)]
38946    pub unsafe fn new_1a(
38947        size: ::std::os::raw::c_int,
38948    ) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
38949        let ffi_result =
38950            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_QVector1(size) };
38951        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
38952    }
38953
38954    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
38955    ///
38956    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QParameter*>::QVector(int size, const Qt3DRender::QParameter*& t)```</span>.
38957    ///
38958    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
38959    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
38960    #[inline(always)]
38961    pub unsafe fn new_2a(
38962        size: ::std::os::raw::c_int,
38963        t: *const *mut crate::QParameter,
38964    ) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
38965        let ffi_result = {
38966            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_QVector2(size, t)
38967        };
38968        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
38969    }
38970
38971    /// <p>Constructs a copy of <i>other</i>.</p>
38972    ///
38973    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QParameter*>::QVector(const QVector<Qt3DRender::QParameter*>& v)```</span>.
38974    ///
38975    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
38976    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
38977    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
38978    #[inline(always)]
38979    pub unsafe fn new_copy(
38980        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
38981    ) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
38982        let ffi_result = {
38983            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_QVector3(
38984                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(v)
38985                    .as_raw_ptr(),
38986            )
38987        };
38988        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
38989    }
38990
38991    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
38992    ///
38993    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::pop_back()```</span>.
38994    ///
38995    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
38996    #[inline(always)]
38997    pub unsafe fn pop_back(&self) {
38998        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_pop_back(
38999            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39000        )
39001    }
39002
39003    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
39004    ///
39005    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::pop_front()```</span>.
39006    ///
39007    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
39008    #[inline(always)]
39009    pub unsafe fn pop_front(&self) {
39010        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_pop_front(
39011            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39012        )
39013    }
39014
39015    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
39016    ///
39017    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::prepend(const Qt3DRender::QParameter*& t)```</span>.
39018    ///
39019    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
39020    /// <p>Example:</p>
39021    /// <pre class="cpp">
39022    ///
39023    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
39024    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
39025    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
39026    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
39027    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
39028    ///
39029    /// </pre>
39030    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
39031    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
39032    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
39033    #[inline(always)]
39034    pub unsafe fn prepend(&self, t: *const *mut crate::QParameter) {
39035        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_prepend(
39036            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39037            t,
39038        )
39039    }
39040
39041    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
39042    ///
39043    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::push_back(const Qt3DRender::QParameter*& t)```</span>.
39044    ///
39045    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
39046    #[inline(always)]
39047    pub unsafe fn push_back(&self, t: *const *mut crate::QParameter) {
39048        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_push_back(
39049            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39050            t,
39051        )
39052    }
39053
39054    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
39055    ///
39056    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::push_front(const Qt3DRender::QParameter*& t)```</span>.
39057    ///
39058    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
39059    #[inline(always)]
39060    pub unsafe fn push_front(&self, t: *const *mut crate::QParameter) {
39061        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_push_front(
39062            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39063            t,
39064        )
39065    }
39066
39067    /// <p>This is an overloaded function.</p>
39068    ///
39069    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::remove(int i)```</span>.
39070    ///
39071    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
39072    /// <p>Removes the element at index position <i>i</i>.</p>
39073    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
39074    #[inline(always)]
39075    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
39076        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_remove(
39077            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39078            i,
39079        )
39080    }
39081
39082    /// <p>This is an overloaded function.</p>
39083    ///
39084    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::remove(int i, int n)```</span>.
39085    ///
39086    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
39087    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
39088    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
39089    #[inline(always)]
39090    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
39091        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_remove1(
39092            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39093            i,
39094            n,
39095        )
39096    }
39097
39098    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
39099    ///
39100    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::removeAll(const Qt3DRender::QParameter*& t)```</span>.
39101    ///
39102    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
39103    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
39104    /// <p>This function was introduced in  Qt 5.4.</p>
39105    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
39106    #[inline(always)]
39107    pub unsafe fn remove_all(&self, t: *const *mut crate::QParameter) -> ::std::os::raw::c_int {
39108        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_removeAll(
39109            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39110            t,
39111        )
39112    }
39113
39114    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
39115    ///
39116    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::removeAt(int i)```</span>.
39117    ///
39118    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
39119    /// <pre class="cpp">
39120    ///
39121    ///   remove(i);
39122    ///
39123    /// </pre>
39124    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
39125    /// <p>This function was introduced in  Qt 5.2.</p>
39126    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
39127    #[inline(always)]
39128    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
39129        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_removeAt(
39130            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39131            i,
39132        )
39133    }
39134
39135    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
39136    ///
39137    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::removeFirst()```</span>.
39138    ///
39139    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
39140    /// <p>This function was introduced in  Qt 5.1.</p>
39141    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
39142    #[inline(always)]
39143    pub unsafe fn remove_first(&self) {
39144        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_removeFirst(
39145            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39146        )
39147    }
39148
39149    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
39150    ///
39151    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::removeLast()```</span>.
39152    ///
39153    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
39154    /// <p>This function was introduced in  Qt 5.1.</p>
39155    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
39156    #[inline(always)]
39157    pub unsafe fn remove_last(&self) {
39158        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_removeLast(
39159            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39160        )
39161    }
39162
39163    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
39164    ///
39165    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QParameter*>::removeOne(const Qt3DRender::QParameter*& t)```</span>.
39166    ///
39167    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
39168    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
39169    /// <p>This function was introduced in  Qt 5.4.</p>
39170    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
39171    #[inline(always)]
39172    pub unsafe fn remove_one(&self, t: *const *mut crate::QParameter) -> bool {
39173        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_removeOne(
39174            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39175            t,
39176        )
39177    }
39178
39179    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
39180    ///
39181    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::replace(int i, const Qt3DRender::QParameter*& t)```</span>.
39182    ///
39183    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
39184    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
39185    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
39186    #[inline(always)]
39187    pub unsafe fn replace(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QParameter) {
39188        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_replace(
39189            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39190            i,
39191            t,
39192        )
39193    }
39194
39195    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
39196    ///
39197    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::reserve(int size)```</span>.
39198    ///
39199    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
39200    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
39201    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
39202    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
39203    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
39204    #[inline(always)]
39205    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
39206        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_reserve(
39207            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39208            size,
39209        )
39210    }
39211
39212    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
39213    ///
39214    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::resize(int size)```</span>.
39215    ///
39216    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
39217    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
39218    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
39219    #[inline(always)]
39220    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
39221        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_resize(
39222            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39223            size,
39224        )
39225    }
39226
39227    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::setSharable(bool sharable)```</span>.
39228    #[inline(always)]
39229    pub unsafe fn set_sharable(&self, sharable: bool) {
39230        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_setSharable(
39231            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39232            sharable,
39233        )
39234    }
39235
39236    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
39237    ///
39238    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::shrink_to_fit()```</span>.
39239    ///
39240    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
39241    /// <p>This function was introduced in  Qt 5.10.</p></div>
39242    #[inline(always)]
39243    #[cfg_attr(
39244        feature = "ritual_rustdoc_nightly",
39245        doc(cfg(any(
39246            cpp_lib_version = "5.11.3",
39247            cpp_lib_version = "5.12.2",
39248            cpp_lib_version = "5.13.0",
39249            cpp_lib_version = "5.14.0"
39250        )))
39251    )]
39252    #[cfg(any(
39253        any(
39254            cpp_lib_version = "5.11.3",
39255            cpp_lib_version = "5.12.2",
39256            cpp_lib_version = "5.13.0",
39257            cpp_lib_version = "5.14.0"
39258        ),
39259        feature = "ritual_rustdoc"
39260    ))]
39261    pub unsafe fn shrink_to_fit(&self) {
39262        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_shrink_to_fit(
39263            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39264        )
39265    }
39266
39267    /// <p>Returns the number of items in the vector.</p>
39268    ///
39269    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::size() const```</span>.
39270    ///
39271    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
39272    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
39273    #[inline(always)]
39274    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
39275        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_size(
39276            self as *const crate::QVectorOfQParameter,
39277        )
39278    }
39279
39280    /// <p>Releases any memory not required to store the items.</p>
39281    ///
39282    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::squeeze()```</span>.
39283    ///
39284    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
39285    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
39286    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
39287    #[inline(always)]
39288    pub unsafe fn squeeze(&self) {
39289        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_squeeze(
39290            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39291        )
39292    }
39293
39294    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
39295    ///
39296    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QParameter*>::startsWith(const Qt3DRender::QParameter*& t) const```</span>.
39297    ///
39298    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
39299    /// <p>This function was introduced in  Qt 4.5.</p>
39300    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
39301    #[inline(always)]
39302    pub unsafe fn starts_with(&self, t: *const *mut crate::QParameter) -> bool {
39303        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_startsWith(
39304            self as *const crate::QVectorOfQParameter,
39305            t,
39306        )
39307    }
39308
39309    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
39310    ///
39311    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::swap(QVector<Qt3DRender::QParameter*>& other)```</span>.
39312    ///
39313    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
39314    /// <p>This function was introduced in  Qt 4.8.</p></div>
39315    #[inline(always)]
39316    pub unsafe fn swap(
39317        &self,
39318        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
39319    ) {
39320        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_swap(
39321            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39322            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(other)
39323                .as_raw_ptr() as *mut crate::QVectorOfQParameter,
39324        )
39325    }
39326
39327    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
39328    ///
39329    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QParameter*>::swapItemsAt(int i, int j)```</span>.
39330    ///
39331    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
39332    /// <p>This function was introduced in  Qt 5.14.</p></div>
39333    #[inline(always)]
39334    #[cfg_attr(
39335        feature = "ritual_rustdoc_nightly",
39336        doc(cfg(cpp_lib_version = "5.14.0"))
39337    )]
39338    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
39339    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
39340        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_swapItemsAt(
39341            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39342            i,
39343            j,
39344        )
39345    }
39346
39347    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
39348    ///
39349    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter* QVector<Qt3DRender::QParameter*>::takeAt(int i)```</span>.
39350    ///
39351    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
39352    /// <p>Equivalent to</p>
39353    /// <pre class="cpp">
39354    ///
39355    ///   T t <span class="operator">=</span> at(i);
39356    ///   remove(i);
39357    ///   <span class="keyword">return</span> t;
39358    ///
39359    /// </pre>
39360    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
39361    /// <p>This function was introduced in  Qt 5.2.</p>
39362    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
39363    #[inline(always)]
39364    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QParameter> {
39365        let ffi_result = {
39366            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_takeAt(
39367                self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39368                i,
39369            )
39370        };
39371        ::qt_core::QPtr::from_raw(ffi_result)
39372    }
39373
39374    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
39375    ///
39376    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter* QVector<Qt3DRender::QParameter*>::takeFirst()```</span>.
39377    ///
39378    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
39379    /// <p>This function was introduced in  Qt 5.1.</p>
39380    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
39381    #[inline(always)]
39382    pub unsafe fn take_first(&self) -> ::qt_core::QPtr<crate::QParameter> {
39383        let ffi_result = {
39384            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_takeFirst(
39385                self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39386            )
39387        };
39388        ::qt_core::QPtr::from_raw(ffi_result)
39389    }
39390
39391    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
39392    ///
39393    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter* QVector<Qt3DRender::QParameter*>::takeLast()```</span>.
39394    ///
39395    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
39396    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
39397    /// <p>This function was introduced in  Qt 5.1.</p>
39398    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
39399    #[inline(always)]
39400    pub unsafe fn take_last(&self) -> ::qt_core::QPtr<crate::QParameter> {
39401        let ffi_result = {
39402            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_takeLast(
39403                self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
39404            )
39405        };
39406        ::qt_core::QPtr::from_raw(ffi_result)
39407    }
39408
39409    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
39410    ///
39411    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter* QVector<Qt3DRender::QParameter*>::value(int i) const```</span>.
39412    ///
39413    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
39414    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
39415    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
39416    #[inline(always)]
39417    pub unsafe fn value_1a(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QParameter> {
39418        let ffi_result = {
39419            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_value(
39420                self as *const crate::QVectorOfQParameter,
39421                i,
39422            )
39423        };
39424        ::qt_core::QPtr::from_raw(ffi_result)
39425    }
39426
39427    /// <p>This is an overloaded function.</p>
39428    ///
39429    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter* QVector<Qt3DRender::QParameter*>::value(int i, const Qt3DRender::QParameter*& defaultValue) const```</span>.
39430    ///
39431    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
39432    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
39433    #[inline(always)]
39434    pub unsafe fn value_2a(
39435        &self,
39436        i: ::std::os::raw::c_int,
39437        default_value: *const *mut crate::QParameter,
39438    ) -> ::qt_core::QPtr<crate::QParameter> {
39439        let ffi_result = {
39440            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_value1(
39441                self as *const crate::QVectorOfQParameter,
39442                i,
39443                default_value,
39444            )
39445        };
39446        ::qt_core::QPtr::from_raw(ffi_result)
39447    }
39448}
39449
39450/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
39451///
39452/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*>```</span>.
39453///
39454/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
39455/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
39456/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
39457/// <ul>
39458/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
39459/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
39460/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
39461/// </ul>
39462/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
39463/// <pre class="cpp">
39464///
39465///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
39466///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
39467///
39468/// </pre>
39469/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
39470/// <pre class="cpp">
39471///
39472///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
39473///
39474/// </pre>
39475/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
39476/// <pre class="cpp">
39477///
39478///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
39479///
39480/// </pre>
39481/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
39482/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
39483/// <pre class="cpp">
39484///
39485///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
39486/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
39487///
39488/// </pre>
39489/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
39490/// <pre class="cpp">
39491///
39492///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
39493/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
39494/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
39495///   }
39496///
39497/// </pre>
39498/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
39499/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
39500/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
39501/// <pre class="cpp">
39502///
39503///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
39504///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
39505/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
39506///
39507/// </pre>
39508/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
39509/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
39510/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
39511/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
39512/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
39513/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
39514/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
39515/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
39516/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
39517/// <a name="more-information-on-using-qt-containers"></a>
39518/// <h4>More Information on Using Qt Containers</h4>
39519/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
39520#[repr(C)]
39521pub struct QVectorOfQTechnique {
39522    _unused: u8,
39523}
39524impl QVectorOfQTechnique {
39525    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
39526    ///
39527    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*>& QVector<Qt3DRender::QTechnique*>::operator+=(const QVector<Qt3DRender::QTechnique*>& l)```</span>.
39528    ///
39529    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
39530    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
39531    #[inline(always)]
39532    pub unsafe fn add_assign_q_vector_of_q_technique(
39533        &self,
39534        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
39535    ) -> ::cpp_core::Ref<crate::QVectorOfQTechnique> {
39536        let ffi_result = {
39537            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_operator__4(
39538                self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39539                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(l)
39540                    .as_raw_ptr(),
39541            )
39542        };
39543        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
39544    }
39545
39546    /// <p>This is an overloaded function.</p>
39547    ///
39548    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*>& QVector<Qt3DRender::QTechnique*>::operator+=(const Qt3DRender::QTechnique*& t)```</span>.
39549    ///
39550    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
39551    /// <p>Appends <i>value</i> to the vector.</p>
39552    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
39553    #[inline(always)]
39554    pub unsafe fn add_assign_q_technique(
39555        &self,
39556        t: *const *mut crate::QTechnique,
39557    ) -> ::cpp_core::Ref<crate::QVectorOfQTechnique> {
39558        let ffi_result = {
39559            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_operator__5(
39560                self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39561                t,
39562            )
39563        };
39564        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
39565    }
39566
39567    /// <p>Inserts <i>value</i> at the end of the vector.</p>
39568    ///
39569    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::append(const Qt3DRender::QTechnique*& t)```</span>.
39570    ///
39571    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
39572    /// <p>Example:</p>
39573    /// <pre class="cpp">
39574    ///
39575    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
39576    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
39577    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
39578    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
39579    ///   vector<span class="operator">.</span>append(three);
39580    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
39581    ///   <span class="comment">// three: "three"</span>
39582    ///
39583    /// </pre>
39584    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
39585    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
39586    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
39587    #[inline(always)]
39588    pub unsafe fn append_q_technique(&self, t: *const *mut crate::QTechnique) {
39589        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_append(
39590            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39591            t,
39592        )
39593    }
39594
39595    /// <p>This is an overloaded function.</p>
39596    ///
39597    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::append(const QVector<Qt3DRender::QTechnique*>& l)```</span>.
39598    ///
39599    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
39600    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
39601    /// <p>This function was introduced in  Qt 5.5.</p>
39602    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
39603    #[inline(always)]
39604    pub unsafe fn append_q_vector_of_q_technique(
39605        &self,
39606        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
39607    ) {
39608        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_append2(
39609            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39610            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(l)
39611                .as_raw_ptr(),
39612        )
39613    }
39614
39615    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
39616    ///
39617    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::at(int i) const```</span>.
39618    ///
39619    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
39620    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
39621    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
39622    #[inline(always)]
39623    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QTechnique {
39624        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_at(
39625            self as *const crate::QVectorOfQTechnique,
39626            i,
39627        )
39628    }
39629
39630    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
39631    ///
39632    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::back()```</span>.
39633    ///
39634    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
39635    #[inline(always)]
39636    pub unsafe fn back_mut(&self) -> *mut *mut crate::QTechnique {
39637        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_back(
39638            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39639        )
39640    }
39641
39642    /// <p>This is an overloaded function.</p>
39643    ///
39644    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::back() const```</span>.
39645    ///
39646    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
39647    #[inline(always)]
39648    pub unsafe fn back(&self) -> *const *mut crate::QTechnique {
39649        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_back1(
39650            self as *const crate::QVectorOfQTechnique,
39651        )
39652    }
39653
39654    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
39655    ///
39656    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::capacity() const```</span>.
39657    ///
39658    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
39659    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
39660    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
39661    #[inline(always)]
39662    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
39663        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_capacity(
39664            self as *const crate::QVectorOfQTechnique,
39665        )
39666    }
39667
39668    /// <p>Removes all the elements from the vector.</p>
39669    ///
39670    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::clear()```</span>.
39671    ///
39672    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
39673    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
39674    ///
39675    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
39676    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
39677    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
39678    ///
39679    /// </pre>
39680    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
39681    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
39682    #[inline(always)]
39683    pub unsafe fn clear(&self) {
39684        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_clear(
39685            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39686        )
39687    }
39688
39689    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
39690    ///
39691    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique** QVector<Qt3DRender::QTechnique*>::constData() const```</span>.
39692    ///
39693    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
39694    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
39695    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
39696    #[inline(always)]
39697    pub unsafe fn const_data(&self) -> *const *mut crate::QTechnique {
39698        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_constData(
39699            self as *const crate::QVectorOfQTechnique,
39700        )
39701    }
39702
39703    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
39704    ///
39705    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::constFirst() const```</span>.
39706    ///
39707    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
39708    /// <p>This function was introduced in  Qt 5.6.</p>
39709    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
39710    #[inline(always)]
39711    pub unsafe fn const_first(&self) -> *const *mut crate::QTechnique {
39712        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_constFirst(
39713            self as *const crate::QVectorOfQTechnique,
39714        )
39715    }
39716
39717    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
39718    ///
39719    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::constLast() const```</span>.
39720    ///
39721    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
39722    /// <p>This function was introduced in  Qt 5.6.</p>
39723    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
39724    #[inline(always)]
39725    pub unsafe fn const_last(&self) -> *const *mut crate::QTechnique {
39726        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_constLast(
39727            self as *const crate::QVectorOfQTechnique,
39728        )
39729    }
39730
39731    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
39732    ///
39733    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QTechnique*>::contains(const Qt3DRender::QTechnique*& t) const```</span>.
39734    ///
39735    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
39736    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
39737    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
39738    #[inline(always)]
39739    pub unsafe fn contains(&self, t: *const *mut crate::QTechnique) -> bool {
39740        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_contains(
39741            self as *const crate::QVectorOfQTechnique,
39742            t,
39743        )
39744    }
39745
39746    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
39747    ///
39748    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*>& QVector<Qt3DRender::QTechnique*>::operator=(const QVector<Qt3DRender::QTechnique*>& v)```</span>.
39749    ///
39750    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
39751    #[inline(always)]
39752    pub unsafe fn copy_from(
39753        &self,
39754        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
39755    ) -> ::cpp_core::Ref<crate::QVectorOfQTechnique> {
39756        let ffi_result = {
39757            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_operator_(
39758                self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39759                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(v)
39760                    .as_raw_ptr(),
39761            )
39762        };
39763        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
39764    }
39765
39766    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
39767    ///
39768    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::count(const Qt3DRender::QTechnique*& t) const```</span>.
39769    ///
39770    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
39771    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
39772    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
39773    #[inline(always)]
39774    pub unsafe fn count_1a(&self, t: *const *mut crate::QTechnique) -> ::std::os::raw::c_int {
39775        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_count(
39776            self as *const crate::QVectorOfQTechnique,
39777            t,
39778        )
39779    }
39780
39781    /// <p>This is an overloaded function.</p>
39782    ///
39783    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::count() const```</span>.
39784    ///
39785    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
39786    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
39787    #[inline(always)]
39788    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
39789        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_count1(
39790            self as *const crate::QVectorOfQTechnique,
39791        )
39792    }
39793
39794    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
39795    ///
39796    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique** QVector<Qt3DRender::QTechnique*>::data()```</span>.
39797    ///
39798    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
39799    /// <p>Example:</p>
39800    /// <pre class="cpp">
39801    ///
39802    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
39803    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
39804    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
39805    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
39806    ///
39807    /// </pre>
39808    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
39809    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
39810    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
39811    #[inline(always)]
39812    pub unsafe fn data_mut(&self) -> *mut *mut crate::QTechnique {
39813        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_data(
39814            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39815        )
39816    }
39817
39818    /// <p>This is an overloaded function.</p>
39819    ///
39820    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique** QVector<Qt3DRender::QTechnique*>::data() const```</span>.
39821    ///
39822    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
39823    #[inline(always)]
39824    pub unsafe fn data(&self) -> *const *mut crate::QTechnique {
39825        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_data1(
39826            self as *const crate::QVectorOfQTechnique,
39827        )
39828    }
39829
39830    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::detach()```</span>.
39831    #[inline(always)]
39832    pub unsafe fn detach(&self) {
39833        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_detach(
39834            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39835        )
39836    }
39837
39838    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
39839    ///
39840    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QTechnique*>::empty() const```</span>.
39841    ///
39842    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
39843    #[inline(always)]
39844    pub unsafe fn empty(&self) -> bool {
39845        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_empty(
39846            self as *const crate::QVectorOfQTechnique,
39847        )
39848    }
39849
39850    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
39851    ///
39852    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QTechnique*>::endsWith(const Qt3DRender::QTechnique*& t) const```</span>.
39853    ///
39854    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
39855    /// <p>This function was introduced in  Qt 4.5.</p>
39856    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
39857    #[inline(always)]
39858    pub unsafe fn ends_with(&self, t: *const *mut crate::QTechnique) -> bool {
39859        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_endsWith(
39860            self as *const crate::QVectorOfQTechnique,
39861            t,
39862        )
39863    }
39864
39865    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
39866    ///
39867    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*>& QVector<Qt3DRender::QTechnique*>::fill(const Qt3DRender::QTechnique*& t, int size = …)```</span>.
39868    ///
39869    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
39870    /// <p>Example:</p>
39871    /// <pre class="cpp">
39872    ///
39873    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
39874    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
39875    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
39876    ///
39877    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
39878    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
39879    ///
39880    /// </pre>
39881    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
39882    #[inline(always)]
39883    pub unsafe fn fill_2a(
39884        &self,
39885        t: *const *mut crate::QTechnique,
39886        size: ::std::os::raw::c_int,
39887    ) -> ::cpp_core::Ref<crate::QVectorOfQTechnique> {
39888        let ffi_result = {
39889            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_fill(
39890                self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39891                t,
39892                size,
39893            )
39894        };
39895        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
39896    }
39897
39898    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
39899    ///
39900    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*>& QVector<Qt3DRender::QTechnique*>::fill(const Qt3DRender::QTechnique*& t)```</span>.
39901    ///
39902    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
39903    /// <p>Example:</p>
39904    /// <pre class="cpp">
39905    ///
39906    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
39907    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
39908    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
39909    ///
39910    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
39911    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
39912    ///
39913    /// </pre>
39914    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
39915    #[inline(always)]
39916    pub unsafe fn fill_1a(
39917        &self,
39918        t: *const *mut crate::QTechnique,
39919    ) -> ::cpp_core::Ref<crate::QVectorOfQTechnique> {
39920        let ffi_result = {
39921            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_fill1(
39922                self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39923                t,
39924            )
39925        };
39926        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
39927    }
39928
39929    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
39930    ///
39931    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::first()```</span>.
39932    ///
39933    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
39934    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
39935    #[inline(always)]
39936    pub unsafe fn first_mut(&self) -> *mut *mut crate::QTechnique {
39937        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_first(
39938            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39939        )
39940    }
39941
39942    /// <p>This is an overloaded function.</p>
39943    ///
39944    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::first() const```</span>.
39945    ///
39946    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
39947    #[inline(always)]
39948    pub unsafe fn first(&self) -> *const *mut crate::QTechnique {
39949        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_first1(
39950            self as *const crate::QVectorOfQTechnique,
39951        )
39952    }
39953
39954    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
39955    ///
39956    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::front()```</span>.
39957    ///
39958    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
39959    #[inline(always)]
39960    pub unsafe fn front_mut(&self) -> *mut *mut crate::QTechnique {
39961        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_front(
39962            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39963        )
39964    }
39965
39966    /// <p>This is an overloaded function.</p>
39967    ///
39968    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::front() const```</span>.
39969    ///
39970    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
39971    #[inline(always)]
39972    pub unsafe fn front(&self) -> *const *mut crate::QTechnique {
39973        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_front1(
39974            self as *const crate::QVectorOfQTechnique,
39975        )
39976    }
39977
39978    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
39979    ///
39980    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::operator[](int i)```</span>.
39981    ///
39982    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
39983    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
39984    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
39985    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
39986    #[inline(always)]
39987    pub unsafe fn index_mut(&self, i: ::std::os::raw::c_int) -> *mut *mut crate::QTechnique {
39988        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_operator__2(
39989            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
39990            i,
39991        )
39992    }
39993
39994    /// <p>This is an overloaded function.</p>
39995    ///
39996    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::operator[](int i) const```</span>.
39997    ///
39998    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
39999    /// <p>Same as at(<i>i</i>).</p></div>
40000    #[inline(always)]
40001    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QTechnique {
40002        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_operator__3(
40003            self as *const crate::QVectorOfQTechnique,
40004            i,
40005        )
40006    }
40007
40008    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
40009    ///
40010    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::indexOf(const Qt3DRender::QTechnique*& t, int from = …) const```</span>.
40011    ///
40012    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
40013    /// <p>Example:</p>
40014    /// <pre class="cpp">
40015    ///
40016    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
40017    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
40018    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
40019    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
40020    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
40021    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
40022    ///
40023    /// </pre>
40024    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
40025    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
40026    #[inline(always)]
40027    pub unsafe fn index_of_2a(
40028        &self,
40029        t: *const *mut crate::QTechnique,
40030        from: ::std::os::raw::c_int,
40031    ) -> ::std::os::raw::c_int {
40032        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_indexOf(
40033            self as *const crate::QVectorOfQTechnique,
40034            t,
40035            from,
40036        )
40037    }
40038
40039    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
40040    ///
40041    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::indexOf(const Qt3DRender::QTechnique*& t) const```</span>.
40042    ///
40043    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
40044    /// <p>Example:</p>
40045    /// <pre class="cpp">
40046    ///
40047    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
40048    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
40049    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
40050    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
40051    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
40052    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
40053    ///
40054    /// </pre>
40055    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
40056    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
40057    #[inline(always)]
40058    pub unsafe fn index_of_1a(&self, t: *const *mut crate::QTechnique) -> ::std::os::raw::c_int {
40059        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_indexOf1(
40060            self as *const crate::QVectorOfQTechnique,
40061            t,
40062        )
40063    }
40064
40065    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
40066    ///
40067    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::insert(int i, const Qt3DRender::QTechnique*& t)```</span>.
40068    ///
40069    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
40070    /// <p>Example:</p>
40071    /// <pre class="cpp">
40072    ///
40073    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
40074    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
40075    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
40076    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
40077    ///
40078    /// </pre>
40079    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
40080    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
40081    #[inline(always)]
40082    pub unsafe fn insert_2a(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QTechnique) {
40083        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_insert(
40084            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40085            i,
40086            t,
40087        )
40088    }
40089
40090    /// <p>This is an overloaded function.</p>
40091    ///
40092    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::insert(int i, int n, const Qt3DRender::QTechnique*& t)```</span>.
40093    ///
40094    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
40095    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
40096    /// <p>Example:</p>
40097    /// <pre class="cpp">
40098    ///
40099    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
40100    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
40101    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
40102    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
40103    ///
40104    /// </pre></div>
40105    #[inline(always)]
40106    pub unsafe fn insert_3a(
40107        &self,
40108        i: ::std::os::raw::c_int,
40109        n: ::std::os::raw::c_int,
40110        t: *const *mut crate::QTechnique,
40111    ) {
40112        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_insert1(
40113            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40114            i,
40115            n,
40116            t,
40117        )
40118    }
40119
40120    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QTechnique*>::isDetached() const```</span>.
40121    #[inline(always)]
40122    pub unsafe fn is_detached(&self) -> bool {
40123        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_isDetached(
40124            self as *const crate::QVectorOfQTechnique,
40125        )
40126    }
40127
40128    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
40129    ///
40130    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QTechnique*>::isEmpty() const```</span>.
40131    ///
40132    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
40133    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
40134    #[inline(always)]
40135    pub unsafe fn is_empty(&self) -> bool {
40136        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_isEmpty(
40137            self as *const crate::QVectorOfQTechnique,
40138        )
40139    }
40140
40141    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QTechnique*>::isSharedWith(const QVector<Qt3DRender::QTechnique*>& other) const```</span>.
40142    #[inline(always)]
40143    pub unsafe fn is_shared_with(
40144        &self,
40145        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
40146    ) -> bool {
40147        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_isSharedWith(
40148            self as *const crate::QVectorOfQTechnique,
40149            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(other)
40150                .as_raw_ptr(),
40151        )
40152    }
40153
40154    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
40155    ///
40156    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::last()```</span>.
40157    ///
40158    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
40159    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
40160    #[inline(always)]
40161    pub unsafe fn last_mut(&self) -> *mut *mut crate::QTechnique {
40162        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_last(
40163            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40164        )
40165    }
40166
40167    /// <p>This is an overloaded function.</p>
40168    ///
40169    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique*& QVector<Qt3DRender::QTechnique*>::last() const```</span>.
40170    ///
40171    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
40172    #[inline(always)]
40173    pub unsafe fn last(&self) -> *const *mut crate::QTechnique {
40174        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_last1(
40175            self as *const crate::QVectorOfQTechnique,
40176        )
40177    }
40178
40179    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
40180    ///
40181    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::lastIndexOf(const Qt3DRender::QTechnique*& t, int from = …) const```</span>.
40182    ///
40183    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
40184    /// <p>Example:</p>
40185    /// <pre class="cpp">
40186    ///
40187    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
40188    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
40189    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
40190    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
40191    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
40192    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
40193    ///
40194    /// </pre>
40195    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
40196    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
40197    #[inline(always)]
40198    pub unsafe fn last_index_of_2a(
40199        &self,
40200        t: *const *mut crate::QTechnique,
40201        from: ::std::os::raw::c_int,
40202    ) -> ::std::os::raw::c_int {
40203        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_lastIndexOf(
40204            self as *const crate::QVectorOfQTechnique,
40205            t,
40206            from,
40207        )
40208    }
40209
40210    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
40211    ///
40212    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::lastIndexOf(const Qt3DRender::QTechnique*& t) const```</span>.
40213    ///
40214    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
40215    /// <p>Example:</p>
40216    /// <pre class="cpp">
40217    ///
40218    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
40219    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
40220    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
40221    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
40222    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
40223    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
40224    ///
40225    /// </pre>
40226    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
40227    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
40228    #[inline(always)]
40229    pub unsafe fn last_index_of_1a(
40230        &self,
40231        t: *const *mut crate::QTechnique,
40232    ) -> ::std::os::raw::c_int {
40233        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_lastIndexOf1(
40234            self as *const crate::QVectorOfQTechnique,
40235            t,
40236        )
40237    }
40238
40239    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
40240    ///
40241    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::length() const```</span>.
40242    ///
40243    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
40244    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
40245    /// <p>This function was introduced in  Qt 5.2.</p>
40246    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
40247    #[inline(always)]
40248    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
40249        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_length(
40250            self as *const crate::QVectorOfQTechnique,
40251        )
40252    }
40253
40254    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
40255    ///
40256    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*> QVector<Qt3DRender::QTechnique*>::mid(int pos, int len = …) const```</span>.
40257    ///
40258    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
40259    #[inline(always)]
40260    pub unsafe fn mid_2a(
40261        &self,
40262        pos: ::std::os::raw::c_int,
40263        len: ::std::os::raw::c_int,
40264    ) -> ::cpp_core::CppBox<crate::QVectorOfQTechnique> {
40265        let ffi_result = {
40266            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_mid(
40267                self as *const crate::QVectorOfQTechnique,
40268                pos,
40269                len,
40270            )
40271        };
40272        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
40273    }
40274
40275    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
40276    ///
40277    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*> QVector<Qt3DRender::QTechnique*>::mid(int pos) const```</span>.
40278    ///
40279    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
40280    #[inline(always)]
40281    pub unsafe fn mid_1a(
40282        &self,
40283        pos: ::std::os::raw::c_int,
40284    ) -> ::cpp_core::CppBox<crate::QVectorOfQTechnique> {
40285        let ffi_result = {
40286            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_mid1(
40287                self as *const crate::QVectorOfQTechnique,
40288                pos,
40289            )
40290        };
40291        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
40292    }
40293
40294    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
40295    ///
40296    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::move(int from, int to)```</span>.
40297    ///
40298    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
40299    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
40300    /// <p>This function was introduced in  Qt 5.6.</p>
40301    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
40302    #[inline(always)]
40303    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
40304        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_move(
40305            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40306            from,
40307            to,
40308        )
40309    }
40310
40311    /// <p>Constructs an empty vector.</p>
40312    ///
40313    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QTechnique*>::QVector()```</span>.
40314    ///
40315    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
40316    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
40317    #[inline(always)]
40318    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQTechnique> {
40319        let ffi_result =
40320            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_QVector() };
40321        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
40322    }
40323
40324    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
40325    ///
40326    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QTechnique*>::QVector(int size)```</span>.
40327    ///
40328    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
40329    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
40330    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
40331    #[inline(always)]
40332    pub unsafe fn new_1a(
40333        size: ::std::os::raw::c_int,
40334    ) -> ::cpp_core::CppBox<crate::QVectorOfQTechnique> {
40335        let ffi_result =
40336            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_QVector1(size) };
40337        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
40338    }
40339
40340    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
40341    ///
40342    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QTechnique*>::QVector(int size, const Qt3DRender::QTechnique*& t)```</span>.
40343    ///
40344    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
40345    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
40346    #[inline(always)]
40347    pub unsafe fn new_2a(
40348        size: ::std::os::raw::c_int,
40349        t: *const *mut crate::QTechnique,
40350    ) -> ::cpp_core::CppBox<crate::QVectorOfQTechnique> {
40351        let ffi_result = {
40352            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_QVector2(size, t)
40353        };
40354        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
40355    }
40356
40357    /// <p>Constructs a copy of <i>other</i>.</p>
40358    ///
40359    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QTechnique*>::QVector(const QVector<Qt3DRender::QTechnique*>& v)```</span>.
40360    ///
40361    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
40362    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
40363    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
40364    #[inline(always)]
40365    pub unsafe fn new_copy(
40366        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
40367    ) -> ::cpp_core::CppBox<crate::QVectorOfQTechnique> {
40368        let ffi_result = {
40369            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_QVector3(
40370                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(v)
40371                    .as_raw_ptr(),
40372            )
40373        };
40374        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
40375    }
40376
40377    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
40378    ///
40379    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::pop_back()```</span>.
40380    ///
40381    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
40382    #[inline(always)]
40383    pub unsafe fn pop_back(&self) {
40384        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_pop_back(
40385            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40386        )
40387    }
40388
40389    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
40390    ///
40391    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::pop_front()```</span>.
40392    ///
40393    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
40394    #[inline(always)]
40395    pub unsafe fn pop_front(&self) {
40396        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_pop_front(
40397            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40398        )
40399    }
40400
40401    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
40402    ///
40403    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::prepend(const Qt3DRender::QTechnique*& t)```</span>.
40404    ///
40405    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
40406    /// <p>Example:</p>
40407    /// <pre class="cpp">
40408    ///
40409    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
40410    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
40411    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
40412    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
40413    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
40414    ///
40415    /// </pre>
40416    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
40417    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
40418    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
40419    #[inline(always)]
40420    pub unsafe fn prepend(&self, t: *const *mut crate::QTechnique) {
40421        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_prepend(
40422            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40423            t,
40424        )
40425    }
40426
40427    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
40428    ///
40429    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::push_back(const Qt3DRender::QTechnique*& t)```</span>.
40430    ///
40431    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
40432    #[inline(always)]
40433    pub unsafe fn push_back(&self, t: *const *mut crate::QTechnique) {
40434        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_push_back(
40435            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40436            t,
40437        )
40438    }
40439
40440    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
40441    ///
40442    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::push_front(const Qt3DRender::QTechnique*& t)```</span>.
40443    ///
40444    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
40445    #[inline(always)]
40446    pub unsafe fn push_front(&self, t: *const *mut crate::QTechnique) {
40447        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_push_front(
40448            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40449            t,
40450        )
40451    }
40452
40453    /// <p>This is an overloaded function.</p>
40454    ///
40455    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::remove(int i)```</span>.
40456    ///
40457    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
40458    /// <p>Removes the element at index position <i>i</i>.</p>
40459    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
40460    #[inline(always)]
40461    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
40462        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_remove(
40463            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40464            i,
40465        )
40466    }
40467
40468    /// <p>This is an overloaded function.</p>
40469    ///
40470    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::remove(int i, int n)```</span>.
40471    ///
40472    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
40473    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
40474    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
40475    #[inline(always)]
40476    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
40477        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_remove1(
40478            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40479            i,
40480            n,
40481        )
40482    }
40483
40484    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
40485    ///
40486    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::removeAll(const Qt3DRender::QTechnique*& t)```</span>.
40487    ///
40488    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
40489    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
40490    /// <p>This function was introduced in  Qt 5.4.</p>
40491    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
40492    #[inline(always)]
40493    pub unsafe fn remove_all(&self, t: *const *mut crate::QTechnique) -> ::std::os::raw::c_int {
40494        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_removeAll(
40495            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40496            t,
40497        )
40498    }
40499
40500    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
40501    ///
40502    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::removeAt(int i)```</span>.
40503    ///
40504    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
40505    /// <pre class="cpp">
40506    ///
40507    ///   remove(i);
40508    ///
40509    /// </pre>
40510    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
40511    /// <p>This function was introduced in  Qt 5.2.</p>
40512    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
40513    #[inline(always)]
40514    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
40515        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_removeAt(
40516            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40517            i,
40518        )
40519    }
40520
40521    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
40522    ///
40523    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::removeFirst()```</span>.
40524    ///
40525    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
40526    /// <p>This function was introduced in  Qt 5.1.</p>
40527    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
40528    #[inline(always)]
40529    pub unsafe fn remove_first(&self) {
40530        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_removeFirst(
40531            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40532        )
40533    }
40534
40535    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
40536    ///
40537    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::removeLast()```</span>.
40538    ///
40539    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
40540    /// <p>This function was introduced in  Qt 5.1.</p>
40541    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
40542    #[inline(always)]
40543    pub unsafe fn remove_last(&self) {
40544        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_removeLast(
40545            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40546        )
40547    }
40548
40549    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
40550    ///
40551    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QTechnique*>::removeOne(const Qt3DRender::QTechnique*& t)```</span>.
40552    ///
40553    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
40554    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
40555    /// <p>This function was introduced in  Qt 5.4.</p>
40556    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
40557    #[inline(always)]
40558    pub unsafe fn remove_one(&self, t: *const *mut crate::QTechnique) -> bool {
40559        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_removeOne(
40560            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40561            t,
40562        )
40563    }
40564
40565    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
40566    ///
40567    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::replace(int i, const Qt3DRender::QTechnique*& t)```</span>.
40568    ///
40569    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
40570    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
40571    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
40572    #[inline(always)]
40573    pub unsafe fn replace(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QTechnique) {
40574        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_replace(
40575            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40576            i,
40577            t,
40578        )
40579    }
40580
40581    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
40582    ///
40583    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::reserve(int size)```</span>.
40584    ///
40585    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
40586    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
40587    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
40588    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
40589    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
40590    #[inline(always)]
40591    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
40592        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_reserve(
40593            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40594            size,
40595        )
40596    }
40597
40598    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
40599    ///
40600    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::resize(int size)```</span>.
40601    ///
40602    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
40603    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
40604    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
40605    #[inline(always)]
40606    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
40607        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_resize(
40608            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40609            size,
40610        )
40611    }
40612
40613    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::setSharable(bool sharable)```</span>.
40614    #[inline(always)]
40615    pub unsafe fn set_sharable(&self, sharable: bool) {
40616        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_setSharable(
40617            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40618            sharable,
40619        )
40620    }
40621
40622    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
40623    ///
40624    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::shrink_to_fit()```</span>.
40625    ///
40626    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
40627    /// <p>This function was introduced in  Qt 5.10.</p></div>
40628    #[inline(always)]
40629    #[cfg_attr(
40630        feature = "ritual_rustdoc_nightly",
40631        doc(cfg(any(
40632            cpp_lib_version = "5.11.3",
40633            cpp_lib_version = "5.12.2",
40634            cpp_lib_version = "5.13.0",
40635            cpp_lib_version = "5.14.0"
40636        )))
40637    )]
40638    #[cfg(any(
40639        any(
40640            cpp_lib_version = "5.11.3",
40641            cpp_lib_version = "5.12.2",
40642            cpp_lib_version = "5.13.0",
40643            cpp_lib_version = "5.14.0"
40644        ),
40645        feature = "ritual_rustdoc"
40646    ))]
40647    pub unsafe fn shrink_to_fit(&self) {
40648        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_shrink_to_fit(
40649            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40650        )
40651    }
40652
40653    /// <p>Returns the number of items in the vector.</p>
40654    ///
40655    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::size() const```</span>.
40656    ///
40657    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
40658    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
40659    #[inline(always)]
40660    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
40661        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_size(
40662            self as *const crate::QVectorOfQTechnique,
40663        )
40664    }
40665
40666    /// <p>Releases any memory not required to store the items.</p>
40667    ///
40668    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::squeeze()```</span>.
40669    ///
40670    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
40671    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
40672    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
40673    #[inline(always)]
40674    pub unsafe fn squeeze(&self) {
40675        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_squeeze(
40676            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40677        )
40678    }
40679
40680    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
40681    ///
40682    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QTechnique*>::startsWith(const Qt3DRender::QTechnique*& t) const```</span>.
40683    ///
40684    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
40685    /// <p>This function was introduced in  Qt 4.5.</p>
40686    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
40687    #[inline(always)]
40688    pub unsafe fn starts_with(&self, t: *const *mut crate::QTechnique) -> bool {
40689        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_startsWith(
40690            self as *const crate::QVectorOfQTechnique,
40691            t,
40692        )
40693    }
40694
40695    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
40696    ///
40697    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::swap(QVector<Qt3DRender::QTechnique*>& other)```</span>.
40698    ///
40699    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
40700    /// <p>This function was introduced in  Qt 4.8.</p></div>
40701    #[inline(always)]
40702    pub unsafe fn swap(
40703        &self,
40704        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
40705    ) {
40706        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_swap(
40707            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40708            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(other)
40709                .as_raw_ptr() as *mut crate::QVectorOfQTechnique,
40710        )
40711    }
40712
40713    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
40714    ///
40715    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QTechnique*>::swapItemsAt(int i, int j)```</span>.
40716    ///
40717    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
40718    /// <p>This function was introduced in  Qt 5.14.</p></div>
40719    #[inline(always)]
40720    #[cfg_attr(
40721        feature = "ritual_rustdoc_nightly",
40722        doc(cfg(cpp_lib_version = "5.14.0"))
40723    )]
40724    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
40725    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
40726        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_swapItemsAt(
40727            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40728            i,
40729            j,
40730        )
40731    }
40732
40733    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
40734    ///
40735    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique* QVector<Qt3DRender::QTechnique*>::takeAt(int i)```</span>.
40736    ///
40737    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
40738    /// <p>Equivalent to</p>
40739    /// <pre class="cpp">
40740    ///
40741    ///   T t <span class="operator">=</span> at(i);
40742    ///   remove(i);
40743    ///   <span class="keyword">return</span> t;
40744    ///
40745    /// </pre>
40746    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
40747    /// <p>This function was introduced in  Qt 5.2.</p>
40748    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
40749    #[inline(always)]
40750    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QTechnique> {
40751        let ffi_result = {
40752            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_takeAt(
40753                self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40754                i,
40755            )
40756        };
40757        ::qt_core::QPtr::from_raw(ffi_result)
40758    }
40759
40760    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
40761    ///
40762    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique* QVector<Qt3DRender::QTechnique*>::takeFirst()```</span>.
40763    ///
40764    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
40765    /// <p>This function was introduced in  Qt 5.1.</p>
40766    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
40767    #[inline(always)]
40768    pub unsafe fn take_first(&self) -> ::qt_core::QPtr<crate::QTechnique> {
40769        let ffi_result = {
40770            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_takeFirst(
40771                self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40772            )
40773        };
40774        ::qt_core::QPtr::from_raw(ffi_result)
40775    }
40776
40777    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
40778    ///
40779    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique* QVector<Qt3DRender::QTechnique*>::takeLast()```</span>.
40780    ///
40781    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
40782    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
40783    /// <p>This function was introduced in  Qt 5.1.</p>
40784    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
40785    #[inline(always)]
40786    pub unsafe fn take_last(&self) -> ::qt_core::QPtr<crate::QTechnique> {
40787        let ffi_result = {
40788            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_takeLast(
40789                self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
40790            )
40791        };
40792        ::qt_core::QPtr::from_raw(ffi_result)
40793    }
40794
40795    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
40796    ///
40797    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique* QVector<Qt3DRender::QTechnique*>::value(int i) const```</span>.
40798    ///
40799    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
40800    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
40801    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
40802    #[inline(always)]
40803    pub unsafe fn value_1a(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QTechnique> {
40804        let ffi_result = {
40805            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_value(
40806                self as *const crate::QVectorOfQTechnique,
40807                i,
40808            )
40809        };
40810        ::qt_core::QPtr::from_raw(ffi_result)
40811    }
40812
40813    /// <p>This is an overloaded function.</p>
40814    ///
40815    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique* QVector<Qt3DRender::QTechnique*>::value(int i, const Qt3DRender::QTechnique*& defaultValue) const```</span>.
40816    ///
40817    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
40818    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
40819    #[inline(always)]
40820    pub unsafe fn value_2a(
40821        &self,
40822        i: ::std::os::raw::c_int,
40823        default_value: *const *mut crate::QTechnique,
40824    ) -> ::qt_core::QPtr<crate::QTechnique> {
40825        let ffi_result = {
40826            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_value1(
40827                self as *const crate::QVectorOfQTechnique,
40828                i,
40829                default_value,
40830            )
40831        };
40832        ::qt_core::QPtr::from_raw(ffi_result)
40833    }
40834}
40835
40836/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
40837///
40838/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*>```</span>.
40839///
40840/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
40841/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
40842/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
40843/// <ul>
40844/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
40845/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
40846/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
40847/// </ul>
40848/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
40849/// <pre class="cpp">
40850///
40851///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
40852///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
40853///
40854/// </pre>
40855/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
40856/// <pre class="cpp">
40857///
40858///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
40859///
40860/// </pre>
40861/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
40862/// <pre class="cpp">
40863///
40864///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
40865///
40866/// </pre>
40867/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
40868/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
40869/// <pre class="cpp">
40870///
40871///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
40872/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
40873///
40874/// </pre>
40875/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
40876/// <pre class="cpp">
40877///
40878///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
40879/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
40880/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
40881///   }
40882///
40883/// </pre>
40884/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
40885/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
40886/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
40887/// <pre class="cpp">
40888///
40889///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
40890///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
40891/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
40892///
40893/// </pre>
40894/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
40895/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
40896/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
40897/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
40898/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
40899/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
40900/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
40901/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
40902/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
40903/// <a name="more-information-on-using-qt-containers"></a>
40904/// <h4>More Information on Using Qt Containers</h4>
40905/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
40906#[repr(C)]
40907pub struct QVectorOfQAttribute {
40908    _unused: u8,
40909}
40910impl QVectorOfQAttribute {
40911    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
40912    ///
40913    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*>& QVector<Qt3DRender::QAttribute*>::operator+=(const QVector<Qt3DRender::QAttribute*>& l)```</span>.
40914    ///
40915    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
40916    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
40917    #[inline(always)]
40918    pub unsafe fn add_assign_q_vector_of_q_attribute(
40919        &self,
40920        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
40921    ) -> ::cpp_core::Ref<crate::QVectorOfQAttribute> {
40922        let ffi_result = {
40923            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_operator__4(
40924                self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
40925                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(l)
40926                    .as_raw_ptr(),
40927            )
40928        };
40929        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
40930    }
40931
40932    /// <p>This is an overloaded function.</p>
40933    ///
40934    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*>& QVector<Qt3DRender::QAttribute*>::operator+=(const Qt3DRender::QAttribute*& t)```</span>.
40935    ///
40936    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
40937    /// <p>Appends <i>value</i> to the vector.</p>
40938    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
40939    #[inline(always)]
40940    pub unsafe fn add_assign_q_attribute(
40941        &self,
40942        t: *const *mut crate::QAttribute,
40943    ) -> ::cpp_core::Ref<crate::QVectorOfQAttribute> {
40944        let ffi_result = {
40945            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_operator__5(
40946                self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
40947                t,
40948            )
40949        };
40950        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
40951    }
40952
40953    /// <p>Inserts <i>value</i> at the end of the vector.</p>
40954    ///
40955    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::append(const Qt3DRender::QAttribute*& t)```</span>.
40956    ///
40957    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
40958    /// <p>Example:</p>
40959    /// <pre class="cpp">
40960    ///
40961    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
40962    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
40963    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
40964    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
40965    ///   vector<span class="operator">.</span>append(three);
40966    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
40967    ///   <span class="comment">// three: "three"</span>
40968    ///
40969    /// </pre>
40970    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
40971    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
40972    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
40973    #[inline(always)]
40974    pub unsafe fn append_q_attribute(&self, t: *const *mut crate::QAttribute) {
40975        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_append(
40976            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
40977            t,
40978        )
40979    }
40980
40981    /// <p>This is an overloaded function.</p>
40982    ///
40983    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::append(const QVector<Qt3DRender::QAttribute*>& l)```</span>.
40984    ///
40985    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
40986    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
40987    /// <p>This function was introduced in  Qt 5.5.</p>
40988    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
40989    #[inline(always)]
40990    pub unsafe fn append_q_vector_of_q_attribute(
40991        &self,
40992        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
40993    ) {
40994        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_append2(
40995            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
40996            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(l)
40997                .as_raw_ptr(),
40998        )
40999    }
41000
41001    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
41002    ///
41003    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::at(int i) const```</span>.
41004    ///
41005    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
41006    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
41007    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
41008    #[inline(always)]
41009    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QAttribute {
41010        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_at(
41011            self as *const crate::QVectorOfQAttribute,
41012            i,
41013        )
41014    }
41015
41016    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
41017    ///
41018    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::back()```</span>.
41019    ///
41020    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
41021    #[inline(always)]
41022    pub unsafe fn back_mut(&self) -> *mut *mut crate::QAttribute {
41023        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_back(
41024            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41025        )
41026    }
41027
41028    /// <p>This is an overloaded function.</p>
41029    ///
41030    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::back() const```</span>.
41031    ///
41032    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
41033    #[inline(always)]
41034    pub unsafe fn back(&self) -> *const *mut crate::QAttribute {
41035        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_back1(
41036            self as *const crate::QVectorOfQAttribute,
41037        )
41038    }
41039
41040    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
41041    ///
41042    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::capacity() const```</span>.
41043    ///
41044    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
41045    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
41046    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
41047    #[inline(always)]
41048    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
41049        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_capacity(
41050            self as *const crate::QVectorOfQAttribute,
41051        )
41052    }
41053
41054    /// <p>Removes all the elements from the vector.</p>
41055    ///
41056    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::clear()```</span>.
41057    ///
41058    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
41059    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
41060    ///
41061    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
41062    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
41063    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
41064    ///
41065    /// </pre>
41066    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
41067    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
41068    #[inline(always)]
41069    pub unsafe fn clear(&self) {
41070        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_clear(
41071            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41072        )
41073    }
41074
41075    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
41076    ///
41077    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute** QVector<Qt3DRender::QAttribute*>::constData() const```</span>.
41078    ///
41079    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
41080    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
41081    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
41082    #[inline(always)]
41083    pub unsafe fn const_data(&self) -> *const *mut crate::QAttribute {
41084        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_constData(
41085            self as *const crate::QVectorOfQAttribute,
41086        )
41087    }
41088
41089    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
41090    ///
41091    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::constFirst() const```</span>.
41092    ///
41093    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
41094    /// <p>This function was introduced in  Qt 5.6.</p>
41095    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
41096    #[inline(always)]
41097    pub unsafe fn const_first(&self) -> *const *mut crate::QAttribute {
41098        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_constFirst(
41099            self as *const crate::QVectorOfQAttribute,
41100        )
41101    }
41102
41103    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
41104    ///
41105    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::constLast() const```</span>.
41106    ///
41107    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
41108    /// <p>This function was introduced in  Qt 5.6.</p>
41109    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
41110    #[inline(always)]
41111    pub unsafe fn const_last(&self) -> *const *mut crate::QAttribute {
41112        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_constLast(
41113            self as *const crate::QVectorOfQAttribute,
41114        )
41115    }
41116
41117    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
41118    ///
41119    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAttribute*>::contains(const Qt3DRender::QAttribute*& t) const```</span>.
41120    ///
41121    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
41122    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
41123    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
41124    #[inline(always)]
41125    pub unsafe fn contains(&self, t: *const *mut crate::QAttribute) -> bool {
41126        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_contains(
41127            self as *const crate::QVectorOfQAttribute,
41128            t,
41129        )
41130    }
41131
41132    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
41133    ///
41134    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*>& QVector<Qt3DRender::QAttribute*>::operator=(const QVector<Qt3DRender::QAttribute*>& v)```</span>.
41135    ///
41136    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
41137    #[inline(always)]
41138    pub unsafe fn copy_from(
41139        &self,
41140        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
41141    ) -> ::cpp_core::Ref<crate::QVectorOfQAttribute> {
41142        let ffi_result = {
41143            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_operator_(
41144                self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41145                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(v)
41146                    .as_raw_ptr(),
41147            )
41148        };
41149        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
41150    }
41151
41152    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
41153    ///
41154    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::count(const Qt3DRender::QAttribute*& t) const```</span>.
41155    ///
41156    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
41157    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
41158    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
41159    #[inline(always)]
41160    pub unsafe fn count_1a(&self, t: *const *mut crate::QAttribute) -> ::std::os::raw::c_int {
41161        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_count(
41162            self as *const crate::QVectorOfQAttribute,
41163            t,
41164        )
41165    }
41166
41167    /// <p>This is an overloaded function.</p>
41168    ///
41169    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::count() const```</span>.
41170    ///
41171    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
41172    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
41173    #[inline(always)]
41174    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
41175        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_count1(
41176            self as *const crate::QVectorOfQAttribute,
41177        )
41178    }
41179
41180    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
41181    ///
41182    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute** QVector<Qt3DRender::QAttribute*>::data()```</span>.
41183    ///
41184    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
41185    /// <p>Example:</p>
41186    /// <pre class="cpp">
41187    ///
41188    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
41189    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
41190    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
41191    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
41192    ///
41193    /// </pre>
41194    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
41195    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
41196    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
41197    #[inline(always)]
41198    pub unsafe fn data_mut(&self) -> *mut *mut crate::QAttribute {
41199        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_data(
41200            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41201        )
41202    }
41203
41204    /// <p>This is an overloaded function.</p>
41205    ///
41206    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute** QVector<Qt3DRender::QAttribute*>::data() const```</span>.
41207    ///
41208    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
41209    #[inline(always)]
41210    pub unsafe fn data(&self) -> *const *mut crate::QAttribute {
41211        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_data1(
41212            self as *const crate::QVectorOfQAttribute,
41213        )
41214    }
41215
41216    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::detach()```</span>.
41217    #[inline(always)]
41218    pub unsafe fn detach(&self) {
41219        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_detach(
41220            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41221        )
41222    }
41223
41224    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
41225    ///
41226    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAttribute*>::empty() const```</span>.
41227    ///
41228    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
41229    #[inline(always)]
41230    pub unsafe fn empty(&self) -> bool {
41231        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_empty(
41232            self as *const crate::QVectorOfQAttribute,
41233        )
41234    }
41235
41236    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
41237    ///
41238    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAttribute*>::endsWith(const Qt3DRender::QAttribute*& t) const```</span>.
41239    ///
41240    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
41241    /// <p>This function was introduced in  Qt 4.5.</p>
41242    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
41243    #[inline(always)]
41244    pub unsafe fn ends_with(&self, t: *const *mut crate::QAttribute) -> bool {
41245        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_endsWith(
41246            self as *const crate::QVectorOfQAttribute,
41247            t,
41248        )
41249    }
41250
41251    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
41252    ///
41253    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*>& QVector<Qt3DRender::QAttribute*>::fill(const Qt3DRender::QAttribute*& t, int size = …)```</span>.
41254    ///
41255    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
41256    /// <p>Example:</p>
41257    /// <pre class="cpp">
41258    ///
41259    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
41260    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
41261    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
41262    ///
41263    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
41264    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
41265    ///
41266    /// </pre>
41267    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
41268    #[inline(always)]
41269    pub unsafe fn fill_2a(
41270        &self,
41271        t: *const *mut crate::QAttribute,
41272        size: ::std::os::raw::c_int,
41273    ) -> ::cpp_core::Ref<crate::QVectorOfQAttribute> {
41274        let ffi_result = {
41275            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_fill(
41276                self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41277                t,
41278                size,
41279            )
41280        };
41281        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
41282    }
41283
41284    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
41285    ///
41286    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*>& QVector<Qt3DRender::QAttribute*>::fill(const Qt3DRender::QAttribute*& t)```</span>.
41287    ///
41288    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
41289    /// <p>Example:</p>
41290    /// <pre class="cpp">
41291    ///
41292    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
41293    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
41294    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
41295    ///
41296    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
41297    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
41298    ///
41299    /// </pre>
41300    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
41301    #[inline(always)]
41302    pub unsafe fn fill_1a(
41303        &self,
41304        t: *const *mut crate::QAttribute,
41305    ) -> ::cpp_core::Ref<crate::QVectorOfQAttribute> {
41306        let ffi_result = {
41307            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_fill1(
41308                self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41309                t,
41310            )
41311        };
41312        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
41313    }
41314
41315    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
41316    ///
41317    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::first()```</span>.
41318    ///
41319    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
41320    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
41321    #[inline(always)]
41322    pub unsafe fn first_mut(&self) -> *mut *mut crate::QAttribute {
41323        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_first(
41324            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41325        )
41326    }
41327
41328    /// <p>This is an overloaded function.</p>
41329    ///
41330    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::first() const```</span>.
41331    ///
41332    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
41333    #[inline(always)]
41334    pub unsafe fn first(&self) -> *const *mut crate::QAttribute {
41335        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_first1(
41336            self as *const crate::QVectorOfQAttribute,
41337        )
41338    }
41339
41340    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
41341    ///
41342    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::front()```</span>.
41343    ///
41344    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
41345    #[inline(always)]
41346    pub unsafe fn front_mut(&self) -> *mut *mut crate::QAttribute {
41347        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_front(
41348            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41349        )
41350    }
41351
41352    /// <p>This is an overloaded function.</p>
41353    ///
41354    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::front() const```</span>.
41355    ///
41356    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
41357    #[inline(always)]
41358    pub unsafe fn front(&self) -> *const *mut crate::QAttribute {
41359        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_front1(
41360            self as *const crate::QVectorOfQAttribute,
41361        )
41362    }
41363
41364    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
41365    ///
41366    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::operator[](int i)```</span>.
41367    ///
41368    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
41369    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
41370    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
41371    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
41372    #[inline(always)]
41373    pub unsafe fn index_mut(&self, i: ::std::os::raw::c_int) -> *mut *mut crate::QAttribute {
41374        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_operator__2(
41375            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41376            i,
41377        )
41378    }
41379
41380    /// <p>This is an overloaded function.</p>
41381    ///
41382    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::operator[](int i) const```</span>.
41383    ///
41384    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
41385    /// <p>Same as at(<i>i</i>).</p></div>
41386    #[inline(always)]
41387    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QAttribute {
41388        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_operator__3(
41389            self as *const crate::QVectorOfQAttribute,
41390            i,
41391        )
41392    }
41393
41394    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
41395    ///
41396    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::indexOf(const Qt3DRender::QAttribute*& t, int from = …) const```</span>.
41397    ///
41398    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
41399    /// <p>Example:</p>
41400    /// <pre class="cpp">
41401    ///
41402    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
41403    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
41404    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
41405    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
41406    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
41407    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
41408    ///
41409    /// </pre>
41410    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
41411    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
41412    #[inline(always)]
41413    pub unsafe fn index_of_2a(
41414        &self,
41415        t: *const *mut crate::QAttribute,
41416        from: ::std::os::raw::c_int,
41417    ) -> ::std::os::raw::c_int {
41418        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_indexOf(
41419            self as *const crate::QVectorOfQAttribute,
41420            t,
41421            from,
41422        )
41423    }
41424
41425    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
41426    ///
41427    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::indexOf(const Qt3DRender::QAttribute*& t) const```</span>.
41428    ///
41429    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
41430    /// <p>Example:</p>
41431    /// <pre class="cpp">
41432    ///
41433    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
41434    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
41435    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
41436    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
41437    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
41438    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
41439    ///
41440    /// </pre>
41441    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
41442    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
41443    #[inline(always)]
41444    pub unsafe fn index_of_1a(&self, t: *const *mut crate::QAttribute) -> ::std::os::raw::c_int {
41445        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_indexOf1(
41446            self as *const crate::QVectorOfQAttribute,
41447            t,
41448        )
41449    }
41450
41451    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
41452    ///
41453    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::insert(int i, const Qt3DRender::QAttribute*& t)```</span>.
41454    ///
41455    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
41456    /// <p>Example:</p>
41457    /// <pre class="cpp">
41458    ///
41459    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
41460    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
41461    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
41462    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
41463    ///
41464    /// </pre>
41465    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
41466    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
41467    #[inline(always)]
41468    pub unsafe fn insert_2a(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QAttribute) {
41469        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_insert(
41470            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41471            i,
41472            t,
41473        )
41474    }
41475
41476    /// <p>This is an overloaded function.</p>
41477    ///
41478    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::insert(int i, int n, const Qt3DRender::QAttribute*& t)```</span>.
41479    ///
41480    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
41481    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
41482    /// <p>Example:</p>
41483    /// <pre class="cpp">
41484    ///
41485    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
41486    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
41487    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
41488    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
41489    ///
41490    /// </pre></div>
41491    #[inline(always)]
41492    pub unsafe fn insert_3a(
41493        &self,
41494        i: ::std::os::raw::c_int,
41495        n: ::std::os::raw::c_int,
41496        t: *const *mut crate::QAttribute,
41497    ) {
41498        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_insert1(
41499            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41500            i,
41501            n,
41502            t,
41503        )
41504    }
41505
41506    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAttribute*>::isDetached() const```</span>.
41507    #[inline(always)]
41508    pub unsafe fn is_detached(&self) -> bool {
41509        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_isDetached(
41510            self as *const crate::QVectorOfQAttribute,
41511        )
41512    }
41513
41514    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
41515    ///
41516    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAttribute*>::isEmpty() const```</span>.
41517    ///
41518    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
41519    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
41520    #[inline(always)]
41521    pub unsafe fn is_empty(&self) -> bool {
41522        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_isEmpty(
41523            self as *const crate::QVectorOfQAttribute,
41524        )
41525    }
41526
41527    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAttribute*>::isSharedWith(const QVector<Qt3DRender::QAttribute*>& other) const```</span>.
41528    #[inline(always)]
41529    pub unsafe fn is_shared_with(
41530        &self,
41531        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
41532    ) -> bool {
41533        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_isSharedWith(
41534            self as *const crate::QVectorOfQAttribute,
41535            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(other)
41536                .as_raw_ptr(),
41537        )
41538    }
41539
41540    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
41541    ///
41542    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::last()```</span>.
41543    ///
41544    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
41545    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
41546    #[inline(always)]
41547    pub unsafe fn last_mut(&self) -> *mut *mut crate::QAttribute {
41548        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_last(
41549            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41550        )
41551    }
41552
41553    /// <p>This is an overloaded function.</p>
41554    ///
41555    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute*& QVector<Qt3DRender::QAttribute*>::last() const```</span>.
41556    ///
41557    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
41558    #[inline(always)]
41559    pub unsafe fn last(&self) -> *const *mut crate::QAttribute {
41560        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_last1(
41561            self as *const crate::QVectorOfQAttribute,
41562        )
41563    }
41564
41565    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
41566    ///
41567    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::lastIndexOf(const Qt3DRender::QAttribute*& t, int from = …) const```</span>.
41568    ///
41569    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
41570    /// <p>Example:</p>
41571    /// <pre class="cpp">
41572    ///
41573    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
41574    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
41575    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
41576    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
41577    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
41578    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
41579    ///
41580    /// </pre>
41581    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
41582    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
41583    #[inline(always)]
41584    pub unsafe fn last_index_of_2a(
41585        &self,
41586        t: *const *mut crate::QAttribute,
41587        from: ::std::os::raw::c_int,
41588    ) -> ::std::os::raw::c_int {
41589        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_lastIndexOf(
41590            self as *const crate::QVectorOfQAttribute,
41591            t,
41592            from,
41593        )
41594    }
41595
41596    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
41597    ///
41598    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::lastIndexOf(const Qt3DRender::QAttribute*& t) const```</span>.
41599    ///
41600    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
41601    /// <p>Example:</p>
41602    /// <pre class="cpp">
41603    ///
41604    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
41605    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
41606    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
41607    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
41608    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
41609    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
41610    ///
41611    /// </pre>
41612    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
41613    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
41614    #[inline(always)]
41615    pub unsafe fn last_index_of_1a(
41616        &self,
41617        t: *const *mut crate::QAttribute,
41618    ) -> ::std::os::raw::c_int {
41619        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_lastIndexOf1(
41620            self as *const crate::QVectorOfQAttribute,
41621            t,
41622        )
41623    }
41624
41625    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
41626    ///
41627    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::length() const```</span>.
41628    ///
41629    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
41630    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
41631    /// <p>This function was introduced in  Qt 5.2.</p>
41632    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
41633    #[inline(always)]
41634    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
41635        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_length(
41636            self as *const crate::QVectorOfQAttribute,
41637        )
41638    }
41639
41640    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
41641    ///
41642    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*> QVector<Qt3DRender::QAttribute*>::mid(int pos, int len = …) const```</span>.
41643    ///
41644    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
41645    #[inline(always)]
41646    pub unsafe fn mid_2a(
41647        &self,
41648        pos: ::std::os::raw::c_int,
41649        len: ::std::os::raw::c_int,
41650    ) -> ::cpp_core::CppBox<crate::QVectorOfQAttribute> {
41651        let ffi_result = {
41652            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_mid(
41653                self as *const crate::QVectorOfQAttribute,
41654                pos,
41655                len,
41656            )
41657        };
41658        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
41659    }
41660
41661    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
41662    ///
41663    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*> QVector<Qt3DRender::QAttribute*>::mid(int pos) const```</span>.
41664    ///
41665    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
41666    #[inline(always)]
41667    pub unsafe fn mid_1a(
41668        &self,
41669        pos: ::std::os::raw::c_int,
41670    ) -> ::cpp_core::CppBox<crate::QVectorOfQAttribute> {
41671        let ffi_result = {
41672            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_mid1(
41673                self as *const crate::QVectorOfQAttribute,
41674                pos,
41675            )
41676        };
41677        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
41678    }
41679
41680    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
41681    ///
41682    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::move(int from, int to)```</span>.
41683    ///
41684    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
41685    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
41686    /// <p>This function was introduced in  Qt 5.6.</p>
41687    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
41688    #[inline(always)]
41689    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
41690        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_move(
41691            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41692            from,
41693            to,
41694        )
41695    }
41696
41697    /// <p>Constructs an empty vector.</p>
41698    ///
41699    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QAttribute*>::QVector()```</span>.
41700    ///
41701    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
41702    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
41703    #[inline(always)]
41704    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQAttribute> {
41705        let ffi_result =
41706            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_QVector() };
41707        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
41708    }
41709
41710    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
41711    ///
41712    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QAttribute*>::QVector(int size)```</span>.
41713    ///
41714    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
41715    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
41716    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
41717    #[inline(always)]
41718    pub unsafe fn new_1a(
41719        size: ::std::os::raw::c_int,
41720    ) -> ::cpp_core::CppBox<crate::QVectorOfQAttribute> {
41721        let ffi_result =
41722            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_QVector1(size) };
41723        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
41724    }
41725
41726    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
41727    ///
41728    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QAttribute*>::QVector(int size, const Qt3DRender::QAttribute*& t)```</span>.
41729    ///
41730    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
41731    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
41732    #[inline(always)]
41733    pub unsafe fn new_2a(
41734        size: ::std::os::raw::c_int,
41735        t: *const *mut crate::QAttribute,
41736    ) -> ::cpp_core::CppBox<crate::QVectorOfQAttribute> {
41737        let ffi_result = {
41738            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_QVector2(size, t)
41739        };
41740        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
41741    }
41742
41743    /// <p>Constructs a copy of <i>other</i>.</p>
41744    ///
41745    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QAttribute*>::QVector(const QVector<Qt3DRender::QAttribute*>& v)```</span>.
41746    ///
41747    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
41748    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
41749    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
41750    #[inline(always)]
41751    pub unsafe fn new_copy(
41752        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
41753    ) -> ::cpp_core::CppBox<crate::QVectorOfQAttribute> {
41754        let ffi_result = {
41755            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_QVector3(
41756                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(v)
41757                    .as_raw_ptr(),
41758            )
41759        };
41760        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
41761    }
41762
41763    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
41764    ///
41765    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::pop_back()```</span>.
41766    ///
41767    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
41768    #[inline(always)]
41769    pub unsafe fn pop_back(&self) {
41770        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_pop_back(
41771            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41772        )
41773    }
41774
41775    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
41776    ///
41777    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::pop_front()```</span>.
41778    ///
41779    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
41780    #[inline(always)]
41781    pub unsafe fn pop_front(&self) {
41782        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_pop_front(
41783            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41784        )
41785    }
41786
41787    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
41788    ///
41789    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::prepend(const Qt3DRender::QAttribute*& t)```</span>.
41790    ///
41791    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
41792    /// <p>Example:</p>
41793    /// <pre class="cpp">
41794    ///
41795    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
41796    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
41797    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
41798    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
41799    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
41800    ///
41801    /// </pre>
41802    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
41803    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
41804    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
41805    #[inline(always)]
41806    pub unsafe fn prepend(&self, t: *const *mut crate::QAttribute) {
41807        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_prepend(
41808            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41809            t,
41810        )
41811    }
41812
41813    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
41814    ///
41815    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::push_back(const Qt3DRender::QAttribute*& t)```</span>.
41816    ///
41817    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
41818    #[inline(always)]
41819    pub unsafe fn push_back(&self, t: *const *mut crate::QAttribute) {
41820        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_push_back(
41821            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41822            t,
41823        )
41824    }
41825
41826    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
41827    ///
41828    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::push_front(const Qt3DRender::QAttribute*& t)```</span>.
41829    ///
41830    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
41831    #[inline(always)]
41832    pub unsafe fn push_front(&self, t: *const *mut crate::QAttribute) {
41833        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_push_front(
41834            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41835            t,
41836        )
41837    }
41838
41839    /// <p>This is an overloaded function.</p>
41840    ///
41841    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::remove(int i)```</span>.
41842    ///
41843    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
41844    /// <p>Removes the element at index position <i>i</i>.</p>
41845    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
41846    #[inline(always)]
41847    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
41848        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_remove(
41849            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41850            i,
41851        )
41852    }
41853
41854    /// <p>This is an overloaded function.</p>
41855    ///
41856    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::remove(int i, int n)```</span>.
41857    ///
41858    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
41859    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
41860    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
41861    #[inline(always)]
41862    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
41863        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_remove1(
41864            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41865            i,
41866            n,
41867        )
41868    }
41869
41870    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
41871    ///
41872    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::removeAll(const Qt3DRender::QAttribute*& t)```</span>.
41873    ///
41874    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
41875    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
41876    /// <p>This function was introduced in  Qt 5.4.</p>
41877    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
41878    #[inline(always)]
41879    pub unsafe fn remove_all(&self, t: *const *mut crate::QAttribute) -> ::std::os::raw::c_int {
41880        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_removeAll(
41881            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41882            t,
41883        )
41884    }
41885
41886    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
41887    ///
41888    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::removeAt(int i)```</span>.
41889    ///
41890    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
41891    /// <pre class="cpp">
41892    ///
41893    ///   remove(i);
41894    ///
41895    /// </pre>
41896    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
41897    /// <p>This function was introduced in  Qt 5.2.</p>
41898    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
41899    #[inline(always)]
41900    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
41901        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_removeAt(
41902            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41903            i,
41904        )
41905    }
41906
41907    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
41908    ///
41909    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::removeFirst()```</span>.
41910    ///
41911    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
41912    /// <p>This function was introduced in  Qt 5.1.</p>
41913    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
41914    #[inline(always)]
41915    pub unsafe fn remove_first(&self) {
41916        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_removeFirst(
41917            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41918        )
41919    }
41920
41921    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
41922    ///
41923    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::removeLast()```</span>.
41924    ///
41925    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
41926    /// <p>This function was introduced in  Qt 5.1.</p>
41927    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
41928    #[inline(always)]
41929    pub unsafe fn remove_last(&self) {
41930        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_removeLast(
41931            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41932        )
41933    }
41934
41935    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
41936    ///
41937    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAttribute*>::removeOne(const Qt3DRender::QAttribute*& t)```</span>.
41938    ///
41939    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
41940    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
41941    /// <p>This function was introduced in  Qt 5.4.</p>
41942    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
41943    #[inline(always)]
41944    pub unsafe fn remove_one(&self, t: *const *mut crate::QAttribute) -> bool {
41945        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_removeOne(
41946            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41947            t,
41948        )
41949    }
41950
41951    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
41952    ///
41953    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::replace(int i, const Qt3DRender::QAttribute*& t)```</span>.
41954    ///
41955    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
41956    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
41957    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
41958    #[inline(always)]
41959    pub unsafe fn replace(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QAttribute) {
41960        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_replace(
41961            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41962            i,
41963            t,
41964        )
41965    }
41966
41967    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
41968    ///
41969    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::reserve(int size)```</span>.
41970    ///
41971    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
41972    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
41973    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
41974    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
41975    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
41976    #[inline(always)]
41977    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
41978        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_reserve(
41979            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41980            size,
41981        )
41982    }
41983
41984    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
41985    ///
41986    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::resize(int size)```</span>.
41987    ///
41988    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
41989    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
41990    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
41991    #[inline(always)]
41992    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
41993        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_resize(
41994            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
41995            size,
41996        )
41997    }
41998
41999    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::setSharable(bool sharable)```</span>.
42000    #[inline(always)]
42001    pub unsafe fn set_sharable(&self, sharable: bool) {
42002        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_setSharable(
42003            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
42004            sharable,
42005        )
42006    }
42007
42008    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
42009    ///
42010    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::shrink_to_fit()```</span>.
42011    ///
42012    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
42013    /// <p>This function was introduced in  Qt 5.10.</p></div>
42014    #[inline(always)]
42015    #[cfg_attr(
42016        feature = "ritual_rustdoc_nightly",
42017        doc(cfg(any(
42018            cpp_lib_version = "5.11.3",
42019            cpp_lib_version = "5.12.2",
42020            cpp_lib_version = "5.13.0",
42021            cpp_lib_version = "5.14.0"
42022        )))
42023    )]
42024    #[cfg(any(
42025        any(
42026            cpp_lib_version = "5.11.3",
42027            cpp_lib_version = "5.12.2",
42028            cpp_lib_version = "5.13.0",
42029            cpp_lib_version = "5.14.0"
42030        ),
42031        feature = "ritual_rustdoc"
42032    ))]
42033    pub unsafe fn shrink_to_fit(&self) {
42034        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_shrink_to_fit(
42035            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
42036        )
42037    }
42038
42039    /// <p>Returns the number of items in the vector.</p>
42040    ///
42041    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::size() const```</span>.
42042    ///
42043    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
42044    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
42045    #[inline(always)]
42046    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
42047        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_size(
42048            self as *const crate::QVectorOfQAttribute,
42049        )
42050    }
42051
42052    /// <p>Releases any memory not required to store the items.</p>
42053    ///
42054    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::squeeze()```</span>.
42055    ///
42056    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
42057    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
42058    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
42059    #[inline(always)]
42060    pub unsafe fn squeeze(&self) {
42061        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_squeeze(
42062            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
42063        )
42064    }
42065
42066    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
42067    ///
42068    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAttribute*>::startsWith(const Qt3DRender::QAttribute*& t) const```</span>.
42069    ///
42070    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
42071    /// <p>This function was introduced in  Qt 4.5.</p>
42072    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
42073    #[inline(always)]
42074    pub unsafe fn starts_with(&self, t: *const *mut crate::QAttribute) -> bool {
42075        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_startsWith(
42076            self as *const crate::QVectorOfQAttribute,
42077            t,
42078        )
42079    }
42080
42081    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
42082    ///
42083    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::swap(QVector<Qt3DRender::QAttribute*>& other)```</span>.
42084    ///
42085    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
42086    /// <p>This function was introduced in  Qt 4.8.</p></div>
42087    #[inline(always)]
42088    pub unsafe fn swap(
42089        &self,
42090        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
42091    ) {
42092        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_swap(
42093            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
42094            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(other)
42095                .as_raw_ptr() as *mut crate::QVectorOfQAttribute,
42096        )
42097    }
42098
42099    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
42100    ///
42101    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QAttribute*>::swapItemsAt(int i, int j)```</span>.
42102    ///
42103    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
42104    /// <p>This function was introduced in  Qt 5.14.</p></div>
42105    #[inline(always)]
42106    #[cfg_attr(
42107        feature = "ritual_rustdoc_nightly",
42108        doc(cfg(cpp_lib_version = "5.14.0"))
42109    )]
42110    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
42111    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
42112        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_swapItemsAt(
42113            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
42114            i,
42115            j,
42116        )
42117    }
42118
42119    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
42120    ///
42121    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* QVector<Qt3DRender::QAttribute*>::takeAt(int i)```</span>.
42122    ///
42123    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
42124    /// <p>Equivalent to</p>
42125    /// <pre class="cpp">
42126    ///
42127    ///   T t <span class="operator">=</span> at(i);
42128    ///   remove(i);
42129    ///   <span class="keyword">return</span> t;
42130    ///
42131    /// </pre>
42132    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
42133    /// <p>This function was introduced in  Qt 5.2.</p>
42134    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
42135    #[inline(always)]
42136    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QAttribute> {
42137        let ffi_result = {
42138            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_takeAt(
42139                self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
42140                i,
42141            )
42142        };
42143        ::qt_core::QPtr::from_raw(ffi_result)
42144    }
42145
42146    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
42147    ///
42148    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* QVector<Qt3DRender::QAttribute*>::takeFirst()```</span>.
42149    ///
42150    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
42151    /// <p>This function was introduced in  Qt 5.1.</p>
42152    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
42153    #[inline(always)]
42154    pub unsafe fn take_first(&self) -> ::qt_core::QPtr<crate::QAttribute> {
42155        let ffi_result = {
42156            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_takeFirst(
42157                self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
42158            )
42159        };
42160        ::qt_core::QPtr::from_raw(ffi_result)
42161    }
42162
42163    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
42164    ///
42165    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* QVector<Qt3DRender::QAttribute*>::takeLast()```</span>.
42166    ///
42167    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
42168    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
42169    /// <p>This function was introduced in  Qt 5.1.</p>
42170    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
42171    #[inline(always)]
42172    pub unsafe fn take_last(&self) -> ::qt_core::QPtr<crate::QAttribute> {
42173        let ffi_result = {
42174            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_takeLast(
42175                self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
42176            )
42177        };
42178        ::qt_core::QPtr::from_raw(ffi_result)
42179    }
42180
42181    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
42182    ///
42183    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* QVector<Qt3DRender::QAttribute*>::value(int i) const```</span>.
42184    ///
42185    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
42186    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
42187    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
42188    #[inline(always)]
42189    pub unsafe fn value_1a(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QAttribute> {
42190        let ffi_result = {
42191            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_value(
42192                self as *const crate::QVectorOfQAttribute,
42193                i,
42194            )
42195        };
42196        ::qt_core::QPtr::from_raw(ffi_result)
42197    }
42198
42199    /// <p>This is an overloaded function.</p>
42200    ///
42201    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* QVector<Qt3DRender::QAttribute*>::value(int i, const Qt3DRender::QAttribute*& defaultValue) const```</span>.
42202    ///
42203    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
42204    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
42205    #[inline(always)]
42206    pub unsafe fn value_2a(
42207        &self,
42208        i: ::std::os::raw::c_int,
42209        default_value: *const *mut crate::QAttribute,
42210    ) -> ::qt_core::QPtr<crate::QAttribute> {
42211        let ffi_result = {
42212            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_value1(
42213                self as *const crate::QVectorOfQAttribute,
42214                i,
42215                default_value,
42216            )
42217        };
42218        ::qt_core::QPtr::from_raw(ffi_result)
42219    }
42220}
42221
42222/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
42223///
42224/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QLayer*>```</span>.
42225///
42226/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
42227/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
42228/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
42229/// <ul>
42230/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
42231/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
42232/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
42233/// </ul>
42234/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
42235/// <pre class="cpp">
42236///
42237///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
42238///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
42239///
42240/// </pre>
42241/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
42242/// <pre class="cpp">
42243///
42244///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
42245///
42246/// </pre>
42247/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
42248/// <pre class="cpp">
42249///
42250///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
42251///
42252/// </pre>
42253/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
42254/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
42255/// <pre class="cpp">
42256///
42257///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
42258/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
42259///
42260/// </pre>
42261/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
42262/// <pre class="cpp">
42263///
42264///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
42265/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
42266/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
42267///   }
42268///
42269/// </pre>
42270/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
42271/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
42272/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
42273/// <pre class="cpp">
42274///
42275///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
42276///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
42277/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
42278///
42279/// </pre>
42280/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
42281/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
42282/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
42283/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
42284/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
42285/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
42286/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
42287/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
42288/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
42289/// <a name="more-information-on-using-qt-containers"></a>
42290/// <h4>More Information on Using Qt Containers</h4>
42291/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
42292#[repr(C)]
42293pub struct QVectorOfQLayer {
42294    _unused: u8,
42295}
42296impl QVectorOfQLayer {
42297    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
42298    ///
42299    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*>& QVector<Qt3DRender::QLayer*>::operator+=(const QVector<Qt3DRender::QLayer*>& l)```</span>.
42300    ///
42301    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
42302    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
42303    #[inline(always)]
42304    pub unsafe fn add_assign_q_vector_of_q_layer(
42305        &self,
42306        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
42307    ) -> ::cpp_core::Ref<crate::QVectorOfQLayer> {
42308        let ffi_result = {
42309            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_operator__4(
42310                self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42311                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(l)
42312                    .as_raw_ptr(),
42313            )
42314        };
42315        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
42316    }
42317
42318    /// <p>This is an overloaded function.</p>
42319    ///
42320    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*>& QVector<Qt3DRender::QLayer*>::operator+=(const Qt3DRender::QLayer*& t)```</span>.
42321    ///
42322    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
42323    /// <p>Appends <i>value</i> to the vector.</p>
42324    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
42325    #[inline(always)]
42326    pub unsafe fn add_assign_q_layer(
42327        &self,
42328        t: *const *mut crate::QLayer,
42329    ) -> ::cpp_core::Ref<crate::QVectorOfQLayer> {
42330        let ffi_result = {
42331            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_operator__5(
42332                self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42333                t,
42334            )
42335        };
42336        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
42337    }
42338
42339    /// <p>Inserts <i>value</i> at the end of the vector.</p>
42340    ///
42341    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::append(const Qt3DRender::QLayer*& t)```</span>.
42342    ///
42343    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
42344    /// <p>Example:</p>
42345    /// <pre class="cpp">
42346    ///
42347    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
42348    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
42349    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
42350    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
42351    ///   vector<span class="operator">.</span>append(three);
42352    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
42353    ///   <span class="comment">// three: "three"</span>
42354    ///
42355    /// </pre>
42356    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
42357    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
42358    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
42359    #[inline(always)]
42360    pub unsafe fn append_q_layer(&self, t: *const *mut crate::QLayer) {
42361        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_append(
42362            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42363            t,
42364        )
42365    }
42366
42367    /// <p>This is an overloaded function.</p>
42368    ///
42369    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::append(const QVector<Qt3DRender::QLayer*>& l)```</span>.
42370    ///
42371    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
42372    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
42373    /// <p>This function was introduced in  Qt 5.5.</p>
42374    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
42375    #[inline(always)]
42376    pub unsafe fn append_q_vector_of_q_layer(
42377        &self,
42378        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
42379    ) {
42380        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_append2(
42381            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42382            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(l)
42383                .as_raw_ptr(),
42384        )
42385    }
42386
42387    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
42388    ///
42389    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::at(int i) const```</span>.
42390    ///
42391    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
42392    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
42393    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
42394    #[inline(always)]
42395    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QLayer {
42396        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_at(
42397            self as *const crate::QVectorOfQLayer,
42398            i,
42399        )
42400    }
42401
42402    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
42403    ///
42404    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::back()```</span>.
42405    ///
42406    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
42407    #[inline(always)]
42408    pub unsafe fn back_mut(&self) -> *mut *mut crate::QLayer {
42409        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_back(
42410            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42411        )
42412    }
42413
42414    /// <p>This is an overloaded function.</p>
42415    ///
42416    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::back() const```</span>.
42417    ///
42418    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
42419    #[inline(always)]
42420    pub unsafe fn back(&self) -> *const *mut crate::QLayer {
42421        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_back1(
42422            self as *const crate::QVectorOfQLayer,
42423        )
42424    }
42425
42426    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
42427    ///
42428    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::capacity() const```</span>.
42429    ///
42430    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
42431    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
42432    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
42433    #[inline(always)]
42434    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
42435        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_capacity(
42436            self as *const crate::QVectorOfQLayer,
42437        )
42438    }
42439
42440    /// <p>Removes all the elements from the vector.</p>
42441    ///
42442    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::clear()```</span>.
42443    ///
42444    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
42445    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
42446    ///
42447    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
42448    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
42449    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
42450    ///
42451    /// </pre>
42452    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
42453    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
42454    #[inline(always)]
42455    pub unsafe fn clear(&self) {
42456        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_clear(
42457            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42458        )
42459    }
42460
42461    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
42462    ///
42463    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer** QVector<Qt3DRender::QLayer*>::constData() const```</span>.
42464    ///
42465    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
42466    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
42467    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
42468    #[inline(always)]
42469    pub unsafe fn const_data(&self) -> *const *mut crate::QLayer {
42470        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_constData(
42471            self as *const crate::QVectorOfQLayer,
42472        )
42473    }
42474
42475    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
42476    ///
42477    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::constFirst() const```</span>.
42478    ///
42479    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
42480    /// <p>This function was introduced in  Qt 5.6.</p>
42481    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
42482    #[inline(always)]
42483    pub unsafe fn const_first(&self) -> *const *mut crate::QLayer {
42484        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_constFirst(
42485            self as *const crate::QVectorOfQLayer,
42486        )
42487    }
42488
42489    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
42490    ///
42491    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::constLast() const```</span>.
42492    ///
42493    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
42494    /// <p>This function was introduced in  Qt 5.6.</p>
42495    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
42496    #[inline(always)]
42497    pub unsafe fn const_last(&self) -> *const *mut crate::QLayer {
42498        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_constLast(
42499            self as *const crate::QVectorOfQLayer,
42500        )
42501    }
42502
42503    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
42504    ///
42505    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QLayer*>::contains(const Qt3DRender::QLayer*& t) const```</span>.
42506    ///
42507    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
42508    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
42509    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
42510    #[inline(always)]
42511    pub unsafe fn contains(&self, t: *const *mut crate::QLayer) -> bool {
42512        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_contains(
42513            self as *const crate::QVectorOfQLayer,
42514            t,
42515        )
42516    }
42517
42518    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
42519    ///
42520    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*>& QVector<Qt3DRender::QLayer*>::operator=(const QVector<Qt3DRender::QLayer*>& v)```</span>.
42521    ///
42522    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
42523    #[inline(always)]
42524    pub unsafe fn copy_from(
42525        &self,
42526        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
42527    ) -> ::cpp_core::Ref<crate::QVectorOfQLayer> {
42528        let ffi_result = {
42529            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_operator_(
42530                self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42531                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(v)
42532                    .as_raw_ptr(),
42533            )
42534        };
42535        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
42536    }
42537
42538    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
42539    ///
42540    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::count(const Qt3DRender::QLayer*& t) const```</span>.
42541    ///
42542    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
42543    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
42544    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
42545    #[inline(always)]
42546    pub unsafe fn count_1a(&self, t: *const *mut crate::QLayer) -> ::std::os::raw::c_int {
42547        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_count(
42548            self as *const crate::QVectorOfQLayer,
42549            t,
42550        )
42551    }
42552
42553    /// <p>This is an overloaded function.</p>
42554    ///
42555    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::count() const```</span>.
42556    ///
42557    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
42558    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
42559    #[inline(always)]
42560    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
42561        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_count1(
42562            self as *const crate::QVectorOfQLayer,
42563        )
42564    }
42565
42566    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
42567    ///
42568    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer** QVector<Qt3DRender::QLayer*>::data()```</span>.
42569    ///
42570    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
42571    /// <p>Example:</p>
42572    /// <pre class="cpp">
42573    ///
42574    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
42575    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
42576    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
42577    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
42578    ///
42579    /// </pre>
42580    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
42581    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
42582    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
42583    #[inline(always)]
42584    pub unsafe fn data_mut(&self) -> *mut *mut crate::QLayer {
42585        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_data(
42586            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42587        )
42588    }
42589
42590    /// <p>This is an overloaded function.</p>
42591    ///
42592    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer** QVector<Qt3DRender::QLayer*>::data() const```</span>.
42593    ///
42594    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
42595    #[inline(always)]
42596    pub unsafe fn data(&self) -> *const *mut crate::QLayer {
42597        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_data1(
42598            self as *const crate::QVectorOfQLayer,
42599        )
42600    }
42601
42602    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::detach()```</span>.
42603    #[inline(always)]
42604    pub unsafe fn detach(&self) {
42605        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_detach(
42606            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42607        )
42608    }
42609
42610    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
42611    ///
42612    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QLayer*>::empty() const```</span>.
42613    ///
42614    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
42615    #[inline(always)]
42616    pub unsafe fn empty(&self) -> bool {
42617        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_empty(
42618            self as *const crate::QVectorOfQLayer,
42619        )
42620    }
42621
42622    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
42623    ///
42624    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QLayer*>::endsWith(const Qt3DRender::QLayer*& t) const```</span>.
42625    ///
42626    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
42627    /// <p>This function was introduced in  Qt 4.5.</p>
42628    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
42629    #[inline(always)]
42630    pub unsafe fn ends_with(&self, t: *const *mut crate::QLayer) -> bool {
42631        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_endsWith(
42632            self as *const crate::QVectorOfQLayer,
42633            t,
42634        )
42635    }
42636
42637    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
42638    ///
42639    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*>& QVector<Qt3DRender::QLayer*>::fill(const Qt3DRender::QLayer*& t, int size = …)```</span>.
42640    ///
42641    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
42642    /// <p>Example:</p>
42643    /// <pre class="cpp">
42644    ///
42645    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
42646    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
42647    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
42648    ///
42649    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
42650    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
42651    ///
42652    /// </pre>
42653    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
42654    #[inline(always)]
42655    pub unsafe fn fill_2a(
42656        &self,
42657        t: *const *mut crate::QLayer,
42658        size: ::std::os::raw::c_int,
42659    ) -> ::cpp_core::Ref<crate::QVectorOfQLayer> {
42660        let ffi_result = {
42661            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_fill(
42662                self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42663                t,
42664                size,
42665            )
42666        };
42667        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
42668    }
42669
42670    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
42671    ///
42672    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*>& QVector<Qt3DRender::QLayer*>::fill(const Qt3DRender::QLayer*& t)```</span>.
42673    ///
42674    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
42675    /// <p>Example:</p>
42676    /// <pre class="cpp">
42677    ///
42678    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
42679    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
42680    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
42681    ///
42682    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
42683    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
42684    ///
42685    /// </pre>
42686    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
42687    #[inline(always)]
42688    pub unsafe fn fill_1a(
42689        &self,
42690        t: *const *mut crate::QLayer,
42691    ) -> ::cpp_core::Ref<crate::QVectorOfQLayer> {
42692        let ffi_result = {
42693            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_fill1(
42694                self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42695                t,
42696            )
42697        };
42698        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
42699    }
42700
42701    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
42702    ///
42703    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::first()```</span>.
42704    ///
42705    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
42706    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
42707    #[inline(always)]
42708    pub unsafe fn first_mut(&self) -> *mut *mut crate::QLayer {
42709        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_first(
42710            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42711        )
42712    }
42713
42714    /// <p>This is an overloaded function.</p>
42715    ///
42716    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::first() const```</span>.
42717    ///
42718    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
42719    #[inline(always)]
42720    pub unsafe fn first(&self) -> *const *mut crate::QLayer {
42721        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_first1(
42722            self as *const crate::QVectorOfQLayer,
42723        )
42724    }
42725
42726    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
42727    ///
42728    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::front()```</span>.
42729    ///
42730    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
42731    #[inline(always)]
42732    pub unsafe fn front_mut(&self) -> *mut *mut crate::QLayer {
42733        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_front(
42734            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42735        )
42736    }
42737
42738    /// <p>This is an overloaded function.</p>
42739    ///
42740    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::front() const```</span>.
42741    ///
42742    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
42743    #[inline(always)]
42744    pub unsafe fn front(&self) -> *const *mut crate::QLayer {
42745        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_front1(
42746            self as *const crate::QVectorOfQLayer,
42747        )
42748    }
42749
42750    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
42751    ///
42752    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::operator[](int i)```</span>.
42753    ///
42754    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
42755    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
42756    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
42757    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
42758    #[inline(always)]
42759    pub unsafe fn index_mut(&self, i: ::std::os::raw::c_int) -> *mut *mut crate::QLayer {
42760        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_operator__2(
42761            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42762            i,
42763        )
42764    }
42765
42766    /// <p>This is an overloaded function.</p>
42767    ///
42768    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::operator[](int i) const```</span>.
42769    ///
42770    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
42771    /// <p>Same as at(<i>i</i>).</p></div>
42772    #[inline(always)]
42773    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QLayer {
42774        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_operator__3(
42775            self as *const crate::QVectorOfQLayer,
42776            i,
42777        )
42778    }
42779
42780    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
42781    ///
42782    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::indexOf(const Qt3DRender::QLayer*& t, int from = …) const```</span>.
42783    ///
42784    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
42785    /// <p>Example:</p>
42786    /// <pre class="cpp">
42787    ///
42788    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
42789    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
42790    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
42791    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
42792    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
42793    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
42794    ///
42795    /// </pre>
42796    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
42797    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
42798    #[inline(always)]
42799    pub unsafe fn index_of_2a(
42800        &self,
42801        t: *const *mut crate::QLayer,
42802        from: ::std::os::raw::c_int,
42803    ) -> ::std::os::raw::c_int {
42804        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_indexOf(
42805            self as *const crate::QVectorOfQLayer,
42806            t,
42807            from,
42808        )
42809    }
42810
42811    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
42812    ///
42813    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::indexOf(const Qt3DRender::QLayer*& t) const```</span>.
42814    ///
42815    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
42816    /// <p>Example:</p>
42817    /// <pre class="cpp">
42818    ///
42819    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
42820    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
42821    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
42822    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
42823    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
42824    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
42825    ///
42826    /// </pre>
42827    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
42828    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
42829    #[inline(always)]
42830    pub unsafe fn index_of_1a(&self, t: *const *mut crate::QLayer) -> ::std::os::raw::c_int {
42831        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_indexOf1(
42832            self as *const crate::QVectorOfQLayer,
42833            t,
42834        )
42835    }
42836
42837    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
42838    ///
42839    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::insert(int i, const Qt3DRender::QLayer*& t)```</span>.
42840    ///
42841    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
42842    /// <p>Example:</p>
42843    /// <pre class="cpp">
42844    ///
42845    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
42846    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
42847    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
42848    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
42849    ///
42850    /// </pre>
42851    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
42852    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
42853    #[inline(always)]
42854    pub unsafe fn insert_2a(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QLayer) {
42855        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_insert(
42856            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42857            i,
42858            t,
42859        )
42860    }
42861
42862    /// <p>This is an overloaded function.</p>
42863    ///
42864    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::insert(int i, int n, const Qt3DRender::QLayer*& t)```</span>.
42865    ///
42866    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
42867    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
42868    /// <p>Example:</p>
42869    /// <pre class="cpp">
42870    ///
42871    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
42872    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
42873    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
42874    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
42875    ///
42876    /// </pre></div>
42877    #[inline(always)]
42878    pub unsafe fn insert_3a(
42879        &self,
42880        i: ::std::os::raw::c_int,
42881        n: ::std::os::raw::c_int,
42882        t: *const *mut crate::QLayer,
42883    ) {
42884        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_insert1(
42885            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42886            i,
42887            n,
42888            t,
42889        )
42890    }
42891
42892    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QLayer*>::isDetached() const```</span>.
42893    #[inline(always)]
42894    pub unsafe fn is_detached(&self) -> bool {
42895        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_isDetached(
42896            self as *const crate::QVectorOfQLayer,
42897        )
42898    }
42899
42900    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
42901    ///
42902    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QLayer*>::isEmpty() const```</span>.
42903    ///
42904    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
42905    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
42906    #[inline(always)]
42907    pub unsafe fn is_empty(&self) -> bool {
42908        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_isEmpty(
42909            self as *const crate::QVectorOfQLayer,
42910        )
42911    }
42912
42913    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QLayer*>::isSharedWith(const QVector<Qt3DRender::QLayer*>& other) const```</span>.
42914    #[inline(always)]
42915    pub unsafe fn is_shared_with(
42916        &self,
42917        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
42918    ) -> bool {
42919        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_isSharedWith(
42920            self as *const crate::QVectorOfQLayer,
42921            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(other)
42922                .as_raw_ptr(),
42923        )
42924    }
42925
42926    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
42927    ///
42928    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::last()```</span>.
42929    ///
42930    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
42931    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
42932    #[inline(always)]
42933    pub unsafe fn last_mut(&self) -> *mut *mut crate::QLayer {
42934        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_last(
42935            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
42936        )
42937    }
42938
42939    /// <p>This is an overloaded function.</p>
42940    ///
42941    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer*& QVector<Qt3DRender::QLayer*>::last() const```</span>.
42942    ///
42943    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
42944    #[inline(always)]
42945    pub unsafe fn last(&self) -> *const *mut crate::QLayer {
42946        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_last1(
42947            self as *const crate::QVectorOfQLayer,
42948        )
42949    }
42950
42951    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
42952    ///
42953    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::lastIndexOf(const Qt3DRender::QLayer*& t, int from = …) const```</span>.
42954    ///
42955    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
42956    /// <p>Example:</p>
42957    /// <pre class="cpp">
42958    ///
42959    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
42960    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
42961    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
42962    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
42963    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
42964    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
42965    ///
42966    /// </pre>
42967    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
42968    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
42969    #[inline(always)]
42970    pub unsafe fn last_index_of_2a(
42971        &self,
42972        t: *const *mut crate::QLayer,
42973        from: ::std::os::raw::c_int,
42974    ) -> ::std::os::raw::c_int {
42975        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_lastIndexOf(
42976            self as *const crate::QVectorOfQLayer,
42977            t,
42978            from,
42979        )
42980    }
42981
42982    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
42983    ///
42984    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::lastIndexOf(const Qt3DRender::QLayer*& t) const```</span>.
42985    ///
42986    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
42987    /// <p>Example:</p>
42988    /// <pre class="cpp">
42989    ///
42990    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
42991    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
42992    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
42993    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
42994    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
42995    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
42996    ///
42997    /// </pre>
42998    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
42999    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
43000    #[inline(always)]
43001    pub unsafe fn last_index_of_1a(&self, t: *const *mut crate::QLayer) -> ::std::os::raw::c_int {
43002        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_lastIndexOf1(
43003            self as *const crate::QVectorOfQLayer,
43004            t,
43005        )
43006    }
43007
43008    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
43009    ///
43010    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::length() const```</span>.
43011    ///
43012    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
43013    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
43014    /// <p>This function was introduced in  Qt 5.2.</p>
43015    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
43016    #[inline(always)]
43017    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
43018        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_length(
43019            self as *const crate::QVectorOfQLayer,
43020        )
43021    }
43022
43023    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
43024    ///
43025    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*> QVector<Qt3DRender::QLayer*>::mid(int pos, int len = …) const```</span>.
43026    ///
43027    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
43028    #[inline(always)]
43029    pub unsafe fn mid_2a(
43030        &self,
43031        pos: ::std::os::raw::c_int,
43032        len: ::std::os::raw::c_int,
43033    ) -> ::cpp_core::CppBox<crate::QVectorOfQLayer> {
43034        let ffi_result = {
43035            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_mid(
43036                self as *const crate::QVectorOfQLayer,
43037                pos,
43038                len,
43039            )
43040        };
43041        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
43042    }
43043
43044    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
43045    ///
43046    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*> QVector<Qt3DRender::QLayer*>::mid(int pos) const```</span>.
43047    ///
43048    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
43049    #[inline(always)]
43050    pub unsafe fn mid_1a(
43051        &self,
43052        pos: ::std::os::raw::c_int,
43053    ) -> ::cpp_core::CppBox<crate::QVectorOfQLayer> {
43054        let ffi_result = {
43055            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_mid1(
43056                self as *const crate::QVectorOfQLayer,
43057                pos,
43058            )
43059        };
43060        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
43061    }
43062
43063    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
43064    ///
43065    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::move(int from, int to)```</span>.
43066    ///
43067    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
43068    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
43069    /// <p>This function was introduced in  Qt 5.6.</p>
43070    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
43071    #[inline(always)]
43072    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
43073        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_move(
43074            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43075            from,
43076            to,
43077        )
43078    }
43079
43080    /// <p>Constructs an empty vector.</p>
43081    ///
43082    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QLayer*>::QVector()```</span>.
43083    ///
43084    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
43085    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
43086    #[inline(always)]
43087    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQLayer> {
43088        let ffi_result =
43089            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_QVector() };
43090        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
43091    }
43092
43093    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
43094    ///
43095    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QLayer*>::QVector(int size)```</span>.
43096    ///
43097    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
43098    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
43099    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
43100    #[inline(always)]
43101    pub unsafe fn new_1a(
43102        size: ::std::os::raw::c_int,
43103    ) -> ::cpp_core::CppBox<crate::QVectorOfQLayer> {
43104        let ffi_result =
43105            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_QVector1(size) };
43106        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
43107    }
43108
43109    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
43110    ///
43111    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QLayer*>::QVector(int size, const Qt3DRender::QLayer*& t)```</span>.
43112    ///
43113    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
43114    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
43115    #[inline(always)]
43116    pub unsafe fn new_2a(
43117        size: ::std::os::raw::c_int,
43118        t: *const *mut crate::QLayer,
43119    ) -> ::cpp_core::CppBox<crate::QVectorOfQLayer> {
43120        let ffi_result =
43121            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_QVector2(size, t) };
43122        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
43123    }
43124
43125    /// <p>Constructs a copy of <i>other</i>.</p>
43126    ///
43127    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QLayer*>::QVector(const QVector<Qt3DRender::QLayer*>& v)```</span>.
43128    ///
43129    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
43130    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
43131    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
43132    #[inline(always)]
43133    pub unsafe fn new_copy(
43134        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
43135    ) -> ::cpp_core::CppBox<crate::QVectorOfQLayer> {
43136        let ffi_result = {
43137            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_QVector3(
43138                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(v)
43139                    .as_raw_ptr(),
43140            )
43141        };
43142        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
43143    }
43144
43145    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
43146    ///
43147    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::pop_back()```</span>.
43148    ///
43149    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
43150    #[inline(always)]
43151    pub unsafe fn pop_back(&self) {
43152        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_pop_back(
43153            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43154        )
43155    }
43156
43157    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
43158    ///
43159    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::pop_front()```</span>.
43160    ///
43161    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
43162    #[inline(always)]
43163    pub unsafe fn pop_front(&self) {
43164        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_pop_front(
43165            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43166        )
43167    }
43168
43169    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
43170    ///
43171    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::prepend(const Qt3DRender::QLayer*& t)```</span>.
43172    ///
43173    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
43174    /// <p>Example:</p>
43175    /// <pre class="cpp">
43176    ///
43177    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
43178    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
43179    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
43180    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
43181    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
43182    ///
43183    /// </pre>
43184    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
43185    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
43186    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
43187    #[inline(always)]
43188    pub unsafe fn prepend(&self, t: *const *mut crate::QLayer) {
43189        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_prepend(
43190            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43191            t,
43192        )
43193    }
43194
43195    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
43196    ///
43197    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::push_back(const Qt3DRender::QLayer*& t)```</span>.
43198    ///
43199    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
43200    #[inline(always)]
43201    pub unsafe fn push_back(&self, t: *const *mut crate::QLayer) {
43202        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_push_back(
43203            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43204            t,
43205        )
43206    }
43207
43208    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
43209    ///
43210    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::push_front(const Qt3DRender::QLayer*& t)```</span>.
43211    ///
43212    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
43213    #[inline(always)]
43214    pub unsafe fn push_front(&self, t: *const *mut crate::QLayer) {
43215        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_push_front(
43216            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43217            t,
43218        )
43219    }
43220
43221    /// <p>This is an overloaded function.</p>
43222    ///
43223    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::remove(int i)```</span>.
43224    ///
43225    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
43226    /// <p>Removes the element at index position <i>i</i>.</p>
43227    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
43228    #[inline(always)]
43229    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
43230        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_remove(
43231            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43232            i,
43233        )
43234    }
43235
43236    /// <p>This is an overloaded function.</p>
43237    ///
43238    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::remove(int i, int n)```</span>.
43239    ///
43240    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
43241    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
43242    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
43243    #[inline(always)]
43244    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
43245        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_remove1(
43246            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43247            i,
43248            n,
43249        )
43250    }
43251
43252    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
43253    ///
43254    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::removeAll(const Qt3DRender::QLayer*& t)```</span>.
43255    ///
43256    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
43257    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
43258    /// <p>This function was introduced in  Qt 5.4.</p>
43259    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
43260    #[inline(always)]
43261    pub unsafe fn remove_all(&self, t: *const *mut crate::QLayer) -> ::std::os::raw::c_int {
43262        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_removeAll(
43263            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43264            t,
43265        )
43266    }
43267
43268    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
43269    ///
43270    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::removeAt(int i)```</span>.
43271    ///
43272    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
43273    /// <pre class="cpp">
43274    ///
43275    ///   remove(i);
43276    ///
43277    /// </pre>
43278    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
43279    /// <p>This function was introduced in  Qt 5.2.</p>
43280    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
43281    #[inline(always)]
43282    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
43283        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_removeAt(
43284            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43285            i,
43286        )
43287    }
43288
43289    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
43290    ///
43291    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::removeFirst()```</span>.
43292    ///
43293    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
43294    /// <p>This function was introduced in  Qt 5.1.</p>
43295    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
43296    #[inline(always)]
43297    pub unsafe fn remove_first(&self) {
43298        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_removeFirst(
43299            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43300        )
43301    }
43302
43303    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
43304    ///
43305    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::removeLast()```</span>.
43306    ///
43307    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
43308    /// <p>This function was introduced in  Qt 5.1.</p>
43309    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
43310    #[inline(always)]
43311    pub unsafe fn remove_last(&self) {
43312        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_removeLast(
43313            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43314        )
43315    }
43316
43317    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
43318    ///
43319    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QLayer*>::removeOne(const Qt3DRender::QLayer*& t)```</span>.
43320    ///
43321    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
43322    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
43323    /// <p>This function was introduced in  Qt 5.4.</p>
43324    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
43325    #[inline(always)]
43326    pub unsafe fn remove_one(&self, t: *const *mut crate::QLayer) -> bool {
43327        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_removeOne(
43328            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43329            t,
43330        )
43331    }
43332
43333    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
43334    ///
43335    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::replace(int i, const Qt3DRender::QLayer*& t)```</span>.
43336    ///
43337    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
43338    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
43339    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
43340    #[inline(always)]
43341    pub unsafe fn replace(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QLayer) {
43342        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_replace(
43343            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43344            i,
43345            t,
43346        )
43347    }
43348
43349    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
43350    ///
43351    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::reserve(int size)```</span>.
43352    ///
43353    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
43354    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
43355    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
43356    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
43357    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
43358    #[inline(always)]
43359    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
43360        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_reserve(
43361            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43362            size,
43363        )
43364    }
43365
43366    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
43367    ///
43368    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::resize(int size)```</span>.
43369    ///
43370    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
43371    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
43372    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
43373    #[inline(always)]
43374    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
43375        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_resize(
43376            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43377            size,
43378        )
43379    }
43380
43381    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::setSharable(bool sharable)```</span>.
43382    #[inline(always)]
43383    pub unsafe fn set_sharable(&self, sharable: bool) {
43384        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_setSharable(
43385            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43386            sharable,
43387        )
43388    }
43389
43390    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
43391    ///
43392    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::shrink_to_fit()```</span>.
43393    ///
43394    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
43395    /// <p>This function was introduced in  Qt 5.10.</p></div>
43396    #[inline(always)]
43397    #[cfg_attr(
43398        feature = "ritual_rustdoc_nightly",
43399        doc(cfg(any(
43400            cpp_lib_version = "5.11.3",
43401            cpp_lib_version = "5.12.2",
43402            cpp_lib_version = "5.13.0",
43403            cpp_lib_version = "5.14.0"
43404        )))
43405    )]
43406    #[cfg(any(
43407        any(
43408            cpp_lib_version = "5.11.3",
43409            cpp_lib_version = "5.12.2",
43410            cpp_lib_version = "5.13.0",
43411            cpp_lib_version = "5.14.0"
43412        ),
43413        feature = "ritual_rustdoc"
43414    ))]
43415    pub unsafe fn shrink_to_fit(&self) {
43416        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_shrink_to_fit(
43417            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43418        )
43419    }
43420
43421    /// <p>Returns the number of items in the vector.</p>
43422    ///
43423    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::size() const```</span>.
43424    ///
43425    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
43426    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
43427    #[inline(always)]
43428    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
43429        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_size(
43430            self as *const crate::QVectorOfQLayer,
43431        )
43432    }
43433
43434    /// <p>Releases any memory not required to store the items.</p>
43435    ///
43436    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::squeeze()```</span>.
43437    ///
43438    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
43439    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
43440    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
43441    #[inline(always)]
43442    pub unsafe fn squeeze(&self) {
43443        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_squeeze(
43444            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43445        )
43446    }
43447
43448    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
43449    ///
43450    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QLayer*>::startsWith(const Qt3DRender::QLayer*& t) const```</span>.
43451    ///
43452    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
43453    /// <p>This function was introduced in  Qt 4.5.</p>
43454    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
43455    #[inline(always)]
43456    pub unsafe fn starts_with(&self, t: *const *mut crate::QLayer) -> bool {
43457        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_startsWith(
43458            self as *const crate::QVectorOfQLayer,
43459            t,
43460        )
43461    }
43462
43463    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
43464    ///
43465    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::swap(QVector<Qt3DRender::QLayer*>& other)```</span>.
43466    ///
43467    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
43468    /// <p>This function was introduced in  Qt 4.8.</p></div>
43469    #[inline(always)]
43470    pub unsafe fn swap(
43471        &self,
43472        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
43473    ) {
43474        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_swap(
43475            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43476            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(other)
43477                .as_raw_ptr() as *mut crate::QVectorOfQLayer,
43478        )
43479    }
43480
43481    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
43482    ///
43483    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QLayer*>::swapItemsAt(int i, int j)```</span>.
43484    ///
43485    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
43486    /// <p>This function was introduced in  Qt 5.14.</p></div>
43487    #[inline(always)]
43488    #[cfg_attr(
43489        feature = "ritual_rustdoc_nightly",
43490        doc(cfg(cpp_lib_version = "5.14.0"))
43491    )]
43492    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
43493    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
43494        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_swapItemsAt(
43495            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43496            i,
43497            j,
43498        )
43499    }
43500
43501    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
43502    ///
43503    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* QVector<Qt3DRender::QLayer*>::takeAt(int i)```</span>.
43504    ///
43505    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
43506    /// <p>Equivalent to</p>
43507    /// <pre class="cpp">
43508    ///
43509    ///   T t <span class="operator">=</span> at(i);
43510    ///   remove(i);
43511    ///   <span class="keyword">return</span> t;
43512    ///
43513    /// </pre>
43514    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
43515    /// <p>This function was introduced in  Qt 5.2.</p>
43516    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
43517    #[inline(always)]
43518    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QLayer> {
43519        let ffi_result = {
43520            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_takeAt(
43521                self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43522                i,
43523            )
43524        };
43525        ::qt_core::QPtr::from_raw(ffi_result)
43526    }
43527
43528    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
43529    ///
43530    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* QVector<Qt3DRender::QLayer*>::takeFirst()```</span>.
43531    ///
43532    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
43533    /// <p>This function was introduced in  Qt 5.1.</p>
43534    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
43535    #[inline(always)]
43536    pub unsafe fn take_first(&self) -> ::qt_core::QPtr<crate::QLayer> {
43537        let ffi_result = {
43538            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_takeFirst(
43539                self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43540            )
43541        };
43542        ::qt_core::QPtr::from_raw(ffi_result)
43543    }
43544
43545    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
43546    ///
43547    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* QVector<Qt3DRender::QLayer*>::takeLast()```</span>.
43548    ///
43549    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
43550    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
43551    /// <p>This function was introduced in  Qt 5.1.</p>
43552    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
43553    #[inline(always)]
43554    pub unsafe fn take_last(&self) -> ::qt_core::QPtr<crate::QLayer> {
43555        let ffi_result = {
43556            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_takeLast(
43557                self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
43558            )
43559        };
43560        ::qt_core::QPtr::from_raw(ffi_result)
43561    }
43562
43563    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
43564    ///
43565    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* QVector<Qt3DRender::QLayer*>::value(int i) const```</span>.
43566    ///
43567    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
43568    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
43569    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
43570    #[inline(always)]
43571    pub unsafe fn value_1a(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QLayer> {
43572        let ffi_result = {
43573            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_value(
43574                self as *const crate::QVectorOfQLayer,
43575                i,
43576            )
43577        };
43578        ::qt_core::QPtr::from_raw(ffi_result)
43579    }
43580
43581    /// <p>This is an overloaded function.</p>
43582    ///
43583    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* QVector<Qt3DRender::QLayer*>::value(int i, const Qt3DRender::QLayer*& defaultValue) const```</span>.
43584    ///
43585    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
43586    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
43587    #[inline(always)]
43588    pub unsafe fn value_2a(
43589        &self,
43590        i: ::std::os::raw::c_int,
43591        default_value: *const *mut crate::QLayer,
43592    ) -> ::qt_core::QPtr<crate::QLayer> {
43593        let ffi_result = {
43594            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_value1(
43595                self as *const crate::QVectorOfQLayer,
43596                i,
43597                default_value,
43598            )
43599        };
43600        ::qt_core::QPtr::from_raw(ffi_result)
43601    }
43602}
43603
43604/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
43605///
43606/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*>```</span>.
43607///
43608/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
43609/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
43610/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
43611/// <ul>
43612/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
43613/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
43614/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
43615/// </ul>
43616/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
43617/// <pre class="cpp">
43618///
43619///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
43620///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
43621///
43622/// </pre>
43623/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
43624/// <pre class="cpp">
43625///
43626///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
43627///
43628/// </pre>
43629/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
43630/// <pre class="cpp">
43631///
43632///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
43633///
43634/// </pre>
43635/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
43636/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
43637/// <pre class="cpp">
43638///
43639///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
43640/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
43641///
43642/// </pre>
43643/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
43644/// <pre class="cpp">
43645///
43646///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
43647/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
43648/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
43649///   }
43650///
43651/// </pre>
43652/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
43653/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
43654/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
43655/// <pre class="cpp">
43656///
43657///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
43658///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
43659/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
43660///
43661/// </pre>
43662/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
43663/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
43664/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
43665/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
43666/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
43667/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
43668/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
43669/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
43670/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
43671/// <a name="more-information-on-using-qt-containers"></a>
43672/// <h4>More Information on Using Qt Containers</h4>
43673/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
43674#[repr(C)]
43675pub struct QVectorOfQFilterKey {
43676    _unused: u8,
43677}
43678impl QVectorOfQFilterKey {
43679    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
43680    ///
43681    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*>& QVector<Qt3DRender::QFilterKey*>::operator+=(const QVector<Qt3DRender::QFilterKey*>& l)```</span>.
43682    ///
43683    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
43684    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
43685    #[inline(always)]
43686    pub unsafe fn add_assign_q_vector_of_q_filter_key(
43687        &self,
43688        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
43689    ) -> ::cpp_core::Ref<crate::QVectorOfQFilterKey> {
43690        let ffi_result = {
43691            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_operator__4(
43692                self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
43693                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(l)
43694                    .as_raw_ptr(),
43695            )
43696        };
43697        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
43698    }
43699
43700    /// <p>This is an overloaded function.</p>
43701    ///
43702    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*>& QVector<Qt3DRender::QFilterKey*>::operator+=(const Qt3DRender::QFilterKey*& t)```</span>.
43703    ///
43704    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
43705    /// <p>Appends <i>value</i> to the vector.</p>
43706    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
43707    #[inline(always)]
43708    pub unsafe fn add_assign_q_filter_key(
43709        &self,
43710        t: *const *mut crate::QFilterKey,
43711    ) -> ::cpp_core::Ref<crate::QVectorOfQFilterKey> {
43712        let ffi_result = {
43713            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_operator__5(
43714                self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
43715                t,
43716            )
43717        };
43718        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
43719    }
43720
43721    /// <p>Inserts <i>value</i> at the end of the vector.</p>
43722    ///
43723    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::append(const Qt3DRender::QFilterKey*& t)```</span>.
43724    ///
43725    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
43726    /// <p>Example:</p>
43727    /// <pre class="cpp">
43728    ///
43729    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
43730    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
43731    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
43732    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
43733    ///   vector<span class="operator">.</span>append(three);
43734    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
43735    ///   <span class="comment">// three: "three"</span>
43736    ///
43737    /// </pre>
43738    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
43739    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
43740    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
43741    #[inline(always)]
43742    pub unsafe fn append_q_filter_key(&self, t: *const *mut crate::QFilterKey) {
43743        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_append(
43744            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
43745            t,
43746        )
43747    }
43748
43749    /// <p>This is an overloaded function.</p>
43750    ///
43751    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::append(const QVector<Qt3DRender::QFilterKey*>& l)```</span>.
43752    ///
43753    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
43754    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
43755    /// <p>This function was introduced in  Qt 5.5.</p>
43756    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
43757    #[inline(always)]
43758    pub unsafe fn append_q_vector_of_q_filter_key(
43759        &self,
43760        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
43761    ) {
43762        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_append2(
43763            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
43764            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(l)
43765                .as_raw_ptr(),
43766        )
43767    }
43768
43769    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
43770    ///
43771    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::at(int i) const```</span>.
43772    ///
43773    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
43774    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
43775    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
43776    #[inline(always)]
43777    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QFilterKey {
43778        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_at(
43779            self as *const crate::QVectorOfQFilterKey,
43780            i,
43781        )
43782    }
43783
43784    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
43785    ///
43786    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::back()```</span>.
43787    ///
43788    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
43789    #[inline(always)]
43790    pub unsafe fn back_mut(&self) -> *mut *mut crate::QFilterKey {
43791        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_back(
43792            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
43793        )
43794    }
43795
43796    /// <p>This is an overloaded function.</p>
43797    ///
43798    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::back() const```</span>.
43799    ///
43800    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
43801    #[inline(always)]
43802    pub unsafe fn back(&self) -> *const *mut crate::QFilterKey {
43803        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_back1(
43804            self as *const crate::QVectorOfQFilterKey,
43805        )
43806    }
43807
43808    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
43809    ///
43810    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::capacity() const```</span>.
43811    ///
43812    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
43813    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
43814    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
43815    #[inline(always)]
43816    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
43817        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_capacity(
43818            self as *const crate::QVectorOfQFilterKey,
43819        )
43820    }
43821
43822    /// <p>Removes all the elements from the vector.</p>
43823    ///
43824    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::clear()```</span>.
43825    ///
43826    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
43827    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
43828    ///
43829    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
43830    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
43831    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
43832    ///
43833    /// </pre>
43834    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
43835    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
43836    #[inline(always)]
43837    pub unsafe fn clear(&self) {
43838        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_clear(
43839            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
43840        )
43841    }
43842
43843    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
43844    ///
43845    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey** QVector<Qt3DRender::QFilterKey*>::constData() const```</span>.
43846    ///
43847    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
43848    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
43849    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
43850    #[inline(always)]
43851    pub unsafe fn const_data(&self) -> *const *mut crate::QFilterKey {
43852        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_constData(
43853            self as *const crate::QVectorOfQFilterKey,
43854        )
43855    }
43856
43857    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
43858    ///
43859    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::constFirst() const```</span>.
43860    ///
43861    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
43862    /// <p>This function was introduced in  Qt 5.6.</p>
43863    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
43864    #[inline(always)]
43865    pub unsafe fn const_first(&self) -> *const *mut crate::QFilterKey {
43866        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_constFirst(
43867            self as *const crate::QVectorOfQFilterKey,
43868        )
43869    }
43870
43871    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
43872    ///
43873    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::constLast() const```</span>.
43874    ///
43875    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
43876    /// <p>This function was introduced in  Qt 5.6.</p>
43877    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
43878    #[inline(always)]
43879    pub unsafe fn const_last(&self) -> *const *mut crate::QFilterKey {
43880        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_constLast(
43881            self as *const crate::QVectorOfQFilterKey,
43882        )
43883    }
43884
43885    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
43886    ///
43887    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QFilterKey*>::contains(const Qt3DRender::QFilterKey*& t) const```</span>.
43888    ///
43889    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
43890    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
43891    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
43892    #[inline(always)]
43893    pub unsafe fn contains(&self, t: *const *mut crate::QFilterKey) -> bool {
43894        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_contains(
43895            self as *const crate::QVectorOfQFilterKey,
43896            t,
43897        )
43898    }
43899
43900    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
43901    ///
43902    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*>& QVector<Qt3DRender::QFilterKey*>::operator=(const QVector<Qt3DRender::QFilterKey*>& v)```</span>.
43903    ///
43904    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
43905    #[inline(always)]
43906    pub unsafe fn copy_from(
43907        &self,
43908        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
43909    ) -> ::cpp_core::Ref<crate::QVectorOfQFilterKey> {
43910        let ffi_result = {
43911            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_operator_(
43912                self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
43913                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(v)
43914                    .as_raw_ptr(),
43915            )
43916        };
43917        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
43918    }
43919
43920    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
43921    ///
43922    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::count(const Qt3DRender::QFilterKey*& t) const```</span>.
43923    ///
43924    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
43925    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
43926    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
43927    #[inline(always)]
43928    pub unsafe fn count_1a(&self, t: *const *mut crate::QFilterKey) -> ::std::os::raw::c_int {
43929        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_count(
43930            self as *const crate::QVectorOfQFilterKey,
43931            t,
43932        )
43933    }
43934
43935    /// <p>This is an overloaded function.</p>
43936    ///
43937    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::count() const```</span>.
43938    ///
43939    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
43940    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
43941    #[inline(always)]
43942    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
43943        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_count1(
43944            self as *const crate::QVectorOfQFilterKey,
43945        )
43946    }
43947
43948    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
43949    ///
43950    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey** QVector<Qt3DRender::QFilterKey*>::data()```</span>.
43951    ///
43952    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
43953    /// <p>Example:</p>
43954    /// <pre class="cpp">
43955    ///
43956    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
43957    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
43958    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
43959    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
43960    ///
43961    /// </pre>
43962    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
43963    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
43964    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
43965    #[inline(always)]
43966    pub unsafe fn data_mut(&self) -> *mut *mut crate::QFilterKey {
43967        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_data(
43968            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
43969        )
43970    }
43971
43972    /// <p>This is an overloaded function.</p>
43973    ///
43974    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey** QVector<Qt3DRender::QFilterKey*>::data() const```</span>.
43975    ///
43976    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
43977    #[inline(always)]
43978    pub unsafe fn data(&self) -> *const *mut crate::QFilterKey {
43979        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_data1(
43980            self as *const crate::QVectorOfQFilterKey,
43981        )
43982    }
43983
43984    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::detach()```</span>.
43985    #[inline(always)]
43986    pub unsafe fn detach(&self) {
43987        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_detach(
43988            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
43989        )
43990    }
43991
43992    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
43993    ///
43994    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QFilterKey*>::empty() const```</span>.
43995    ///
43996    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
43997    #[inline(always)]
43998    pub unsafe fn empty(&self) -> bool {
43999        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_empty(
44000            self as *const crate::QVectorOfQFilterKey,
44001        )
44002    }
44003
44004    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
44005    ///
44006    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QFilterKey*>::endsWith(const Qt3DRender::QFilterKey*& t) const```</span>.
44007    ///
44008    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
44009    /// <p>This function was introduced in  Qt 4.5.</p>
44010    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
44011    #[inline(always)]
44012    pub unsafe fn ends_with(&self, t: *const *mut crate::QFilterKey) -> bool {
44013        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_endsWith(
44014            self as *const crate::QVectorOfQFilterKey,
44015            t,
44016        )
44017    }
44018
44019    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
44020    ///
44021    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*>& QVector<Qt3DRender::QFilterKey*>::fill(const Qt3DRender::QFilterKey*& t, int size = …)```</span>.
44022    ///
44023    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
44024    /// <p>Example:</p>
44025    /// <pre class="cpp">
44026    ///
44027    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
44028    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
44029    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
44030    ///
44031    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
44032    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
44033    ///
44034    /// </pre>
44035    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
44036    #[inline(always)]
44037    pub unsafe fn fill_2a(
44038        &self,
44039        t: *const *mut crate::QFilterKey,
44040        size: ::std::os::raw::c_int,
44041    ) -> ::cpp_core::Ref<crate::QVectorOfQFilterKey> {
44042        let ffi_result = {
44043            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_fill(
44044                self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44045                t,
44046                size,
44047            )
44048        };
44049        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
44050    }
44051
44052    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
44053    ///
44054    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*>& QVector<Qt3DRender::QFilterKey*>::fill(const Qt3DRender::QFilterKey*& t)```</span>.
44055    ///
44056    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
44057    /// <p>Example:</p>
44058    /// <pre class="cpp">
44059    ///
44060    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
44061    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
44062    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
44063    ///
44064    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
44065    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
44066    ///
44067    /// </pre>
44068    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
44069    #[inline(always)]
44070    pub unsafe fn fill_1a(
44071        &self,
44072        t: *const *mut crate::QFilterKey,
44073    ) -> ::cpp_core::Ref<crate::QVectorOfQFilterKey> {
44074        let ffi_result = {
44075            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_fill1(
44076                self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44077                t,
44078            )
44079        };
44080        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
44081    }
44082
44083    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
44084    ///
44085    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::first()```</span>.
44086    ///
44087    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
44088    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
44089    #[inline(always)]
44090    pub unsafe fn first_mut(&self) -> *mut *mut crate::QFilterKey {
44091        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_first(
44092            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44093        )
44094    }
44095
44096    /// <p>This is an overloaded function.</p>
44097    ///
44098    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::first() const```</span>.
44099    ///
44100    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
44101    #[inline(always)]
44102    pub unsafe fn first(&self) -> *const *mut crate::QFilterKey {
44103        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_first1(
44104            self as *const crate::QVectorOfQFilterKey,
44105        )
44106    }
44107
44108    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
44109    ///
44110    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::front()```</span>.
44111    ///
44112    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
44113    #[inline(always)]
44114    pub unsafe fn front_mut(&self) -> *mut *mut crate::QFilterKey {
44115        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_front(
44116            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44117        )
44118    }
44119
44120    /// <p>This is an overloaded function.</p>
44121    ///
44122    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::front() const```</span>.
44123    ///
44124    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
44125    #[inline(always)]
44126    pub unsafe fn front(&self) -> *const *mut crate::QFilterKey {
44127        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_front1(
44128            self as *const crate::QVectorOfQFilterKey,
44129        )
44130    }
44131
44132    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
44133    ///
44134    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::operator[](int i)```</span>.
44135    ///
44136    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
44137    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
44138    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
44139    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
44140    #[inline(always)]
44141    pub unsafe fn index_mut(&self, i: ::std::os::raw::c_int) -> *mut *mut crate::QFilterKey {
44142        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_operator__2(
44143            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44144            i,
44145        )
44146    }
44147
44148    /// <p>This is an overloaded function.</p>
44149    ///
44150    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::operator[](int i) const```</span>.
44151    ///
44152    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
44153    /// <p>Same as at(<i>i</i>).</p></div>
44154    #[inline(always)]
44155    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QFilterKey {
44156        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_operator__3(
44157            self as *const crate::QVectorOfQFilterKey,
44158            i,
44159        )
44160    }
44161
44162    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
44163    ///
44164    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::indexOf(const Qt3DRender::QFilterKey*& t, int from = …) const```</span>.
44165    ///
44166    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
44167    /// <p>Example:</p>
44168    /// <pre class="cpp">
44169    ///
44170    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
44171    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
44172    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
44173    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
44174    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
44175    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
44176    ///
44177    /// </pre>
44178    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
44179    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
44180    #[inline(always)]
44181    pub unsafe fn index_of_2a(
44182        &self,
44183        t: *const *mut crate::QFilterKey,
44184        from: ::std::os::raw::c_int,
44185    ) -> ::std::os::raw::c_int {
44186        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_indexOf(
44187            self as *const crate::QVectorOfQFilterKey,
44188            t,
44189            from,
44190        )
44191    }
44192
44193    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
44194    ///
44195    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::indexOf(const Qt3DRender::QFilterKey*& t) const```</span>.
44196    ///
44197    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
44198    /// <p>Example:</p>
44199    /// <pre class="cpp">
44200    ///
44201    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
44202    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
44203    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
44204    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
44205    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
44206    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
44207    ///
44208    /// </pre>
44209    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
44210    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
44211    #[inline(always)]
44212    pub unsafe fn index_of_1a(&self, t: *const *mut crate::QFilterKey) -> ::std::os::raw::c_int {
44213        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_indexOf1(
44214            self as *const crate::QVectorOfQFilterKey,
44215            t,
44216        )
44217    }
44218
44219    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
44220    ///
44221    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::insert(int i, const Qt3DRender::QFilterKey*& t)```</span>.
44222    ///
44223    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
44224    /// <p>Example:</p>
44225    /// <pre class="cpp">
44226    ///
44227    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
44228    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
44229    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
44230    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
44231    ///
44232    /// </pre>
44233    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
44234    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
44235    #[inline(always)]
44236    pub unsafe fn insert_2a(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QFilterKey) {
44237        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_insert(
44238            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44239            i,
44240            t,
44241        )
44242    }
44243
44244    /// <p>This is an overloaded function.</p>
44245    ///
44246    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::insert(int i, int n, const Qt3DRender::QFilterKey*& t)```</span>.
44247    ///
44248    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
44249    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
44250    /// <p>Example:</p>
44251    /// <pre class="cpp">
44252    ///
44253    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
44254    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
44255    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
44256    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
44257    ///
44258    /// </pre></div>
44259    #[inline(always)]
44260    pub unsafe fn insert_3a(
44261        &self,
44262        i: ::std::os::raw::c_int,
44263        n: ::std::os::raw::c_int,
44264        t: *const *mut crate::QFilterKey,
44265    ) {
44266        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_insert1(
44267            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44268            i,
44269            n,
44270            t,
44271        )
44272    }
44273
44274    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QFilterKey*>::isDetached() const```</span>.
44275    #[inline(always)]
44276    pub unsafe fn is_detached(&self) -> bool {
44277        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_isDetached(
44278            self as *const crate::QVectorOfQFilterKey,
44279        )
44280    }
44281
44282    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
44283    ///
44284    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QFilterKey*>::isEmpty() const```</span>.
44285    ///
44286    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
44287    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
44288    #[inline(always)]
44289    pub unsafe fn is_empty(&self) -> bool {
44290        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_isEmpty(
44291            self as *const crate::QVectorOfQFilterKey,
44292        )
44293    }
44294
44295    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QFilterKey*>::isSharedWith(const QVector<Qt3DRender::QFilterKey*>& other) const```</span>.
44296    #[inline(always)]
44297    pub unsafe fn is_shared_with(
44298        &self,
44299        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
44300    ) -> bool {
44301        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_isSharedWith(
44302            self as *const crate::QVectorOfQFilterKey,
44303            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(other)
44304                .as_raw_ptr(),
44305        )
44306    }
44307
44308    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
44309    ///
44310    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::last()```</span>.
44311    ///
44312    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
44313    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
44314    #[inline(always)]
44315    pub unsafe fn last_mut(&self) -> *mut *mut crate::QFilterKey {
44316        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_last(
44317            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44318        )
44319    }
44320
44321    /// <p>This is an overloaded function.</p>
44322    ///
44323    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey*& QVector<Qt3DRender::QFilterKey*>::last() const```</span>.
44324    ///
44325    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
44326    #[inline(always)]
44327    pub unsafe fn last(&self) -> *const *mut crate::QFilterKey {
44328        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_last1(
44329            self as *const crate::QVectorOfQFilterKey,
44330        )
44331    }
44332
44333    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
44334    ///
44335    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::lastIndexOf(const Qt3DRender::QFilterKey*& t, int from = …) const```</span>.
44336    ///
44337    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
44338    /// <p>Example:</p>
44339    /// <pre class="cpp">
44340    ///
44341    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
44342    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
44343    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
44344    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
44345    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
44346    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
44347    ///
44348    /// </pre>
44349    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
44350    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
44351    #[inline(always)]
44352    pub unsafe fn last_index_of_2a(
44353        &self,
44354        t: *const *mut crate::QFilterKey,
44355        from: ::std::os::raw::c_int,
44356    ) -> ::std::os::raw::c_int {
44357        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_lastIndexOf(
44358            self as *const crate::QVectorOfQFilterKey,
44359            t,
44360            from,
44361        )
44362    }
44363
44364    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
44365    ///
44366    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::lastIndexOf(const Qt3DRender::QFilterKey*& t) const```</span>.
44367    ///
44368    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
44369    /// <p>Example:</p>
44370    /// <pre class="cpp">
44371    ///
44372    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
44373    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
44374    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
44375    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
44376    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
44377    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
44378    ///
44379    /// </pre>
44380    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
44381    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
44382    #[inline(always)]
44383    pub unsafe fn last_index_of_1a(
44384        &self,
44385        t: *const *mut crate::QFilterKey,
44386    ) -> ::std::os::raw::c_int {
44387        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_lastIndexOf1(
44388            self as *const crate::QVectorOfQFilterKey,
44389            t,
44390        )
44391    }
44392
44393    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
44394    ///
44395    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::length() const```</span>.
44396    ///
44397    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
44398    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
44399    /// <p>This function was introduced in  Qt 5.2.</p>
44400    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
44401    #[inline(always)]
44402    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
44403        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_length(
44404            self as *const crate::QVectorOfQFilterKey,
44405        )
44406    }
44407
44408    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
44409    ///
44410    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*> QVector<Qt3DRender::QFilterKey*>::mid(int pos, int len = …) const```</span>.
44411    ///
44412    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
44413    #[inline(always)]
44414    pub unsafe fn mid_2a(
44415        &self,
44416        pos: ::std::os::raw::c_int,
44417        len: ::std::os::raw::c_int,
44418    ) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
44419        let ffi_result = {
44420            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_mid(
44421                self as *const crate::QVectorOfQFilterKey,
44422                pos,
44423                len,
44424            )
44425        };
44426        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
44427    }
44428
44429    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
44430    ///
44431    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*> QVector<Qt3DRender::QFilterKey*>::mid(int pos) const```</span>.
44432    ///
44433    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
44434    #[inline(always)]
44435    pub unsafe fn mid_1a(
44436        &self,
44437        pos: ::std::os::raw::c_int,
44438    ) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
44439        let ffi_result = {
44440            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_mid1(
44441                self as *const crate::QVectorOfQFilterKey,
44442                pos,
44443            )
44444        };
44445        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
44446    }
44447
44448    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
44449    ///
44450    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::move(int from, int to)```</span>.
44451    ///
44452    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
44453    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
44454    /// <p>This function was introduced in  Qt 5.6.</p>
44455    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
44456    #[inline(always)]
44457    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
44458        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_move(
44459            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44460            from,
44461            to,
44462        )
44463    }
44464
44465    /// <p>Constructs an empty vector.</p>
44466    ///
44467    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QFilterKey*>::QVector()```</span>.
44468    ///
44469    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
44470    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
44471    #[inline(always)]
44472    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
44473        let ffi_result =
44474            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_QVector() };
44475        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
44476    }
44477
44478    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
44479    ///
44480    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QFilterKey*>::QVector(int size)```</span>.
44481    ///
44482    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
44483    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
44484    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
44485    #[inline(always)]
44486    pub unsafe fn new_1a(
44487        size: ::std::os::raw::c_int,
44488    ) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
44489        let ffi_result =
44490            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_QVector1(size) };
44491        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
44492    }
44493
44494    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
44495    ///
44496    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QFilterKey*>::QVector(int size, const Qt3DRender::QFilterKey*& t)```</span>.
44497    ///
44498    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
44499    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
44500    #[inline(always)]
44501    pub unsafe fn new_2a(
44502        size: ::std::os::raw::c_int,
44503        t: *const *mut crate::QFilterKey,
44504    ) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
44505        let ffi_result = {
44506            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_QVector2(size, t)
44507        };
44508        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
44509    }
44510
44511    /// <p>Constructs a copy of <i>other</i>.</p>
44512    ///
44513    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QFilterKey*>::QVector(const QVector<Qt3DRender::QFilterKey*>& v)```</span>.
44514    ///
44515    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
44516    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
44517    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
44518    #[inline(always)]
44519    pub unsafe fn new_copy(
44520        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
44521    ) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
44522        let ffi_result = {
44523            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_QVector3(
44524                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(v)
44525                    .as_raw_ptr(),
44526            )
44527        };
44528        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
44529    }
44530
44531    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
44532    ///
44533    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::pop_back()```</span>.
44534    ///
44535    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
44536    #[inline(always)]
44537    pub unsafe fn pop_back(&self) {
44538        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_pop_back(
44539            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44540        )
44541    }
44542
44543    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
44544    ///
44545    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::pop_front()```</span>.
44546    ///
44547    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
44548    #[inline(always)]
44549    pub unsafe fn pop_front(&self) {
44550        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_pop_front(
44551            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44552        )
44553    }
44554
44555    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
44556    ///
44557    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::prepend(const Qt3DRender::QFilterKey*& t)```</span>.
44558    ///
44559    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
44560    /// <p>Example:</p>
44561    /// <pre class="cpp">
44562    ///
44563    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
44564    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
44565    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
44566    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
44567    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
44568    ///
44569    /// </pre>
44570    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
44571    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
44572    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
44573    #[inline(always)]
44574    pub unsafe fn prepend(&self, t: *const *mut crate::QFilterKey) {
44575        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_prepend(
44576            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44577            t,
44578        )
44579    }
44580
44581    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
44582    ///
44583    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::push_back(const Qt3DRender::QFilterKey*& t)```</span>.
44584    ///
44585    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
44586    #[inline(always)]
44587    pub unsafe fn push_back(&self, t: *const *mut crate::QFilterKey) {
44588        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_push_back(
44589            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44590            t,
44591        )
44592    }
44593
44594    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
44595    ///
44596    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::push_front(const Qt3DRender::QFilterKey*& t)```</span>.
44597    ///
44598    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
44599    #[inline(always)]
44600    pub unsafe fn push_front(&self, t: *const *mut crate::QFilterKey) {
44601        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_push_front(
44602            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44603            t,
44604        )
44605    }
44606
44607    /// <p>This is an overloaded function.</p>
44608    ///
44609    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::remove(int i)```</span>.
44610    ///
44611    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
44612    /// <p>Removes the element at index position <i>i</i>.</p>
44613    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
44614    #[inline(always)]
44615    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
44616        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_remove(
44617            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44618            i,
44619        )
44620    }
44621
44622    /// <p>This is an overloaded function.</p>
44623    ///
44624    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::remove(int i, int n)```</span>.
44625    ///
44626    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
44627    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
44628    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
44629    #[inline(always)]
44630    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
44631        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_remove1(
44632            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44633            i,
44634            n,
44635        )
44636    }
44637
44638    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
44639    ///
44640    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::removeAll(const Qt3DRender::QFilterKey*& t)```</span>.
44641    ///
44642    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
44643    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
44644    /// <p>This function was introduced in  Qt 5.4.</p>
44645    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
44646    #[inline(always)]
44647    pub unsafe fn remove_all(&self, t: *const *mut crate::QFilterKey) -> ::std::os::raw::c_int {
44648        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_removeAll(
44649            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44650            t,
44651        )
44652    }
44653
44654    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
44655    ///
44656    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::removeAt(int i)```</span>.
44657    ///
44658    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
44659    /// <pre class="cpp">
44660    ///
44661    ///   remove(i);
44662    ///
44663    /// </pre>
44664    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
44665    /// <p>This function was introduced in  Qt 5.2.</p>
44666    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
44667    #[inline(always)]
44668    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
44669        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_removeAt(
44670            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44671            i,
44672        )
44673    }
44674
44675    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
44676    ///
44677    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::removeFirst()```</span>.
44678    ///
44679    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
44680    /// <p>This function was introduced in  Qt 5.1.</p>
44681    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
44682    #[inline(always)]
44683    pub unsafe fn remove_first(&self) {
44684        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_removeFirst(
44685            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44686        )
44687    }
44688
44689    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
44690    ///
44691    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::removeLast()```</span>.
44692    ///
44693    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
44694    /// <p>This function was introduced in  Qt 5.1.</p>
44695    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
44696    #[inline(always)]
44697    pub unsafe fn remove_last(&self) {
44698        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_removeLast(
44699            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44700        )
44701    }
44702
44703    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
44704    ///
44705    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QFilterKey*>::removeOne(const Qt3DRender::QFilterKey*& t)```</span>.
44706    ///
44707    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
44708    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
44709    /// <p>This function was introduced in  Qt 5.4.</p>
44710    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
44711    #[inline(always)]
44712    pub unsafe fn remove_one(&self, t: *const *mut crate::QFilterKey) -> bool {
44713        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_removeOne(
44714            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44715            t,
44716        )
44717    }
44718
44719    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
44720    ///
44721    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::replace(int i, const Qt3DRender::QFilterKey*& t)```</span>.
44722    ///
44723    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
44724    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
44725    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
44726    #[inline(always)]
44727    pub unsafe fn replace(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QFilterKey) {
44728        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_replace(
44729            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44730            i,
44731            t,
44732        )
44733    }
44734
44735    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
44736    ///
44737    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::reserve(int size)```</span>.
44738    ///
44739    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
44740    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
44741    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
44742    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
44743    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
44744    #[inline(always)]
44745    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
44746        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_reserve(
44747            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44748            size,
44749        )
44750    }
44751
44752    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
44753    ///
44754    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::resize(int size)```</span>.
44755    ///
44756    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
44757    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
44758    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
44759    #[inline(always)]
44760    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
44761        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_resize(
44762            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44763            size,
44764        )
44765    }
44766
44767    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::setSharable(bool sharable)```</span>.
44768    #[inline(always)]
44769    pub unsafe fn set_sharable(&self, sharable: bool) {
44770        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_setSharable(
44771            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44772            sharable,
44773        )
44774    }
44775
44776    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
44777    ///
44778    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::shrink_to_fit()```</span>.
44779    ///
44780    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
44781    /// <p>This function was introduced in  Qt 5.10.</p></div>
44782    #[inline(always)]
44783    #[cfg_attr(
44784        feature = "ritual_rustdoc_nightly",
44785        doc(cfg(any(
44786            cpp_lib_version = "5.11.3",
44787            cpp_lib_version = "5.12.2",
44788            cpp_lib_version = "5.13.0",
44789            cpp_lib_version = "5.14.0"
44790        )))
44791    )]
44792    #[cfg(any(
44793        any(
44794            cpp_lib_version = "5.11.3",
44795            cpp_lib_version = "5.12.2",
44796            cpp_lib_version = "5.13.0",
44797            cpp_lib_version = "5.14.0"
44798        ),
44799        feature = "ritual_rustdoc"
44800    ))]
44801    pub unsafe fn shrink_to_fit(&self) {
44802        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_shrink_to_fit(
44803            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44804        )
44805    }
44806
44807    /// <p>Returns the number of items in the vector.</p>
44808    ///
44809    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::size() const```</span>.
44810    ///
44811    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
44812    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
44813    #[inline(always)]
44814    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
44815        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_size(
44816            self as *const crate::QVectorOfQFilterKey,
44817        )
44818    }
44819
44820    /// <p>Releases any memory not required to store the items.</p>
44821    ///
44822    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::squeeze()```</span>.
44823    ///
44824    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
44825    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
44826    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
44827    #[inline(always)]
44828    pub unsafe fn squeeze(&self) {
44829        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_squeeze(
44830            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44831        )
44832    }
44833
44834    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
44835    ///
44836    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QFilterKey*>::startsWith(const Qt3DRender::QFilterKey*& t) const```</span>.
44837    ///
44838    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
44839    /// <p>This function was introduced in  Qt 4.5.</p>
44840    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
44841    #[inline(always)]
44842    pub unsafe fn starts_with(&self, t: *const *mut crate::QFilterKey) -> bool {
44843        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_startsWith(
44844            self as *const crate::QVectorOfQFilterKey,
44845            t,
44846        )
44847    }
44848
44849    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
44850    ///
44851    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::swap(QVector<Qt3DRender::QFilterKey*>& other)```</span>.
44852    ///
44853    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
44854    /// <p>This function was introduced in  Qt 4.8.</p></div>
44855    #[inline(always)]
44856    pub unsafe fn swap(
44857        &self,
44858        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
44859    ) {
44860        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_swap(
44861            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44862            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(other)
44863                .as_raw_ptr() as *mut crate::QVectorOfQFilterKey,
44864        )
44865    }
44866
44867    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
44868    ///
44869    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QFilterKey*>::swapItemsAt(int i, int j)```</span>.
44870    ///
44871    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
44872    /// <p>This function was introduced in  Qt 5.14.</p></div>
44873    #[inline(always)]
44874    #[cfg_attr(
44875        feature = "ritual_rustdoc_nightly",
44876        doc(cfg(cpp_lib_version = "5.14.0"))
44877    )]
44878    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
44879    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
44880        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_swapItemsAt(
44881            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44882            i,
44883            j,
44884        )
44885    }
44886
44887    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
44888    ///
44889    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey* QVector<Qt3DRender::QFilterKey*>::takeAt(int i)```</span>.
44890    ///
44891    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
44892    /// <p>Equivalent to</p>
44893    /// <pre class="cpp">
44894    ///
44895    ///   T t <span class="operator">=</span> at(i);
44896    ///   remove(i);
44897    ///   <span class="keyword">return</span> t;
44898    ///
44899    /// </pre>
44900    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
44901    /// <p>This function was introduced in  Qt 5.2.</p>
44902    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
44903    #[inline(always)]
44904    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QFilterKey> {
44905        let ffi_result = {
44906            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_takeAt(
44907                self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44908                i,
44909            )
44910        };
44911        ::qt_core::QPtr::from_raw(ffi_result)
44912    }
44913
44914    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
44915    ///
44916    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey* QVector<Qt3DRender::QFilterKey*>::takeFirst()```</span>.
44917    ///
44918    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
44919    /// <p>This function was introduced in  Qt 5.1.</p>
44920    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
44921    #[inline(always)]
44922    pub unsafe fn take_first(&self) -> ::qt_core::QPtr<crate::QFilterKey> {
44923        let ffi_result = {
44924            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_takeFirst(
44925                self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44926            )
44927        };
44928        ::qt_core::QPtr::from_raw(ffi_result)
44929    }
44930
44931    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
44932    ///
44933    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey* QVector<Qt3DRender::QFilterKey*>::takeLast()```</span>.
44934    ///
44935    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
44936    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
44937    /// <p>This function was introduced in  Qt 5.1.</p>
44938    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
44939    #[inline(always)]
44940    pub unsafe fn take_last(&self) -> ::qt_core::QPtr<crate::QFilterKey> {
44941        let ffi_result = {
44942            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_takeLast(
44943                self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
44944            )
44945        };
44946        ::qt_core::QPtr::from_raw(ffi_result)
44947    }
44948
44949    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
44950    ///
44951    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey* QVector<Qt3DRender::QFilterKey*>::value(int i) const```</span>.
44952    ///
44953    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
44954    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
44955    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
44956    #[inline(always)]
44957    pub unsafe fn value_1a(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QFilterKey> {
44958        let ffi_result = {
44959            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_value(
44960                self as *const crate::QVectorOfQFilterKey,
44961                i,
44962            )
44963        };
44964        ::qt_core::QPtr::from_raw(ffi_result)
44965    }
44966
44967    /// <p>This is an overloaded function.</p>
44968    ///
44969    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey* QVector<Qt3DRender::QFilterKey*>::value(int i, const Qt3DRender::QFilterKey*& defaultValue) const```</span>.
44970    ///
44971    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
44972    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
44973    #[inline(always)]
44974    pub unsafe fn value_2a(
44975        &self,
44976        i: ::std::os::raw::c_int,
44977        default_value: *const *mut crate::QFilterKey,
44978    ) -> ::qt_core::QPtr<crate::QFilterKey> {
44979        let ffi_result = {
44980            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_value1(
44981                self as *const crate::QVectorOfQFilterKey,
44982                i,
44983                default_value,
44984            )
44985        };
44986        ::qt_core::QPtr::from_raw(ffi_result)
44987    }
44988}
44989
44990/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
44991///
44992/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*>```</span>.
44993///
44994/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
44995/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
44996/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
44997/// <ul>
44998/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
44999/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
45000/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
45001/// </ul>
45002/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
45003/// <pre class="cpp">
45004///
45005///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
45006///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
45007///
45008/// </pre>
45009/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
45010/// <pre class="cpp">
45011///
45012///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
45013///
45014/// </pre>
45015/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
45016/// <pre class="cpp">
45017///
45018///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
45019///
45020/// </pre>
45021/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
45022/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
45023/// <pre class="cpp">
45024///
45025///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
45026/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
45027///
45028/// </pre>
45029/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
45030/// <pre class="cpp">
45031///
45032///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
45033/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
45034/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
45035///   }
45036///
45037/// </pre>
45038/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
45039/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
45040/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
45041/// <pre class="cpp">
45042///
45043///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
45044///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
45045/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
45046///
45047/// </pre>
45048/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
45049/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
45050/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
45051/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
45052/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
45053/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
45054/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
45055/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
45056/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
45057/// <a name="more-information-on-using-qt-containers"></a>
45058/// <h4>More Information on Using Qt Containers</h4>
45059/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
45060#[repr(C)]
45061pub struct QVectorOfQRenderState {
45062    _unused: u8,
45063}
45064impl QVectorOfQRenderState {
45065    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
45066    ///
45067    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*>& QVector<Qt3DRender::QRenderState*>::operator+=(const QVector<Qt3DRender::QRenderState*>& l)```</span>.
45068    ///
45069    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
45070    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
45071    #[inline(always)]
45072    pub unsafe fn add_assign_q_vector_of_q_render_state(
45073        &self,
45074        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
45075    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderState> {
45076        let ffi_result = {
45077            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_operator__4(
45078                self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45079                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(l)
45080                    .as_raw_ptr(),
45081            )
45082        };
45083        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
45084    }
45085
45086    /// <p>This is an overloaded function.</p>
45087    ///
45088    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*>& QVector<Qt3DRender::QRenderState*>::operator+=(const Qt3DRender::QRenderState*& t)```</span>.
45089    ///
45090    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
45091    /// <p>Appends <i>value</i> to the vector.</p>
45092    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
45093    #[inline(always)]
45094    pub unsafe fn add_assign_q_render_state(
45095        &self,
45096        t: *const *mut crate::QRenderState,
45097    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderState> {
45098        let ffi_result = {
45099            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_operator__5(
45100                self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45101                t,
45102            )
45103        };
45104        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
45105    }
45106
45107    /// <p>Inserts <i>value</i> at the end of the vector.</p>
45108    ///
45109    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::append(const Qt3DRender::QRenderState*& t)```</span>.
45110    ///
45111    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
45112    /// <p>Example:</p>
45113    /// <pre class="cpp">
45114    ///
45115    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
45116    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
45117    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
45118    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
45119    ///   vector<span class="operator">.</span>append(three);
45120    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
45121    ///   <span class="comment">// three: "three"</span>
45122    ///
45123    /// </pre>
45124    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
45125    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
45126    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
45127    #[inline(always)]
45128    pub unsafe fn append_q_render_state(&self, t: *const *mut crate::QRenderState) {
45129        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_append(
45130            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45131            t,
45132        )
45133    }
45134
45135    /// <p>This is an overloaded function.</p>
45136    ///
45137    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::append(const QVector<Qt3DRender::QRenderState*>& l)```</span>.
45138    ///
45139    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
45140    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
45141    /// <p>This function was introduced in  Qt 5.5.</p>
45142    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
45143    #[inline(always)]
45144    pub unsafe fn append_q_vector_of_q_render_state(
45145        &self,
45146        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
45147    ) {
45148        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_append2(
45149            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45150            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(l)
45151                .as_raw_ptr(),
45152        )
45153    }
45154
45155    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
45156    ///
45157    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::at(int i) const```</span>.
45158    ///
45159    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
45160    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
45161    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
45162    #[inline(always)]
45163    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QRenderState {
45164        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_at(
45165            self as *const crate::QVectorOfQRenderState,
45166            i,
45167        )
45168    }
45169
45170    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
45171    ///
45172    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::back()```</span>.
45173    ///
45174    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
45175    #[inline(always)]
45176    pub unsafe fn back_mut(&self) -> *mut *mut crate::QRenderState {
45177        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_back(
45178            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45179        )
45180    }
45181
45182    /// <p>This is an overloaded function.</p>
45183    ///
45184    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::back() const```</span>.
45185    ///
45186    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
45187    #[inline(always)]
45188    pub unsafe fn back(&self) -> *const *mut crate::QRenderState {
45189        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_back1(
45190            self as *const crate::QVectorOfQRenderState,
45191        )
45192    }
45193
45194    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
45195    ///
45196    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::capacity() const```</span>.
45197    ///
45198    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
45199    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
45200    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
45201    #[inline(always)]
45202    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
45203        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_capacity(
45204            self as *const crate::QVectorOfQRenderState,
45205        )
45206    }
45207
45208    /// <p>Removes all the elements from the vector.</p>
45209    ///
45210    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::clear()```</span>.
45211    ///
45212    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
45213    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
45214    ///
45215    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
45216    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
45217    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
45218    ///
45219    /// </pre>
45220    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
45221    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
45222    #[inline(always)]
45223    pub unsafe fn clear(&self) {
45224        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_clear(
45225            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45226        )
45227    }
45228
45229    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
45230    ///
45231    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState** QVector<Qt3DRender::QRenderState*>::constData() const```</span>.
45232    ///
45233    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
45234    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
45235    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
45236    #[inline(always)]
45237    pub unsafe fn const_data(&self) -> *const *mut crate::QRenderState {
45238        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_constData(
45239            self as *const crate::QVectorOfQRenderState,
45240        )
45241    }
45242
45243    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
45244    ///
45245    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::constFirst() const```</span>.
45246    ///
45247    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
45248    /// <p>This function was introduced in  Qt 5.6.</p>
45249    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
45250    #[inline(always)]
45251    pub unsafe fn const_first(&self) -> *const *mut crate::QRenderState {
45252        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_constFirst(
45253            self as *const crate::QVectorOfQRenderState,
45254        )
45255    }
45256
45257    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
45258    ///
45259    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::constLast() const```</span>.
45260    ///
45261    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
45262    /// <p>This function was introduced in  Qt 5.6.</p>
45263    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
45264    #[inline(always)]
45265    pub unsafe fn const_last(&self) -> *const *mut crate::QRenderState {
45266        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_constLast(
45267            self as *const crate::QVectorOfQRenderState,
45268        )
45269    }
45270
45271    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
45272    ///
45273    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderState*>::contains(const Qt3DRender::QRenderState*& t) const```</span>.
45274    ///
45275    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
45276    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
45277    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
45278    #[inline(always)]
45279    pub unsafe fn contains(&self, t: *const *mut crate::QRenderState) -> bool {
45280        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_contains(
45281            self as *const crate::QVectorOfQRenderState,
45282            t,
45283        )
45284    }
45285
45286    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
45287    ///
45288    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*>& QVector<Qt3DRender::QRenderState*>::operator=(const QVector<Qt3DRender::QRenderState*>& v)```</span>.
45289    ///
45290    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
45291    #[inline(always)]
45292    pub unsafe fn copy_from(
45293        &self,
45294        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
45295    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderState> {
45296        let ffi_result = {
45297            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_operator_(
45298                self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45299                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(v)
45300                    .as_raw_ptr(),
45301            )
45302        };
45303        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
45304    }
45305
45306    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
45307    ///
45308    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::count(const Qt3DRender::QRenderState*& t) const```</span>.
45309    ///
45310    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
45311    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
45312    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
45313    #[inline(always)]
45314    pub unsafe fn count_1a(&self, t: *const *mut crate::QRenderState) -> ::std::os::raw::c_int {
45315        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_count(
45316            self as *const crate::QVectorOfQRenderState,
45317            t,
45318        )
45319    }
45320
45321    /// <p>This is an overloaded function.</p>
45322    ///
45323    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::count() const```</span>.
45324    ///
45325    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
45326    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
45327    #[inline(always)]
45328    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
45329        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_count1(
45330            self as *const crate::QVectorOfQRenderState,
45331        )
45332    }
45333
45334    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
45335    ///
45336    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState** QVector<Qt3DRender::QRenderState*>::data()```</span>.
45337    ///
45338    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
45339    /// <p>Example:</p>
45340    /// <pre class="cpp">
45341    ///
45342    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
45343    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
45344    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
45345    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
45346    ///
45347    /// </pre>
45348    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
45349    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
45350    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
45351    #[inline(always)]
45352    pub unsafe fn data_mut(&self) -> *mut *mut crate::QRenderState {
45353        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_data(
45354            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45355        )
45356    }
45357
45358    /// <p>This is an overloaded function.</p>
45359    ///
45360    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState** QVector<Qt3DRender::QRenderState*>::data() const```</span>.
45361    ///
45362    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
45363    #[inline(always)]
45364    pub unsafe fn data(&self) -> *const *mut crate::QRenderState {
45365        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_data1(
45366            self as *const crate::QVectorOfQRenderState,
45367        )
45368    }
45369
45370    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::detach()```</span>.
45371    #[inline(always)]
45372    pub unsafe fn detach(&self) {
45373        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_detach(
45374            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45375        )
45376    }
45377
45378    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
45379    ///
45380    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderState*>::empty() const```</span>.
45381    ///
45382    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
45383    #[inline(always)]
45384    pub unsafe fn empty(&self) -> bool {
45385        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_empty(
45386            self as *const crate::QVectorOfQRenderState,
45387        )
45388    }
45389
45390    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
45391    ///
45392    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderState*>::endsWith(const Qt3DRender::QRenderState*& t) const```</span>.
45393    ///
45394    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
45395    /// <p>This function was introduced in  Qt 4.5.</p>
45396    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
45397    #[inline(always)]
45398    pub unsafe fn ends_with(&self, t: *const *mut crate::QRenderState) -> bool {
45399        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_endsWith(
45400            self as *const crate::QVectorOfQRenderState,
45401            t,
45402        )
45403    }
45404
45405    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
45406    ///
45407    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*>& QVector<Qt3DRender::QRenderState*>::fill(const Qt3DRender::QRenderState*& t, int size = …)```</span>.
45408    ///
45409    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
45410    /// <p>Example:</p>
45411    /// <pre class="cpp">
45412    ///
45413    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
45414    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
45415    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
45416    ///
45417    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
45418    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
45419    ///
45420    /// </pre>
45421    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
45422    #[inline(always)]
45423    pub unsafe fn fill_2a(
45424        &self,
45425        t: *const *mut crate::QRenderState,
45426        size: ::std::os::raw::c_int,
45427    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderState> {
45428        let ffi_result = {
45429            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_fill(
45430                self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45431                t,
45432                size,
45433            )
45434        };
45435        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
45436    }
45437
45438    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
45439    ///
45440    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*>& QVector<Qt3DRender::QRenderState*>::fill(const Qt3DRender::QRenderState*& t)```</span>.
45441    ///
45442    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
45443    /// <p>Example:</p>
45444    /// <pre class="cpp">
45445    ///
45446    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
45447    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
45448    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
45449    ///
45450    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
45451    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
45452    ///
45453    /// </pre>
45454    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
45455    #[inline(always)]
45456    pub unsafe fn fill_1a(
45457        &self,
45458        t: *const *mut crate::QRenderState,
45459    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderState> {
45460        let ffi_result = {
45461            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_fill1(
45462                self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45463                t,
45464            )
45465        };
45466        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
45467    }
45468
45469    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
45470    ///
45471    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::first()```</span>.
45472    ///
45473    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
45474    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
45475    #[inline(always)]
45476    pub unsafe fn first_mut(&self) -> *mut *mut crate::QRenderState {
45477        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_first(
45478            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45479        )
45480    }
45481
45482    /// <p>This is an overloaded function.</p>
45483    ///
45484    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::first() const```</span>.
45485    ///
45486    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
45487    #[inline(always)]
45488    pub unsafe fn first(&self) -> *const *mut crate::QRenderState {
45489        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_first1(
45490            self as *const crate::QVectorOfQRenderState,
45491        )
45492    }
45493
45494    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
45495    ///
45496    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::front()```</span>.
45497    ///
45498    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
45499    #[inline(always)]
45500    pub unsafe fn front_mut(&self) -> *mut *mut crate::QRenderState {
45501        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_front(
45502            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45503        )
45504    }
45505
45506    /// <p>This is an overloaded function.</p>
45507    ///
45508    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::front() const```</span>.
45509    ///
45510    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
45511    #[inline(always)]
45512    pub unsafe fn front(&self) -> *const *mut crate::QRenderState {
45513        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_front1(
45514            self as *const crate::QVectorOfQRenderState,
45515        )
45516    }
45517
45518    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
45519    ///
45520    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::operator[](int i)```</span>.
45521    ///
45522    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
45523    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
45524    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
45525    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
45526    #[inline(always)]
45527    pub unsafe fn index_mut(&self, i: ::std::os::raw::c_int) -> *mut *mut crate::QRenderState {
45528        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_operator__2(
45529            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45530            i,
45531        )
45532    }
45533
45534    /// <p>This is an overloaded function.</p>
45535    ///
45536    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::operator[](int i) const```</span>.
45537    ///
45538    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
45539    /// <p>Same as at(<i>i</i>).</p></div>
45540    #[inline(always)]
45541    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QRenderState {
45542        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_operator__3(
45543            self as *const crate::QVectorOfQRenderState,
45544            i,
45545        )
45546    }
45547
45548    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
45549    ///
45550    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::indexOf(const Qt3DRender::QRenderState*& t, int from = …) const```</span>.
45551    ///
45552    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
45553    /// <p>Example:</p>
45554    /// <pre class="cpp">
45555    ///
45556    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
45557    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
45558    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
45559    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
45560    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
45561    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
45562    ///
45563    /// </pre>
45564    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
45565    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
45566    #[inline(always)]
45567    pub unsafe fn index_of_2a(
45568        &self,
45569        t: *const *mut crate::QRenderState,
45570        from: ::std::os::raw::c_int,
45571    ) -> ::std::os::raw::c_int {
45572        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_indexOf(
45573            self as *const crate::QVectorOfQRenderState,
45574            t,
45575            from,
45576        )
45577    }
45578
45579    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
45580    ///
45581    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::indexOf(const Qt3DRender::QRenderState*& t) const```</span>.
45582    ///
45583    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
45584    /// <p>Example:</p>
45585    /// <pre class="cpp">
45586    ///
45587    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
45588    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
45589    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
45590    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
45591    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
45592    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
45593    ///
45594    /// </pre>
45595    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
45596    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
45597    #[inline(always)]
45598    pub unsafe fn index_of_1a(&self, t: *const *mut crate::QRenderState) -> ::std::os::raw::c_int {
45599        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_indexOf1(
45600            self as *const crate::QVectorOfQRenderState,
45601            t,
45602        )
45603    }
45604
45605    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
45606    ///
45607    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::insert(int i, const Qt3DRender::QRenderState*& t)```</span>.
45608    ///
45609    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
45610    /// <p>Example:</p>
45611    /// <pre class="cpp">
45612    ///
45613    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
45614    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
45615    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
45616    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
45617    ///
45618    /// </pre>
45619    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
45620    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
45621    #[inline(always)]
45622    pub unsafe fn insert_2a(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QRenderState) {
45623        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_insert(
45624            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45625            i,
45626            t,
45627        )
45628    }
45629
45630    /// <p>This is an overloaded function.</p>
45631    ///
45632    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::insert(int i, int n, const Qt3DRender::QRenderState*& t)```</span>.
45633    ///
45634    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
45635    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
45636    /// <p>Example:</p>
45637    /// <pre class="cpp">
45638    ///
45639    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
45640    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
45641    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
45642    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
45643    ///
45644    /// </pre></div>
45645    #[inline(always)]
45646    pub unsafe fn insert_3a(
45647        &self,
45648        i: ::std::os::raw::c_int,
45649        n: ::std::os::raw::c_int,
45650        t: *const *mut crate::QRenderState,
45651    ) {
45652        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_insert1(
45653            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45654            i,
45655            n,
45656            t,
45657        )
45658    }
45659
45660    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderState*>::isDetached() const```</span>.
45661    #[inline(always)]
45662    pub unsafe fn is_detached(&self) -> bool {
45663        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_isDetached(
45664            self as *const crate::QVectorOfQRenderState,
45665        )
45666    }
45667
45668    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
45669    ///
45670    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderState*>::isEmpty() const```</span>.
45671    ///
45672    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
45673    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
45674    #[inline(always)]
45675    pub unsafe fn is_empty(&self) -> bool {
45676        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_isEmpty(
45677            self as *const crate::QVectorOfQRenderState,
45678        )
45679    }
45680
45681    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderState*>::isSharedWith(const QVector<Qt3DRender::QRenderState*>& other) const```</span>.
45682    #[inline(always)]
45683    pub unsafe fn is_shared_with(
45684        &self,
45685        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
45686    ) -> bool {
45687        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_isSharedWith(
45688            self as *const crate::QVectorOfQRenderState,
45689            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(other)
45690                .as_raw_ptr(),
45691        )
45692    }
45693
45694    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
45695    ///
45696    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::last()```</span>.
45697    ///
45698    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
45699    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
45700    #[inline(always)]
45701    pub unsafe fn last_mut(&self) -> *mut *mut crate::QRenderState {
45702        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_last(
45703            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45704        )
45705    }
45706
45707    /// <p>This is an overloaded function.</p>
45708    ///
45709    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState*& QVector<Qt3DRender::QRenderState*>::last() const```</span>.
45710    ///
45711    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
45712    #[inline(always)]
45713    pub unsafe fn last(&self) -> *const *mut crate::QRenderState {
45714        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_last1(
45715            self as *const crate::QVectorOfQRenderState,
45716        )
45717    }
45718
45719    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
45720    ///
45721    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::lastIndexOf(const Qt3DRender::QRenderState*& t, int from = …) const```</span>.
45722    ///
45723    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
45724    /// <p>Example:</p>
45725    /// <pre class="cpp">
45726    ///
45727    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
45728    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
45729    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
45730    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
45731    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
45732    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
45733    ///
45734    /// </pre>
45735    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
45736    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
45737    #[inline(always)]
45738    pub unsafe fn last_index_of_2a(
45739        &self,
45740        t: *const *mut crate::QRenderState,
45741        from: ::std::os::raw::c_int,
45742    ) -> ::std::os::raw::c_int {
45743        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_lastIndexOf(
45744            self as *const crate::QVectorOfQRenderState,
45745            t,
45746            from,
45747        )
45748    }
45749
45750    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
45751    ///
45752    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::lastIndexOf(const Qt3DRender::QRenderState*& t) const```</span>.
45753    ///
45754    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
45755    /// <p>Example:</p>
45756    /// <pre class="cpp">
45757    ///
45758    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
45759    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
45760    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
45761    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
45762    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
45763    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
45764    ///
45765    /// </pre>
45766    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
45767    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
45768    #[inline(always)]
45769    pub unsafe fn last_index_of_1a(
45770        &self,
45771        t: *const *mut crate::QRenderState,
45772    ) -> ::std::os::raw::c_int {
45773        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_lastIndexOf1(
45774            self as *const crate::QVectorOfQRenderState,
45775            t,
45776        )
45777    }
45778
45779    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
45780    ///
45781    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::length() const```</span>.
45782    ///
45783    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
45784    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
45785    /// <p>This function was introduced in  Qt 5.2.</p>
45786    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
45787    #[inline(always)]
45788    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
45789        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_length(
45790            self as *const crate::QVectorOfQRenderState,
45791        )
45792    }
45793
45794    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
45795    ///
45796    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*> QVector<Qt3DRender::QRenderState*>::mid(int pos, int len = …) const```</span>.
45797    ///
45798    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
45799    #[inline(always)]
45800    pub unsafe fn mid_2a(
45801        &self,
45802        pos: ::std::os::raw::c_int,
45803        len: ::std::os::raw::c_int,
45804    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderState> {
45805        let ffi_result = {
45806            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_mid(
45807                self as *const crate::QVectorOfQRenderState,
45808                pos,
45809                len,
45810            )
45811        };
45812        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
45813    }
45814
45815    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
45816    ///
45817    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*> QVector<Qt3DRender::QRenderState*>::mid(int pos) const```</span>.
45818    ///
45819    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
45820    #[inline(always)]
45821    pub unsafe fn mid_1a(
45822        &self,
45823        pos: ::std::os::raw::c_int,
45824    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderState> {
45825        let ffi_result = {
45826            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_mid1(
45827                self as *const crate::QVectorOfQRenderState,
45828                pos,
45829            )
45830        };
45831        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
45832    }
45833
45834    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
45835    ///
45836    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::move(int from, int to)```</span>.
45837    ///
45838    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
45839    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
45840    /// <p>This function was introduced in  Qt 5.6.</p>
45841    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
45842    #[inline(always)]
45843    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
45844        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_move(
45845            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45846            from,
45847            to,
45848        )
45849    }
45850
45851    /// <p>Constructs an empty vector.</p>
45852    ///
45853    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderState*>::QVector()```</span>.
45854    ///
45855    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
45856    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
45857    #[inline(always)]
45858    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQRenderState> {
45859        let ffi_result =
45860            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_QVector() };
45861        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
45862    }
45863
45864    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
45865    ///
45866    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderState*>::QVector(int size)```</span>.
45867    ///
45868    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
45869    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
45870    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
45871    #[inline(always)]
45872    pub unsafe fn new_1a(
45873        size: ::std::os::raw::c_int,
45874    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderState> {
45875        let ffi_result = {
45876            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_QVector1(size)
45877        };
45878        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
45879    }
45880
45881    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
45882    ///
45883    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderState*>::QVector(int size, const Qt3DRender::QRenderState*& t)```</span>.
45884    ///
45885    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
45886    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
45887    #[inline(always)]
45888    pub unsafe fn new_2a(
45889        size: ::std::os::raw::c_int,
45890        t: *const *mut crate::QRenderState,
45891    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderState> {
45892        let ffi_result = {
45893            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_QVector2(size, t)
45894        };
45895        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
45896    }
45897
45898    /// <p>Constructs a copy of <i>other</i>.</p>
45899    ///
45900    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderState*>::QVector(const QVector<Qt3DRender::QRenderState*>& v)```</span>.
45901    ///
45902    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
45903    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
45904    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
45905    #[inline(always)]
45906    pub unsafe fn new_copy(
45907        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
45908    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderState> {
45909        let ffi_result = {
45910            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_QVector3(
45911                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(v)
45912                    .as_raw_ptr(),
45913            )
45914        };
45915        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
45916    }
45917
45918    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
45919    ///
45920    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::pop_back()```</span>.
45921    ///
45922    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
45923    #[inline(always)]
45924    pub unsafe fn pop_back(&self) {
45925        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_pop_back(
45926            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45927        )
45928    }
45929
45930    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
45931    ///
45932    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::pop_front()```</span>.
45933    ///
45934    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
45935    #[inline(always)]
45936    pub unsafe fn pop_front(&self) {
45937        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_pop_front(
45938            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45939        )
45940    }
45941
45942    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
45943    ///
45944    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::prepend(const Qt3DRender::QRenderState*& t)```</span>.
45945    ///
45946    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
45947    /// <p>Example:</p>
45948    /// <pre class="cpp">
45949    ///
45950    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
45951    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
45952    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
45953    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
45954    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
45955    ///
45956    /// </pre>
45957    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
45958    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
45959    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
45960    #[inline(always)]
45961    pub unsafe fn prepend(&self, t: *const *mut crate::QRenderState) {
45962        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_prepend(
45963            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45964            t,
45965        )
45966    }
45967
45968    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
45969    ///
45970    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::push_back(const Qt3DRender::QRenderState*& t)```</span>.
45971    ///
45972    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
45973    #[inline(always)]
45974    pub unsafe fn push_back(&self, t: *const *mut crate::QRenderState) {
45975        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_push_back(
45976            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45977            t,
45978        )
45979    }
45980
45981    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
45982    ///
45983    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::push_front(const Qt3DRender::QRenderState*& t)```</span>.
45984    ///
45985    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
45986    #[inline(always)]
45987    pub unsafe fn push_front(&self, t: *const *mut crate::QRenderState) {
45988        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_push_front(
45989            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
45990            t,
45991        )
45992    }
45993
45994    /// <p>This is an overloaded function.</p>
45995    ///
45996    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::remove(int i)```</span>.
45997    ///
45998    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
45999    /// <p>Removes the element at index position <i>i</i>.</p>
46000    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
46001    #[inline(always)]
46002    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
46003        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_remove(
46004            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46005            i,
46006        )
46007    }
46008
46009    /// <p>This is an overloaded function.</p>
46010    ///
46011    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::remove(int i, int n)```</span>.
46012    ///
46013    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
46014    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
46015    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
46016    #[inline(always)]
46017    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
46018        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_remove1(
46019            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46020            i,
46021            n,
46022        )
46023    }
46024
46025    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
46026    ///
46027    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::removeAll(const Qt3DRender::QRenderState*& t)```</span>.
46028    ///
46029    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
46030    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
46031    /// <p>This function was introduced in  Qt 5.4.</p>
46032    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
46033    #[inline(always)]
46034    pub unsafe fn remove_all(&self, t: *const *mut crate::QRenderState) -> ::std::os::raw::c_int {
46035        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_removeAll(
46036            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46037            t,
46038        )
46039    }
46040
46041    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
46042    ///
46043    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::removeAt(int i)```</span>.
46044    ///
46045    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
46046    /// <pre class="cpp">
46047    ///
46048    ///   remove(i);
46049    ///
46050    /// </pre>
46051    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
46052    /// <p>This function was introduced in  Qt 5.2.</p>
46053    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
46054    #[inline(always)]
46055    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
46056        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_removeAt(
46057            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46058            i,
46059        )
46060    }
46061
46062    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
46063    ///
46064    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::removeFirst()```</span>.
46065    ///
46066    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
46067    /// <p>This function was introduced in  Qt 5.1.</p>
46068    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
46069    #[inline(always)]
46070    pub unsafe fn remove_first(&self) {
46071        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_removeFirst(
46072            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46073        )
46074    }
46075
46076    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
46077    ///
46078    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::removeLast()```</span>.
46079    ///
46080    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
46081    /// <p>This function was introduced in  Qt 5.1.</p>
46082    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
46083    #[inline(always)]
46084    pub unsafe fn remove_last(&self) {
46085        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_removeLast(
46086            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46087        )
46088    }
46089
46090    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
46091    ///
46092    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderState*>::removeOne(const Qt3DRender::QRenderState*& t)```</span>.
46093    ///
46094    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
46095    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
46096    /// <p>This function was introduced in  Qt 5.4.</p>
46097    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
46098    #[inline(always)]
46099    pub unsafe fn remove_one(&self, t: *const *mut crate::QRenderState) -> bool {
46100        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_removeOne(
46101            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46102            t,
46103        )
46104    }
46105
46106    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
46107    ///
46108    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::replace(int i, const Qt3DRender::QRenderState*& t)```</span>.
46109    ///
46110    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
46111    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
46112    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
46113    #[inline(always)]
46114    pub unsafe fn replace(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QRenderState) {
46115        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_replace(
46116            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46117            i,
46118            t,
46119        )
46120    }
46121
46122    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
46123    ///
46124    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::reserve(int size)```</span>.
46125    ///
46126    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
46127    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
46128    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
46129    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
46130    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
46131    #[inline(always)]
46132    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
46133        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_reserve(
46134            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46135            size,
46136        )
46137    }
46138
46139    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
46140    ///
46141    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::resize(int size)```</span>.
46142    ///
46143    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
46144    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
46145    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
46146    #[inline(always)]
46147    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
46148        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_resize(
46149            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46150            size,
46151        )
46152    }
46153
46154    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::setSharable(bool sharable)```</span>.
46155    #[inline(always)]
46156    pub unsafe fn set_sharable(&self, sharable: bool) {
46157        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_setSharable(
46158            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46159            sharable,
46160        )
46161    }
46162
46163    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
46164    ///
46165    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::shrink_to_fit()```</span>.
46166    ///
46167    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
46168    /// <p>This function was introduced in  Qt 5.10.</p></div>
46169    #[inline(always)]
46170    #[cfg_attr(
46171        feature = "ritual_rustdoc_nightly",
46172        doc(cfg(any(
46173            cpp_lib_version = "5.11.3",
46174            cpp_lib_version = "5.12.2",
46175            cpp_lib_version = "5.13.0",
46176            cpp_lib_version = "5.14.0"
46177        )))
46178    )]
46179    #[cfg(any(
46180        any(
46181            cpp_lib_version = "5.11.3",
46182            cpp_lib_version = "5.12.2",
46183            cpp_lib_version = "5.13.0",
46184            cpp_lib_version = "5.14.0"
46185        ),
46186        feature = "ritual_rustdoc"
46187    ))]
46188    pub unsafe fn shrink_to_fit(&self) {
46189        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_shrink_to_fit(
46190            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46191        )
46192    }
46193
46194    /// <p>Returns the number of items in the vector.</p>
46195    ///
46196    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::size() const```</span>.
46197    ///
46198    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
46199    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
46200    #[inline(always)]
46201    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
46202        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_size(
46203            self as *const crate::QVectorOfQRenderState,
46204        )
46205    }
46206
46207    /// <p>Releases any memory not required to store the items.</p>
46208    ///
46209    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::squeeze()```</span>.
46210    ///
46211    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
46212    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
46213    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
46214    #[inline(always)]
46215    pub unsafe fn squeeze(&self) {
46216        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_squeeze(
46217            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46218        )
46219    }
46220
46221    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
46222    ///
46223    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderState*>::startsWith(const Qt3DRender::QRenderState*& t) const```</span>.
46224    ///
46225    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
46226    /// <p>This function was introduced in  Qt 4.5.</p>
46227    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
46228    #[inline(always)]
46229    pub unsafe fn starts_with(&self, t: *const *mut crate::QRenderState) -> bool {
46230        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_startsWith(
46231            self as *const crate::QVectorOfQRenderState,
46232            t,
46233        )
46234    }
46235
46236    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
46237    ///
46238    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::swap(QVector<Qt3DRender::QRenderState*>& other)```</span>.
46239    ///
46240    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
46241    /// <p>This function was introduced in  Qt 4.8.</p></div>
46242    #[inline(always)]
46243    pub unsafe fn swap(
46244        &self,
46245        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
46246    ) {
46247        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_swap(
46248            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46249            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(other)
46250                .as_raw_ptr() as *mut crate::QVectorOfQRenderState,
46251        )
46252    }
46253
46254    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
46255    ///
46256    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderState*>::swapItemsAt(int i, int j)```</span>.
46257    ///
46258    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
46259    /// <p>This function was introduced in  Qt 5.14.</p></div>
46260    #[inline(always)]
46261    #[cfg_attr(
46262        feature = "ritual_rustdoc_nightly",
46263        doc(cfg(cpp_lib_version = "5.14.0"))
46264    )]
46265    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
46266    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
46267        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_swapItemsAt(
46268            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46269            i,
46270            j,
46271        )
46272    }
46273
46274    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
46275    ///
46276    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* QVector<Qt3DRender::QRenderState*>::takeAt(int i)```</span>.
46277    ///
46278    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
46279    /// <p>Equivalent to</p>
46280    /// <pre class="cpp">
46281    ///
46282    ///   T t <span class="operator">=</span> at(i);
46283    ///   remove(i);
46284    ///   <span class="keyword">return</span> t;
46285    ///
46286    /// </pre>
46287    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
46288    /// <p>This function was introduced in  Qt 5.2.</p>
46289    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
46290    #[inline(always)]
46291    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QRenderState> {
46292        let ffi_result = {
46293            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_takeAt(
46294                self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46295                i,
46296            )
46297        };
46298        ::qt_core::QPtr::from_raw(ffi_result)
46299    }
46300
46301    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
46302    ///
46303    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* QVector<Qt3DRender::QRenderState*>::takeFirst()```</span>.
46304    ///
46305    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
46306    /// <p>This function was introduced in  Qt 5.1.</p>
46307    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
46308    #[inline(always)]
46309    pub unsafe fn take_first(&self) -> ::qt_core::QPtr<crate::QRenderState> {
46310        let ffi_result = {
46311            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_takeFirst(
46312                self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46313            )
46314        };
46315        ::qt_core::QPtr::from_raw(ffi_result)
46316    }
46317
46318    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
46319    ///
46320    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* QVector<Qt3DRender::QRenderState*>::takeLast()```</span>.
46321    ///
46322    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
46323    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
46324    /// <p>This function was introduced in  Qt 5.1.</p>
46325    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
46326    #[inline(always)]
46327    pub unsafe fn take_last(&self) -> ::qt_core::QPtr<crate::QRenderState> {
46328        let ffi_result = {
46329            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_takeLast(
46330                self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
46331            )
46332        };
46333        ::qt_core::QPtr::from_raw(ffi_result)
46334    }
46335
46336    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
46337    ///
46338    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* QVector<Qt3DRender::QRenderState*>::value(int i) const```</span>.
46339    ///
46340    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
46341    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
46342    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
46343    #[inline(always)]
46344    pub unsafe fn value_1a(
46345        &self,
46346        i: ::std::os::raw::c_int,
46347    ) -> ::qt_core::QPtr<crate::QRenderState> {
46348        let ffi_result = {
46349            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_value(
46350                self as *const crate::QVectorOfQRenderState,
46351                i,
46352            )
46353        };
46354        ::qt_core::QPtr::from_raw(ffi_result)
46355    }
46356
46357    /// <p>This is an overloaded function.</p>
46358    ///
46359    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* QVector<Qt3DRender::QRenderState*>::value(int i, const Qt3DRender::QRenderState*& defaultValue) const```</span>.
46360    ///
46361    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
46362    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
46363    #[inline(always)]
46364    pub unsafe fn value_2a(
46365        &self,
46366        i: ::std::os::raw::c_int,
46367        default_value: *const *mut crate::QRenderState,
46368    ) -> ::qt_core::QPtr<crate::QRenderState> {
46369        let ffi_result = {
46370            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_value1(
46371                self as *const crate::QVectorOfQRenderState,
46372                i,
46373                default_value,
46374            )
46375        };
46376        ::qt_core::QPtr::from_raw(ffi_result)
46377    }
46378}
46379
46380/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
46381///
46382/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*>```</span>.
46383///
46384/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
46385/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
46386/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
46387/// <ul>
46388/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
46389/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
46390/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
46391/// </ul>
46392/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
46393/// <pre class="cpp">
46394///
46395///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
46396///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
46397///
46398/// </pre>
46399/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
46400/// <pre class="cpp">
46401///
46402///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
46403///
46404/// </pre>
46405/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
46406/// <pre class="cpp">
46407///
46408///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
46409///
46410/// </pre>
46411/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
46412/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
46413/// <pre class="cpp">
46414///
46415///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
46416/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
46417///
46418/// </pre>
46419/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
46420/// <pre class="cpp">
46421///
46422///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
46423/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
46424/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
46425///   }
46426///
46427/// </pre>
46428/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
46429/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
46430/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
46431/// <pre class="cpp">
46432///
46433///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
46434///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
46435/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
46436///
46437/// </pre>
46438/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
46439/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
46440/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
46441/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
46442/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
46443/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
46444/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
46445/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
46446/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
46447/// <a name="more-information-on-using-qt-containers"></a>
46448/// <h4>More Information on Using Qt Containers</h4>
46449/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
46450#[repr(C)]
46451pub struct QVectorOfQRenderTargetOutput {
46452    _unused: u8,
46453}
46454impl QVectorOfQRenderTargetOutput {
46455    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
46456    ///
46457    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*>& QVector<Qt3DRender::QRenderTargetOutput*>::operator+=(const QVector<Qt3DRender::QRenderTargetOutput*>& l)```</span>.
46458    ///
46459    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
46460    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
46461    #[inline(always)]
46462    pub unsafe fn add_assign_q_vector_of_q_render_target_output(
46463        &self,
46464        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
46465    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput> {
46466        let ffi_result = {
46467            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_operator__4(self as *const crate::QVectorOfQRenderTargetOutput as *mut crate::QVectorOfQRenderTargetOutput, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(l).as_raw_ptr())
46468        };
46469        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
46470    }
46471
46472    /// <p>This is an overloaded function.</p>
46473    ///
46474    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*>& QVector<Qt3DRender::QRenderTargetOutput*>::operator+=(const Qt3DRender::QRenderTargetOutput*& t)```</span>.
46475    ///
46476    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
46477    /// <p>Appends <i>value</i> to the vector.</p>
46478    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
46479    #[inline(always)]
46480    pub unsafe fn add_assign_q_render_target_output(
46481        &self,
46482        t: *const *mut crate::QRenderTargetOutput,
46483    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput> {
46484        let ffi_result = {
46485            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_operator__5(self as *const crate::QVectorOfQRenderTargetOutput as *mut crate::QVectorOfQRenderTargetOutput, t)
46486        };
46487        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
46488    }
46489
46490    /// <p>Inserts <i>value</i> at the end of the vector.</p>
46491    ///
46492    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::append(const Qt3DRender::QRenderTargetOutput*& t)```</span>.
46493    ///
46494    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
46495    /// <p>Example:</p>
46496    /// <pre class="cpp">
46497    ///
46498    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
46499    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
46500    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
46501    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
46502    ///   vector<span class="operator">.</span>append(three);
46503    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
46504    ///   <span class="comment">// three: "three"</span>
46505    ///
46506    /// </pre>
46507    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
46508    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
46509    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
46510    #[inline(always)]
46511    pub unsafe fn append_q_render_target_output(&self, t: *const *mut crate::QRenderTargetOutput) {
46512        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_append(
46513            self as *const crate::QVectorOfQRenderTargetOutput
46514                as *mut crate::QVectorOfQRenderTargetOutput,
46515            t,
46516        )
46517    }
46518
46519    /// <p>This is an overloaded function.</p>
46520    ///
46521    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::append(const QVector<Qt3DRender::QRenderTargetOutput*>& l)```</span>.
46522    ///
46523    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
46524    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
46525    /// <p>This function was introduced in  Qt 5.5.</p>
46526    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
46527    #[inline(always)]
46528    pub unsafe fn append_q_vector_of_q_render_target_output(
46529        &self,
46530        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
46531    ) {
46532        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_append2(self as *const crate::QVectorOfQRenderTargetOutput as *mut crate::QVectorOfQRenderTargetOutput, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(l).as_raw_ptr())
46533    }
46534
46535    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
46536    ///
46537    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::at(int i) const```</span>.
46538    ///
46539    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
46540    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
46541    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
46542    #[inline(always)]
46543    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QRenderTargetOutput {
46544        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_at(
46545            self as *const crate::QVectorOfQRenderTargetOutput,
46546            i,
46547        )
46548    }
46549
46550    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
46551    ///
46552    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::back()```</span>.
46553    ///
46554    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
46555    #[inline(always)]
46556    pub unsafe fn back_mut(&self) -> *mut *mut crate::QRenderTargetOutput {
46557        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_back(
46558            self as *const crate::QVectorOfQRenderTargetOutput
46559                as *mut crate::QVectorOfQRenderTargetOutput,
46560        )
46561    }
46562
46563    /// <p>This is an overloaded function.</p>
46564    ///
46565    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::back() const```</span>.
46566    ///
46567    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
46568    #[inline(always)]
46569    pub unsafe fn back(&self) -> *const *mut crate::QRenderTargetOutput {
46570        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_back1(
46571            self as *const crate::QVectorOfQRenderTargetOutput,
46572        )
46573    }
46574
46575    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
46576    ///
46577    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::capacity() const```</span>.
46578    ///
46579    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
46580    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
46581    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
46582    #[inline(always)]
46583    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
46584        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_capacity(
46585            self as *const crate::QVectorOfQRenderTargetOutput,
46586        )
46587    }
46588
46589    /// <p>Removes all the elements from the vector.</p>
46590    ///
46591    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::clear()```</span>.
46592    ///
46593    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
46594    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
46595    ///
46596    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
46597    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
46598    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
46599    ///
46600    /// </pre>
46601    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
46602    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
46603    #[inline(always)]
46604    pub unsafe fn clear(&self) {
46605        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_clear(
46606            self as *const crate::QVectorOfQRenderTargetOutput
46607                as *mut crate::QVectorOfQRenderTargetOutput,
46608        )
46609    }
46610
46611    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
46612    ///
46613    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput** QVector<Qt3DRender::QRenderTargetOutput*>::constData() const```</span>.
46614    ///
46615    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
46616    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
46617    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
46618    #[inline(always)]
46619    pub unsafe fn const_data(&self) -> *const *mut crate::QRenderTargetOutput {
46620        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_constData(
46621            self as *const crate::QVectorOfQRenderTargetOutput,
46622        )
46623    }
46624
46625    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
46626    ///
46627    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::constFirst() const```</span>.
46628    ///
46629    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
46630    /// <p>This function was introduced in  Qt 5.6.</p>
46631    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
46632    #[inline(always)]
46633    pub unsafe fn const_first(&self) -> *const *mut crate::QRenderTargetOutput {
46634        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_constFirst(
46635            self as *const crate::QVectorOfQRenderTargetOutput,
46636        )
46637    }
46638
46639    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
46640    ///
46641    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::constLast() const```</span>.
46642    ///
46643    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
46644    /// <p>This function was introduced in  Qt 5.6.</p>
46645    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
46646    #[inline(always)]
46647    pub unsafe fn const_last(&self) -> *const *mut crate::QRenderTargetOutput {
46648        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_constLast(
46649            self as *const crate::QVectorOfQRenderTargetOutput,
46650        )
46651    }
46652
46653    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
46654    ///
46655    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput*>::contains(const Qt3DRender::QRenderTargetOutput*& t) const```</span>.
46656    ///
46657    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
46658    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
46659    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
46660    #[inline(always)]
46661    pub unsafe fn contains(&self, t: *const *mut crate::QRenderTargetOutput) -> bool {
46662        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_contains(
46663            self as *const crate::QVectorOfQRenderTargetOutput,
46664            t,
46665        )
46666    }
46667
46668    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
46669    ///
46670    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*>& QVector<Qt3DRender::QRenderTargetOutput*>::operator=(const QVector<Qt3DRender::QRenderTargetOutput*>& v)```</span>.
46671    ///
46672    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
46673    #[inline(always)]
46674    pub unsafe fn copy_from(
46675        &self,
46676        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
46677    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput> {
46678        let ffi_result = {
46679            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_operator_(self as *const crate::QVectorOfQRenderTargetOutput as *mut crate::QVectorOfQRenderTargetOutput, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(v).as_raw_ptr())
46680        };
46681        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
46682    }
46683
46684    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
46685    ///
46686    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::count(const Qt3DRender::QRenderTargetOutput*& t) const```</span>.
46687    ///
46688    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
46689    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
46690    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
46691    #[inline(always)]
46692    pub unsafe fn count_1a(
46693        &self,
46694        t: *const *mut crate::QRenderTargetOutput,
46695    ) -> ::std::os::raw::c_int {
46696        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_count(
46697            self as *const crate::QVectorOfQRenderTargetOutput,
46698            t,
46699        )
46700    }
46701
46702    /// <p>This is an overloaded function.</p>
46703    ///
46704    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::count() const```</span>.
46705    ///
46706    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
46707    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
46708    #[inline(always)]
46709    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
46710        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_count1(
46711            self as *const crate::QVectorOfQRenderTargetOutput,
46712        )
46713    }
46714
46715    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
46716    ///
46717    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput** QVector<Qt3DRender::QRenderTargetOutput*>::data()```</span>.
46718    ///
46719    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
46720    /// <p>Example:</p>
46721    /// <pre class="cpp">
46722    ///
46723    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
46724    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
46725    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
46726    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
46727    ///
46728    /// </pre>
46729    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
46730    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
46731    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
46732    #[inline(always)]
46733    pub unsafe fn data_mut(&self) -> *mut *mut crate::QRenderTargetOutput {
46734        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_data(
46735            self as *const crate::QVectorOfQRenderTargetOutput
46736                as *mut crate::QVectorOfQRenderTargetOutput,
46737        )
46738    }
46739
46740    /// <p>This is an overloaded function.</p>
46741    ///
46742    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput** QVector<Qt3DRender::QRenderTargetOutput*>::data() const```</span>.
46743    ///
46744    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
46745    #[inline(always)]
46746    pub unsafe fn data(&self) -> *const *mut crate::QRenderTargetOutput {
46747        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_data1(
46748            self as *const crate::QVectorOfQRenderTargetOutput,
46749        )
46750    }
46751
46752    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::detach()```</span>.
46753    #[inline(always)]
46754    pub unsafe fn detach(&self) {
46755        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_detach(
46756            self as *const crate::QVectorOfQRenderTargetOutput
46757                as *mut crate::QVectorOfQRenderTargetOutput,
46758        )
46759    }
46760
46761    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
46762    ///
46763    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput*>::empty() const```</span>.
46764    ///
46765    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
46766    #[inline(always)]
46767    pub unsafe fn empty(&self) -> bool {
46768        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_empty(
46769            self as *const crate::QVectorOfQRenderTargetOutput,
46770        )
46771    }
46772
46773    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
46774    ///
46775    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput*>::endsWith(const Qt3DRender::QRenderTargetOutput*& t) const```</span>.
46776    ///
46777    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
46778    /// <p>This function was introduced in  Qt 4.5.</p>
46779    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
46780    #[inline(always)]
46781    pub unsafe fn ends_with(&self, t: *const *mut crate::QRenderTargetOutput) -> bool {
46782        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_endsWith(
46783            self as *const crate::QVectorOfQRenderTargetOutput,
46784            t,
46785        )
46786    }
46787
46788    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
46789    ///
46790    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*>& QVector<Qt3DRender::QRenderTargetOutput*>::fill(const Qt3DRender::QRenderTargetOutput*& t, int size = …)```</span>.
46791    ///
46792    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
46793    /// <p>Example:</p>
46794    /// <pre class="cpp">
46795    ///
46796    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
46797    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
46798    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
46799    ///
46800    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
46801    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
46802    ///
46803    /// </pre>
46804    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
46805    #[inline(always)]
46806    pub unsafe fn fill_2a(
46807        &self,
46808        t: *const *mut crate::QRenderTargetOutput,
46809        size: ::std::os::raw::c_int,
46810    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput> {
46811        let ffi_result = {
46812            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_fill(
46813                self as *const crate::QVectorOfQRenderTargetOutput
46814                    as *mut crate::QVectorOfQRenderTargetOutput,
46815                t,
46816                size,
46817            )
46818        };
46819        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
46820    }
46821
46822    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
46823    ///
46824    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*>& QVector<Qt3DRender::QRenderTargetOutput*>::fill(const Qt3DRender::QRenderTargetOutput*& t)```</span>.
46825    ///
46826    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
46827    /// <p>Example:</p>
46828    /// <pre class="cpp">
46829    ///
46830    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
46831    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
46832    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
46833    ///
46834    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
46835    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
46836    ///
46837    /// </pre>
46838    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
46839    #[inline(always)]
46840    pub unsafe fn fill_1a(
46841        &self,
46842        t: *const *mut crate::QRenderTargetOutput,
46843    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput> {
46844        let ffi_result = {
46845            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_fill1(
46846                self as *const crate::QVectorOfQRenderTargetOutput
46847                    as *mut crate::QVectorOfQRenderTargetOutput,
46848                t,
46849            )
46850        };
46851        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
46852    }
46853
46854    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
46855    ///
46856    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::first()```</span>.
46857    ///
46858    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
46859    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
46860    #[inline(always)]
46861    pub unsafe fn first_mut(&self) -> *mut *mut crate::QRenderTargetOutput {
46862        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_first(
46863            self as *const crate::QVectorOfQRenderTargetOutput
46864                as *mut crate::QVectorOfQRenderTargetOutput,
46865        )
46866    }
46867
46868    /// <p>This is an overloaded function.</p>
46869    ///
46870    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::first() const```</span>.
46871    ///
46872    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
46873    #[inline(always)]
46874    pub unsafe fn first(&self) -> *const *mut crate::QRenderTargetOutput {
46875        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_first1(
46876            self as *const crate::QVectorOfQRenderTargetOutput,
46877        )
46878    }
46879
46880    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
46881    ///
46882    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::front()```</span>.
46883    ///
46884    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
46885    #[inline(always)]
46886    pub unsafe fn front_mut(&self) -> *mut *mut crate::QRenderTargetOutput {
46887        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_front(
46888            self as *const crate::QVectorOfQRenderTargetOutput
46889                as *mut crate::QVectorOfQRenderTargetOutput,
46890        )
46891    }
46892
46893    /// <p>This is an overloaded function.</p>
46894    ///
46895    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::front() const```</span>.
46896    ///
46897    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
46898    #[inline(always)]
46899    pub unsafe fn front(&self) -> *const *mut crate::QRenderTargetOutput {
46900        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_front1(
46901            self as *const crate::QVectorOfQRenderTargetOutput,
46902        )
46903    }
46904
46905    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
46906    ///
46907    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::operator[](int i)```</span>.
46908    ///
46909    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
46910    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
46911    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
46912    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
46913    #[inline(always)]
46914    pub unsafe fn index_mut(
46915        &self,
46916        i: ::std::os::raw::c_int,
46917    ) -> *mut *mut crate::QRenderTargetOutput {
46918        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_operator__2(
46919            self as *const crate::QVectorOfQRenderTargetOutput
46920                as *mut crate::QVectorOfQRenderTargetOutput,
46921            i,
46922        )
46923    }
46924
46925    /// <p>This is an overloaded function.</p>
46926    ///
46927    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::operator[](int i) const```</span>.
46928    ///
46929    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
46930    /// <p>Same as at(<i>i</i>).</p></div>
46931    #[inline(always)]
46932    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QRenderTargetOutput {
46933        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_operator__3(
46934            self as *const crate::QVectorOfQRenderTargetOutput,
46935            i,
46936        )
46937    }
46938
46939    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
46940    ///
46941    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::indexOf(const Qt3DRender::QRenderTargetOutput*& t, int from = …) const```</span>.
46942    ///
46943    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
46944    /// <p>Example:</p>
46945    /// <pre class="cpp">
46946    ///
46947    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
46948    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
46949    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
46950    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
46951    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
46952    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
46953    ///
46954    /// </pre>
46955    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
46956    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
46957    #[inline(always)]
46958    pub unsafe fn index_of_2a(
46959        &self,
46960        t: *const *mut crate::QRenderTargetOutput,
46961        from: ::std::os::raw::c_int,
46962    ) -> ::std::os::raw::c_int {
46963        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_indexOf(
46964            self as *const crate::QVectorOfQRenderTargetOutput,
46965            t,
46966            from,
46967        )
46968    }
46969
46970    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
46971    ///
46972    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::indexOf(const Qt3DRender::QRenderTargetOutput*& t) const```</span>.
46973    ///
46974    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
46975    /// <p>Example:</p>
46976    /// <pre class="cpp">
46977    ///
46978    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
46979    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
46980    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
46981    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
46982    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
46983    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
46984    ///
46985    /// </pre>
46986    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
46987    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
46988    #[inline(always)]
46989    pub unsafe fn index_of_1a(
46990        &self,
46991        t: *const *mut crate::QRenderTargetOutput,
46992    ) -> ::std::os::raw::c_int {
46993        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_indexOf1(
46994            self as *const crate::QVectorOfQRenderTargetOutput,
46995            t,
46996        )
46997    }
46998
46999    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
47000    ///
47001    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::insert(int i, const Qt3DRender::QRenderTargetOutput*& t)```</span>.
47002    ///
47003    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
47004    /// <p>Example:</p>
47005    /// <pre class="cpp">
47006    ///
47007    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
47008    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
47009    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
47010    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
47011    ///
47012    /// </pre>
47013    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
47014    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
47015    #[inline(always)]
47016    pub unsafe fn insert_2a(
47017        &self,
47018        i: ::std::os::raw::c_int,
47019        t: *const *mut crate::QRenderTargetOutput,
47020    ) {
47021        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_insert(
47022            self as *const crate::QVectorOfQRenderTargetOutput
47023                as *mut crate::QVectorOfQRenderTargetOutput,
47024            i,
47025            t,
47026        )
47027    }
47028
47029    /// <p>This is an overloaded function.</p>
47030    ///
47031    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::insert(int i, int n, const Qt3DRender::QRenderTargetOutput*& t)```</span>.
47032    ///
47033    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
47034    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
47035    /// <p>Example:</p>
47036    /// <pre class="cpp">
47037    ///
47038    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
47039    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
47040    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
47041    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
47042    ///
47043    /// </pre></div>
47044    #[inline(always)]
47045    pub unsafe fn insert_3a(
47046        &self,
47047        i: ::std::os::raw::c_int,
47048        n: ::std::os::raw::c_int,
47049        t: *const *mut crate::QRenderTargetOutput,
47050    ) {
47051        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_insert1(
47052            self as *const crate::QVectorOfQRenderTargetOutput
47053                as *mut crate::QVectorOfQRenderTargetOutput,
47054            i,
47055            n,
47056            t,
47057        )
47058    }
47059
47060    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput*>::isDetached() const```</span>.
47061    #[inline(always)]
47062    pub unsafe fn is_detached(&self) -> bool {
47063        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_isDetached(
47064            self as *const crate::QVectorOfQRenderTargetOutput,
47065        )
47066    }
47067
47068    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
47069    ///
47070    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput*>::isEmpty() const```</span>.
47071    ///
47072    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
47073    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
47074    #[inline(always)]
47075    pub unsafe fn is_empty(&self) -> bool {
47076        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_isEmpty(
47077            self as *const crate::QVectorOfQRenderTargetOutput,
47078        )
47079    }
47080
47081    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput*>::isSharedWith(const QVector<Qt3DRender::QRenderTargetOutput*>& other) const```</span>.
47082    #[inline(always)]
47083    pub unsafe fn is_shared_with(
47084        &self,
47085        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
47086    ) -> bool {
47087        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_isSharedWith(self as *const crate::QVectorOfQRenderTargetOutput, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(other).as_raw_ptr())
47088    }
47089
47090    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
47091    ///
47092    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::last()```</span>.
47093    ///
47094    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
47095    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
47096    #[inline(always)]
47097    pub unsafe fn last_mut(&self) -> *mut *mut crate::QRenderTargetOutput {
47098        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_last(
47099            self as *const crate::QVectorOfQRenderTargetOutput
47100                as *mut crate::QVectorOfQRenderTargetOutput,
47101        )
47102    }
47103
47104    /// <p>This is an overloaded function.</p>
47105    ///
47106    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput*& QVector<Qt3DRender::QRenderTargetOutput*>::last() const```</span>.
47107    ///
47108    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
47109    #[inline(always)]
47110    pub unsafe fn last(&self) -> *const *mut crate::QRenderTargetOutput {
47111        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_last1(
47112            self as *const crate::QVectorOfQRenderTargetOutput,
47113        )
47114    }
47115
47116    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
47117    ///
47118    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::lastIndexOf(const Qt3DRender::QRenderTargetOutput*& t, int from = …) const```</span>.
47119    ///
47120    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
47121    /// <p>Example:</p>
47122    /// <pre class="cpp">
47123    ///
47124    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
47125    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
47126    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
47127    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
47128    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
47129    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
47130    ///
47131    /// </pre>
47132    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
47133    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
47134    #[inline(always)]
47135    pub unsafe fn last_index_of_2a(
47136        &self,
47137        t: *const *mut crate::QRenderTargetOutput,
47138        from: ::std::os::raw::c_int,
47139    ) -> ::std::os::raw::c_int {
47140        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_lastIndexOf(
47141            self as *const crate::QVectorOfQRenderTargetOutput,
47142            t,
47143            from,
47144        )
47145    }
47146
47147    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
47148    ///
47149    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::lastIndexOf(const Qt3DRender::QRenderTargetOutput*& t) const```</span>.
47150    ///
47151    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
47152    /// <p>Example:</p>
47153    /// <pre class="cpp">
47154    ///
47155    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
47156    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
47157    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
47158    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
47159    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
47160    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
47161    ///
47162    /// </pre>
47163    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
47164    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
47165    #[inline(always)]
47166    pub unsafe fn last_index_of_1a(
47167        &self,
47168        t: *const *mut crate::QRenderTargetOutput,
47169    ) -> ::std::os::raw::c_int {
47170        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_lastIndexOf1(
47171            self as *const crate::QVectorOfQRenderTargetOutput,
47172            t,
47173        )
47174    }
47175
47176    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
47177    ///
47178    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::length() const```</span>.
47179    ///
47180    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
47181    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
47182    /// <p>This function was introduced in  Qt 5.2.</p>
47183    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
47184    #[inline(always)]
47185    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
47186        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_length(
47187            self as *const crate::QVectorOfQRenderTargetOutput,
47188        )
47189    }
47190
47191    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
47192    ///
47193    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*> QVector<Qt3DRender::QRenderTargetOutput*>::mid(int pos, int len = …) const```</span>.
47194    ///
47195    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
47196    #[inline(always)]
47197    pub unsafe fn mid_2a(
47198        &self,
47199        pos: ::std::os::raw::c_int,
47200        len: ::std::os::raw::c_int,
47201    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderTargetOutput> {
47202        let ffi_result = {
47203            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_mid(
47204                self as *const crate::QVectorOfQRenderTargetOutput,
47205                pos,
47206                len,
47207            )
47208        };
47209        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
47210    }
47211
47212    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
47213    ///
47214    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*> QVector<Qt3DRender::QRenderTargetOutput*>::mid(int pos) const```</span>.
47215    ///
47216    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
47217    #[inline(always)]
47218    pub unsafe fn mid_1a(
47219        &self,
47220        pos: ::std::os::raw::c_int,
47221    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderTargetOutput> {
47222        let ffi_result = {
47223            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_mid1(
47224                self as *const crate::QVectorOfQRenderTargetOutput,
47225                pos,
47226            )
47227        };
47228        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
47229    }
47230
47231    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
47232    ///
47233    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::move(int from, int to)```</span>.
47234    ///
47235    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
47236    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
47237    /// <p>This function was introduced in  Qt 5.6.</p>
47238    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
47239    #[inline(always)]
47240    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
47241        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_move(
47242            self as *const crate::QVectorOfQRenderTargetOutput
47243                as *mut crate::QVectorOfQRenderTargetOutput,
47244            from,
47245            to,
47246        )
47247    }
47248
47249    /// <p>Constructs an empty vector.</p>
47250    ///
47251    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderTargetOutput*>::QVector()```</span>.
47252    ///
47253    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
47254    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
47255    #[inline(always)]
47256    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQRenderTargetOutput> {
47257        let ffi_result = {
47258            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_QVector()
47259        };
47260        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
47261    }
47262
47263    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
47264    ///
47265    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderTargetOutput*>::QVector(int size)```</span>.
47266    ///
47267    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
47268    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
47269    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
47270    #[inline(always)]
47271    pub unsafe fn new_1a(
47272        size: ::std::os::raw::c_int,
47273    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderTargetOutput> {
47274        let ffi_result = {
47275            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_QVector1(
47276                size,
47277            )
47278        };
47279        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
47280    }
47281
47282    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
47283    ///
47284    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderTargetOutput*>::QVector(int size, const Qt3DRender::QRenderTargetOutput*& t)```</span>.
47285    ///
47286    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
47287    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
47288    #[inline(always)]
47289    pub unsafe fn new_2a(
47290        size: ::std::os::raw::c_int,
47291        t: *const *mut crate::QRenderTargetOutput,
47292    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderTargetOutput> {
47293        let ffi_result = {
47294            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_QVector2(
47295                size, t,
47296            )
47297        };
47298        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
47299    }
47300
47301    /// <p>Constructs a copy of <i>other</i>.</p>
47302    ///
47303    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderTargetOutput*>::QVector(const QVector<Qt3DRender::QRenderTargetOutput*>& v)```</span>.
47304    ///
47305    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
47306    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
47307    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
47308    #[inline(always)]
47309    pub unsafe fn new_copy(
47310        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
47311    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderTargetOutput> {
47312        let ffi_result = {
47313            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_QVector3(::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(v).as_raw_ptr())
47314        };
47315        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
47316    }
47317
47318    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
47319    ///
47320    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::pop_back()```</span>.
47321    ///
47322    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
47323    #[inline(always)]
47324    pub unsafe fn pop_back(&self) {
47325        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_pop_back(
47326            self as *const crate::QVectorOfQRenderTargetOutput
47327                as *mut crate::QVectorOfQRenderTargetOutput,
47328        )
47329    }
47330
47331    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
47332    ///
47333    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::pop_front()```</span>.
47334    ///
47335    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
47336    #[inline(always)]
47337    pub unsafe fn pop_front(&self) {
47338        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_pop_front(
47339            self as *const crate::QVectorOfQRenderTargetOutput
47340                as *mut crate::QVectorOfQRenderTargetOutput,
47341        )
47342    }
47343
47344    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
47345    ///
47346    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::prepend(const Qt3DRender::QRenderTargetOutput*& t)```</span>.
47347    ///
47348    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
47349    /// <p>Example:</p>
47350    /// <pre class="cpp">
47351    ///
47352    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
47353    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
47354    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
47355    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
47356    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
47357    ///
47358    /// </pre>
47359    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
47360    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
47361    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
47362    #[inline(always)]
47363    pub unsafe fn prepend(&self, t: *const *mut crate::QRenderTargetOutput) {
47364        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_prepend(
47365            self as *const crate::QVectorOfQRenderTargetOutput
47366                as *mut crate::QVectorOfQRenderTargetOutput,
47367            t,
47368        )
47369    }
47370
47371    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
47372    ///
47373    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::push_back(const Qt3DRender::QRenderTargetOutput*& t)```</span>.
47374    ///
47375    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
47376    #[inline(always)]
47377    pub unsafe fn push_back(&self, t: *const *mut crate::QRenderTargetOutput) {
47378        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_push_back(
47379            self as *const crate::QVectorOfQRenderTargetOutput
47380                as *mut crate::QVectorOfQRenderTargetOutput,
47381            t,
47382        )
47383    }
47384
47385    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
47386    ///
47387    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::push_front(const Qt3DRender::QRenderTargetOutput*& t)```</span>.
47388    ///
47389    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
47390    #[inline(always)]
47391    pub unsafe fn push_front(&self, t: *const *mut crate::QRenderTargetOutput) {
47392        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_push_front(
47393            self as *const crate::QVectorOfQRenderTargetOutput
47394                as *mut crate::QVectorOfQRenderTargetOutput,
47395            t,
47396        )
47397    }
47398
47399    /// <p>This is an overloaded function.</p>
47400    ///
47401    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::remove(int i)```</span>.
47402    ///
47403    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
47404    /// <p>Removes the element at index position <i>i</i>.</p>
47405    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
47406    #[inline(always)]
47407    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
47408        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_remove(
47409            self as *const crate::QVectorOfQRenderTargetOutput
47410                as *mut crate::QVectorOfQRenderTargetOutput,
47411            i,
47412        )
47413    }
47414
47415    /// <p>This is an overloaded function.</p>
47416    ///
47417    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::remove(int i, int n)```</span>.
47418    ///
47419    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
47420    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
47421    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
47422    #[inline(always)]
47423    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
47424        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_remove1(
47425            self as *const crate::QVectorOfQRenderTargetOutput
47426                as *mut crate::QVectorOfQRenderTargetOutput,
47427            i,
47428            n,
47429        )
47430    }
47431
47432    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
47433    ///
47434    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::removeAll(const Qt3DRender::QRenderTargetOutput*& t)```</span>.
47435    ///
47436    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
47437    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
47438    /// <p>This function was introduced in  Qt 5.4.</p>
47439    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
47440    #[inline(always)]
47441    pub unsafe fn remove_all(
47442        &self,
47443        t: *const *mut crate::QRenderTargetOutput,
47444    ) -> ::std::os::raw::c_int {
47445        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_removeAll(
47446            self as *const crate::QVectorOfQRenderTargetOutput
47447                as *mut crate::QVectorOfQRenderTargetOutput,
47448            t,
47449        )
47450    }
47451
47452    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
47453    ///
47454    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::removeAt(int i)```</span>.
47455    ///
47456    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
47457    /// <pre class="cpp">
47458    ///
47459    ///   remove(i);
47460    ///
47461    /// </pre>
47462    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
47463    /// <p>This function was introduced in  Qt 5.2.</p>
47464    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
47465    #[inline(always)]
47466    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
47467        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_removeAt(
47468            self as *const crate::QVectorOfQRenderTargetOutput
47469                as *mut crate::QVectorOfQRenderTargetOutput,
47470            i,
47471        )
47472    }
47473
47474    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
47475    ///
47476    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::removeFirst()```</span>.
47477    ///
47478    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
47479    /// <p>This function was introduced in  Qt 5.1.</p>
47480    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
47481    #[inline(always)]
47482    pub unsafe fn remove_first(&self) {
47483        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_removeFirst(
47484            self as *const crate::QVectorOfQRenderTargetOutput
47485                as *mut crate::QVectorOfQRenderTargetOutput,
47486        )
47487    }
47488
47489    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
47490    ///
47491    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::removeLast()```</span>.
47492    ///
47493    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
47494    /// <p>This function was introduced in  Qt 5.1.</p>
47495    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
47496    #[inline(always)]
47497    pub unsafe fn remove_last(&self) {
47498        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_removeLast(
47499            self as *const crate::QVectorOfQRenderTargetOutput
47500                as *mut crate::QVectorOfQRenderTargetOutput,
47501        )
47502    }
47503
47504    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
47505    ///
47506    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput*>::removeOne(const Qt3DRender::QRenderTargetOutput*& t)```</span>.
47507    ///
47508    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
47509    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
47510    /// <p>This function was introduced in  Qt 5.4.</p>
47511    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
47512    #[inline(always)]
47513    pub unsafe fn remove_one(&self, t: *const *mut crate::QRenderTargetOutput) -> bool {
47514        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_removeOne(
47515            self as *const crate::QVectorOfQRenderTargetOutput
47516                as *mut crate::QVectorOfQRenderTargetOutput,
47517            t,
47518        )
47519    }
47520
47521    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
47522    ///
47523    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::replace(int i, const Qt3DRender::QRenderTargetOutput*& t)```</span>.
47524    ///
47525    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
47526    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
47527    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
47528    #[inline(always)]
47529    pub unsafe fn replace(
47530        &self,
47531        i: ::std::os::raw::c_int,
47532        t: *const *mut crate::QRenderTargetOutput,
47533    ) {
47534        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_replace(
47535            self as *const crate::QVectorOfQRenderTargetOutput
47536                as *mut crate::QVectorOfQRenderTargetOutput,
47537            i,
47538            t,
47539        )
47540    }
47541
47542    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
47543    ///
47544    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::reserve(int size)```</span>.
47545    ///
47546    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
47547    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
47548    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
47549    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
47550    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
47551    #[inline(always)]
47552    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
47553        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_reserve(
47554            self as *const crate::QVectorOfQRenderTargetOutput
47555                as *mut crate::QVectorOfQRenderTargetOutput,
47556            size,
47557        )
47558    }
47559
47560    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
47561    ///
47562    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::resize(int size)```</span>.
47563    ///
47564    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
47565    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
47566    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
47567    #[inline(always)]
47568    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
47569        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_resize(
47570            self as *const crate::QVectorOfQRenderTargetOutput
47571                as *mut crate::QVectorOfQRenderTargetOutput,
47572            size,
47573        )
47574    }
47575
47576    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::setSharable(bool sharable)```</span>.
47577    #[inline(always)]
47578    pub unsafe fn set_sharable(&self, sharable: bool) {
47579        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_setSharable(
47580            self as *const crate::QVectorOfQRenderTargetOutput
47581                as *mut crate::QVectorOfQRenderTargetOutput,
47582            sharable,
47583        )
47584    }
47585
47586    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
47587    ///
47588    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::shrink_to_fit()```</span>.
47589    ///
47590    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
47591    /// <p>This function was introduced in  Qt 5.10.</p></div>
47592    #[inline(always)]
47593    #[cfg_attr(
47594        feature = "ritual_rustdoc_nightly",
47595        doc(cfg(any(
47596            cpp_lib_version = "5.11.3",
47597            cpp_lib_version = "5.12.2",
47598            cpp_lib_version = "5.13.0",
47599            cpp_lib_version = "5.14.0"
47600        )))
47601    )]
47602    #[cfg(any(
47603        any(
47604            cpp_lib_version = "5.11.3",
47605            cpp_lib_version = "5.12.2",
47606            cpp_lib_version = "5.13.0",
47607            cpp_lib_version = "5.14.0"
47608        ),
47609        feature = "ritual_rustdoc"
47610    ))]
47611    pub unsafe fn shrink_to_fit(&self) {
47612        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_shrink_to_fit(
47613            self as *const crate::QVectorOfQRenderTargetOutput
47614                as *mut crate::QVectorOfQRenderTargetOutput,
47615        )
47616    }
47617
47618    /// <p>Returns the number of items in the vector.</p>
47619    ///
47620    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::size() const```</span>.
47621    ///
47622    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
47623    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
47624    #[inline(always)]
47625    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
47626        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_size(
47627            self as *const crate::QVectorOfQRenderTargetOutput,
47628        )
47629    }
47630
47631    /// <p>Releases any memory not required to store the items.</p>
47632    ///
47633    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::squeeze()```</span>.
47634    ///
47635    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
47636    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
47637    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
47638    #[inline(always)]
47639    pub unsafe fn squeeze(&self) {
47640        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_squeeze(
47641            self as *const crate::QVectorOfQRenderTargetOutput
47642                as *mut crate::QVectorOfQRenderTargetOutput,
47643        )
47644    }
47645
47646    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
47647    ///
47648    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput*>::startsWith(const Qt3DRender::QRenderTargetOutput*& t) const```</span>.
47649    ///
47650    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
47651    /// <p>This function was introduced in  Qt 4.5.</p>
47652    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
47653    #[inline(always)]
47654    pub unsafe fn starts_with(&self, t: *const *mut crate::QRenderTargetOutput) -> bool {
47655        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_startsWith(
47656            self as *const crate::QVectorOfQRenderTargetOutput,
47657            t,
47658        )
47659    }
47660
47661    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
47662    ///
47663    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::swap(QVector<Qt3DRender::QRenderTargetOutput*>& other)```</span>.
47664    ///
47665    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
47666    /// <p>This function was introduced in  Qt 4.8.</p></div>
47667    #[inline(always)]
47668    pub unsafe fn swap(
47669        &self,
47670        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
47671    ) {
47672        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_swap(
47673            self as *const crate::QVectorOfQRenderTargetOutput
47674                as *mut crate::QVectorOfQRenderTargetOutput,
47675            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(
47676                other,
47677            )
47678            .as_raw_ptr() as *mut crate::QVectorOfQRenderTargetOutput,
47679        )
47680    }
47681
47682    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
47683    ///
47684    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput*>::swapItemsAt(int i, int j)```</span>.
47685    ///
47686    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
47687    /// <p>This function was introduced in  Qt 5.14.</p></div>
47688    #[inline(always)]
47689    #[cfg_attr(
47690        feature = "ritual_rustdoc_nightly",
47691        doc(cfg(cpp_lib_version = "5.14.0"))
47692    )]
47693    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
47694    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
47695        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_swapItemsAt(
47696            self as *const crate::QVectorOfQRenderTargetOutput
47697                as *mut crate::QVectorOfQRenderTargetOutput,
47698            i,
47699            j,
47700        )
47701    }
47702
47703    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
47704    ///
47705    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* QVector<Qt3DRender::QRenderTargetOutput*>::takeAt(int i)```</span>.
47706    ///
47707    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
47708    /// <p>Equivalent to</p>
47709    /// <pre class="cpp">
47710    ///
47711    ///   T t <span class="operator">=</span> at(i);
47712    ///   remove(i);
47713    ///   <span class="keyword">return</span> t;
47714    ///
47715    /// </pre>
47716    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
47717    /// <p>This function was introduced in  Qt 5.2.</p>
47718    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
47719    #[inline(always)]
47720    pub unsafe fn take_at(
47721        &self,
47722        i: ::std::os::raw::c_int,
47723    ) -> ::qt_core::QPtr<crate::QRenderTargetOutput> {
47724        let ffi_result = {
47725            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_takeAt(
47726                self as *const crate::QVectorOfQRenderTargetOutput
47727                    as *mut crate::QVectorOfQRenderTargetOutput,
47728                i,
47729            )
47730        };
47731        ::qt_core::QPtr::from_raw(ffi_result)
47732    }
47733
47734    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
47735    ///
47736    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* QVector<Qt3DRender::QRenderTargetOutput*>::takeFirst()```</span>.
47737    ///
47738    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
47739    /// <p>This function was introduced in  Qt 5.1.</p>
47740    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
47741    #[inline(always)]
47742    pub unsafe fn take_first(&self) -> ::qt_core::QPtr<crate::QRenderTargetOutput> {
47743        let ffi_result = {
47744            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_takeFirst(
47745                self as *const crate::QVectorOfQRenderTargetOutput
47746                    as *mut crate::QVectorOfQRenderTargetOutput,
47747            )
47748        };
47749        ::qt_core::QPtr::from_raw(ffi_result)
47750    }
47751
47752    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
47753    ///
47754    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* QVector<Qt3DRender::QRenderTargetOutput*>::takeLast()```</span>.
47755    ///
47756    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
47757    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
47758    /// <p>This function was introduced in  Qt 5.1.</p>
47759    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
47760    #[inline(always)]
47761    pub unsafe fn take_last(&self) -> ::qt_core::QPtr<crate::QRenderTargetOutput> {
47762        let ffi_result = {
47763            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_takeLast(
47764                self as *const crate::QVectorOfQRenderTargetOutput
47765                    as *mut crate::QVectorOfQRenderTargetOutput,
47766            )
47767        };
47768        ::qt_core::QPtr::from_raw(ffi_result)
47769    }
47770
47771    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
47772    ///
47773    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* QVector<Qt3DRender::QRenderTargetOutput*>::value(int i) const```</span>.
47774    ///
47775    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
47776    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
47777    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
47778    #[inline(always)]
47779    pub unsafe fn value_1a(
47780        &self,
47781        i: ::std::os::raw::c_int,
47782    ) -> ::qt_core::QPtr<crate::QRenderTargetOutput> {
47783        let ffi_result = {
47784            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_value(
47785                self as *const crate::QVectorOfQRenderTargetOutput,
47786                i,
47787            )
47788        };
47789        ::qt_core::QPtr::from_raw(ffi_result)
47790    }
47791
47792    /// <p>This is an overloaded function.</p>
47793    ///
47794    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* QVector<Qt3DRender::QRenderTargetOutput*>::value(int i, const Qt3DRender::QRenderTargetOutput*& defaultValue) const```</span>.
47795    ///
47796    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
47797    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
47798    #[inline(always)]
47799    pub unsafe fn value_2a(
47800        &self,
47801        i: ::std::os::raw::c_int,
47802        default_value: *const *mut crate::QRenderTargetOutput,
47803    ) -> ::qt_core::QPtr<crate::QRenderTargetOutput> {
47804        let ffi_result = {
47805            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_value1(
47806                self as *const crate::QVectorOfQRenderTargetOutput,
47807                i,
47808                default_value,
47809            )
47810        };
47811        ::qt_core::QPtr::from_raw(ffi_result)
47812    }
47813}
47814
47815/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
47816///
47817/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>```</span>.
47818///
47819/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
47820/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
47821/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
47822/// <ul>
47823/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
47824/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
47825/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
47826/// </ul>
47827/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
47828/// <pre class="cpp">
47829///
47830///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
47831///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
47832///
47833/// </pre>
47834/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
47835/// <pre class="cpp">
47836///
47837///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
47838///
47839/// </pre>
47840/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
47841/// <pre class="cpp">
47842///
47843///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
47844///
47845/// </pre>
47846/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
47847/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
47848/// <pre class="cpp">
47849///
47850///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
47851/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
47852///
47853/// </pre>
47854/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
47855/// <pre class="cpp">
47856///
47857///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
47858/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
47859/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
47860///   }
47861///
47862/// </pre>
47863/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
47864/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
47865/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
47866/// <pre class="cpp">
47867///
47868///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
47869///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
47870/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
47871///
47872/// </pre>
47873/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
47874/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
47875/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
47876/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
47877/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
47878/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
47879/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
47880/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
47881/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
47882/// <a name="more-information-on-using-qt-containers"></a>
47883/// <h4>More Information on Using Qt Containers</h4>
47884/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
47885#[repr(C)]
47886pub struct QVectorOfAttachmentPoint {
47887    _unused: u8,
47888}
47889impl QVectorOfAttachmentPoint {
47890    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
47891    ///
47892    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::operator+=(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& l)```</span>.
47893    ///
47894    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
47895    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
47896    #[inline(always)]
47897    pub unsafe fn add_assign_q_vector_of_attachment_point(
47898        &self,
47899        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
47900    ) -> ::cpp_core::Ref<crate::QVectorOfAttachmentPoint> {
47901        let ffi_result = {
47902            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_operator__4(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(l).as_raw_ptr())
47903        };
47904        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
47905    }
47906
47907    /// <p>This is an overloaded function.</p>
47908    ///
47909    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::operator+=(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
47910    ///
47911    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
47912    /// <p>Appends <i>value</i> to the vector.</p>
47913    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
47914    #[inline(always)]
47915    pub unsafe fn add_assign_attachment_point(
47916        &self,
47917        t: *const crate::q_render_target_output::AttachmentPoint,
47918    ) -> ::cpp_core::Ref<crate::QVectorOfAttachmentPoint> {
47919        let ffi_result = {
47920            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_operator__5(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t)
47921        };
47922        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
47923    }
47924
47925    /// <p>Inserts <i>value</i> at the end of the vector.</p>
47926    ///
47927    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::append(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
47928    ///
47929    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
47930    /// <p>Example:</p>
47931    /// <pre class="cpp">
47932    ///
47933    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
47934    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
47935    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
47936    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
47937    ///   vector<span class="operator">.</span>append(three);
47938    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
47939    ///   <span class="comment">// three: "three"</span>
47940    ///
47941    /// </pre>
47942    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
47943    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
47944    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
47945    #[inline(always)]
47946    pub unsafe fn append_attachment_point(
47947        &self,
47948        t: *const crate::q_render_target_output::AttachmentPoint,
47949    ) {
47950        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_append(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t)
47951    }
47952
47953    /// <p>This is an overloaded function.</p>
47954    ///
47955    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::append(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& l)```</span>.
47956    ///
47957    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
47958    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
47959    /// <p>This function was introduced in  Qt 5.5.</p>
47960    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
47961    #[inline(always)]
47962    pub unsafe fn append_q_vector_of_attachment_point(
47963        &self,
47964        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
47965    ) {
47966        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_append2(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(l).as_raw_ptr())
47967    }
47968
47969    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
47970    ///
47971    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::at(int i) const```</span>.
47972    ///
47973    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
47974    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
47975    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
47976    #[inline(always)]
47977    pub unsafe fn at(
47978        &self,
47979        i: ::std::os::raw::c_int,
47980    ) -> *const crate::q_render_target_output::AttachmentPoint {
47981        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_at(
47982            self as *const crate::QVectorOfAttachmentPoint,
47983            i,
47984        )
47985    }
47986
47987    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
47988    ///
47989    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::back()```</span>.
47990    ///
47991    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
47992    #[inline(always)]
47993    pub unsafe fn back_mut(&self) -> *mut crate::q_render_target_output::AttachmentPoint {
47994        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_back(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
47995    }
47996
47997    /// <p>This is an overloaded function.</p>
47998    ///
47999    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::back() const```</span>.
48000    ///
48001    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
48002    #[inline(always)]
48003    pub unsafe fn back(&self) -> *const crate::q_render_target_output::AttachmentPoint {
48004        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_back1(self as *const crate::QVectorOfAttachmentPoint)
48005    }
48006
48007    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
48008    ///
48009    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::capacity() const```</span>.
48010    ///
48011    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
48012    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
48013    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
48014    #[inline(always)]
48015    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
48016        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_capacity(self as *const crate::QVectorOfAttachmentPoint)
48017    }
48018
48019    /// <p>Removes all the elements from the vector.</p>
48020    ///
48021    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::clear()```</span>.
48022    ///
48023    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
48024    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
48025    ///
48026    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
48027    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
48028    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
48029    ///
48030    /// </pre>
48031    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
48032    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
48033    #[inline(always)]
48034    pub unsafe fn clear(&self) {
48035        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_clear(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48036    }
48037
48038    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
48039    ///
48040    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint* QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::constData() const```</span>.
48041    ///
48042    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
48043    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
48044    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
48045    #[inline(always)]
48046    pub unsafe fn const_data(&self) -> *const crate::q_render_target_output::AttachmentPoint {
48047        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_constData(self as *const crate::QVectorOfAttachmentPoint)
48048    }
48049
48050    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
48051    ///
48052    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::constFirst() const```</span>.
48053    ///
48054    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
48055    /// <p>This function was introduced in  Qt 5.6.</p>
48056    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
48057    #[inline(always)]
48058    pub unsafe fn const_first(&self) -> *const crate::q_render_target_output::AttachmentPoint {
48059        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_constFirst(self as *const crate::QVectorOfAttachmentPoint)
48060    }
48061
48062    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
48063    ///
48064    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::constLast() const```</span>.
48065    ///
48066    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
48067    /// <p>This function was introduced in  Qt 5.6.</p>
48068    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
48069    #[inline(always)]
48070    pub unsafe fn const_last(&self) -> *const crate::q_render_target_output::AttachmentPoint {
48071        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_constLast(self as *const crate::QVectorOfAttachmentPoint)
48072    }
48073
48074    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
48075    ///
48076    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::contains(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t) const```</span>.
48077    ///
48078    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
48079    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
48080    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
48081    #[inline(always)]
48082    pub unsafe fn contains(
48083        &self,
48084        t: *const crate::q_render_target_output::AttachmentPoint,
48085    ) -> bool {
48086        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_contains(self as *const crate::QVectorOfAttachmentPoint, t)
48087    }
48088
48089    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
48090    ///
48091    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::operator=(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& v)```</span>.
48092    ///
48093    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
48094    #[inline(always)]
48095    pub unsafe fn copy_from(
48096        &self,
48097        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
48098    ) -> ::cpp_core::Ref<crate::QVectorOfAttachmentPoint> {
48099        let ffi_result = {
48100            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_operator_(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(v).as_raw_ptr())
48101        };
48102        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
48103    }
48104
48105    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
48106    ///
48107    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::count(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t) const```</span>.
48108    ///
48109    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
48110    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
48111    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
48112    #[inline(always)]
48113    pub unsafe fn count_1a(
48114        &self,
48115        t: *const crate::q_render_target_output::AttachmentPoint,
48116    ) -> ::std::os::raw::c_int {
48117        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_count(self as *const crate::QVectorOfAttachmentPoint, t)
48118    }
48119
48120    /// <p>This is an overloaded function.</p>
48121    ///
48122    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::count() const```</span>.
48123    ///
48124    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
48125    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
48126    #[inline(always)]
48127    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
48128        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_count1(self as *const crate::QVectorOfAttachmentPoint)
48129    }
48130
48131    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
48132    ///
48133    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint* QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::data()```</span>.
48134    ///
48135    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
48136    /// <p>Example:</p>
48137    /// <pre class="cpp">
48138    ///
48139    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
48140    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
48141    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
48142    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
48143    ///
48144    /// </pre>
48145    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
48146    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
48147    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
48148    #[inline(always)]
48149    pub unsafe fn data_mut(&self) -> *mut crate::q_render_target_output::AttachmentPoint {
48150        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_data(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48151    }
48152
48153    /// <p>This is an overloaded function.</p>
48154    ///
48155    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint* QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::data() const```</span>.
48156    ///
48157    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
48158    #[inline(always)]
48159    pub unsafe fn data(&self) -> *const crate::q_render_target_output::AttachmentPoint {
48160        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_data1(self as *const crate::QVectorOfAttachmentPoint)
48161    }
48162
48163    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::detach()```</span>.
48164    #[inline(always)]
48165    pub unsafe fn detach(&self) {
48166        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_detach(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48167    }
48168
48169    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
48170    ///
48171    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::empty() const```</span>.
48172    ///
48173    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
48174    #[inline(always)]
48175    pub unsafe fn empty(&self) -> bool {
48176        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_empty(self as *const crate::QVectorOfAttachmentPoint)
48177    }
48178
48179    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
48180    ///
48181    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::endsWith(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t) const```</span>.
48182    ///
48183    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
48184    /// <p>This function was introduced in  Qt 4.5.</p>
48185    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
48186    #[inline(always)]
48187    pub unsafe fn ends_with(
48188        &self,
48189        t: *const crate::q_render_target_output::AttachmentPoint,
48190    ) -> bool {
48191        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_endsWith(self as *const crate::QVectorOfAttachmentPoint, t)
48192    }
48193
48194    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
48195    ///
48196    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::fill(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t, int size = …)```</span>.
48197    ///
48198    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
48199    /// <p>Example:</p>
48200    /// <pre class="cpp">
48201    ///
48202    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
48203    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
48204    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
48205    ///
48206    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
48207    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
48208    ///
48209    /// </pre>
48210    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
48211    #[inline(always)]
48212    pub unsafe fn fill_2a(
48213        &self,
48214        t: *const crate::q_render_target_output::AttachmentPoint,
48215        size: ::std::os::raw::c_int,
48216    ) -> ::cpp_core::Ref<crate::QVectorOfAttachmentPoint> {
48217        let ffi_result = {
48218            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_fill(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t, size)
48219        };
48220        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
48221    }
48222
48223    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
48224    ///
48225    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::fill(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48226    ///
48227    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
48228    /// <p>Example:</p>
48229    /// <pre class="cpp">
48230    ///
48231    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
48232    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
48233    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
48234    ///
48235    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
48236    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
48237    ///
48238    /// </pre>
48239    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
48240    #[inline(always)]
48241    pub unsafe fn fill_1a(
48242        &self,
48243        t: *const crate::q_render_target_output::AttachmentPoint,
48244    ) -> ::cpp_core::Ref<crate::QVectorOfAttachmentPoint> {
48245        let ffi_result = {
48246            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_fill1(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t)
48247        };
48248        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
48249    }
48250
48251    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
48252    ///
48253    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::first()```</span>.
48254    ///
48255    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
48256    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
48257    #[inline(always)]
48258    pub unsafe fn first_mut(&self) -> *mut crate::q_render_target_output::AttachmentPoint {
48259        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_first(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48260    }
48261
48262    /// <p>This is an overloaded function.</p>
48263    ///
48264    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::first() const```</span>.
48265    ///
48266    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
48267    #[inline(always)]
48268    pub unsafe fn first(&self) -> *const crate::q_render_target_output::AttachmentPoint {
48269        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_first1(self as *const crate::QVectorOfAttachmentPoint)
48270    }
48271
48272    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
48273    ///
48274    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::front()```</span>.
48275    ///
48276    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
48277    #[inline(always)]
48278    pub unsafe fn front_mut(&self) -> *mut crate::q_render_target_output::AttachmentPoint {
48279        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_front(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48280    }
48281
48282    /// <p>This is an overloaded function.</p>
48283    ///
48284    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::front() const```</span>.
48285    ///
48286    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
48287    #[inline(always)]
48288    pub unsafe fn front(&self) -> *const crate::q_render_target_output::AttachmentPoint {
48289        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_front1(self as *const crate::QVectorOfAttachmentPoint)
48290    }
48291
48292    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
48293    ///
48294    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::operator[](int i)```</span>.
48295    ///
48296    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
48297    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
48298    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
48299    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
48300    #[inline(always)]
48301    pub unsafe fn index_mut(
48302        &self,
48303        i: ::std::os::raw::c_int,
48304    ) -> *mut crate::q_render_target_output::AttachmentPoint {
48305        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_operator__2(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, i)
48306    }
48307
48308    /// <p>This is an overloaded function.</p>
48309    ///
48310    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::operator[](int i) const```</span>.
48311    ///
48312    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
48313    /// <p>Same as at(<i>i</i>).</p></div>
48314    #[inline(always)]
48315    pub unsafe fn index(
48316        &self,
48317        i: ::std::os::raw::c_int,
48318    ) -> *const crate::q_render_target_output::AttachmentPoint {
48319        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_operator__3(self as *const crate::QVectorOfAttachmentPoint, i)
48320    }
48321
48322    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
48323    ///
48324    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::indexOf(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t, int from = …) const```</span>.
48325    ///
48326    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
48327    /// <p>Example:</p>
48328    /// <pre class="cpp">
48329    ///
48330    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
48331    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
48332    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
48333    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
48334    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
48335    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
48336    ///
48337    /// </pre>
48338    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
48339    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
48340    #[inline(always)]
48341    pub unsafe fn index_of_2a(
48342        &self,
48343        t: *const crate::q_render_target_output::AttachmentPoint,
48344        from: ::std::os::raw::c_int,
48345    ) -> ::std::os::raw::c_int {
48346        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_indexOf(self as *const crate::QVectorOfAttachmentPoint, t, from)
48347    }
48348
48349    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
48350    ///
48351    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::indexOf(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t) const```</span>.
48352    ///
48353    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
48354    /// <p>Example:</p>
48355    /// <pre class="cpp">
48356    ///
48357    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
48358    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
48359    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
48360    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
48361    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
48362    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
48363    ///
48364    /// </pre>
48365    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
48366    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
48367    #[inline(always)]
48368    pub unsafe fn index_of_1a(
48369        &self,
48370        t: *const crate::q_render_target_output::AttachmentPoint,
48371    ) -> ::std::os::raw::c_int {
48372        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_indexOf1(self as *const crate::QVectorOfAttachmentPoint, t)
48373    }
48374
48375    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
48376    ///
48377    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::insert(int i, const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48378    ///
48379    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
48380    /// <p>Example:</p>
48381    /// <pre class="cpp">
48382    ///
48383    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
48384    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
48385    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
48386    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
48387    ///
48388    /// </pre>
48389    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
48390    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
48391    #[inline(always)]
48392    pub unsafe fn insert_2a(
48393        &self,
48394        i: ::std::os::raw::c_int,
48395        t: *const crate::q_render_target_output::AttachmentPoint,
48396    ) {
48397        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_insert(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, i, t)
48398    }
48399
48400    /// <p>This is an overloaded function.</p>
48401    ///
48402    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::insert(int i, int n, const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48403    ///
48404    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
48405    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
48406    /// <p>Example:</p>
48407    /// <pre class="cpp">
48408    ///
48409    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
48410    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
48411    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
48412    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
48413    ///
48414    /// </pre></div>
48415    #[inline(always)]
48416    pub unsafe fn insert_3a(
48417        &self,
48418        i: ::std::os::raw::c_int,
48419        n: ::std::os::raw::c_int,
48420        t: *const crate::q_render_target_output::AttachmentPoint,
48421    ) {
48422        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_insert1(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, i, n, t)
48423    }
48424
48425    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::isDetached() const```</span>.
48426    #[inline(always)]
48427    pub unsafe fn is_detached(&self) -> bool {
48428        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_isDetached(self as *const crate::QVectorOfAttachmentPoint)
48429    }
48430
48431    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
48432    ///
48433    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::isEmpty() const```</span>.
48434    ///
48435    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
48436    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
48437    #[inline(always)]
48438    pub unsafe fn is_empty(&self) -> bool {
48439        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_isEmpty(self as *const crate::QVectorOfAttachmentPoint)
48440    }
48441
48442    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::isSharedWith(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& other) const```</span>.
48443    #[inline(always)]
48444    pub unsafe fn is_shared_with(
48445        &self,
48446        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
48447    ) -> bool {
48448        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_isSharedWith(self as *const crate::QVectorOfAttachmentPoint, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(other).as_raw_ptr())
48449    }
48450
48451    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
48452    ///
48453    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::last()```</span>.
48454    ///
48455    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
48456    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
48457    #[inline(always)]
48458    pub unsafe fn last_mut(&self) -> *mut crate::q_render_target_output::AttachmentPoint {
48459        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_last(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48460    }
48461
48462    /// <p>This is an overloaded function.</p>
48463    ///
48464    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::last() const```</span>.
48465    ///
48466    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
48467    #[inline(always)]
48468    pub unsafe fn last(&self) -> *const crate::q_render_target_output::AttachmentPoint {
48469        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_last1(self as *const crate::QVectorOfAttachmentPoint)
48470    }
48471
48472    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
48473    ///
48474    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::lastIndexOf(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t, int from = …) const```</span>.
48475    ///
48476    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
48477    /// <p>Example:</p>
48478    /// <pre class="cpp">
48479    ///
48480    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
48481    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
48482    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
48483    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
48484    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
48485    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
48486    ///
48487    /// </pre>
48488    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
48489    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
48490    #[inline(always)]
48491    pub unsafe fn last_index_of_2a(
48492        &self,
48493        t: *const crate::q_render_target_output::AttachmentPoint,
48494        from: ::std::os::raw::c_int,
48495    ) -> ::std::os::raw::c_int {
48496        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_lastIndexOf(self as *const crate::QVectorOfAttachmentPoint, t, from)
48497    }
48498
48499    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
48500    ///
48501    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::lastIndexOf(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t) const```</span>.
48502    ///
48503    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
48504    /// <p>Example:</p>
48505    /// <pre class="cpp">
48506    ///
48507    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
48508    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
48509    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
48510    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
48511    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
48512    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
48513    ///
48514    /// </pre>
48515    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
48516    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
48517    #[inline(always)]
48518    pub unsafe fn last_index_of_1a(
48519        &self,
48520        t: *const crate::q_render_target_output::AttachmentPoint,
48521    ) -> ::std::os::raw::c_int {
48522        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_lastIndexOf1(self as *const crate::QVectorOfAttachmentPoint, t)
48523    }
48524
48525    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
48526    ///
48527    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::length() const```</span>.
48528    ///
48529    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
48530    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
48531    /// <p>This function was introduced in  Qt 5.2.</p>
48532    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
48533    #[inline(always)]
48534    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
48535        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_length(self as *const crate::QVectorOfAttachmentPoint)
48536    }
48537
48538    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
48539    ///
48540    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint> QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::mid(int pos, int len = …) const```</span>.
48541    ///
48542    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
48543    #[inline(always)]
48544    pub unsafe fn mid_2a(
48545        &self,
48546        pos: ::std::os::raw::c_int,
48547        len: ::std::os::raw::c_int,
48548    ) -> ::cpp_core::CppBox<crate::QVectorOfAttachmentPoint> {
48549        let ffi_result = {
48550            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_mid(self as *const crate::QVectorOfAttachmentPoint, pos, len)
48551        };
48552        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
48553    }
48554
48555    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
48556    ///
48557    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint> QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::mid(int pos) const```</span>.
48558    ///
48559    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
48560    #[inline(always)]
48561    pub unsafe fn mid_1a(
48562        &self,
48563        pos: ::std::os::raw::c_int,
48564    ) -> ::cpp_core::CppBox<crate::QVectorOfAttachmentPoint> {
48565        let ffi_result = {
48566            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_mid1(self as *const crate::QVectorOfAttachmentPoint, pos)
48567        };
48568        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
48569    }
48570
48571    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
48572    ///
48573    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::move(int from, int to)```</span>.
48574    ///
48575    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
48576    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
48577    /// <p>This function was introduced in  Qt 5.6.</p>
48578    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
48579    #[inline(always)]
48580    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
48581        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_move(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, from, to)
48582    }
48583
48584    /// <p>Constructs an empty vector.</p>
48585    ///
48586    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::QVector()```</span>.
48587    ///
48588    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
48589    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
48590    #[inline(always)]
48591    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfAttachmentPoint> {
48592        let ffi_result = {
48593            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_QVector()
48594        };
48595        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
48596    }
48597
48598    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
48599    ///
48600    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::QVector(int size)```</span>.
48601    ///
48602    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
48603    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
48604    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
48605    #[inline(always)]
48606    pub unsafe fn new_1a(
48607        size: ::std::os::raw::c_int,
48608    ) -> ::cpp_core::CppBox<crate::QVectorOfAttachmentPoint> {
48609        let ffi_result = {
48610            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_QVector1(size)
48611        };
48612        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
48613    }
48614
48615    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
48616    ///
48617    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::QVector(int size, const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48618    ///
48619    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
48620    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
48621    #[inline(always)]
48622    pub unsafe fn new_2a(
48623        size: ::std::os::raw::c_int,
48624        t: *const crate::q_render_target_output::AttachmentPoint,
48625    ) -> ::cpp_core::CppBox<crate::QVectorOfAttachmentPoint> {
48626        let ffi_result = {
48627            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_QVector2(size, t)
48628        };
48629        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
48630    }
48631
48632    /// <p>Constructs a copy of <i>other</i>.</p>
48633    ///
48634    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::QVector(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& v)```</span>.
48635    ///
48636    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
48637    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
48638    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
48639    #[inline(always)]
48640    pub unsafe fn new_copy(
48641        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
48642    ) -> ::cpp_core::CppBox<crate::QVectorOfAttachmentPoint> {
48643        let ffi_result = {
48644            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_QVector3(::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(v).as_raw_ptr())
48645        };
48646        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
48647    }
48648
48649    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
48650    ///
48651    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::pop_back()```</span>.
48652    ///
48653    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
48654    #[inline(always)]
48655    pub unsafe fn pop_back(&self) {
48656        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_pop_back(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48657    }
48658
48659    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
48660    ///
48661    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::pop_front()```</span>.
48662    ///
48663    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
48664    #[inline(always)]
48665    pub unsafe fn pop_front(&self) {
48666        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_pop_front(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48667    }
48668
48669    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
48670    ///
48671    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::prepend(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48672    ///
48673    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
48674    /// <p>Example:</p>
48675    /// <pre class="cpp">
48676    ///
48677    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
48678    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
48679    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
48680    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
48681    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
48682    ///
48683    /// </pre>
48684    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
48685    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
48686    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
48687    #[inline(always)]
48688    pub unsafe fn prepend(&self, t: *const crate::q_render_target_output::AttachmentPoint) {
48689        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_prepend(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t)
48690    }
48691
48692    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
48693    ///
48694    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::push_back(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48695    ///
48696    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
48697    #[inline(always)]
48698    pub unsafe fn push_back(&self, t: *const crate::q_render_target_output::AttachmentPoint) {
48699        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_push_back(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t)
48700    }
48701
48702    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
48703    ///
48704    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::push_front(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48705    ///
48706    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
48707    #[inline(always)]
48708    pub unsafe fn push_front(&self, t: *const crate::q_render_target_output::AttachmentPoint) {
48709        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_push_front(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t)
48710    }
48711
48712    /// <p>This is an overloaded function.</p>
48713    ///
48714    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::remove(int i)```</span>.
48715    ///
48716    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
48717    /// <p>Removes the element at index position <i>i</i>.</p>
48718    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
48719    #[inline(always)]
48720    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
48721        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_remove(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, i)
48722    }
48723
48724    /// <p>This is an overloaded function.</p>
48725    ///
48726    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::remove(int i, int n)```</span>.
48727    ///
48728    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
48729    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
48730    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
48731    #[inline(always)]
48732    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
48733        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_remove1(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, i, n)
48734    }
48735
48736    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
48737    ///
48738    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::removeAll(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48739    ///
48740    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
48741    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
48742    /// <p>This function was introduced in  Qt 5.4.</p>
48743    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
48744    #[inline(always)]
48745    pub unsafe fn remove_all(
48746        &self,
48747        t: *const crate::q_render_target_output::AttachmentPoint,
48748    ) -> ::std::os::raw::c_int {
48749        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_removeAll(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t)
48750    }
48751
48752    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
48753    ///
48754    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::removeAt(int i)```</span>.
48755    ///
48756    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
48757    /// <pre class="cpp">
48758    ///
48759    ///   remove(i);
48760    ///
48761    /// </pre>
48762    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
48763    /// <p>This function was introduced in  Qt 5.2.</p>
48764    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
48765    #[inline(always)]
48766    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
48767        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_removeAt(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, i)
48768    }
48769
48770    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
48771    ///
48772    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::removeFirst()```</span>.
48773    ///
48774    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
48775    /// <p>This function was introduced in  Qt 5.1.</p>
48776    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
48777    #[inline(always)]
48778    pub unsafe fn remove_first(&self) {
48779        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_removeFirst(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48780    }
48781
48782    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
48783    ///
48784    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::removeLast()```</span>.
48785    ///
48786    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
48787    /// <p>This function was introduced in  Qt 5.1.</p>
48788    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
48789    #[inline(always)]
48790    pub unsafe fn remove_last(&self) {
48791        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_removeLast(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48792    }
48793
48794    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
48795    ///
48796    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::removeOne(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48797    ///
48798    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
48799    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
48800    /// <p>This function was introduced in  Qt 5.4.</p>
48801    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
48802    #[inline(always)]
48803    pub unsafe fn remove_one(
48804        &self,
48805        t: *const crate::q_render_target_output::AttachmentPoint,
48806    ) -> bool {
48807        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_removeOne(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t)
48808    }
48809
48810    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
48811    ///
48812    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::replace(int i, const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
48813    ///
48814    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
48815    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
48816    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
48817    #[inline(always)]
48818    pub unsafe fn replace(
48819        &self,
48820        i: ::std::os::raw::c_int,
48821        t: *const crate::q_render_target_output::AttachmentPoint,
48822    ) {
48823        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_replace(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, i, t)
48824    }
48825
48826    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
48827    ///
48828    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::reserve(int size)```</span>.
48829    ///
48830    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
48831    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
48832    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
48833    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
48834    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
48835    #[inline(always)]
48836    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
48837        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_reserve(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, size)
48838    }
48839
48840    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
48841    ///
48842    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::resize(int size)```</span>.
48843    ///
48844    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
48845    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
48846    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
48847    #[inline(always)]
48848    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
48849        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_resize(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, size)
48850    }
48851
48852    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::setSharable(bool sharable)```</span>.
48853    #[inline(always)]
48854    pub unsafe fn set_sharable(&self, sharable: bool) {
48855        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_setSharable(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, sharable)
48856    }
48857
48858    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
48859    ///
48860    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::shrink_to_fit()```</span>.
48861    ///
48862    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
48863    /// <p>This function was introduced in  Qt 5.10.</p></div>
48864    #[inline(always)]
48865    #[cfg_attr(
48866        feature = "ritual_rustdoc_nightly",
48867        doc(cfg(any(
48868            cpp_lib_version = "5.11.3",
48869            cpp_lib_version = "5.12.2",
48870            cpp_lib_version = "5.13.0",
48871            cpp_lib_version = "5.14.0"
48872        )))
48873    )]
48874    #[cfg(any(
48875        any(
48876            cpp_lib_version = "5.11.3",
48877            cpp_lib_version = "5.12.2",
48878            cpp_lib_version = "5.13.0",
48879            cpp_lib_version = "5.14.0"
48880        ),
48881        feature = "ritual_rustdoc"
48882    ))]
48883    pub unsafe fn shrink_to_fit(&self) {
48884        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_shrink_to_fit(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48885    }
48886
48887    /// <p>Returns the number of items in the vector.</p>
48888    ///
48889    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::size() const```</span>.
48890    ///
48891    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
48892    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
48893    #[inline(always)]
48894    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
48895        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_size(self as *const crate::QVectorOfAttachmentPoint)
48896    }
48897
48898    /// <p>Releases any memory not required to store the items.</p>
48899    ///
48900    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::squeeze()```</span>.
48901    ///
48902    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
48903    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
48904    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
48905    #[inline(always)]
48906    pub unsafe fn squeeze(&self) {
48907        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_squeeze(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48908    }
48909
48910    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
48911    ///
48912    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::startsWith(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t) const```</span>.
48913    ///
48914    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
48915    /// <p>This function was introduced in  Qt 4.5.</p>
48916    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
48917    #[inline(always)]
48918    pub unsafe fn starts_with(
48919        &self,
48920        t: *const crate::q_render_target_output::AttachmentPoint,
48921    ) -> bool {
48922        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_startsWith(self as *const crate::QVectorOfAttachmentPoint, t)
48923    }
48924
48925    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
48926    ///
48927    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::swap(QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& other)```</span>.
48928    ///
48929    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
48930    /// <p>This function was introduced in  Qt 4.8.</p></div>
48931    #[inline(always)]
48932    pub unsafe fn swap(
48933        &self,
48934        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
48935    ) {
48936        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_swap(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(other).as_raw_ptr() as *mut crate::QVectorOfAttachmentPoint)
48937    }
48938
48939    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
48940    ///
48941    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::swapItemsAt(int i, int j)```</span>.
48942    ///
48943    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
48944    /// <p>This function was introduced in  Qt 5.14.</p></div>
48945    #[inline(always)]
48946    #[cfg_attr(
48947        feature = "ritual_rustdoc_nightly",
48948        doc(cfg(cpp_lib_version = "5.14.0"))
48949    )]
48950    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
48951    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
48952        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_swapItemsAt(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, i, j)
48953    }
48954
48955    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
48956    ///
48957    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::takeAt(int i)```</span>.
48958    ///
48959    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
48960    /// <p>Equivalent to</p>
48961    /// <pre class="cpp">
48962    ///
48963    ///   T t <span class="operator">=</span> at(i);
48964    ///   remove(i);
48965    ///   <span class="keyword">return</span> t;
48966    ///
48967    /// </pre>
48968    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
48969    /// <p>This function was introduced in  Qt 5.2.</p>
48970    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
48971    #[inline(always)]
48972    pub unsafe fn take_at(
48973        &self,
48974        i: ::std::os::raw::c_int,
48975    ) -> crate::q_render_target_output::AttachmentPoint {
48976        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_takeAt(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, i)
48977    }
48978
48979    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
48980    ///
48981    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::takeFirst()```</span>.
48982    ///
48983    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
48984    /// <p>This function was introduced in  Qt 5.1.</p>
48985    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
48986    #[inline(always)]
48987    pub unsafe fn take_first(&self) -> crate::q_render_target_output::AttachmentPoint {
48988        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_takeFirst(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
48989    }
48990
48991    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
48992    ///
48993    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::takeLast()```</span>.
48994    ///
48995    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
48996    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
48997    /// <p>This function was introduced in  Qt 5.1.</p>
48998    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
48999    #[inline(always)]
49000    pub unsafe fn take_last(&self) -> crate::q_render_target_output::AttachmentPoint {
49001        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_takeLast(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
49002    }
49003
49004    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
49005    ///
49006    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::value(int i) const```</span>.
49007    ///
49008    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
49009    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
49010    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
49011    #[inline(always)]
49012    pub unsafe fn value_1a(
49013        &self,
49014        i: ::std::os::raw::c_int,
49015    ) -> crate::q_render_target_output::AttachmentPoint {
49016        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_value(self as *const crate::QVectorOfAttachmentPoint, i)
49017    }
49018
49019    /// <p>This is an overloaded function.</p>
49020    ///
49021    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::value(int i, const Qt3DRender::QRenderTargetOutput::AttachmentPoint& defaultValue) const```</span>.
49022    ///
49023    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
49024    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
49025    #[inline(always)]
49026    pub unsafe fn value_2a(
49027        &self,
49028        i: ::std::os::raw::c_int,
49029        default_value: *const crate::q_render_target_output::AttachmentPoint,
49030    ) -> crate::q_render_target_output::AttachmentPoint {
49031        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_value1(self as *const crate::QVectorOfAttachmentPoint, i, default_value)
49032    }
49033}
49034
49035/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
49036///
49037/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType>```</span>.
49038///
49039/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
49040/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
49041/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
49042/// <ul>
49043/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
49044/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
49045/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
49046/// </ul>
49047/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
49048/// <pre class="cpp">
49049///
49050///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
49051///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
49052///
49053/// </pre>
49054/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
49055/// <pre class="cpp">
49056///
49057///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
49058///
49059/// </pre>
49060/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
49061/// <pre class="cpp">
49062///
49063///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
49064///
49065/// </pre>
49066/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
49067/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
49068/// <pre class="cpp">
49069///
49070///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
49071/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
49072///
49073/// </pre>
49074/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
49075/// <pre class="cpp">
49076///
49077///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
49078/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
49079/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
49080///   }
49081///
49082/// </pre>
49083/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
49084/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
49085/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
49086/// <pre class="cpp">
49087///
49088///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
49089///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
49090/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
49091///
49092/// </pre>
49093/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
49094/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
49095/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
49096/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
49097/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
49098/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
49099/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
49100/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
49101/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
49102/// <a name="more-information-on-using-qt-containers"></a>
49103/// <h4>More Information on Using Qt Containers</h4>
49104/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
49105#[repr(C)]
49106pub struct QVectorOfSortType {
49107    _unused: u8,
49108}
49109impl QVectorOfSortType {
49110    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
49111    ///
49112    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType>& QVector<Qt3DRender::QSortPolicy::SortType>::operator+=(const QVector<Qt3DRender::QSortPolicy::SortType>& l)```</span>.
49113    ///
49114    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
49115    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
49116    #[inline(always)]
49117    pub unsafe fn add_assign_q_vector_of_sort_type(
49118        &self,
49119        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
49120    ) -> ::cpp_core::Ref<crate::QVectorOfSortType> {
49121        let ffi_result = {
49122            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_operator__4(
49123                self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49124                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(l)
49125                    .as_raw_ptr(),
49126            )
49127        };
49128        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
49129    }
49130
49131    /// <p>This is an overloaded function.</p>
49132    ///
49133    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType>& QVector<Qt3DRender::QSortPolicy::SortType>::operator+=(const Qt3DRender::QSortPolicy::SortType& t)```</span>.
49134    ///
49135    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
49136    /// <p>Appends <i>value</i> to the vector.</p>
49137    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
49138    #[inline(always)]
49139    pub unsafe fn add_assign_sort_type(
49140        &self,
49141        t: *const crate::q_sort_policy::SortType,
49142    ) -> ::cpp_core::Ref<crate::QVectorOfSortType> {
49143        let ffi_result = {
49144            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_operator__5(
49145                self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49146                t,
49147            )
49148        };
49149        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
49150    }
49151
49152    /// <p>Inserts <i>value</i> at the end of the vector.</p>
49153    ///
49154    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::append(const Qt3DRender::QSortPolicy::SortType& t)```</span>.
49155    ///
49156    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
49157    /// <p>Example:</p>
49158    /// <pre class="cpp">
49159    ///
49160    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
49161    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
49162    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
49163    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
49164    ///   vector<span class="operator">.</span>append(three);
49165    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
49166    ///   <span class="comment">// three: "three"</span>
49167    ///
49168    /// </pre>
49169    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
49170    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
49171    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
49172    #[inline(always)]
49173    pub unsafe fn append_sort_type(&self, t: *const crate::q_sort_policy::SortType) {
49174        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_append(
49175            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49176            t,
49177        )
49178    }
49179
49180    /// <p>This is an overloaded function.</p>
49181    ///
49182    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::append(const QVector<Qt3DRender::QSortPolicy::SortType>& l)```</span>.
49183    ///
49184    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
49185    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
49186    /// <p>This function was introduced in  Qt 5.5.</p>
49187    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
49188    #[inline(always)]
49189    pub unsafe fn append_q_vector_of_sort_type(
49190        &self,
49191        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
49192    ) {
49193        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_append2(
49194            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49195            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(l)
49196                .as_raw_ptr(),
49197        )
49198    }
49199
49200    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
49201    ///
49202    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::at(int i) const```</span>.
49203    ///
49204    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
49205    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
49206    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
49207    #[inline(always)]
49208    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const crate::q_sort_policy::SortType {
49209        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_at(
49210            self as *const crate::QVectorOfSortType,
49211            i,
49212        )
49213    }
49214
49215    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
49216    ///
49217    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::back()```</span>.
49218    ///
49219    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
49220    #[inline(always)]
49221    pub unsafe fn back_mut(&self) -> *mut crate::q_sort_policy::SortType {
49222        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_back(
49223            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49224        )
49225    }
49226
49227    /// <p>This is an overloaded function.</p>
49228    ///
49229    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::back() const```</span>.
49230    ///
49231    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
49232    #[inline(always)]
49233    pub unsafe fn back(&self) -> *const crate::q_sort_policy::SortType {
49234        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_back1(
49235            self as *const crate::QVectorOfSortType,
49236        )
49237    }
49238
49239    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
49240    ///
49241    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::capacity() const```</span>.
49242    ///
49243    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
49244    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
49245    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
49246    #[inline(always)]
49247    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
49248        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_capacity(
49249            self as *const crate::QVectorOfSortType,
49250        )
49251    }
49252
49253    /// <p>Removes all the elements from the vector.</p>
49254    ///
49255    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::clear()```</span>.
49256    ///
49257    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
49258    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
49259    ///
49260    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
49261    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
49262    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
49263    ///
49264    /// </pre>
49265    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
49266    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
49267    #[inline(always)]
49268    pub unsafe fn clear(&self) {
49269        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_clear(
49270            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49271        )
49272    }
49273
49274    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
49275    ///
49276    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType* QVector<Qt3DRender::QSortPolicy::SortType>::constData() const```</span>.
49277    ///
49278    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
49279    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
49280    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
49281    #[inline(always)]
49282    pub unsafe fn const_data(&self) -> *const crate::q_sort_policy::SortType {
49283        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_constData(
49284            self as *const crate::QVectorOfSortType,
49285        )
49286    }
49287
49288    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
49289    ///
49290    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::constFirst() const```</span>.
49291    ///
49292    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
49293    /// <p>This function was introduced in  Qt 5.6.</p>
49294    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
49295    #[inline(always)]
49296    pub unsafe fn const_first(&self) -> *const crate::q_sort_policy::SortType {
49297        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_constFirst(
49298            self as *const crate::QVectorOfSortType,
49299        )
49300    }
49301
49302    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
49303    ///
49304    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::constLast() const```</span>.
49305    ///
49306    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
49307    /// <p>This function was introduced in  Qt 5.6.</p>
49308    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
49309    #[inline(always)]
49310    pub unsafe fn const_last(&self) -> *const crate::q_sort_policy::SortType {
49311        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_constLast(
49312            self as *const crate::QVectorOfSortType,
49313        )
49314    }
49315
49316    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
49317    ///
49318    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QSortPolicy::SortType>::contains(const Qt3DRender::QSortPolicy::SortType& t) const```</span>.
49319    ///
49320    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
49321    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
49322    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
49323    #[inline(always)]
49324    pub unsafe fn contains(&self, t: *const crate::q_sort_policy::SortType) -> bool {
49325        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_contains(
49326            self as *const crate::QVectorOfSortType,
49327            t,
49328        )
49329    }
49330
49331    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
49332    ///
49333    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType>& QVector<Qt3DRender::QSortPolicy::SortType>::operator=(const QVector<Qt3DRender::QSortPolicy::SortType>& v)```</span>.
49334    ///
49335    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
49336    #[inline(always)]
49337    pub unsafe fn copy_from(
49338        &self,
49339        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
49340    ) -> ::cpp_core::Ref<crate::QVectorOfSortType> {
49341        let ffi_result = {
49342            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_operator_(
49343                self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49344                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(v)
49345                    .as_raw_ptr(),
49346            )
49347        };
49348        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
49349    }
49350
49351    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
49352    ///
49353    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::count(const Qt3DRender::QSortPolicy::SortType& t) const```</span>.
49354    ///
49355    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
49356    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
49357    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
49358    #[inline(always)]
49359    pub unsafe fn count_1a(
49360        &self,
49361        t: *const crate::q_sort_policy::SortType,
49362    ) -> ::std::os::raw::c_int {
49363        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_count(
49364            self as *const crate::QVectorOfSortType,
49365            t,
49366        )
49367    }
49368
49369    /// <p>This is an overloaded function.</p>
49370    ///
49371    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::count() const```</span>.
49372    ///
49373    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
49374    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
49375    #[inline(always)]
49376    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
49377        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_count1(
49378            self as *const crate::QVectorOfSortType,
49379        )
49380    }
49381
49382    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
49383    ///
49384    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType* QVector<Qt3DRender::QSortPolicy::SortType>::data()```</span>.
49385    ///
49386    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
49387    /// <p>Example:</p>
49388    /// <pre class="cpp">
49389    ///
49390    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
49391    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
49392    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
49393    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
49394    ///
49395    /// </pre>
49396    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
49397    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
49398    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
49399    #[inline(always)]
49400    pub unsafe fn data_mut(&self) -> *mut crate::q_sort_policy::SortType {
49401        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_data(
49402            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49403        )
49404    }
49405
49406    /// <p>This is an overloaded function.</p>
49407    ///
49408    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType* QVector<Qt3DRender::QSortPolicy::SortType>::data() const```</span>.
49409    ///
49410    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
49411    #[inline(always)]
49412    pub unsafe fn data(&self) -> *const crate::q_sort_policy::SortType {
49413        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_data1(
49414            self as *const crate::QVectorOfSortType,
49415        )
49416    }
49417
49418    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::detach()```</span>.
49419    #[inline(always)]
49420    pub unsafe fn detach(&self) {
49421        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_detach(
49422            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49423        )
49424    }
49425
49426    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
49427    ///
49428    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QSortPolicy::SortType>::empty() const```</span>.
49429    ///
49430    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
49431    #[inline(always)]
49432    pub unsafe fn empty(&self) -> bool {
49433        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_empty(
49434            self as *const crate::QVectorOfSortType,
49435        )
49436    }
49437
49438    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
49439    ///
49440    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QSortPolicy::SortType>::endsWith(const Qt3DRender::QSortPolicy::SortType& t) const```</span>.
49441    ///
49442    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
49443    /// <p>This function was introduced in  Qt 4.5.</p>
49444    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
49445    #[inline(always)]
49446    pub unsafe fn ends_with(&self, t: *const crate::q_sort_policy::SortType) -> bool {
49447        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_endsWith(
49448            self as *const crate::QVectorOfSortType,
49449            t,
49450        )
49451    }
49452
49453    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
49454    ///
49455    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType>& QVector<Qt3DRender::QSortPolicy::SortType>::fill(const Qt3DRender::QSortPolicy::SortType& t, int size = …)```</span>.
49456    ///
49457    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
49458    /// <p>Example:</p>
49459    /// <pre class="cpp">
49460    ///
49461    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
49462    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
49463    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
49464    ///
49465    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
49466    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
49467    ///
49468    /// </pre>
49469    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
49470    #[inline(always)]
49471    pub unsafe fn fill_2a(
49472        &self,
49473        t: *const crate::q_sort_policy::SortType,
49474        size: ::std::os::raw::c_int,
49475    ) -> ::cpp_core::Ref<crate::QVectorOfSortType> {
49476        let ffi_result = {
49477            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_fill(
49478                self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49479                t,
49480                size,
49481            )
49482        };
49483        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
49484    }
49485
49486    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
49487    ///
49488    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType>& QVector<Qt3DRender::QSortPolicy::SortType>::fill(const Qt3DRender::QSortPolicy::SortType& t)```</span>.
49489    ///
49490    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
49491    /// <p>Example:</p>
49492    /// <pre class="cpp">
49493    ///
49494    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
49495    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
49496    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
49497    ///
49498    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
49499    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
49500    ///
49501    /// </pre>
49502    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
49503    #[inline(always)]
49504    pub unsafe fn fill_1a(
49505        &self,
49506        t: *const crate::q_sort_policy::SortType,
49507    ) -> ::cpp_core::Ref<crate::QVectorOfSortType> {
49508        let ffi_result = {
49509            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_fill1(
49510                self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49511                t,
49512            )
49513        };
49514        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
49515    }
49516
49517    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
49518    ///
49519    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::first()```</span>.
49520    ///
49521    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
49522    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
49523    #[inline(always)]
49524    pub unsafe fn first_mut(&self) -> *mut crate::q_sort_policy::SortType {
49525        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_first(
49526            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49527        )
49528    }
49529
49530    /// <p>This is an overloaded function.</p>
49531    ///
49532    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::first() const```</span>.
49533    ///
49534    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
49535    #[inline(always)]
49536    pub unsafe fn first(&self) -> *const crate::q_sort_policy::SortType {
49537        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_first1(
49538            self as *const crate::QVectorOfSortType,
49539        )
49540    }
49541
49542    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
49543    ///
49544    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::front()```</span>.
49545    ///
49546    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
49547    #[inline(always)]
49548    pub unsafe fn front_mut(&self) -> *mut crate::q_sort_policy::SortType {
49549        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_front(
49550            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49551        )
49552    }
49553
49554    /// <p>This is an overloaded function.</p>
49555    ///
49556    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::front() const```</span>.
49557    ///
49558    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
49559    #[inline(always)]
49560    pub unsafe fn front(&self) -> *const crate::q_sort_policy::SortType {
49561        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_front1(
49562            self as *const crate::QVectorOfSortType,
49563        )
49564    }
49565
49566    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
49567    ///
49568    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::operator[](int i)```</span>.
49569    ///
49570    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
49571    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
49572    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
49573    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
49574    #[inline(always)]
49575    pub unsafe fn index_mut(
49576        &self,
49577        i: ::std::os::raw::c_int,
49578    ) -> *mut crate::q_sort_policy::SortType {
49579        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_operator__2(
49580            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49581            i,
49582        )
49583    }
49584
49585    /// <p>This is an overloaded function.</p>
49586    ///
49587    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::operator[](int i) const```</span>.
49588    ///
49589    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
49590    /// <p>Same as at(<i>i</i>).</p></div>
49591    #[inline(always)]
49592    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> *const crate::q_sort_policy::SortType {
49593        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_operator__3(
49594            self as *const crate::QVectorOfSortType,
49595            i,
49596        )
49597    }
49598
49599    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
49600    ///
49601    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::indexOf(const Qt3DRender::QSortPolicy::SortType& t, int from = …) const```</span>.
49602    ///
49603    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
49604    /// <p>Example:</p>
49605    /// <pre class="cpp">
49606    ///
49607    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
49608    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
49609    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
49610    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
49611    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
49612    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
49613    ///
49614    /// </pre>
49615    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
49616    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
49617    #[inline(always)]
49618    pub unsafe fn index_of_2a(
49619        &self,
49620        t: *const crate::q_sort_policy::SortType,
49621        from: ::std::os::raw::c_int,
49622    ) -> ::std::os::raw::c_int {
49623        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_indexOf(
49624            self as *const crate::QVectorOfSortType,
49625            t,
49626            from,
49627        )
49628    }
49629
49630    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
49631    ///
49632    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::indexOf(const Qt3DRender::QSortPolicy::SortType& t) const```</span>.
49633    ///
49634    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
49635    /// <p>Example:</p>
49636    /// <pre class="cpp">
49637    ///
49638    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
49639    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
49640    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
49641    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
49642    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
49643    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
49644    ///
49645    /// </pre>
49646    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
49647    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
49648    #[inline(always)]
49649    pub unsafe fn index_of_1a(
49650        &self,
49651        t: *const crate::q_sort_policy::SortType,
49652    ) -> ::std::os::raw::c_int {
49653        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_indexOf1(
49654            self as *const crate::QVectorOfSortType,
49655            t,
49656        )
49657    }
49658
49659    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
49660    ///
49661    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::insert(int i, const Qt3DRender::QSortPolicy::SortType& t)```</span>.
49662    ///
49663    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
49664    /// <p>Example:</p>
49665    /// <pre class="cpp">
49666    ///
49667    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
49668    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
49669    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
49670    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
49671    ///
49672    /// </pre>
49673    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
49674    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
49675    #[inline(always)]
49676    pub unsafe fn insert_2a(
49677        &self,
49678        i: ::std::os::raw::c_int,
49679        t: *const crate::q_sort_policy::SortType,
49680    ) {
49681        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_insert(
49682            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49683            i,
49684            t,
49685        )
49686    }
49687
49688    /// <p>This is an overloaded function.</p>
49689    ///
49690    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::insert(int i, int n, const Qt3DRender::QSortPolicy::SortType& t)```</span>.
49691    ///
49692    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
49693    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
49694    /// <p>Example:</p>
49695    /// <pre class="cpp">
49696    ///
49697    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
49698    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
49699    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
49700    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
49701    ///
49702    /// </pre></div>
49703    #[inline(always)]
49704    pub unsafe fn insert_3a(
49705        &self,
49706        i: ::std::os::raw::c_int,
49707        n: ::std::os::raw::c_int,
49708        t: *const crate::q_sort_policy::SortType,
49709    ) {
49710        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_insert1(
49711            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49712            i,
49713            n,
49714            t,
49715        )
49716    }
49717
49718    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QSortPolicy::SortType>::isDetached() const```</span>.
49719    #[inline(always)]
49720    pub unsafe fn is_detached(&self) -> bool {
49721        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_isDetached(
49722            self as *const crate::QVectorOfSortType,
49723        )
49724    }
49725
49726    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
49727    ///
49728    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QSortPolicy::SortType>::isEmpty() const```</span>.
49729    ///
49730    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
49731    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
49732    #[inline(always)]
49733    pub unsafe fn is_empty(&self) -> bool {
49734        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_isEmpty(
49735            self as *const crate::QVectorOfSortType,
49736        )
49737    }
49738
49739    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QSortPolicy::SortType>::isSharedWith(const QVector<Qt3DRender::QSortPolicy::SortType>& other) const```</span>.
49740    #[inline(always)]
49741    pub unsafe fn is_shared_with(
49742        &self,
49743        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
49744    ) -> bool {
49745        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_isSharedWith(
49746            self as *const crate::QVectorOfSortType,
49747            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(other)
49748                .as_raw_ptr(),
49749        )
49750    }
49751
49752    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
49753    ///
49754    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::last()```</span>.
49755    ///
49756    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
49757    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
49758    #[inline(always)]
49759    pub unsafe fn last_mut(&self) -> *mut crate::q_sort_policy::SortType {
49760        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_last(
49761            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49762        )
49763    }
49764
49765    /// <p>This is an overloaded function.</p>
49766    ///
49767    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType& QVector<Qt3DRender::QSortPolicy::SortType>::last() const```</span>.
49768    ///
49769    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
49770    #[inline(always)]
49771    pub unsafe fn last(&self) -> *const crate::q_sort_policy::SortType {
49772        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_last1(
49773            self as *const crate::QVectorOfSortType,
49774        )
49775    }
49776
49777    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
49778    ///
49779    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::lastIndexOf(const Qt3DRender::QSortPolicy::SortType& t, int from = …) const```</span>.
49780    ///
49781    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
49782    /// <p>Example:</p>
49783    /// <pre class="cpp">
49784    ///
49785    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
49786    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
49787    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
49788    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
49789    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
49790    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
49791    ///
49792    /// </pre>
49793    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
49794    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
49795    #[inline(always)]
49796    pub unsafe fn last_index_of_2a(
49797        &self,
49798        t: *const crate::q_sort_policy::SortType,
49799        from: ::std::os::raw::c_int,
49800    ) -> ::std::os::raw::c_int {
49801        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_lastIndexOf(
49802            self as *const crate::QVectorOfSortType,
49803            t,
49804            from,
49805        )
49806    }
49807
49808    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
49809    ///
49810    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::lastIndexOf(const Qt3DRender::QSortPolicy::SortType& t) const```</span>.
49811    ///
49812    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
49813    /// <p>Example:</p>
49814    /// <pre class="cpp">
49815    ///
49816    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
49817    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
49818    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
49819    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
49820    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
49821    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
49822    ///
49823    /// </pre>
49824    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
49825    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
49826    #[inline(always)]
49827    pub unsafe fn last_index_of_1a(
49828        &self,
49829        t: *const crate::q_sort_policy::SortType,
49830    ) -> ::std::os::raw::c_int {
49831        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_lastIndexOf1(
49832            self as *const crate::QVectorOfSortType,
49833            t,
49834        )
49835    }
49836
49837    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
49838    ///
49839    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::length() const```</span>.
49840    ///
49841    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
49842    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
49843    /// <p>This function was introduced in  Qt 5.2.</p>
49844    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
49845    #[inline(always)]
49846    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
49847        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_length(
49848            self as *const crate::QVectorOfSortType,
49849        )
49850    }
49851
49852    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
49853    ///
49854    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType> QVector<Qt3DRender::QSortPolicy::SortType>::mid(int pos, int len = …) const```</span>.
49855    ///
49856    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
49857    #[inline(always)]
49858    pub unsafe fn mid_2a(
49859        &self,
49860        pos: ::std::os::raw::c_int,
49861        len: ::std::os::raw::c_int,
49862    ) -> ::cpp_core::CppBox<crate::QVectorOfSortType> {
49863        let ffi_result = {
49864            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_mid(
49865                self as *const crate::QVectorOfSortType,
49866                pos,
49867                len,
49868            )
49869        };
49870        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
49871    }
49872
49873    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
49874    ///
49875    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType> QVector<Qt3DRender::QSortPolicy::SortType>::mid(int pos) const```</span>.
49876    ///
49877    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
49878    #[inline(always)]
49879    pub unsafe fn mid_1a(
49880        &self,
49881        pos: ::std::os::raw::c_int,
49882    ) -> ::cpp_core::CppBox<crate::QVectorOfSortType> {
49883        let ffi_result = {
49884            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_mid1(
49885                self as *const crate::QVectorOfSortType,
49886                pos,
49887            )
49888        };
49889        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
49890    }
49891
49892    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
49893    ///
49894    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::move(int from, int to)```</span>.
49895    ///
49896    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
49897    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
49898    /// <p>This function was introduced in  Qt 5.6.</p>
49899    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
49900    #[inline(always)]
49901    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
49902        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_move(
49903            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49904            from,
49905            to,
49906        )
49907    }
49908
49909    /// <p>Constructs an empty vector.</p>
49910    ///
49911    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QSortPolicy::SortType>::QVector()```</span>.
49912    ///
49913    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
49914    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
49915    #[inline(always)]
49916    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfSortType> {
49917        let ffi_result = {
49918            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_QVector()
49919        };
49920        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
49921    }
49922
49923    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
49924    ///
49925    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QSortPolicy::SortType>::QVector(int size)```</span>.
49926    ///
49927    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
49928    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
49929    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
49930    #[inline(always)]
49931    pub unsafe fn new_1a(
49932        size: ::std::os::raw::c_int,
49933    ) -> ::cpp_core::CppBox<crate::QVectorOfSortType> {
49934        let ffi_result = {
49935            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_QVector1(
49936                size,
49937            )
49938        };
49939        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
49940    }
49941
49942    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
49943    ///
49944    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QSortPolicy::SortType>::QVector(int size, const Qt3DRender::QSortPolicy::SortType& t)```</span>.
49945    ///
49946    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
49947    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
49948    #[inline(always)]
49949    pub unsafe fn new_2a(
49950        size: ::std::os::raw::c_int,
49951        t: *const crate::q_sort_policy::SortType,
49952    ) -> ::cpp_core::CppBox<crate::QVectorOfSortType> {
49953        let ffi_result = {
49954            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_QVector2(
49955                size, t,
49956            )
49957        };
49958        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
49959    }
49960
49961    /// <p>Constructs a copy of <i>other</i>.</p>
49962    ///
49963    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QSortPolicy::SortType>::QVector(const QVector<Qt3DRender::QSortPolicy::SortType>& v)```</span>.
49964    ///
49965    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
49966    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
49967    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
49968    #[inline(always)]
49969    pub unsafe fn new_copy(
49970        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
49971    ) -> ::cpp_core::CppBox<crate::QVectorOfSortType> {
49972        let ffi_result = {
49973            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_QVector3(
49974                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(v)
49975                    .as_raw_ptr(),
49976            )
49977        };
49978        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
49979    }
49980
49981    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
49982    ///
49983    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::pop_back()```</span>.
49984    ///
49985    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
49986    #[inline(always)]
49987    pub unsafe fn pop_back(&self) {
49988        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_pop_back(
49989            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
49990        )
49991    }
49992
49993    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
49994    ///
49995    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::pop_front()```</span>.
49996    ///
49997    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
49998    #[inline(always)]
49999    pub unsafe fn pop_front(&self) {
50000        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_pop_front(
50001            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50002        )
50003    }
50004
50005    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
50006    ///
50007    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::prepend(const Qt3DRender::QSortPolicy::SortType& t)```</span>.
50008    ///
50009    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
50010    /// <p>Example:</p>
50011    /// <pre class="cpp">
50012    ///
50013    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
50014    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
50015    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
50016    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
50017    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
50018    ///
50019    /// </pre>
50020    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
50021    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
50022    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
50023    #[inline(always)]
50024    pub unsafe fn prepend(&self, t: *const crate::q_sort_policy::SortType) {
50025        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_prepend(
50026            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50027            t,
50028        )
50029    }
50030
50031    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
50032    ///
50033    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::push_back(const Qt3DRender::QSortPolicy::SortType& t)```</span>.
50034    ///
50035    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
50036    #[inline(always)]
50037    pub unsafe fn push_back(&self, t: *const crate::q_sort_policy::SortType) {
50038        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_push_back(
50039            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50040            t,
50041        )
50042    }
50043
50044    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
50045    ///
50046    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::push_front(const Qt3DRender::QSortPolicy::SortType& t)```</span>.
50047    ///
50048    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
50049    #[inline(always)]
50050    pub unsafe fn push_front(&self, t: *const crate::q_sort_policy::SortType) {
50051        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_push_front(
50052            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50053            t,
50054        )
50055    }
50056
50057    /// <p>This is an overloaded function.</p>
50058    ///
50059    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::remove(int i)```</span>.
50060    ///
50061    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
50062    /// <p>Removes the element at index position <i>i</i>.</p>
50063    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
50064    #[inline(always)]
50065    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
50066        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_remove(
50067            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50068            i,
50069        )
50070    }
50071
50072    /// <p>This is an overloaded function.</p>
50073    ///
50074    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::remove(int i, int n)```</span>.
50075    ///
50076    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
50077    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
50078    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
50079    #[inline(always)]
50080    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
50081        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_remove1(
50082            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50083            i,
50084            n,
50085        )
50086    }
50087
50088    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
50089    ///
50090    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::removeAll(const Qt3DRender::QSortPolicy::SortType& t)```</span>.
50091    ///
50092    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
50093    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
50094    /// <p>This function was introduced in  Qt 5.4.</p>
50095    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
50096    #[inline(always)]
50097    pub unsafe fn remove_all(
50098        &self,
50099        t: *const crate::q_sort_policy::SortType,
50100    ) -> ::std::os::raw::c_int {
50101        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_removeAll(
50102            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50103            t,
50104        )
50105    }
50106
50107    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
50108    ///
50109    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::removeAt(int i)```</span>.
50110    ///
50111    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
50112    /// <pre class="cpp">
50113    ///
50114    ///   remove(i);
50115    ///
50116    /// </pre>
50117    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
50118    /// <p>This function was introduced in  Qt 5.2.</p>
50119    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
50120    #[inline(always)]
50121    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
50122        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_removeAt(
50123            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50124            i,
50125        )
50126    }
50127
50128    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
50129    ///
50130    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::removeFirst()```</span>.
50131    ///
50132    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
50133    /// <p>This function was introduced in  Qt 5.1.</p>
50134    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
50135    #[inline(always)]
50136    pub unsafe fn remove_first(&self) {
50137        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_removeFirst(
50138            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50139        )
50140    }
50141
50142    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
50143    ///
50144    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::removeLast()```</span>.
50145    ///
50146    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
50147    /// <p>This function was introduced in  Qt 5.1.</p>
50148    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
50149    #[inline(always)]
50150    pub unsafe fn remove_last(&self) {
50151        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_removeLast(
50152            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50153        )
50154    }
50155
50156    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
50157    ///
50158    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QSortPolicy::SortType>::removeOne(const Qt3DRender::QSortPolicy::SortType& t)```</span>.
50159    ///
50160    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
50161    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
50162    /// <p>This function was introduced in  Qt 5.4.</p>
50163    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
50164    #[inline(always)]
50165    pub unsafe fn remove_one(&self, t: *const crate::q_sort_policy::SortType) -> bool {
50166        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_removeOne(
50167            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50168            t,
50169        )
50170    }
50171
50172    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
50173    ///
50174    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::replace(int i, const Qt3DRender::QSortPolicy::SortType& t)```</span>.
50175    ///
50176    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
50177    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
50178    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
50179    #[inline(always)]
50180    pub unsafe fn replace(
50181        &self,
50182        i: ::std::os::raw::c_int,
50183        t: *const crate::q_sort_policy::SortType,
50184    ) {
50185        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_replace(
50186            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50187            i,
50188            t,
50189        )
50190    }
50191
50192    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
50193    ///
50194    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::reserve(int size)```</span>.
50195    ///
50196    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
50197    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
50198    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
50199    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
50200    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
50201    #[inline(always)]
50202    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
50203        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_reserve(
50204            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50205            size,
50206        )
50207    }
50208
50209    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
50210    ///
50211    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::resize(int size)```</span>.
50212    ///
50213    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
50214    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
50215    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
50216    #[inline(always)]
50217    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
50218        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_resize(
50219            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50220            size,
50221        )
50222    }
50223
50224    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::setSharable(bool sharable)```</span>.
50225    #[inline(always)]
50226    pub unsafe fn set_sharable(&self, sharable: bool) {
50227        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_setSharable(
50228            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50229            sharable,
50230        )
50231    }
50232
50233    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
50234    ///
50235    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::shrink_to_fit()```</span>.
50236    ///
50237    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
50238    /// <p>This function was introduced in  Qt 5.10.</p></div>
50239    #[inline(always)]
50240    #[cfg_attr(
50241        feature = "ritual_rustdoc_nightly",
50242        doc(cfg(any(
50243            cpp_lib_version = "5.11.3",
50244            cpp_lib_version = "5.12.2",
50245            cpp_lib_version = "5.13.0",
50246            cpp_lib_version = "5.14.0"
50247        )))
50248    )]
50249    #[cfg(any(
50250        any(
50251            cpp_lib_version = "5.11.3",
50252            cpp_lib_version = "5.12.2",
50253            cpp_lib_version = "5.13.0",
50254            cpp_lib_version = "5.14.0"
50255        ),
50256        feature = "ritual_rustdoc"
50257    ))]
50258    pub unsafe fn shrink_to_fit(&self) {
50259        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_shrink_to_fit(
50260            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50261        )
50262    }
50263
50264    /// <p>Returns the number of items in the vector.</p>
50265    ///
50266    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::size() const```</span>.
50267    ///
50268    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
50269    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
50270    #[inline(always)]
50271    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
50272        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_size(
50273            self as *const crate::QVectorOfSortType,
50274        )
50275    }
50276
50277    /// <p>Releases any memory not required to store the items.</p>
50278    ///
50279    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::squeeze()```</span>.
50280    ///
50281    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
50282    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
50283    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
50284    #[inline(always)]
50285    pub unsafe fn squeeze(&self) {
50286        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_squeeze(
50287            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50288        )
50289    }
50290
50291    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
50292    ///
50293    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QSortPolicy::SortType>::startsWith(const Qt3DRender::QSortPolicy::SortType& t) const```</span>.
50294    ///
50295    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
50296    /// <p>This function was introduced in  Qt 4.5.</p>
50297    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
50298    #[inline(always)]
50299    pub unsafe fn starts_with(&self, t: *const crate::q_sort_policy::SortType) -> bool {
50300        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_startsWith(
50301            self as *const crate::QVectorOfSortType,
50302            t,
50303        )
50304    }
50305
50306    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
50307    ///
50308    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::swap(QVector<Qt3DRender::QSortPolicy::SortType>& other)```</span>.
50309    ///
50310    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
50311    /// <p>This function was introduced in  Qt 4.8.</p></div>
50312    #[inline(always)]
50313    pub unsafe fn swap(
50314        &self,
50315        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
50316    ) {
50317        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_swap(
50318            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50319            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(other)
50320                .as_raw_ptr() as *mut crate::QVectorOfSortType,
50321        )
50322    }
50323
50324    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
50325    ///
50326    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QSortPolicy::SortType>::swapItemsAt(int i, int j)```</span>.
50327    ///
50328    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
50329    /// <p>This function was introduced in  Qt 5.14.</p></div>
50330    #[inline(always)]
50331    #[cfg_attr(
50332        feature = "ritual_rustdoc_nightly",
50333        doc(cfg(cpp_lib_version = "5.14.0"))
50334    )]
50335    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
50336    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
50337        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_swapItemsAt(
50338            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50339            i,
50340            j,
50341        )
50342    }
50343
50344    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
50345    ///
50346    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType QVector<Qt3DRender::QSortPolicy::SortType>::takeAt(int i)```</span>.
50347    ///
50348    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
50349    /// <p>Equivalent to</p>
50350    /// <pre class="cpp">
50351    ///
50352    ///   T t <span class="operator">=</span> at(i);
50353    ///   remove(i);
50354    ///   <span class="keyword">return</span> t;
50355    ///
50356    /// </pre>
50357    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
50358    /// <p>This function was introduced in  Qt 5.2.</p>
50359    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
50360    #[inline(always)]
50361    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> crate::q_sort_policy::SortType {
50362        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_takeAt(
50363            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50364            i,
50365        )
50366    }
50367
50368    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
50369    ///
50370    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType QVector<Qt3DRender::QSortPolicy::SortType>::takeFirst()```</span>.
50371    ///
50372    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
50373    /// <p>This function was introduced in  Qt 5.1.</p>
50374    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
50375    #[inline(always)]
50376    pub unsafe fn take_first(&self) -> crate::q_sort_policy::SortType {
50377        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_takeFirst(
50378            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50379        )
50380    }
50381
50382    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
50383    ///
50384    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType QVector<Qt3DRender::QSortPolicy::SortType>::takeLast()```</span>.
50385    ///
50386    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
50387    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
50388    /// <p>This function was introduced in  Qt 5.1.</p>
50389    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
50390    #[inline(always)]
50391    pub unsafe fn take_last(&self) -> crate::q_sort_policy::SortType {
50392        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_takeLast(
50393            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
50394        )
50395    }
50396
50397    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
50398    ///
50399    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType QVector<Qt3DRender::QSortPolicy::SortType>::value(int i) const```</span>.
50400    ///
50401    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
50402    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
50403    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
50404    #[inline(always)]
50405    pub unsafe fn value_1a(&self, i: ::std::os::raw::c_int) -> crate::q_sort_policy::SortType {
50406        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_value(
50407            self as *const crate::QVectorOfSortType,
50408            i,
50409        )
50410    }
50411
50412    /// <p>This is an overloaded function.</p>
50413    ///
50414    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType QVector<Qt3DRender::QSortPolicy::SortType>::value(int i, const Qt3DRender::QSortPolicy::SortType& defaultValue) const```</span>.
50415    ///
50416    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
50417    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
50418    #[inline(always)]
50419    pub unsafe fn value_2a(
50420        &self,
50421        i: ::std::os::raw::c_int,
50422        default_value: *const crate::q_sort_policy::SortType,
50423    ) -> crate::q_sort_policy::SortType {
50424        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_value1(
50425            self as *const crate::QVectorOfSortType,
50426            i,
50427            default_value,
50428        )
50429    }
50430}
50431
50432/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
50433///
50434/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*>```</span>.
50435///
50436/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
50437/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
50438/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
50439/// <ul>
50440/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
50441/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
50442/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
50443/// </ul>
50444/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
50445/// <pre class="cpp">
50446///
50447///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
50448///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
50449///
50450/// </pre>
50451/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
50452/// <pre class="cpp">
50453///
50454///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
50455///
50456/// </pre>
50457/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
50458/// <pre class="cpp">
50459///
50460///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
50461///
50462/// </pre>
50463/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
50464/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
50465/// <pre class="cpp">
50466///
50467///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
50468/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
50469///
50470/// </pre>
50471/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
50472/// <pre class="cpp">
50473///
50474///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
50475/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
50476/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
50477///   }
50478///
50479/// </pre>
50480/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
50481/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
50482/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
50483/// <pre class="cpp">
50484///
50485///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
50486///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
50487/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
50488///
50489/// </pre>
50490/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
50491/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
50492/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
50493/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
50494/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
50495/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
50496/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
50497/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
50498/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
50499/// <a name="more-information-on-using-qt-containers"></a>
50500/// <h4>More Information on Using Qt Containers</h4>
50501/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
50502#[repr(C)]
50503pub struct QVectorOfQRenderPass {
50504    _unused: u8,
50505}
50506impl QVectorOfQRenderPass {
50507    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
50508    ///
50509    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*>& QVector<Qt3DRender::QRenderPass*>::operator+=(const QVector<Qt3DRender::QRenderPass*>& l)```</span>.
50510    ///
50511    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
50512    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
50513    #[inline(always)]
50514    pub unsafe fn add_assign_q_vector_of_q_render_pass(
50515        &self,
50516        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
50517    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderPass> {
50518        let ffi_result = {
50519            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_operator__4(
50520                self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50521                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(l)
50522                    .as_raw_ptr(),
50523            )
50524        };
50525        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
50526    }
50527
50528    /// <p>This is an overloaded function.</p>
50529    ///
50530    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*>& QVector<Qt3DRender::QRenderPass*>::operator+=(const Qt3DRender::QRenderPass*& t)```</span>.
50531    ///
50532    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
50533    /// <p>Appends <i>value</i> to the vector.</p>
50534    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
50535    #[inline(always)]
50536    pub unsafe fn add_assign_q_render_pass(
50537        &self,
50538        t: *const *mut crate::QRenderPass,
50539    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderPass> {
50540        let ffi_result = {
50541            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_operator__5(
50542                self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50543                t,
50544            )
50545        };
50546        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
50547    }
50548
50549    /// <p>Inserts <i>value</i> at the end of the vector.</p>
50550    ///
50551    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::append(const Qt3DRender::QRenderPass*& t)```</span>.
50552    ///
50553    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
50554    /// <p>Example:</p>
50555    /// <pre class="cpp">
50556    ///
50557    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
50558    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
50559    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
50560    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
50561    ///   vector<span class="operator">.</span>append(three);
50562    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
50563    ///   <span class="comment">// three: "three"</span>
50564    ///
50565    /// </pre>
50566    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
50567    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
50568    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
50569    #[inline(always)]
50570    pub unsafe fn append_q_render_pass(&self, t: *const *mut crate::QRenderPass) {
50571        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_append(
50572            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50573            t,
50574        )
50575    }
50576
50577    /// <p>This is an overloaded function.</p>
50578    ///
50579    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::append(const QVector<Qt3DRender::QRenderPass*>& l)```</span>.
50580    ///
50581    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
50582    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
50583    /// <p>This function was introduced in  Qt 5.5.</p>
50584    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
50585    #[inline(always)]
50586    pub unsafe fn append_q_vector_of_q_render_pass(
50587        &self,
50588        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
50589    ) {
50590        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_append2(
50591            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50592            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(l)
50593                .as_raw_ptr(),
50594        )
50595    }
50596
50597    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
50598    ///
50599    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::at(int i) const```</span>.
50600    ///
50601    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
50602    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
50603    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
50604    #[inline(always)]
50605    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QRenderPass {
50606        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_at(
50607            self as *const crate::QVectorOfQRenderPass,
50608            i,
50609        )
50610    }
50611
50612    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
50613    ///
50614    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::back()```</span>.
50615    ///
50616    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
50617    #[inline(always)]
50618    pub unsafe fn back_mut(&self) -> *mut *mut crate::QRenderPass {
50619        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_back(
50620            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50621        )
50622    }
50623
50624    /// <p>This is an overloaded function.</p>
50625    ///
50626    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::back() const```</span>.
50627    ///
50628    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
50629    #[inline(always)]
50630    pub unsafe fn back(&self) -> *const *mut crate::QRenderPass {
50631        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_back1(
50632            self as *const crate::QVectorOfQRenderPass,
50633        )
50634    }
50635
50636    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
50637    ///
50638    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::capacity() const```</span>.
50639    ///
50640    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
50641    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
50642    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
50643    #[inline(always)]
50644    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
50645        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_capacity(
50646            self as *const crate::QVectorOfQRenderPass,
50647        )
50648    }
50649
50650    /// <p>Removes all the elements from the vector.</p>
50651    ///
50652    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::clear()```</span>.
50653    ///
50654    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
50655    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
50656    ///
50657    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
50658    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
50659    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
50660    ///
50661    /// </pre>
50662    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
50663    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
50664    #[inline(always)]
50665    pub unsafe fn clear(&self) {
50666        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_clear(
50667            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50668        )
50669    }
50670
50671    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
50672    ///
50673    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass** QVector<Qt3DRender::QRenderPass*>::constData() const```</span>.
50674    ///
50675    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
50676    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
50677    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
50678    #[inline(always)]
50679    pub unsafe fn const_data(&self) -> *const *mut crate::QRenderPass {
50680        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_constData(
50681            self as *const crate::QVectorOfQRenderPass,
50682        )
50683    }
50684
50685    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
50686    ///
50687    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::constFirst() const```</span>.
50688    ///
50689    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
50690    /// <p>This function was introduced in  Qt 5.6.</p>
50691    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
50692    #[inline(always)]
50693    pub unsafe fn const_first(&self) -> *const *mut crate::QRenderPass {
50694        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_constFirst(
50695            self as *const crate::QVectorOfQRenderPass,
50696        )
50697    }
50698
50699    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
50700    ///
50701    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::constLast() const```</span>.
50702    ///
50703    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
50704    /// <p>This function was introduced in  Qt 5.6.</p>
50705    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
50706    #[inline(always)]
50707    pub unsafe fn const_last(&self) -> *const *mut crate::QRenderPass {
50708        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_constLast(
50709            self as *const crate::QVectorOfQRenderPass,
50710        )
50711    }
50712
50713    /// <p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
50714    ///
50715    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderPass*>::contains(const Qt3DRender::QRenderPass*& t) const```</span>.
50716    ///
50717    /// <a href="http://doc.qt.io/qt-5/qvector.html#contains">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector contains an occurrence of <i>value</i>; otherwise returns <code>false</code>.</p>
50718    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
50719    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p></div>
50720    #[inline(always)]
50721    pub unsafe fn contains(&self, t: *const *mut crate::QRenderPass) -> bool {
50722        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_contains(
50723            self as *const crate::QVectorOfQRenderPass,
50724            t,
50725        )
50726    }
50727
50728    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
50729    ///
50730    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*>& QVector<Qt3DRender::QRenderPass*>::operator=(const QVector<Qt3DRender::QRenderPass*>& v)```</span>.
50731    ///
50732    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
50733    #[inline(always)]
50734    pub unsafe fn copy_from(
50735        &self,
50736        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
50737    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderPass> {
50738        let ffi_result = {
50739            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_operator_(
50740                self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50741                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(v)
50742                    .as_raw_ptr(),
50743            )
50744        };
50745        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
50746    }
50747
50748    /// <p>Returns the number of occurrences of <i>value</i> in the vector.</p>
50749    ///
50750    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::count(const Qt3DRender::QRenderPass*& t) const```</span>.
50751    ///
50752    /// <a href="http://doc.qt.io/qt-5/qvector.html#count">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of occurrences of <i>value</i> in the vector.</p>
50753    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
50754    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
50755    #[inline(always)]
50756    pub unsafe fn count_1a(&self, t: *const *mut crate::QRenderPass) -> ::std::os::raw::c_int {
50757        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_count(
50758            self as *const crate::QVectorOfQRenderPass,
50759            t,
50760        )
50761    }
50762
50763    /// <p>This is an overloaded function.</p>
50764    ///
50765    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::count() const```</span>.
50766    ///
50767    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
50768    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
50769    #[inline(always)]
50770    pub unsafe fn count_0a(&self) -> ::std::os::raw::c_int {
50771        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_count1(
50772            self as *const crate::QVectorOfQRenderPass,
50773        )
50774    }
50775
50776    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
50777    ///
50778    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass** QVector<Qt3DRender::QRenderPass*>::data()```</span>.
50779    ///
50780    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
50781    /// <p>Example:</p>
50782    /// <pre class="cpp">
50783    ///
50784    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
50785    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
50786    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
50787    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
50788    ///
50789    /// </pre>
50790    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
50791    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
50792    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
50793    #[inline(always)]
50794    pub unsafe fn data_mut(&self) -> *mut *mut crate::QRenderPass {
50795        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_data(
50796            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50797        )
50798    }
50799
50800    /// <p>This is an overloaded function.</p>
50801    ///
50802    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass** QVector<Qt3DRender::QRenderPass*>::data() const```</span>.
50803    ///
50804    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
50805    #[inline(always)]
50806    pub unsafe fn data(&self) -> *const *mut crate::QRenderPass {
50807        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_data1(
50808            self as *const crate::QVectorOfQRenderPass,
50809        )
50810    }
50811
50812    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::detach()```</span>.
50813    #[inline(always)]
50814    pub unsafe fn detach(&self) {
50815        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_detach(
50816            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50817        )
50818    }
50819
50820    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
50821    ///
50822    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderPass*>::empty() const```</span>.
50823    ///
50824    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
50825    #[inline(always)]
50826    pub unsafe fn empty(&self) -> bool {
50827        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_empty(
50828            self as *const crate::QVectorOfQRenderPass,
50829        )
50830    }
50831
50832    /// <p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
50833    ///
50834    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderPass*>::endsWith(const Qt3DRender::QRenderPass*& t) const```</span>.
50835    ///
50836    /// <a href="http://doc.qt.io/qt-5/qvector.html#endsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its last item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
50837    /// <p>This function was introduced in  Qt 4.5.</p>
50838    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
50839    #[inline(always)]
50840    pub unsafe fn ends_with(&self, t: *const *mut crate::QRenderPass) -> bool {
50841        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_endsWith(
50842            self as *const crate::QVectorOfQRenderPass,
50843            t,
50844        )
50845    }
50846
50847    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
50848    ///
50849    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*>& QVector<Qt3DRender::QRenderPass*>::fill(const Qt3DRender::QRenderPass*& t, int size = …)```</span>.
50850    ///
50851    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
50852    /// <p>Example:</p>
50853    /// <pre class="cpp">
50854    ///
50855    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
50856    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
50857    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
50858    ///
50859    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
50860    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
50861    ///
50862    /// </pre>
50863    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
50864    #[inline(always)]
50865    pub unsafe fn fill_2a(
50866        &self,
50867        t: *const *mut crate::QRenderPass,
50868        size: ::std::os::raw::c_int,
50869    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderPass> {
50870        let ffi_result = {
50871            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_fill(
50872                self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50873                t,
50874                size,
50875            )
50876        };
50877        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
50878    }
50879
50880    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
50881    ///
50882    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*>& QVector<Qt3DRender::QRenderPass*>::fill(const Qt3DRender::QRenderPass*& t)```</span>.
50883    ///
50884    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
50885    /// <p>Example:</p>
50886    /// <pre class="cpp">
50887    ///
50888    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
50889    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
50890    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
50891    ///
50892    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
50893    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
50894    ///
50895    /// </pre>
50896    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
50897    #[inline(always)]
50898    pub unsafe fn fill_1a(
50899        &self,
50900        t: *const *mut crate::QRenderPass,
50901    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderPass> {
50902        let ffi_result = {
50903            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_fill1(
50904                self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50905                t,
50906            )
50907        };
50908        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
50909    }
50910
50911    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
50912    ///
50913    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::first()```</span>.
50914    ///
50915    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
50916    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
50917    #[inline(always)]
50918    pub unsafe fn first_mut(&self) -> *mut *mut crate::QRenderPass {
50919        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_first(
50920            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50921        )
50922    }
50923
50924    /// <p>This is an overloaded function.</p>
50925    ///
50926    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::first() const```</span>.
50927    ///
50928    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
50929    #[inline(always)]
50930    pub unsafe fn first(&self) -> *const *mut crate::QRenderPass {
50931        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_first1(
50932            self as *const crate::QVectorOfQRenderPass,
50933        )
50934    }
50935
50936    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
50937    ///
50938    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::front()```</span>.
50939    ///
50940    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
50941    #[inline(always)]
50942    pub unsafe fn front_mut(&self) -> *mut *mut crate::QRenderPass {
50943        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_front(
50944            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50945        )
50946    }
50947
50948    /// <p>This is an overloaded function.</p>
50949    ///
50950    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::front() const```</span>.
50951    ///
50952    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
50953    #[inline(always)]
50954    pub unsafe fn front(&self) -> *const *mut crate::QRenderPass {
50955        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_front1(
50956            self as *const crate::QVectorOfQRenderPass,
50957        )
50958    }
50959
50960    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
50961    ///
50962    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::operator[](int i)```</span>.
50963    ///
50964    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
50965    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
50966    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
50967    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
50968    #[inline(always)]
50969    pub unsafe fn index_mut(&self, i: ::std::os::raw::c_int) -> *mut *mut crate::QRenderPass {
50970        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_operator__2(
50971            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
50972            i,
50973        )
50974    }
50975
50976    /// <p>This is an overloaded function.</p>
50977    ///
50978    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::operator[](int i) const```</span>.
50979    ///
50980    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
50981    /// <p>Same as at(<i>i</i>).</p></div>
50982    #[inline(always)]
50983    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> *const *mut crate::QRenderPass {
50984        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_operator__3(
50985            self as *const crate::QVectorOfQRenderPass,
50986            i,
50987        )
50988    }
50989
50990    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
50991    ///
50992    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::indexOf(const Qt3DRender::QRenderPass*& t, int from = …) const```</span>.
50993    ///
50994    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
50995    /// <p>Example:</p>
50996    /// <pre class="cpp">
50997    ///
50998    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
50999    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
51000    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
51001    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
51002    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
51003    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
51004    ///
51005    /// </pre>
51006    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
51007    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
51008    #[inline(always)]
51009    pub unsafe fn index_of_2a(
51010        &self,
51011        t: *const *mut crate::QRenderPass,
51012        from: ::std::os::raw::c_int,
51013    ) -> ::std::os::raw::c_int {
51014        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_indexOf(
51015            self as *const crate::QVectorOfQRenderPass,
51016            t,
51017            from,
51018        )
51019    }
51020
51021    /// <p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
51022    ///
51023    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::indexOf(const Qt3DRender::QRenderPass*& t) const```</span>.
51024    ///
51025    /// <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the first occurrence of <i>value</i> in the vector, searching forward from index position <i>from</i>. Returns -1 if no item matched.</p>
51026    /// <p>Example:</p>
51027    /// <pre class="cpp">
51028    ///
51029    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
51030    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
51031    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span>);            <span class="comment">// returns 1</span>
51032    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">1</span>);         <span class="comment">// returns 1</span>
51033    ///   vector<span class="operator">.</span>indexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);         <span class="comment">// returns 3</span>
51034    ///   vector<span class="operator">.</span>indexOf(<span class="string">"X"</span>);            <span class="comment">// returns -1</span>
51035    ///
51036    /// </pre>
51037    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
51038    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>().</p></div>
51039    #[inline(always)]
51040    pub unsafe fn index_of_1a(&self, t: *const *mut crate::QRenderPass) -> ::std::os::raw::c_int {
51041        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_indexOf1(
51042            self as *const crate::QVectorOfQRenderPass,
51043            t,
51044        )
51045    }
51046
51047    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
51048    ///
51049    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::insert(int i, const Qt3DRender::QRenderPass*& t)```</span>.
51050    ///
51051    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
51052    /// <p>Example:</p>
51053    /// <pre class="cpp">
51054    ///
51055    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
51056    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
51057    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
51058    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
51059    ///
51060    /// </pre>
51061    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
51062    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
51063    #[inline(always)]
51064    pub unsafe fn insert_2a(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QRenderPass) {
51065        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_insert(
51066            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51067            i,
51068            t,
51069        )
51070    }
51071
51072    /// <p>This is an overloaded function.</p>
51073    ///
51074    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::insert(int i, int n, const Qt3DRender::QRenderPass*& t)```</span>.
51075    ///
51076    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
51077    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
51078    /// <p>Example:</p>
51079    /// <pre class="cpp">
51080    ///
51081    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
51082    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
51083    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
51084    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
51085    ///
51086    /// </pre></div>
51087    #[inline(always)]
51088    pub unsafe fn insert_3a(
51089        &self,
51090        i: ::std::os::raw::c_int,
51091        n: ::std::os::raw::c_int,
51092        t: *const *mut crate::QRenderPass,
51093    ) {
51094        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_insert1(
51095            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51096            i,
51097            n,
51098            t,
51099        )
51100    }
51101
51102    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderPass*>::isDetached() const```</span>.
51103    #[inline(always)]
51104    pub unsafe fn is_detached(&self) -> bool {
51105        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_isDetached(
51106            self as *const crate::QVectorOfQRenderPass,
51107        )
51108    }
51109
51110    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
51111    ///
51112    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderPass*>::isEmpty() const```</span>.
51113    ///
51114    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
51115    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
51116    #[inline(always)]
51117    pub unsafe fn is_empty(&self) -> bool {
51118        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_isEmpty(
51119            self as *const crate::QVectorOfQRenderPass,
51120        )
51121    }
51122
51123    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderPass*>::isSharedWith(const QVector<Qt3DRender::QRenderPass*>& other) const```</span>.
51124    #[inline(always)]
51125    pub unsafe fn is_shared_with(
51126        &self,
51127        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
51128    ) -> bool {
51129        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_isSharedWith(
51130            self as *const crate::QVectorOfQRenderPass,
51131            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(other)
51132                .as_raw_ptr(),
51133        )
51134    }
51135
51136    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
51137    ///
51138    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::last()```</span>.
51139    ///
51140    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
51141    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
51142    #[inline(always)]
51143    pub unsafe fn last_mut(&self) -> *mut *mut crate::QRenderPass {
51144        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_last(
51145            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51146        )
51147    }
51148
51149    /// <p>This is an overloaded function.</p>
51150    ///
51151    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass*& QVector<Qt3DRender::QRenderPass*>::last() const```</span>.
51152    ///
51153    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
51154    #[inline(always)]
51155    pub unsafe fn last(&self) -> *const *mut crate::QRenderPass {
51156        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_last1(
51157            self as *const crate::QVectorOfQRenderPass,
51158        )
51159    }
51160
51161    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
51162    ///
51163    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::lastIndexOf(const Qt3DRender::QRenderPass*& t, int from = …) const```</span>.
51164    ///
51165    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
51166    /// <p>Example:</p>
51167    /// <pre class="cpp">
51168    ///
51169    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
51170    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
51171    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
51172    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
51173    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
51174    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
51175    ///
51176    /// </pre>
51177    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
51178    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
51179    #[inline(always)]
51180    pub unsafe fn last_index_of_2a(
51181        &self,
51182        t: *const *mut crate::QRenderPass,
51183        from: ::std::os::raw::c_int,
51184    ) -> ::std::os::raw::c_int {
51185        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_lastIndexOf(
51186            self as *const crate::QVectorOfQRenderPass,
51187            t,
51188            from,
51189        )
51190    }
51191
51192    /// <p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
51193    ///
51194    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::lastIndexOf(const Qt3DRender::QRenderPass*& t) const```</span>.
51195    ///
51196    /// <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index position of the last occurrence of the value <i>value</i> in the vector, searching backward from index position <i>from</i>. If <i>from</i> is -1 (the default), the search starts at the last item. Returns -1 if no item matched.</p>
51197    /// <p>Example:</p>
51198    /// <pre class="cpp">
51199    ///
51200    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qlist.html">QList</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
51201    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"C"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"B"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"A"</span>;
51202    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span>);        <span class="comment">// returns 3</span>
51203    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">3</span>);     <span class="comment">// returns 3</span>
51204    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"B"</span><span class="operator">,</span> <span class="number">2</span>);     <span class="comment">// returns 1</span>
51205    ///   vector<span class="operator">.</span>lastIndexOf(<span class="string">"X"</span>);        <span class="comment">// returns -1</span>
51206    ///
51207    /// </pre>
51208    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
51209    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>().</p></div>
51210    #[inline(always)]
51211    pub unsafe fn last_index_of_1a(
51212        &self,
51213        t: *const *mut crate::QRenderPass,
51214    ) -> ::std::os::raw::c_int {
51215        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_lastIndexOf1(
51216            self as *const crate::QVectorOfQRenderPass,
51217            t,
51218        )
51219    }
51220
51221    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
51222    ///
51223    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::length() const```</span>.
51224    ///
51225    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
51226    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
51227    /// <p>This function was introduced in  Qt 5.2.</p>
51228    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
51229    #[inline(always)]
51230    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
51231        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_length(
51232            self as *const crate::QVectorOfQRenderPass,
51233        )
51234    }
51235
51236    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
51237    ///
51238    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*> QVector<Qt3DRender::QRenderPass*>::mid(int pos, int len = …) const```</span>.
51239    ///
51240    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
51241    #[inline(always)]
51242    pub unsafe fn mid_2a(
51243        &self,
51244        pos: ::std::os::raw::c_int,
51245        len: ::std::os::raw::c_int,
51246    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderPass> {
51247        let ffi_result = {
51248            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_mid(
51249                self as *const crate::QVectorOfQRenderPass,
51250                pos,
51251                len,
51252            )
51253        };
51254        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
51255    }
51256
51257    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
51258    ///
51259    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*> QVector<Qt3DRender::QRenderPass*>::mid(int pos) const```</span>.
51260    ///
51261    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
51262    #[inline(always)]
51263    pub unsafe fn mid_1a(
51264        &self,
51265        pos: ::std::os::raw::c_int,
51266    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderPass> {
51267        let ffi_result = {
51268            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_mid1(
51269                self as *const crate::QVectorOfQRenderPass,
51270                pos,
51271            )
51272        };
51273        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
51274    }
51275
51276    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
51277    ///
51278    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::move(int from, int to)```</span>.
51279    ///
51280    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
51281    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
51282    /// <p>This function was introduced in  Qt 5.6.</p>
51283    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
51284    #[inline(always)]
51285    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
51286        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_move(
51287            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51288            from,
51289            to,
51290        )
51291    }
51292
51293    /// <p>Constructs an empty vector.</p>
51294    ///
51295    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderPass*>::QVector()```</span>.
51296    ///
51297    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
51298    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
51299    #[inline(always)]
51300    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQRenderPass> {
51301        let ffi_result =
51302            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_QVector() };
51303        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
51304    }
51305
51306    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
51307    ///
51308    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderPass*>::QVector(int size)```</span>.
51309    ///
51310    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
51311    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
51312    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
51313    #[inline(always)]
51314    pub unsafe fn new_1a(
51315        size: ::std::os::raw::c_int,
51316    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderPass> {
51317        let ffi_result = {
51318            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_QVector1(size)
51319        };
51320        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
51321    }
51322
51323    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
51324    ///
51325    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderPass*>::QVector(int size, const Qt3DRender::QRenderPass*& t)```</span>.
51326    ///
51327    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
51328    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
51329    #[inline(always)]
51330    pub unsafe fn new_2a(
51331        size: ::std::os::raw::c_int,
51332        t: *const *mut crate::QRenderPass,
51333    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderPass> {
51334        let ffi_result = {
51335            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_QVector2(size, t)
51336        };
51337        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
51338    }
51339
51340    /// <p>Constructs a copy of <i>other</i>.</p>
51341    ///
51342    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRenderPass*>::QVector(const QVector<Qt3DRender::QRenderPass*>& v)```</span>.
51343    ///
51344    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
51345    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
51346    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
51347    #[inline(always)]
51348    pub unsafe fn new_copy(
51349        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
51350    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderPass> {
51351        let ffi_result = {
51352            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_QVector3(
51353                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(v)
51354                    .as_raw_ptr(),
51355            )
51356        };
51357        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
51358    }
51359
51360    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
51361    ///
51362    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::pop_back()```</span>.
51363    ///
51364    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
51365    #[inline(always)]
51366    pub unsafe fn pop_back(&self) {
51367        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_pop_back(
51368            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51369        )
51370    }
51371
51372    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
51373    ///
51374    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::pop_front()```</span>.
51375    ///
51376    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
51377    #[inline(always)]
51378    pub unsafe fn pop_front(&self) {
51379        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_pop_front(
51380            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51381        )
51382    }
51383
51384    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
51385    ///
51386    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::prepend(const Qt3DRender::QRenderPass*& t)```</span>.
51387    ///
51388    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
51389    /// <p>Example:</p>
51390    /// <pre class="cpp">
51391    ///
51392    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
51393    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
51394    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
51395    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
51396    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
51397    ///
51398    /// </pre>
51399    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
51400    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
51401    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
51402    #[inline(always)]
51403    pub unsafe fn prepend(&self, t: *const *mut crate::QRenderPass) {
51404        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_prepend(
51405            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51406            t,
51407        )
51408    }
51409
51410    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
51411    ///
51412    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::push_back(const Qt3DRender::QRenderPass*& t)```</span>.
51413    ///
51414    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
51415    #[inline(always)]
51416    pub unsafe fn push_back(&self, t: *const *mut crate::QRenderPass) {
51417        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_push_back(
51418            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51419            t,
51420        )
51421    }
51422
51423    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
51424    ///
51425    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::push_front(const Qt3DRender::QRenderPass*& t)```</span>.
51426    ///
51427    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
51428    #[inline(always)]
51429    pub unsafe fn push_front(&self, t: *const *mut crate::QRenderPass) {
51430        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_push_front(
51431            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51432            t,
51433        )
51434    }
51435
51436    /// <p>This is an overloaded function.</p>
51437    ///
51438    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::remove(int i)```</span>.
51439    ///
51440    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
51441    /// <p>Removes the element at index position <i>i</i>.</p>
51442    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
51443    #[inline(always)]
51444    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
51445        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_remove(
51446            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51447            i,
51448        )
51449    }
51450
51451    /// <p>This is an overloaded function.</p>
51452    ///
51453    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::remove(int i, int n)```</span>.
51454    ///
51455    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
51456    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
51457    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
51458    #[inline(always)]
51459    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
51460        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_remove1(
51461            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51462            i,
51463            n,
51464        )
51465    }
51466
51467    /// <p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
51468    ///
51469    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::removeAll(const Qt3DRender::QRenderPass*& t)```</span>.
51470    ///
51471    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAll">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all elements that compare equal to <i>t</i> from the vector. Returns the number of elements removed, if any.</p>
51472    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
51473    /// <p>This function was introduced in  Qt 5.4.</p>
51474    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeOne">removeOne</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAll">QList::removeAll</a>().</p></div>
51475    #[inline(always)]
51476    pub unsafe fn remove_all(&self, t: *const *mut crate::QRenderPass) -> ::std::os::raw::c_int {
51477        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_removeAll(
51478            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51479            t,
51480        )
51481    }
51482
51483    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
51484    ///
51485    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::removeAt(int i)```</span>.
51486    ///
51487    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
51488    /// <pre class="cpp">
51489    ///
51490    ///   remove(i);
51491    ///
51492    /// </pre>
51493    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
51494    /// <p>This function was introduced in  Qt 5.2.</p>
51495    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
51496    #[inline(always)]
51497    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
51498        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_removeAt(
51499            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51500            i,
51501        )
51502    }
51503
51504    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
51505    ///
51506    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::removeFirst()```</span>.
51507    ///
51508    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
51509    /// <p>This function was introduced in  Qt 5.1.</p>
51510    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
51511    #[inline(always)]
51512    pub unsafe fn remove_first(&self) {
51513        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_removeFirst(
51514            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51515        )
51516    }
51517
51518    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
51519    ///
51520    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::removeLast()```</span>.
51521    ///
51522    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
51523    /// <p>This function was introduced in  Qt 5.1.</p>
51524    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
51525    #[inline(always)]
51526    pub unsafe fn remove_last(&self) {
51527        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_removeLast(
51528            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51529        )
51530    }
51531
51532    /// <p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
51533    ///
51534    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderPass*>::removeOne(const Qt3DRender::QRenderPass*& t)```</span>.
51535    ///
51536    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeOne">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first element that compares equal to <i>t</i> from the vector. Returns whether an element was, in fact, removed.</p>
51537    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
51538    /// <p>This function was introduced in  Qt 5.4.</p>
51539    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#removeAll">removeAll</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeOne">QList::removeOne</a>().</p></div>
51540    #[inline(always)]
51541    pub unsafe fn remove_one(&self, t: *const *mut crate::QRenderPass) -> bool {
51542        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_removeOne(
51543            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51544            t,
51545        )
51546    }
51547
51548    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
51549    ///
51550    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::replace(int i, const Qt3DRender::QRenderPass*& t)```</span>.
51551    ///
51552    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
51553    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
51554    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
51555    #[inline(always)]
51556    pub unsafe fn replace(&self, i: ::std::os::raw::c_int, t: *const *mut crate::QRenderPass) {
51557        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_replace(
51558            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51559            i,
51560            t,
51561        )
51562    }
51563
51564    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
51565    ///
51566    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::reserve(int size)```</span>.
51567    ///
51568    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
51569    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
51570    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
51571    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
51572    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
51573    #[inline(always)]
51574    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
51575        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_reserve(
51576            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51577            size,
51578        )
51579    }
51580
51581    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
51582    ///
51583    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::resize(int size)```</span>.
51584    ///
51585    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
51586    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
51587    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
51588    #[inline(always)]
51589    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
51590        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_resize(
51591            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51592            size,
51593        )
51594    }
51595
51596    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::setSharable(bool sharable)```</span>.
51597    #[inline(always)]
51598    pub unsafe fn set_sharable(&self, sharable: bool) {
51599        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_setSharable(
51600            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51601            sharable,
51602        )
51603    }
51604
51605    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
51606    ///
51607    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::shrink_to_fit()```</span>.
51608    ///
51609    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
51610    /// <p>This function was introduced in  Qt 5.10.</p></div>
51611    #[inline(always)]
51612    #[cfg_attr(
51613        feature = "ritual_rustdoc_nightly",
51614        doc(cfg(any(
51615            cpp_lib_version = "5.11.3",
51616            cpp_lib_version = "5.12.2",
51617            cpp_lib_version = "5.13.0",
51618            cpp_lib_version = "5.14.0"
51619        )))
51620    )]
51621    #[cfg(any(
51622        any(
51623            cpp_lib_version = "5.11.3",
51624            cpp_lib_version = "5.12.2",
51625            cpp_lib_version = "5.13.0",
51626            cpp_lib_version = "5.14.0"
51627        ),
51628        feature = "ritual_rustdoc"
51629    ))]
51630    pub unsafe fn shrink_to_fit(&self) {
51631        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_shrink_to_fit(
51632            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51633        )
51634    }
51635
51636    /// <p>Returns the number of items in the vector.</p>
51637    ///
51638    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::size() const```</span>.
51639    ///
51640    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
51641    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
51642    #[inline(always)]
51643    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
51644        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_size(
51645            self as *const crate::QVectorOfQRenderPass,
51646        )
51647    }
51648
51649    /// <p>Releases any memory not required to store the items.</p>
51650    ///
51651    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::squeeze()```</span>.
51652    ///
51653    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
51654    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
51655    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
51656    #[inline(always)]
51657    pub unsafe fn squeeze(&self) {
51658        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_squeeze(
51659            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51660        )
51661    }
51662
51663    /// <p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
51664    ///
51665    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderPass*>::startsWith(const Qt3DRender::QRenderPass*& t) const```</span>.
51666    ///
51667    /// <a href="http://doc.qt.io/qt-5/qvector.html#startsWith">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if this vector is not empty and its first item is equal to <i>value</i>; otherwise returns <code>false</code>.</p>
51668    /// <p>This function was introduced in  Qt 4.5.</p>
51669    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
51670    #[inline(always)]
51671    pub unsafe fn starts_with(&self, t: *const *mut crate::QRenderPass) -> bool {
51672        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_startsWith(
51673            self as *const crate::QVectorOfQRenderPass,
51674            t,
51675        )
51676    }
51677
51678    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
51679    ///
51680    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::swap(QVector<Qt3DRender::QRenderPass*>& other)```</span>.
51681    ///
51682    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
51683    /// <p>This function was introduced in  Qt 4.8.</p></div>
51684    #[inline(always)]
51685    pub unsafe fn swap(
51686        &self,
51687        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
51688    ) {
51689        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_swap(
51690            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51691            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(other)
51692                .as_raw_ptr() as *mut crate::QVectorOfQRenderPass,
51693        )
51694    }
51695
51696    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
51697    ///
51698    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRenderPass*>::swapItemsAt(int i, int j)```</span>.
51699    ///
51700    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
51701    /// <p>This function was introduced in  Qt 5.14.</p></div>
51702    #[inline(always)]
51703    #[cfg_attr(
51704        feature = "ritual_rustdoc_nightly",
51705        doc(cfg(cpp_lib_version = "5.14.0"))
51706    )]
51707    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
51708    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
51709        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_swapItemsAt(
51710            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51711            i,
51712            j,
51713        )
51714    }
51715
51716    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
51717    ///
51718    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass* QVector<Qt3DRender::QRenderPass*>::takeAt(int i)```</span>.
51719    ///
51720    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
51721    /// <p>Equivalent to</p>
51722    /// <pre class="cpp">
51723    ///
51724    ///   T t <span class="operator">=</span> at(i);
51725    ///   remove(i);
51726    ///   <span class="keyword">return</span> t;
51727    ///
51728    /// </pre>
51729    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
51730    /// <p>This function was introduced in  Qt 5.2.</p>
51731    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
51732    #[inline(always)]
51733    pub unsafe fn take_at(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QRenderPass> {
51734        let ffi_result = {
51735            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_takeAt(
51736                self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51737                i,
51738            )
51739        };
51740        ::qt_core::QPtr::from_raw(ffi_result)
51741    }
51742
51743    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
51744    ///
51745    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass* QVector<Qt3DRender::QRenderPass*>::takeFirst()```</span>.
51746    ///
51747    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
51748    /// <p>This function was introduced in  Qt 5.1.</p>
51749    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
51750    #[inline(always)]
51751    pub unsafe fn take_first(&self) -> ::qt_core::QPtr<crate::QRenderPass> {
51752        let ffi_result = {
51753            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_takeFirst(
51754                self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51755            )
51756        };
51757        ::qt_core::QPtr::from_raw(ffi_result)
51758    }
51759
51760    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
51761    ///
51762    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass* QVector<Qt3DRender::QRenderPass*>::takeLast()```</span>.
51763    ///
51764    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
51765    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
51766    /// <p>This function was introduced in  Qt 5.1.</p>
51767    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
51768    #[inline(always)]
51769    pub unsafe fn take_last(&self) -> ::qt_core::QPtr<crate::QRenderPass> {
51770        let ffi_result = {
51771            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_takeLast(
51772                self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
51773            )
51774        };
51775        ::qt_core::QPtr::from_raw(ffi_result)
51776    }
51777
51778    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
51779    ///
51780    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass* QVector<Qt3DRender::QRenderPass*>::value(int i) const```</span>.
51781    ///
51782    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
51783    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
51784    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
51785    #[inline(always)]
51786    pub unsafe fn value_1a(&self, i: ::std::os::raw::c_int) -> ::qt_core::QPtr<crate::QRenderPass> {
51787        let ffi_result = {
51788            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_value(
51789                self as *const crate::QVectorOfQRenderPass,
51790                i,
51791            )
51792        };
51793        ::qt_core::QPtr::from_raw(ffi_result)
51794    }
51795
51796    /// <p>This is an overloaded function.</p>
51797    ///
51798    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass* QVector<Qt3DRender::QRenderPass*>::value(int i, const Qt3DRender::QRenderPass*& defaultValue) const```</span>.
51799    ///
51800    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
51801    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
51802    #[inline(always)]
51803    pub unsafe fn value_2a(
51804        &self,
51805        i: ::std::os::raw::c_int,
51806        default_value: *const *mut crate::QRenderPass,
51807    ) -> ::qt_core::QPtr<crate::QRenderPass> {
51808        let ffi_result = {
51809            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_value1(
51810                self as *const crate::QVectorOfQRenderPass,
51811                i,
51812                default_value,
51813            )
51814        };
51815        ::qt_core::QPtr::from_raw(ffi_result)
51816    }
51817}
51818
51819pub mod q_ray_caster_hit {
51820    //! C++ type: <span style='color: green;'>```Qt3DRender::QRayCasterHit```</span>
51821
51822    /// C++ enum: <span style='color: green;'>```Qt3DRender::QRayCasterHit::HitType```</span>.
51823    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
51824    #[repr(transparent)]
51825    pub struct HitType(::std::os::raw::c_int);
51826
51827    impl From<::std::os::raw::c_int> for HitType {
51828        fn from(value: ::std::os::raw::c_int) -> Self {
51829            HitType(value)
51830        }
51831    }
51832
51833    impl From<HitType> for ::std::os::raw::c_int {
51834        fn from(value: HitType) -> Self {
51835            value.0
51836        }
51837    }
51838
51839    impl HitType {
51840        pub fn to_int(&self) -> ::std::os::raw::c_int {
51841            self.0
51842        }
51843    }
51844
51845    impl HitType {
51846        /// C++ enum variant: <span style='color: green;'>```TriangleHit = 0```</span>
51847        #[allow(non_upper_case_globals)]
51848        pub const TriangleHit: crate::q_ray_caster_hit::HitType =
51849            crate::q_ray_caster_hit::HitType(0);
51850        /// C++ enum variant: <span style='color: green;'>```LineHit = 1```</span>
51851        #[allow(non_upper_case_globals)]
51852        pub const LineHit: crate::q_ray_caster_hit::HitType = crate::q_ray_caster_hit::HitType(1);
51853        /// C++ enum variant: <span style='color: green;'>```PointHit = 2```</span>
51854        #[allow(non_upper_case_globals)]
51855        pub const PointHit: crate::q_ray_caster_hit::HitType = crate::q_ray_caster_hit::HitType(2);
51856        /// C++ enum variant: <span style='color: green;'>```EntityHit = 3```</span>
51857        #[allow(non_upper_case_globals)]
51858        pub const EntityHit: crate::q_ray_caster_hit::HitType = crate::q_ray_caster_hit::HitType(3);
51859    }
51860}
51861/// <p>Details of a hit when casting a ray through a model.</p>
51862///
51863/// C++ class: <span style='color: green;'>```Qt3DRender::QRayCasterHit```</span>.
51864///
51865/// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Details of a hit when casting a ray through a model.</p>
51866/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html">Qt3DRender::QRayCasterHit</a> contains the details of a successful hit when casting a ray through a model using a <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html">Qt3DRender::QRayCaster</a> or <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html">Qt3DRender::QScreenRayCaster</a> component.</p></div>
51867#[repr(C)]
51868pub struct QRayCasterHit {
51869    _unused: u8,
51870}
51871impl QRayCasterHit {
51872    /// <p>Copy-assignment operator.</p>
51873    ///
51874    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit& Qt3DRender::QRayCasterHit::operator=(const Qt3DRender::QRayCasterHit& other)```</span>.
51875    ///
51876    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Copy-assignment operator.</p></div>
51877    #[inline(always)]
51878    #[cfg_attr(
51879        feature = "ritual_rustdoc_nightly",
51880        doc(cfg(any(
51881            cpp_lib_version = "5.11.3",
51882            cpp_lib_version = "5.12.2",
51883            cpp_lib_version = "5.13.0",
51884            cpp_lib_version = "5.14.0"
51885        )))
51886    )]
51887    #[cfg(any(
51888        any(
51889            cpp_lib_version = "5.11.3",
51890            cpp_lib_version = "5.12.2",
51891            cpp_lib_version = "5.13.0",
51892            cpp_lib_version = "5.14.0"
51893        ),
51894        feature = "ritual_rustdoc"
51895    ))]
51896    pub unsafe fn copy_from(
51897        &self,
51898        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
51899    ) -> ::cpp_core::Ref<crate::QRayCasterHit> {
51900        let ffi_result = {
51901            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_operator_(
51902                self as *const crate::QRayCasterHit as *mut crate::QRayCasterHit,
51903                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(other)
51904                    .as_raw_ptr(),
51905            )
51906        };
51907        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
51908    }
51909
51910    /// <p>Returns the distance between the origin of the ray and the intersection point</p>
51911    ///
51912    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QRayCasterHit::distance() const```</span>.
51913    ///
51914    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#distance">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the distance between the origin of the ray and the intersection point</p></div>
51915    #[inline(always)]
51916    #[cfg_attr(
51917        feature = "ritual_rustdoc_nightly",
51918        doc(cfg(any(
51919            cpp_lib_version = "5.11.3",
51920            cpp_lib_version = "5.12.2",
51921            cpp_lib_version = "5.13.0",
51922            cpp_lib_version = "5.14.0"
51923        )))
51924    )]
51925    #[cfg(any(
51926        any(
51927            cpp_lib_version = "5.11.3",
51928            cpp_lib_version = "5.12.2",
51929            cpp_lib_version = "5.13.0",
51930            cpp_lib_version = "5.14.0"
51931        ),
51932        feature = "ritual_rustdoc"
51933    ))]
51934    pub unsafe fn distance(&self) -> ::std::os::raw::c_float {
51935        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_distance(
51936            self as *const crate::QRayCasterHit,
51937        )
51938    }
51939
51940    /// <p>Returns a pointer to the entity that was hit</p>
51941    ///
51942    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QEntity* Qt3DRender::QRayCasterHit::entity() const```</span>.
51943    ///
51944    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#entity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the entity that was hit</p></div>
51945    #[inline(always)]
51946    #[cfg_attr(
51947        feature = "ritual_rustdoc_nightly",
51948        doc(cfg(any(
51949            cpp_lib_version = "5.11.3",
51950            cpp_lib_version = "5.12.2",
51951            cpp_lib_version = "5.13.0",
51952            cpp_lib_version = "5.14.0"
51953        )))
51954    )]
51955    #[cfg(any(
51956        any(
51957            cpp_lib_version = "5.11.3",
51958            cpp_lib_version = "5.12.2",
51959            cpp_lib_version = "5.13.0",
51960            cpp_lib_version = "5.14.0"
51961        ),
51962        feature = "ritual_rustdoc"
51963    ))]
51964    pub unsafe fn entity(&self) -> ::qt_core::QPtr<::qt_3d_core::QEntity> {
51965        let ffi_result = {
51966            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_entity(
51967                self as *const crate::QRayCasterHit,
51968            )
51969        };
51970        ::qt_core::QPtr::from_raw(ffi_result)
51971    }
51972
51973    /// <p>Returns the id of the entity that was hit</p>
51974    ///
51975    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNodeId Qt3DRender::QRayCasterHit::entityId() const```</span>.
51976    ///
51977    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#entityId">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the id of the entity that was hit</p></div>
51978    #[inline(always)]
51979    #[cfg_attr(
51980        feature = "ritual_rustdoc_nightly",
51981        doc(cfg(any(
51982            cpp_lib_version = "5.11.3",
51983            cpp_lib_version = "5.12.2",
51984            cpp_lib_version = "5.13.0",
51985            cpp_lib_version = "5.14.0"
51986        )))
51987    )]
51988    #[cfg(any(
51989        any(
51990            cpp_lib_version = "5.11.3",
51991            cpp_lib_version = "5.12.2",
51992            cpp_lib_version = "5.13.0",
51993            cpp_lib_version = "5.14.0"
51994        ),
51995        feature = "ritual_rustdoc"
51996    ))]
51997    pub unsafe fn entity_id(&self) -> ::cpp_core::CppBox<::qt_3d_core::QNodeId> {
51998        let ffi_result = {
51999            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_entityId(
52000                self as *const crate::QRayCasterHit,
52001            )
52002        };
52003        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
52004    }
52005
52006    /// <p>Returns the coordinates of the intersection point in the entity's coordinate system</p>
52007    ///
52008    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QRayCasterHit::localIntersection() const```</span>.
52009    ///
52010    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#localIntersection">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the coordinates of the intersection point in the entity's coordinate system</p></div>
52011    #[inline(always)]
52012    #[cfg_attr(
52013        feature = "ritual_rustdoc_nightly",
52014        doc(cfg(any(
52015            cpp_lib_version = "5.11.3",
52016            cpp_lib_version = "5.12.2",
52017            cpp_lib_version = "5.13.0",
52018            cpp_lib_version = "5.14.0"
52019        )))
52020    )]
52021    #[cfg(any(
52022        any(
52023            cpp_lib_version = "5.11.3",
52024            cpp_lib_version = "5.12.2",
52025            cpp_lib_version = "5.13.0",
52026            cpp_lib_version = "5.14.0"
52027        ),
52028        feature = "ritual_rustdoc"
52029    ))]
52030    pub unsafe fn local_intersection(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
52031        let ffi_result = {
52032            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_localIntersection(
52033                self as *const crate::QRayCasterHit,
52034            )
52035        };
52036        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
52037    }
52038
52039    /// <p>Default constructs an instance of QRayCasterHit.</p>
52040    ///
52041    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRayCasterHit::QRayCasterHit()```</span>.
52042    ///
52043    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#QRayCasterHit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRayCasterHit.</p></div>
52044    #[inline(always)]
52045    #[cfg_attr(
52046        feature = "ritual_rustdoc_nightly",
52047        doc(cfg(any(
52048            cpp_lib_version = "5.11.3",
52049            cpp_lib_version = "5.12.2",
52050            cpp_lib_version = "5.13.0",
52051            cpp_lib_version = "5.14.0"
52052        )))
52053    )]
52054    #[cfg(any(
52055        any(
52056            cpp_lib_version = "5.11.3",
52057            cpp_lib_version = "5.12.2",
52058            cpp_lib_version = "5.13.0",
52059            cpp_lib_version = "5.14.0"
52060        ),
52061        feature = "ritual_rustdoc"
52062    ))]
52063    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QRayCasterHit> {
52064        let ffi_result =
52065            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_QRayCasterHit() };
52066        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
52067    }
52068
52069    /// <p>Default constructs an instance of QRayCasterHit.</p>
52070    ///
52071    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRayCasterHit::QRayCasterHit(Qt3DRender::QRayCasterHit::HitType type, Qt3DCore::QNodeId id, float distance, const QVector3D& localIntersect, const QVector3D& worldIntersect, unsigned int primitiveIndex, unsigned int v1, unsigned int v2, unsigned int v3)```</span>.
52072    ///
52073    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#QRayCasterHit-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRayCasterHit.</p></div>
52074    #[inline(always)]
52075    #[cfg_attr(
52076        feature = "ritual_rustdoc_nightly",
52077        doc(cfg(any(
52078            cpp_lib_version = "5.11.3",
52079            cpp_lib_version = "5.12.2",
52080            cpp_lib_version = "5.13.0",
52081            cpp_lib_version = "5.14.0"
52082        )))
52083    )]
52084    #[cfg(any(
52085        any(
52086            cpp_lib_version = "5.11.3",
52087            cpp_lib_version = "5.12.2",
52088            cpp_lib_version = "5.13.0",
52089            cpp_lib_version = "5.14.0"
52090        ),
52091        feature = "ritual_rustdoc"
52092    ))]
52093    pub unsafe fn new_9a(
52094        type_: crate::q_ray_caster_hit::HitType,
52095        id: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_3d_core::QNodeId>>,
52096        distance: ::std::os::raw::c_float,
52097        local_intersect: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
52098        world_intersect: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
52099        primitive_index: ::std::os::raw::c_uint,
52100        v1: ::std::os::raw::c_uint,
52101        v2: ::std::os::raw::c_uint,
52102        v3: ::std::os::raw::c_uint,
52103    ) -> ::cpp_core::CppBox<crate::QRayCasterHit> {
52104        let ffi_result = {
52105            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_QRayCasterHit1(
52106                type_,
52107                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_3d_core::QNodeId>>::cast_into(id)
52108                    .as_raw_ptr(),
52109                distance,
52110                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
52111                    local_intersect,
52112                )
52113                .as_raw_ptr(),
52114                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
52115                    world_intersect,
52116                )
52117                .as_raw_ptr(),
52118                primitive_index,
52119                v1,
52120                v2,
52121                v3,
52122            )
52123        };
52124        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
52125    }
52126
52127    /// <p>Default constructs an instance of QRayCasterHit.</p>
52128    ///
52129    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRayCasterHit::QRayCasterHit(const Qt3DRender::QRayCasterHit& other)```</span>.
52130    ///
52131    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#QRayCasterHit-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRayCasterHit.</p></div>
52132    #[inline(always)]
52133    #[cfg_attr(
52134        feature = "ritual_rustdoc_nightly",
52135        doc(cfg(any(
52136            cpp_lib_version = "5.11.3",
52137            cpp_lib_version = "5.12.2",
52138            cpp_lib_version = "5.13.0",
52139            cpp_lib_version = "5.14.0"
52140        )))
52141    )]
52142    #[cfg(any(
52143        any(
52144            cpp_lib_version = "5.11.3",
52145            cpp_lib_version = "5.12.2",
52146            cpp_lib_version = "5.13.0",
52147            cpp_lib_version = "5.14.0"
52148        ),
52149        feature = "ritual_rustdoc"
52150    ))]
52151    pub unsafe fn new_copy(
52152        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
52153    ) -> ::cpp_core::CppBox<crate::QRayCasterHit> {
52154        let ffi_result = {
52155            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_QRayCasterHit2(
52156                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(other)
52157                    .as_raw_ptr(),
52158            )
52159        };
52160        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
52161    }
52162
52163    /// <p>Returns the index of the picked primitive</p>
52164    ///
52165    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QRayCasterHit::primitiveIndex() const```</span>.
52166    ///
52167    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#primitiveIndex">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index of the picked primitive</p></div>
52168    #[inline(always)]
52169    #[cfg_attr(
52170        feature = "ritual_rustdoc_nightly",
52171        doc(cfg(any(
52172            cpp_lib_version = "5.11.3",
52173            cpp_lib_version = "5.12.2",
52174            cpp_lib_version = "5.13.0",
52175            cpp_lib_version = "5.14.0"
52176        )))
52177    )]
52178    #[cfg(any(
52179        any(
52180            cpp_lib_version = "5.11.3",
52181            cpp_lib_version = "5.12.2",
52182            cpp_lib_version = "5.13.0",
52183            cpp_lib_version = "5.14.0"
52184        ),
52185        feature = "ritual_rustdoc"
52186    ))]
52187    pub unsafe fn primitive_index(&self) -> ::std::os::raw::c_uint {
52188        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_primitiveIndex(
52189            self as *const crate::QRayCasterHit,
52190        )
52191    }
52192
52193    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
52194    #[inline(always)]
52195    #[cfg_attr(
52196        feature = "ritual_rustdoc_nightly",
52197        doc(cfg(any(
52198            cpp_lib_version = "5.11.3",
52199            cpp_lib_version = "5.12.2",
52200            cpp_lib_version = "5.13.0",
52201            cpp_lib_version = "5.14.0"
52202        )))
52203    )]
52204    #[cfg(any(
52205        any(
52206            cpp_lib_version = "5.11.3",
52207            cpp_lib_version = "5.12.2",
52208            cpp_lib_version = "5.13.0",
52209            cpp_lib_version = "5.14.0"
52210        ),
52211        feature = "ritual_rustdoc"
52212    ))]
52213    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
52214        let ffi_result =
52215            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_staticMetaObject() };
52216        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
52217            .expect("attempted to construct a null Ref")
52218    }
52219
52220    /// <p>Returns the type of the hit</p>
52221    ///
52222    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit::HitType Qt3DRender::QRayCasterHit::type() const```</span>.
52223    ///
52224    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#type">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the type of the hit</p></div>
52225    #[inline(always)]
52226    #[cfg_attr(
52227        feature = "ritual_rustdoc_nightly",
52228        doc(cfg(any(
52229            cpp_lib_version = "5.11.3",
52230            cpp_lib_version = "5.12.2",
52231            cpp_lib_version = "5.13.0",
52232            cpp_lib_version = "5.14.0"
52233        )))
52234    )]
52235    #[cfg(any(
52236        any(
52237            cpp_lib_version = "5.11.3",
52238            cpp_lib_version = "5.12.2",
52239            cpp_lib_version = "5.13.0",
52240            cpp_lib_version = "5.14.0"
52241        ),
52242        feature = "ritual_rustdoc"
52243    ))]
52244    pub unsafe fn type_(&self) -> crate::q_ray_caster_hit::HitType {
52245        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_type(
52246            self as *const crate::QRayCasterHit,
52247        )
52248    }
52249
52250    /// <p>Returns the index of the first vertex of the picked primitive</p>
52251    ///
52252    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QRayCasterHit::vertex1Index() const```</span>.
52253    ///
52254    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#vertex1Index">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index of the first vertex of the picked primitive</p></div>
52255    #[inline(always)]
52256    #[cfg_attr(
52257        feature = "ritual_rustdoc_nightly",
52258        doc(cfg(any(
52259            cpp_lib_version = "5.11.3",
52260            cpp_lib_version = "5.12.2",
52261            cpp_lib_version = "5.13.0",
52262            cpp_lib_version = "5.14.0"
52263        )))
52264    )]
52265    #[cfg(any(
52266        any(
52267            cpp_lib_version = "5.11.3",
52268            cpp_lib_version = "5.12.2",
52269            cpp_lib_version = "5.13.0",
52270            cpp_lib_version = "5.14.0"
52271        ),
52272        feature = "ritual_rustdoc"
52273    ))]
52274    pub unsafe fn vertex1_index(&self) -> ::std::os::raw::c_uint {
52275        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_vertex1Index(
52276            self as *const crate::QRayCasterHit,
52277        )
52278    }
52279
52280    /// <p>Returns the index of the second vertex of the picked primitive</p>
52281    ///
52282    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QRayCasterHit::vertex2Index() const```</span>.
52283    ///
52284    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#vertex2Index">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index of the second vertex of the picked primitive</p></div>
52285    #[inline(always)]
52286    #[cfg_attr(
52287        feature = "ritual_rustdoc_nightly",
52288        doc(cfg(any(
52289            cpp_lib_version = "5.11.3",
52290            cpp_lib_version = "5.12.2",
52291            cpp_lib_version = "5.13.0",
52292            cpp_lib_version = "5.14.0"
52293        )))
52294    )]
52295    #[cfg(any(
52296        any(
52297            cpp_lib_version = "5.11.3",
52298            cpp_lib_version = "5.12.2",
52299            cpp_lib_version = "5.13.0",
52300            cpp_lib_version = "5.14.0"
52301        ),
52302        feature = "ritual_rustdoc"
52303    ))]
52304    pub unsafe fn vertex2_index(&self) -> ::std::os::raw::c_uint {
52305        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_vertex2Index(
52306            self as *const crate::QRayCasterHit,
52307        )
52308    }
52309
52310    /// <p>Returns the index of the third vertex of the picked primitive</p>
52311    ///
52312    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QRayCasterHit::vertex3Index() const```</span>.
52313    ///
52314    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#vertex3Index">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the index of the third vertex of the picked primitive</p></div>
52315    #[inline(always)]
52316    #[cfg_attr(
52317        feature = "ritual_rustdoc_nightly",
52318        doc(cfg(any(
52319            cpp_lib_version = "5.11.3",
52320            cpp_lib_version = "5.12.2",
52321            cpp_lib_version = "5.13.0",
52322            cpp_lib_version = "5.14.0"
52323        )))
52324    )]
52325    #[cfg(any(
52326        any(
52327            cpp_lib_version = "5.11.3",
52328            cpp_lib_version = "5.12.2",
52329            cpp_lib_version = "5.13.0",
52330            cpp_lib_version = "5.14.0"
52331        ),
52332        feature = "ritual_rustdoc"
52333    ))]
52334    pub unsafe fn vertex3_index(&self) -> ::std::os::raw::c_uint {
52335        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_vertex3Index(
52336            self as *const crate::QRayCasterHit,
52337        )
52338    }
52339
52340    /// <p>Returns the coordinates of the intersection point in the model's coordinate system</p>
52341    ///
52342    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QRayCasterHit::worldIntersection() const```</span>.
52343    ///
52344    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#worldIntersection">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the coordinates of the intersection point in the model's coordinate system</p></div>
52345    #[inline(always)]
52346    #[cfg_attr(
52347        feature = "ritual_rustdoc_nightly",
52348        doc(cfg(any(
52349            cpp_lib_version = "5.11.3",
52350            cpp_lib_version = "5.12.2",
52351            cpp_lib_version = "5.13.0",
52352            cpp_lib_version = "5.14.0"
52353        )))
52354    )]
52355    #[cfg(any(
52356        any(
52357            cpp_lib_version = "5.11.3",
52358            cpp_lib_version = "5.12.2",
52359            cpp_lib_version = "5.13.0",
52360            cpp_lib_version = "5.14.0"
52361        ),
52362        feature = "ritual_rustdoc"
52363    ))]
52364    pub unsafe fn world_intersection(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
52365        let ffi_result = {
52366            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_worldIntersection(
52367                self as *const crate::QRayCasterHit,
52368            )
52369        };
52370        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
52371    }
52372}
52373
52374pub mod q_abstract_ray_caster {
52375    //! C++ type: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster```</span>
52376
52377    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster::RunMode```</span>.
52378    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
52379    #[repr(transparent)]
52380    pub struct RunMode(::std::os::raw::c_int);
52381
52382    impl From<::std::os::raw::c_int> for RunMode {
52383        fn from(value: ::std::os::raw::c_int) -> Self {
52384            RunMode(value)
52385        }
52386    }
52387
52388    impl From<RunMode> for ::std::os::raw::c_int {
52389        fn from(value: RunMode) -> Self {
52390            value.0
52391        }
52392    }
52393
52394    impl RunMode {
52395        pub fn to_int(&self) -> ::std::os::raw::c_int {
52396            self.0
52397        }
52398    }
52399
52400    impl RunMode {
52401        /// C++ enum variant: <span style='color: green;'>```Continuous = 0```</span>
52402        #[allow(non_upper_case_globals)]
52403        pub const Continuous: crate::q_abstract_ray_caster::RunMode =
52404            crate::q_abstract_ray_caster::RunMode(0);
52405        /// C++ enum variant: <span style='color: green;'>```SingleShot = 1```</span>
52406        #[allow(non_upper_case_globals)]
52407        pub const SingleShot: crate::q_abstract_ray_caster::RunMode =
52408            crate::q_abstract_ray_caster::RunMode(1);
52409    }
52410
52411    /// C++ enum: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster::FilterMode```</span>.
52412    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
52413    #[repr(transparent)]
52414    pub struct FilterMode(::std::os::raw::c_int);
52415
52416    impl From<::std::os::raw::c_int> for FilterMode {
52417        fn from(value: ::std::os::raw::c_int) -> Self {
52418            FilterMode(value)
52419        }
52420    }
52421
52422    impl From<FilterMode> for ::std::os::raw::c_int {
52423        fn from(value: FilterMode) -> Self {
52424            value.0
52425        }
52426    }
52427
52428    impl FilterMode {
52429        pub fn to_int(&self) -> ::std::os::raw::c_int {
52430            self.0
52431        }
52432    }
52433
52434    impl FilterMode {
52435        /// C++ enum variant: <span style='color: green;'>```AcceptAnyMatchingLayers = 0```</span>
52436        #[allow(non_upper_case_globals)]
52437        pub const AcceptAnyMatchingLayers: crate::q_abstract_ray_caster::FilterMode =
52438            crate::q_abstract_ray_caster::FilterMode(0);
52439        /// C++ enum variant: <span style='color: green;'>```AcceptAllMatchingLayers = 1```</span>
52440        #[allow(non_upper_case_globals)]
52441        pub const AcceptAllMatchingLayers: crate::q_abstract_ray_caster::FilterMode =
52442            crate::q_abstract_ray_caster::FilterMode(1);
52443        /// C++ enum variant: <span style='color: green;'>```DiscardAnyMatchingLayers = 2```</span>
52444        #[allow(non_upper_case_globals)]
52445        pub const DiscardAnyMatchingLayers: crate::q_abstract_ray_caster::FilterMode =
52446            crate::q_abstract_ray_caster::FilterMode(2);
52447        /// C++ enum variant: <span style='color: green;'>```DiscardAllMatchingLayers = 3```</span>
52448        #[allow(non_upper_case_globals)]
52449        pub const DiscardAllMatchingLayers: crate::q_abstract_ray_caster::FilterMode =
52450            crate::q_abstract_ray_caster::FilterMode(3);
52451    }
52452}
52453/// <p>An abstract base class for ray casting in 3d scenes.</p>
52454///
52455/// C++ class: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster```</span>.
52456///
52457/// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>An abstract base class for ray casting in 3d scenes.</p>
52458/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">Qt3DRender::QAbstractRayCaster</a> is an abstract base class for casting rays into a 3d scene. <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">Qt3DRender::QAbstractRayCaster</a> can not be directly instantiated, but rather through its subclasses. <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">QAbstractRayCaster</a> specifies common properties for all ray casters, such as run mode and layer handling, while leaving the actual ray casting details to the subclasses.</p>
52459/// <p>Ray castings differs from picking (using <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">Qt3DRender::QObjectPicker</a>) in that it does not require mouse events to trigger.</p>
52460/// <p>By default, the instances of <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">Qt3DRender::QAbstractRayCaster</a> are disabled. When enabled, the specified ray will be tested for intersecting objects at every frame. The <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#hits-prop">QAbstractRayCaster::hits</a> property will be updated with the results of the ray casting, even if no objects are found.</p>
52461/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">Qt3DRender::QPickingSettings</a> can be used to control the ray casting, such as which primitives are tested and how the results are returned.</p>
52462/// <p>Furthermore, <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">Qt3DRender::QLayer</a> components can be used to control how entities, or entity sub-graphs, react to ray casting.</p>
52463/// <p><b>Note: </b>Components derived from <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">QAbstractRayCaster</a> should not be shared amount multiple entities.</p></div>
52464#[repr(C)]
52465pub struct QAbstractRayCaster {
52466    _unused: u8,
52467}
52468impl QAbstractRayCaster {
52469    /// <p>Holds the run mode controlling how often ray casting tests are performed.</p>
52470    ///
52471    /// Returns a built-in Qt slot `Qt3DRender::QAbstractRayCaster::setRunMode` that can be passed to `qt_core::Signal::connect`.
52472    ///
52473    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#runMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the run mode controlling how often ray casting tests are performed.</p>
52474    /// <p>If set to <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#RunMode-enum">SingleShot</a> (the default), when the component is enabled, a single ray casting test will be performed and the component will automatically disable itself.</p>
52475    /// <p>If set to Continuous, ray casting tests will be performed at every frame as long as the component is enabled.</p>
52476    /// <p><b>Access functions:</b></p>
52477    /// <div class="table"><table class="alignedsummary">
52478    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::RunMode </td><td class="memItemRight bottomAlign"><span class="name"><b>runMode</b></span>() const</td></tr>
52479    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRunMode</b></span>(Qt3DRender::QAbstractRayCaster::RunMode <i>runMode</i>)</td></tr>
52480    /// </tbody></table></div>
52481    /// <p><b>Notifier signal:</b></p>
52482    /// <div class="table"><table class="alignedsummary">
52483    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>runModeChanged</b></span>(Qt3DRender::QAbstractRayCaster::RunMode <i>runMode</i>)</td></tr>
52484    /// </tbody></table></div></div>
52485    #[inline(always)]
52486    #[cfg_attr(
52487        feature = "ritual_rustdoc_nightly",
52488        doc(cfg(any(
52489            cpp_lib_version = "5.11.3",
52490            cpp_lib_version = "5.12.2",
52491            cpp_lib_version = "5.13.0",
52492            cpp_lib_version = "5.14.0"
52493        )))
52494    )]
52495    #[cfg(any(
52496        any(
52497            cpp_lib_version = "5.11.3",
52498            cpp_lib_version = "5.12.2",
52499            cpp_lib_version = "5.13.0",
52500            cpp_lib_version = "5.14.0"
52501        ),
52502        feature = "ritual_rustdoc"
52503    ))]
52504    pub fn slot_set_run_mode(
52505        &self,
52506    ) -> ::qt_core::Receiver<(crate::q_abstract_ray_caster::RunMode,)> {
52507        unsafe {
52508            ::qt_core::Receiver::new(
52509                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
52510                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
52511                    b"1setRunMode(Qt3DRender::QAbstractRayCaster::RunMode)\0",
52512                ),
52513            )
52514        }
52515    }
52516
52517    /// <p>Holds the filter mode specifying the entities to select for ray casting tests.</p>
52518    ///
52519    /// Returns a built-in Qt slot `Qt3DRender::QAbstractRayCaster::setFilterMode` that can be passed to `qt_core::Signal::connect`.
52520    ///
52521    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#filterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the filter mode specifying the entities to select for ray casting tests.</p>
52522    /// <p>The default value is AcceptMatchingLayers.</p>
52523    /// <p><b>Access functions:</b></p>
52524    /// <div class="table"><table class="alignedsummary">
52525    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::FilterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>filterMode</b></span>() const</td></tr>
52526    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFilterMode</b></span>(Qt3DRender::QAbstractRayCaster::FilterMode <i>filterMode</i>)</td></tr>
52527    /// </tbody></table></div>
52528    /// <p><b>Notifier signal:</b></p>
52529    /// <div class="table"><table class="alignedsummary">
52530    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>filterModeChanged</b></span>(Qt3DRender::QAbstractRayCaster::FilterMode <i>filterMode</i>)</td></tr>
52531    /// </tbody></table></div></div>
52532    #[inline(always)]
52533    #[cfg_attr(
52534        feature = "ritual_rustdoc_nightly",
52535        doc(cfg(any(
52536            cpp_lib_version = "5.11.3",
52537            cpp_lib_version = "5.12.2",
52538            cpp_lib_version = "5.13.0",
52539            cpp_lib_version = "5.14.0"
52540        )))
52541    )]
52542    #[cfg(any(
52543        any(
52544            cpp_lib_version = "5.11.3",
52545            cpp_lib_version = "5.12.2",
52546            cpp_lib_version = "5.13.0",
52547            cpp_lib_version = "5.14.0"
52548        ),
52549        feature = "ritual_rustdoc"
52550    ))]
52551    pub fn slot_set_filter_mode(
52552        &self,
52553    ) -> ::qt_core::Receiver<(crate::q_abstract_ray_caster::FilterMode,)> {
52554        unsafe {
52555            ::qt_core::Receiver::new(
52556                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
52557                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
52558                    b"1setFilterMode(Qt3DRender::QAbstractRayCaster::FilterMode)\0",
52559                ),
52560            )
52561        }
52562    }
52563
52564    /// <p>Holds the run mode controlling how often ray casting tests are performed.</p>
52565    ///
52566    /// Returns a built-in Qt signal `Qt3DRender::QAbstractRayCaster::runModeChanged` that can be passed to `qt_core::Signal::connect`.
52567    ///
52568    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#runMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the run mode controlling how often ray casting tests are performed.</p>
52569    /// <p>If set to <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#RunMode-enum">SingleShot</a> (the default), when the component is enabled, a single ray casting test will be performed and the component will automatically disable itself.</p>
52570    /// <p>If set to Continuous, ray casting tests will be performed at every frame as long as the component is enabled.</p>
52571    /// <p><b>Access functions:</b></p>
52572    /// <div class="table"><table class="alignedsummary">
52573    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::RunMode </td><td class="memItemRight bottomAlign"><span class="name"><b>runMode</b></span>() const</td></tr>
52574    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRunMode</b></span>(Qt3DRender::QAbstractRayCaster::RunMode <i>runMode</i>)</td></tr>
52575    /// </tbody></table></div>
52576    /// <p><b>Notifier signal:</b></p>
52577    /// <div class="table"><table class="alignedsummary">
52578    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>runModeChanged</b></span>(Qt3DRender::QAbstractRayCaster::RunMode <i>runMode</i>)</td></tr>
52579    /// </tbody></table></div></div>
52580    #[inline(always)]
52581    #[cfg_attr(
52582        feature = "ritual_rustdoc_nightly",
52583        doc(cfg(any(
52584            cpp_lib_version = "5.11.3",
52585            cpp_lib_version = "5.12.2",
52586            cpp_lib_version = "5.13.0",
52587            cpp_lib_version = "5.14.0"
52588        )))
52589    )]
52590    #[cfg(any(
52591        any(
52592            cpp_lib_version = "5.11.3",
52593            cpp_lib_version = "5.12.2",
52594            cpp_lib_version = "5.13.0",
52595            cpp_lib_version = "5.14.0"
52596        ),
52597        feature = "ritual_rustdoc"
52598    ))]
52599    pub fn run_mode_changed(&self) -> ::qt_core::Signal<(crate::q_abstract_ray_caster::RunMode,)> {
52600        unsafe {
52601            ::qt_core::Signal::new(
52602                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
52603                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
52604                    b"2runModeChanged(Qt3DRender::QAbstractRayCaster::RunMode)\0",
52605                ),
52606            )
52607        }
52608    }
52609
52610    /// <p>Holds the filter mode specifying the entities to select for ray casting tests.</p>
52611    ///
52612    /// Returns a built-in Qt signal `Qt3DRender::QAbstractRayCaster::filterModeChanged` that can be passed to `qt_core::Signal::connect`.
52613    ///
52614    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#filterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the filter mode specifying the entities to select for ray casting tests.</p>
52615    /// <p>The default value is AcceptMatchingLayers.</p>
52616    /// <p><b>Access functions:</b></p>
52617    /// <div class="table"><table class="alignedsummary">
52618    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::FilterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>filterMode</b></span>() const</td></tr>
52619    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFilterMode</b></span>(Qt3DRender::QAbstractRayCaster::FilterMode <i>filterMode</i>)</td></tr>
52620    /// </tbody></table></div>
52621    /// <p><b>Notifier signal:</b></p>
52622    /// <div class="table"><table class="alignedsummary">
52623    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>filterModeChanged</b></span>(Qt3DRender::QAbstractRayCaster::FilterMode <i>filterMode</i>)</td></tr>
52624    /// </tbody></table></div></div>
52625    #[inline(always)]
52626    #[cfg_attr(
52627        feature = "ritual_rustdoc_nightly",
52628        doc(cfg(any(
52629            cpp_lib_version = "5.11.3",
52630            cpp_lib_version = "5.12.2",
52631            cpp_lib_version = "5.13.0",
52632            cpp_lib_version = "5.14.0"
52633        )))
52634    )]
52635    #[cfg(any(
52636        any(
52637            cpp_lib_version = "5.11.3",
52638            cpp_lib_version = "5.12.2",
52639            cpp_lib_version = "5.13.0",
52640            cpp_lib_version = "5.14.0"
52641        ),
52642        feature = "ritual_rustdoc"
52643    ))]
52644    pub fn filter_mode_changed(
52645        &self,
52646    ) -> ::qt_core::Signal<(crate::q_abstract_ray_caster::FilterMode,)> {
52647        unsafe {
52648            ::qt_core::Signal::new(
52649                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
52650                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
52651                    b"2filterModeChanged(Qt3DRender::QAbstractRayCaster::FilterMode)\0",
52652                ),
52653            )
52654        }
52655    }
52656
52657    /// <p>Holds the results of last ray casting test as a vector of <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html">Qt3DRender::QRayCasterHit</a> instances.</p>
52658    ///
52659    /// Returns a built-in Qt signal `Qt3DRender::QAbstractRayCaster::hitsChanged` that can be passed to `qt_core::Signal::connect`.
52660    ///
52661    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#hits-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the results of last ray casting test as a vector of <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html">Qt3DRender::QRayCasterHit</a> instances.</p>
52662    /// <p>Note that even if successive tests return the exact same results (or empty results), a change notification will be emitted at every test.</p>
52663    /// <p><b>Access functions:</b></p>
52664    /// <div class="table"><table class="alignedsummary">
52665    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::Hits </td><td class="memItemRight bottomAlign"><span class="name"><b>hits</b></span>() const</td></tr>
52666    /// </tbody></table></div>
52667    /// <p><b>Notifier signal:</b></p>
52668    /// <div class="table"><table class="alignedsummary">
52669    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>hitsChanged</b></span>(const Qt3DRender::QAbstractRayCaster::Hits &amp;<i>hits</i>)</td></tr>
52670    /// </tbody></table></div></div>
52671    #[inline(always)]
52672    #[cfg_attr(
52673        feature = "ritual_rustdoc_nightly",
52674        doc(cfg(any(
52675            cpp_lib_version = "5.11.3",
52676            cpp_lib_version = "5.12.2",
52677            cpp_lib_version = "5.13.0",
52678            cpp_lib_version = "5.14.0"
52679        )))
52680    )]
52681    #[cfg(any(
52682        any(
52683            cpp_lib_version = "5.11.3",
52684            cpp_lib_version = "5.12.2",
52685            cpp_lib_version = "5.13.0",
52686            cpp_lib_version = "5.14.0"
52687        ),
52688        feature = "ritual_rustdoc"
52689    ))]
52690    pub fn hits_changed(&self) -> ::qt_core::Signal<(*const crate::QVectorOfQRayCasterHit,)> {
52691        unsafe {
52692            ::qt_core::Signal::new(
52693                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
52694                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
52695                    b"2hitsChanged(QVector< Qt3DRender::QRayCasterHit > const &)\0",
52696                ),
52697            )
52698        }
52699    }
52700
52701    /// <p>Add <i>layer</i> to the current list of layers</p>
52702    ///
52703    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractRayCaster::addLayer(Qt3DRender::QLayer* layer)```</span>.
52704    ///
52705    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#addLayer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Add <i>layer</i> to the current list of layers</p></div>
52706    #[inline(always)]
52707    #[cfg_attr(
52708        feature = "ritual_rustdoc_nightly",
52709        doc(cfg(any(
52710            cpp_lib_version = "5.11.3",
52711            cpp_lib_version = "5.12.2",
52712            cpp_lib_version = "5.13.0",
52713            cpp_lib_version = "5.14.0"
52714        )))
52715    )]
52716    #[cfg(any(
52717        any(
52718            cpp_lib_version = "5.11.3",
52719            cpp_lib_version = "5.12.2",
52720            cpp_lib_version = "5.13.0",
52721            cpp_lib_version = "5.14.0"
52722        ),
52723        feature = "ritual_rustdoc"
52724    ))]
52725    pub unsafe fn add_layer(
52726        &self,
52727        layer: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QLayer>>,
52728    ) {
52729        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_addLayer(
52730            self as *const crate::QAbstractRayCaster as *mut crate::QAbstractRayCaster,
52731            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QLayer>>::cast_into(layer).as_raw_ptr()
52732                as *mut crate::QLayer,
52733        )
52734    }
52735
52736    /// <p>Holds the filter mode specifying the entities to select for ray casting tests.</p>
52737    ///
52738    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster::FilterMode Qt3DRender::QAbstractRayCaster::filterMode() const```</span>.
52739    ///
52740    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#filterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the filter mode specifying the entities to select for ray casting tests.</p>
52741    /// <p>The default value is AcceptMatchingLayers.</p>
52742    /// <p><b>Access functions:</b></p>
52743    /// <div class="table"><table class="alignedsummary">
52744    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::FilterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>filterMode</b></span>() const</td></tr>
52745    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFilterMode</b></span>(Qt3DRender::QAbstractRayCaster::FilterMode <i>filterMode</i>)</td></tr>
52746    /// </tbody></table></div>
52747    /// <p><b>Notifier signal:</b></p>
52748    /// <div class="table"><table class="alignedsummary">
52749    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>filterModeChanged</b></span>(Qt3DRender::QAbstractRayCaster::FilterMode <i>filterMode</i>)</td></tr>
52750    /// </tbody></table></div></div>
52751    #[inline(always)]
52752    #[cfg_attr(
52753        feature = "ritual_rustdoc_nightly",
52754        doc(cfg(any(
52755            cpp_lib_version = "5.11.3",
52756            cpp_lib_version = "5.12.2",
52757            cpp_lib_version = "5.13.0",
52758            cpp_lib_version = "5.14.0"
52759        )))
52760    )]
52761    #[cfg(any(
52762        any(
52763            cpp_lib_version = "5.11.3",
52764            cpp_lib_version = "5.12.2",
52765            cpp_lib_version = "5.13.0",
52766            cpp_lib_version = "5.14.0"
52767        ),
52768        feature = "ritual_rustdoc"
52769    ))]
52770    pub unsafe fn filter_mode(&self) -> crate::q_abstract_ray_caster::FilterMode {
52771        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_filterMode(
52772            self as *const crate::QAbstractRayCaster,
52773        )
52774    }
52775
52776    /// <p>Holds the results of last ray casting test as a vector of <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html">Qt3DRender::QRayCasterHit</a> instances.</p>
52777    ///
52778    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit> Qt3DRender::QAbstractRayCaster::hits() const```</span>.
52779    ///
52780    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#hits-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the results of last ray casting test as a vector of <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html">Qt3DRender::QRayCasterHit</a> instances.</p>
52781    /// <p>Note that even if successive tests return the exact same results (or empty results), a change notification will be emitted at every test.</p>
52782    /// <p><b>Access functions:</b></p>
52783    /// <div class="table"><table class="alignedsummary">
52784    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::Hits </td><td class="memItemRight bottomAlign"><span class="name"><b>hits</b></span>() const</td></tr>
52785    /// </tbody></table></div>
52786    /// <p><b>Notifier signal:</b></p>
52787    /// <div class="table"><table class="alignedsummary">
52788    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>hitsChanged</b></span>(const Qt3DRender::QAbstractRayCaster::Hits &amp;<i>hits</i>)</td></tr>
52789    /// </tbody></table></div></div>
52790    #[inline(always)]
52791    #[cfg_attr(
52792        feature = "ritual_rustdoc_nightly",
52793        doc(cfg(any(
52794            cpp_lib_version = "5.11.3",
52795            cpp_lib_version = "5.12.2",
52796            cpp_lib_version = "5.13.0",
52797            cpp_lib_version = "5.14.0"
52798        )))
52799    )]
52800    #[cfg(any(
52801        any(
52802            cpp_lib_version = "5.11.3",
52803            cpp_lib_version = "5.12.2",
52804            cpp_lib_version = "5.13.0",
52805            cpp_lib_version = "5.14.0"
52806        ),
52807        feature = "ritual_rustdoc"
52808    ))]
52809    pub unsafe fn hits(&self) -> ::cpp_core::CppBox<crate::QVectorOfQRayCasterHit> {
52810        let ffi_result = {
52811            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_hits(
52812                self as *const crate::QAbstractRayCaster,
52813            )
52814        };
52815        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
52816    }
52817
52818    /// <p>Returns the current list of layers</p>
52819    ///
52820    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*> Qt3DRender::QAbstractRayCaster::layers() const```</span>.
52821    ///
52822    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#layers">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the current list of layers</p></div>
52823    #[inline(always)]
52824    #[cfg_attr(
52825        feature = "ritual_rustdoc_nightly",
52826        doc(cfg(any(
52827            cpp_lib_version = "5.11.3",
52828            cpp_lib_version = "5.12.2",
52829            cpp_lib_version = "5.13.0",
52830            cpp_lib_version = "5.14.0"
52831        )))
52832    )]
52833    #[cfg(any(
52834        any(
52835            cpp_lib_version = "5.11.3",
52836            cpp_lib_version = "5.12.2",
52837            cpp_lib_version = "5.13.0",
52838            cpp_lib_version = "5.14.0"
52839        ),
52840        feature = "ritual_rustdoc"
52841    ))]
52842    pub unsafe fn layers(&self) -> ::cpp_core::CppBox<crate::QVectorOfQLayer> {
52843        let ffi_result = {
52844            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_layers(
52845                self as *const crate::QAbstractRayCaster,
52846            )
52847        };
52848        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
52849    }
52850
52851    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QAbstractRayCaster::metaObject() const```</span>.
52852    #[inline(always)]
52853    #[cfg_attr(
52854        feature = "ritual_rustdoc_nightly",
52855        doc(cfg(any(
52856            cpp_lib_version = "5.11.3",
52857            cpp_lib_version = "5.12.2",
52858            cpp_lib_version = "5.13.0",
52859            cpp_lib_version = "5.14.0"
52860        )))
52861    )]
52862    #[cfg(any(
52863        any(
52864            cpp_lib_version = "5.11.3",
52865            cpp_lib_version = "5.12.2",
52866            cpp_lib_version = "5.13.0",
52867            cpp_lib_version = "5.14.0"
52868        ),
52869        feature = "ritual_rustdoc"
52870    ))]
52871    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
52872        let ffi_result = {
52873            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_metaObject(
52874                self as *const crate::QAbstractRayCaster,
52875            )
52876        };
52877        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
52878    }
52879
52880    /// <p>Default constructs an instance of QAbstractRayCaster.</p>
52881    ///
52882    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAbstractRayCaster::QAbstractRayCaster(Qt3DCore::QNode* parent = …)```</span>.
52883    ///
52884    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#QAbstractRayCaster">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QAbstractRayCaster.</p></div>
52885    #[inline(always)]
52886    #[cfg_attr(
52887        feature = "ritual_rustdoc_nightly",
52888        doc(cfg(any(
52889            cpp_lib_version = "5.11.3",
52890            cpp_lib_version = "5.12.2",
52891            cpp_lib_version = "5.13.0",
52892            cpp_lib_version = "5.14.0"
52893        )))
52894    )]
52895    #[cfg(any(
52896        any(
52897            cpp_lib_version = "5.11.3",
52898            cpp_lib_version = "5.12.2",
52899            cpp_lib_version = "5.13.0",
52900            cpp_lib_version = "5.14.0"
52901        ),
52902        feature = "ritual_rustdoc"
52903    ))]
52904    pub unsafe fn new_1a(
52905        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
52906    ) -> ::qt_core::QBox<crate::QAbstractRayCaster> {
52907        let ffi_result = {
52908            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_QAbstractRayCaster(
52909                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
52910                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
52911            )
52912        };
52913        ::qt_core::QBox::from_raw(ffi_result)
52914    }
52915
52916    /// <p>An abstract base class for ray casting in 3d scenes.</p>
52917    ///
52918    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QAbstractRayCaster::QAbstractRayCaster()```</span>.
52919    ///
52920    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>An abstract base class for ray casting in 3d scenes.</p>
52921    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">Qt3DRender::QAbstractRayCaster</a> is an abstract base class for casting rays into a 3d scene. <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">Qt3DRender::QAbstractRayCaster</a> can not be directly instantiated, but rather through its subclasses. <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">QAbstractRayCaster</a> specifies common properties for all ray casters, such as run mode and layer handling, while leaving the actual ray casting details to the subclasses.</p>
52922    /// <p>Ray castings differs from picking (using <a href="http://doc.qt.io/qt-5/qt3drender-qobjectpicker.html">Qt3DRender::QObjectPicker</a>) in that it does not require mouse events to trigger.</p>
52923    /// <p>By default, the instances of <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">Qt3DRender::QAbstractRayCaster</a> are disabled. When enabled, the specified ray will be tested for intersecting objects at every frame. The <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#hits-prop">QAbstractRayCaster::hits</a> property will be updated with the results of the ray casting, even if no objects are found.</p>
52924    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickingsettings.html">Qt3DRender::QPickingSettings</a> can be used to control the ray casting, such as which primitives are tested and how the results are returned.</p>
52925    /// <p>Furthermore, <a href="http://doc.qt.io/qt-5/qt3drender-qlayer.html">Qt3DRender::QLayer</a> components can be used to control how entities, or entity sub-graphs, react to ray casting.</p>
52926    /// <p><b>Note: </b>Components derived from <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html">QAbstractRayCaster</a> should not be shared amount multiple entities.</p></div>
52927    #[inline(always)]
52928    #[cfg_attr(
52929        feature = "ritual_rustdoc_nightly",
52930        doc(cfg(any(
52931            cpp_lib_version = "5.11.3",
52932            cpp_lib_version = "5.12.2",
52933            cpp_lib_version = "5.13.0",
52934            cpp_lib_version = "5.14.0"
52935        )))
52936    )]
52937    #[cfg(any(
52938        any(
52939            cpp_lib_version = "5.11.3",
52940            cpp_lib_version = "5.12.2",
52941            cpp_lib_version = "5.13.0",
52942            cpp_lib_version = "5.14.0"
52943        ),
52944        feature = "ritual_rustdoc"
52945    ))]
52946    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QAbstractRayCaster> {
52947        let ffi_result = {
52948            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_QAbstractRayCaster1()
52949        };
52950        ::qt_core::QBox::from_raw(ffi_result)
52951    }
52952
52953    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QAbstractRayCaster::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
52954    #[inline(always)]
52955    #[cfg_attr(
52956        feature = "ritual_rustdoc_nightly",
52957        doc(cfg(any(
52958            cpp_lib_version = "5.11.3",
52959            cpp_lib_version = "5.12.2",
52960            cpp_lib_version = "5.13.0",
52961            cpp_lib_version = "5.14.0"
52962        )))
52963    )]
52964    #[cfg(any(
52965        any(
52966            cpp_lib_version = "5.11.3",
52967            cpp_lib_version = "5.12.2",
52968            cpp_lib_version = "5.13.0",
52969            cpp_lib_version = "5.14.0"
52970        ),
52971        feature = "ritual_rustdoc"
52972    ))]
52973    pub unsafe fn qt_metacall(
52974        &self,
52975        arg1: ::qt_core::q_meta_object::Call,
52976        arg2: ::std::os::raw::c_int,
52977        arg3: *mut *mut ::std::ffi::c_void,
52978    ) -> ::std::os::raw::c_int {
52979        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_qt_metacall(
52980            self as *const crate::QAbstractRayCaster as *mut crate::QAbstractRayCaster,
52981            arg1,
52982            arg2,
52983            arg3,
52984        )
52985    }
52986
52987    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QAbstractRayCaster::qt_metacast(const char* arg1)```</span>.
52988    #[inline(always)]
52989    #[cfg_attr(
52990        feature = "ritual_rustdoc_nightly",
52991        doc(cfg(any(
52992            cpp_lib_version = "5.11.3",
52993            cpp_lib_version = "5.12.2",
52994            cpp_lib_version = "5.13.0",
52995            cpp_lib_version = "5.14.0"
52996        )))
52997    )]
52998    #[cfg(any(
52999        any(
53000            cpp_lib_version = "5.11.3",
53001            cpp_lib_version = "5.12.2",
53002            cpp_lib_version = "5.13.0",
53003            cpp_lib_version = "5.14.0"
53004        ),
53005        feature = "ritual_rustdoc"
53006    ))]
53007    pub unsafe fn qt_metacast(
53008        &self,
53009        arg1: *const ::std::os::raw::c_char,
53010    ) -> *mut ::std::ffi::c_void {
53011        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_qt_metacast(
53012            self as *const crate::QAbstractRayCaster as *mut crate::QAbstractRayCaster,
53013            arg1,
53014        )
53015    }
53016
53017    /// <p>Remove <i>layer</i> from the current list of layers</p>
53018    ///
53019    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QAbstractRayCaster::removeLayer(Qt3DRender::QLayer* layer)```</span>.
53020    ///
53021    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#removeLayer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Remove <i>layer</i> from the current list of layers</p></div>
53022    #[inline(always)]
53023    #[cfg_attr(
53024        feature = "ritual_rustdoc_nightly",
53025        doc(cfg(any(
53026            cpp_lib_version = "5.11.3",
53027            cpp_lib_version = "5.12.2",
53028            cpp_lib_version = "5.13.0",
53029            cpp_lib_version = "5.14.0"
53030        )))
53031    )]
53032    #[cfg(any(
53033        any(
53034            cpp_lib_version = "5.11.3",
53035            cpp_lib_version = "5.12.2",
53036            cpp_lib_version = "5.13.0",
53037            cpp_lib_version = "5.14.0"
53038        ),
53039        feature = "ritual_rustdoc"
53040    ))]
53041    pub unsafe fn remove_layer(
53042        &self,
53043        layer: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QLayer>>,
53044    ) {
53045        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_removeLayer(
53046            self as *const crate::QAbstractRayCaster as *mut crate::QAbstractRayCaster,
53047            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QLayer>>::cast_into(layer).as_raw_ptr()
53048                as *mut crate::QLayer,
53049        )
53050    }
53051
53052    /// <p>Holds the run mode controlling how often ray casting tests are performed.</p>
53053    ///
53054    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster::RunMode Qt3DRender::QAbstractRayCaster::runMode() const```</span>.
53055    ///
53056    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#runMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the run mode controlling how often ray casting tests are performed.</p>
53057    /// <p>If set to <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#RunMode-enum">SingleShot</a> (the default), when the component is enabled, a single ray casting test will be performed and the component will automatically disable itself.</p>
53058    /// <p>If set to Continuous, ray casting tests will be performed at every frame as long as the component is enabled.</p>
53059    /// <p><b>Access functions:</b></p>
53060    /// <div class="table"><table class="alignedsummary">
53061    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::RunMode </td><td class="memItemRight bottomAlign"><span class="name"><b>runMode</b></span>() const</td></tr>
53062    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRunMode</b></span>(Qt3DRender::QAbstractRayCaster::RunMode <i>runMode</i>)</td></tr>
53063    /// </tbody></table></div>
53064    /// <p><b>Notifier signal:</b></p>
53065    /// <div class="table"><table class="alignedsummary">
53066    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>runModeChanged</b></span>(Qt3DRender::QAbstractRayCaster::RunMode <i>runMode</i>)</td></tr>
53067    /// </tbody></table></div></div>
53068    #[inline(always)]
53069    #[cfg_attr(
53070        feature = "ritual_rustdoc_nightly",
53071        doc(cfg(any(
53072            cpp_lib_version = "5.11.3",
53073            cpp_lib_version = "5.12.2",
53074            cpp_lib_version = "5.13.0",
53075            cpp_lib_version = "5.14.0"
53076        )))
53077    )]
53078    #[cfg(any(
53079        any(
53080            cpp_lib_version = "5.11.3",
53081            cpp_lib_version = "5.12.2",
53082            cpp_lib_version = "5.13.0",
53083            cpp_lib_version = "5.14.0"
53084        ),
53085        feature = "ritual_rustdoc"
53086    ))]
53087    pub unsafe fn run_mode(&self) -> crate::q_abstract_ray_caster::RunMode {
53088        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_runMode(
53089            self as *const crate::QAbstractRayCaster,
53090        )
53091    }
53092
53093    /// <p>Holds the filter mode specifying the entities to select for ray casting tests.</p>
53094    ///
53095    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractRayCaster::setFilterMode(Qt3DRender::QAbstractRayCaster::FilterMode filterMode)```</span>.
53096    ///
53097    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#filterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the filter mode specifying the entities to select for ray casting tests.</p>
53098    /// <p>The default value is AcceptMatchingLayers.</p>
53099    /// <p><b>Access functions:</b></p>
53100    /// <div class="table"><table class="alignedsummary">
53101    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::FilterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>filterMode</b></span>() const</td></tr>
53102    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFilterMode</b></span>(Qt3DRender::QAbstractRayCaster::FilterMode <i>filterMode</i>)</td></tr>
53103    /// </tbody></table></div>
53104    /// <p><b>Notifier signal:</b></p>
53105    /// <div class="table"><table class="alignedsummary">
53106    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>filterModeChanged</b></span>(Qt3DRender::QAbstractRayCaster::FilterMode <i>filterMode</i>)</td></tr>
53107    /// </tbody></table></div></div>
53108    #[inline(always)]
53109    #[cfg_attr(
53110        feature = "ritual_rustdoc_nightly",
53111        doc(cfg(any(
53112            cpp_lib_version = "5.11.3",
53113            cpp_lib_version = "5.12.2",
53114            cpp_lib_version = "5.13.0",
53115            cpp_lib_version = "5.14.0"
53116        )))
53117    )]
53118    #[cfg(any(
53119        any(
53120            cpp_lib_version = "5.11.3",
53121            cpp_lib_version = "5.12.2",
53122            cpp_lib_version = "5.13.0",
53123            cpp_lib_version = "5.14.0"
53124        ),
53125        feature = "ritual_rustdoc"
53126    ))]
53127    pub unsafe fn set_filter_mode(&self, filter_mode: crate::q_abstract_ray_caster::FilterMode) {
53128        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_setFilterMode(
53129            self as *const crate::QAbstractRayCaster as *mut crate::QAbstractRayCaster,
53130            filter_mode,
53131        )
53132    }
53133
53134    /// <p>Holds the run mode controlling how often ray casting tests are performed.</p>
53135    ///
53136    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QAbstractRayCaster::setRunMode(Qt3DRender::QAbstractRayCaster::RunMode runMode)```</span>.
53137    ///
53138    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#runMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the run mode controlling how often ray casting tests are performed.</p>
53139    /// <p>If set to <a href="http://doc.qt.io/qt-5/qt3drender-qabstractraycaster.html#RunMode-enum">SingleShot</a> (the default), when the component is enabled, a single ray casting test will be performed and the component will automatically disable itself.</p>
53140    /// <p>If set to Continuous, ray casting tests will be performed at every frame as long as the component is enabled.</p>
53141    /// <p><b>Access functions:</b></p>
53142    /// <div class="table"><table class="alignedsummary">
53143    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QAbstractRayCaster::RunMode </td><td class="memItemRight bottomAlign"><span class="name"><b>runMode</b></span>() const</td></tr>
53144    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRunMode</b></span>(Qt3DRender::QAbstractRayCaster::RunMode <i>runMode</i>)</td></tr>
53145    /// </tbody></table></div>
53146    /// <p><b>Notifier signal:</b></p>
53147    /// <div class="table"><table class="alignedsummary">
53148    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>runModeChanged</b></span>(Qt3DRender::QAbstractRayCaster::RunMode <i>runMode</i>)</td></tr>
53149    /// </tbody></table></div></div>
53150    #[inline(always)]
53151    #[cfg_attr(
53152        feature = "ritual_rustdoc_nightly",
53153        doc(cfg(any(
53154            cpp_lib_version = "5.11.3",
53155            cpp_lib_version = "5.12.2",
53156            cpp_lib_version = "5.13.0",
53157            cpp_lib_version = "5.14.0"
53158        )))
53159    )]
53160    #[cfg(any(
53161        any(
53162            cpp_lib_version = "5.11.3",
53163            cpp_lib_version = "5.12.2",
53164            cpp_lib_version = "5.13.0",
53165            cpp_lib_version = "5.14.0"
53166        ),
53167        feature = "ritual_rustdoc"
53168    ))]
53169    pub unsafe fn set_run_mode(&self, run_mode: crate::q_abstract_ray_caster::RunMode) {
53170        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_setRunMode(
53171            self as *const crate::QAbstractRayCaster as *mut crate::QAbstractRayCaster,
53172            run_mode,
53173        )
53174    }
53175
53176    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
53177    #[inline(always)]
53178    #[cfg_attr(
53179        feature = "ritual_rustdoc_nightly",
53180        doc(cfg(any(
53181            cpp_lib_version = "5.11.3",
53182            cpp_lib_version = "5.12.2",
53183            cpp_lib_version = "5.13.0",
53184            cpp_lib_version = "5.14.0"
53185        )))
53186    )]
53187    #[cfg(any(
53188        any(
53189            cpp_lib_version = "5.11.3",
53190            cpp_lib_version = "5.12.2",
53191            cpp_lib_version = "5.13.0",
53192            cpp_lib_version = "5.14.0"
53193        ),
53194        feature = "ritual_rustdoc"
53195    ))]
53196    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
53197        let ffi_result =
53198            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_staticMetaObject() };
53199        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
53200            .expect("attempted to construct a null Ref")
53201    }
53202
53203    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAbstractRayCaster::tr(const char* s, const char* c, int n)```</span>.
53204    #[inline(always)]
53205    #[cfg_attr(
53206        feature = "ritual_rustdoc_nightly",
53207        doc(cfg(any(
53208            cpp_lib_version = "5.11.3",
53209            cpp_lib_version = "5.12.2",
53210            cpp_lib_version = "5.13.0",
53211            cpp_lib_version = "5.14.0"
53212        )))
53213    )]
53214    #[cfg(any(
53215        any(
53216            cpp_lib_version = "5.11.3",
53217            cpp_lib_version = "5.12.2",
53218            cpp_lib_version = "5.13.0",
53219            cpp_lib_version = "5.14.0"
53220        ),
53221        feature = "ritual_rustdoc"
53222    ))]
53223    pub unsafe fn tr(
53224        s: *const ::std::os::raw::c_char,
53225        c: *const ::std::os::raw::c_char,
53226        n: ::std::os::raw::c_int,
53227    ) -> ::cpp_core::CppBox<::qt_core::QString> {
53228        let ffi_result =
53229            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_tr(s, c, n) };
53230        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
53231    }
53232
53233    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QAbstractRayCaster::trUtf8(const char* s, const char* c, int n)```</span>.
53234    #[inline(always)]
53235    #[cfg_attr(
53236        feature = "ritual_rustdoc_nightly",
53237        doc(cfg(any(
53238            cpp_lib_version = "5.11.3",
53239            cpp_lib_version = "5.12.2",
53240            cpp_lib_version = "5.13.0",
53241            cpp_lib_version = "5.14.0"
53242        )))
53243    )]
53244    #[cfg(any(
53245        any(
53246            cpp_lib_version = "5.11.3",
53247            cpp_lib_version = "5.12.2",
53248            cpp_lib_version = "5.13.0",
53249            cpp_lib_version = "5.14.0"
53250        ),
53251        feature = "ritual_rustdoc"
53252    ))]
53253    pub unsafe fn tr_utf8(
53254        s: *const ::std::os::raw::c_char,
53255        c: *const ::std::os::raw::c_char,
53256        n: ::std::os::raw::c_int,
53257    ) -> ::cpp_core::CppBox<::qt_core::QString> {
53258        let ffi_result =
53259            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_trUtf8(s, c, n) };
53260        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
53261    }
53262}
53263
53264pub mod q_blit_framebuffer {
53265    //! C++ type: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer```</span>
53266
53267    /// C++ enum: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer::InterpolationMethod```</span>.
53268    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
53269    #[repr(transparent)]
53270    pub struct InterpolationMethod(::std::os::raw::c_int);
53271
53272    impl From<::std::os::raw::c_int> for InterpolationMethod {
53273        fn from(value: ::std::os::raw::c_int) -> Self {
53274            InterpolationMethod(value)
53275        }
53276    }
53277
53278    impl From<InterpolationMethod> for ::std::os::raw::c_int {
53279        fn from(value: InterpolationMethod) -> Self {
53280            value.0
53281        }
53282    }
53283
53284    impl InterpolationMethod {
53285        pub fn to_int(&self) -> ::std::os::raw::c_int {
53286            self.0
53287        }
53288    }
53289
53290    impl InterpolationMethod {
53291        /// C++ enum variant: <span style='color: green;'>```Nearest = 0```</span>
53292        #[allow(non_upper_case_globals)]
53293        pub const Nearest: crate::q_blit_framebuffer::InterpolationMethod =
53294            crate::q_blit_framebuffer::InterpolationMethod(0);
53295        /// C++ enum variant: <span style='color: green;'>```Linear = 1```</span>
53296        #[allow(non_upper_case_globals)]
53297        pub const Linear: crate::q_blit_framebuffer::InterpolationMethod =
53298            crate::q_blit_framebuffer::InterpolationMethod(1);
53299    }
53300}
53301/// <p>FrameGraph node to transfer a rectangle of pixel values from one region of a render target to another.</p>
53302///
53303/// C++ class: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer```</span>.
53304///
53305/// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>FrameGraph node to transfer a rectangle of pixel values from one region of a render target to another.</p>
53306/// <p>This node inserts a <code>glBlitFrameBuffer</code> or an equivalent into the command stream. This provides a more efficient method for copying rectangles between textures or surface backbuffers wrapped by <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> than drawing textured quads. It also supports scaling with the specified interpolation method.</p>
53307/// <p><b>Note: </b>In practice the <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html">QBlitFramebuffer</a> node will often be used in combination with <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">QNoDraw</a> since a blit should not involve issuing draw calls for any entities.</p></div>
53308#[repr(C)]
53309pub struct QBlitFramebuffer {
53310    _unused: u8,
53311}
53312impl QBlitFramebuffer {
53313    /// <p><b>Access functions:</b></p>
53314    ///
53315    /// Returns a built-in Qt signal `Qt3DRender::QBlitFramebuffer::sourceChanged` that can be passed to `qt_core::Signal::connect`.
53316    ///
53317    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53318    /// <div class="table"><table class="alignedsummary">
53319    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRenderTarget *</td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#source">source</a></b></span>() const</td></tr>
53320    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setSource">setSource</a></b></span>(Qt3DRender::QRenderTarget *<i>source</i>)</td></tr>
53321    /// </tbody></table></div>
53322    /// <p><b>Notifier signal:</b></p>
53323    /// <div class="table"><table class="alignedsummary">
53324    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>()</td></tr>
53325    /// </tbody></table></div></div>
53326    #[inline(always)]
53327    #[cfg_attr(
53328        feature = "ritual_rustdoc_nightly",
53329        doc(cfg(any(
53330            cpp_lib_version = "5.11.3",
53331            cpp_lib_version = "5.12.2",
53332            cpp_lib_version = "5.13.0",
53333            cpp_lib_version = "5.14.0"
53334        )))
53335    )]
53336    #[cfg(any(
53337        any(
53338            cpp_lib_version = "5.11.3",
53339            cpp_lib_version = "5.12.2",
53340            cpp_lib_version = "5.13.0",
53341            cpp_lib_version = "5.14.0"
53342        ),
53343        feature = "ritual_rustdoc"
53344    ))]
53345    pub fn source_changed(&self) -> ::qt_core::Signal<()> {
53346        unsafe {
53347            ::qt_core::Signal::new(
53348                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
53349                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2sourceChanged()\0"),
53350            )
53351        }
53352    }
53353
53354    /// <p><b>Access functions:</b></p>
53355    ///
53356    /// Returns a built-in Qt signal `Qt3DRender::QBlitFramebuffer::destinationChanged` that can be passed to `qt_core::Signal::connect`.
53357    ///
53358    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destination-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53359    /// <div class="table"><table class="alignedsummary">
53360    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRenderTarget *</td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destination">destination</a></b></span>() const</td></tr>
53361    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setDestination">setDestination</a></b></span>(Qt3DRender::QRenderTarget *<i>destination</i>)</td></tr>
53362    /// </tbody></table></div>
53363    /// <p><b>Notifier signal:</b></p>
53364    /// <div class="table"><table class="alignedsummary">
53365    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationChanged</b></span>()</td></tr>
53366    /// </tbody></table></div></div>
53367    #[inline(always)]
53368    #[cfg_attr(
53369        feature = "ritual_rustdoc_nightly",
53370        doc(cfg(any(
53371            cpp_lib_version = "5.11.3",
53372            cpp_lib_version = "5.12.2",
53373            cpp_lib_version = "5.13.0",
53374            cpp_lib_version = "5.14.0"
53375        )))
53376    )]
53377    #[cfg(any(
53378        any(
53379            cpp_lib_version = "5.11.3",
53380            cpp_lib_version = "5.12.2",
53381            cpp_lib_version = "5.13.0",
53382            cpp_lib_version = "5.14.0"
53383        ),
53384        feature = "ritual_rustdoc"
53385    ))]
53386    pub fn destination_changed(&self) -> ::qt_core::Signal<()> {
53387        unsafe {
53388            ::qt_core::Signal::new(
53389                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
53390                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2destinationChanged()\0"),
53391            )
53392        }
53393    }
53394
53395    /// <p><b>Access functions:</b></p>
53396    ///
53397    /// Returns a built-in Qt signal `Qt3DRender::QBlitFramebuffer::sourceRectChanged` that can be passed to `qt_core::Signal::connect`.
53398    ///
53399    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceRect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53400    /// <div class="table"><table class="alignedsummary">
53401    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRectF </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceRect">sourceRect</a></b></span>() const</td></tr>
53402    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setSourceRect">setSourceRect</a></b></span>(const QRectF &amp;<i>inputRect</i>)</td></tr>
53403    /// </tbody></table></div>
53404    /// <p><b>Notifier signal:</b></p>
53405    /// <div class="table"><table class="alignedsummary">
53406    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRectChanged</b></span>()</td></tr>
53407    /// </tbody></table></div></div>
53408    #[inline(always)]
53409    #[cfg_attr(
53410        feature = "ritual_rustdoc_nightly",
53411        doc(cfg(any(
53412            cpp_lib_version = "5.11.3",
53413            cpp_lib_version = "5.12.2",
53414            cpp_lib_version = "5.13.0",
53415            cpp_lib_version = "5.14.0"
53416        )))
53417    )]
53418    #[cfg(any(
53419        any(
53420            cpp_lib_version = "5.11.3",
53421            cpp_lib_version = "5.12.2",
53422            cpp_lib_version = "5.13.0",
53423            cpp_lib_version = "5.14.0"
53424        ),
53425        feature = "ritual_rustdoc"
53426    ))]
53427    pub fn source_rect_changed(&self) -> ::qt_core::Signal<()> {
53428        unsafe {
53429            ::qt_core::Signal::new(
53430                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
53431                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2sourceRectChanged()\0"),
53432            )
53433        }
53434    }
53435
53436    /// <p><b>Access functions:</b></p>
53437    ///
53438    /// Returns a built-in Qt signal `Qt3DRender::QBlitFramebuffer::destinationRectChanged` that can be passed to `qt_core::Signal::connect`.
53439    ///
53440    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationRect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53441    /// <div class="table"><table class="alignedsummary">
53442    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRectF </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationRect">destinationRect</a></b></span>() const</td></tr>
53443    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setDestinationRect">setDestinationRect</a></b></span>(const QRectF &amp;<i>outputRect</i>)</td></tr>
53444    /// </tbody></table></div>
53445    /// <p><b>Notifier signal:</b></p>
53446    /// <div class="table"><table class="alignedsummary">
53447    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRectChanged</b></span>()</td></tr>
53448    /// </tbody></table></div></div>
53449    #[inline(always)]
53450    #[cfg_attr(
53451        feature = "ritual_rustdoc_nightly",
53452        doc(cfg(any(
53453            cpp_lib_version = "5.11.3",
53454            cpp_lib_version = "5.12.2",
53455            cpp_lib_version = "5.13.0",
53456            cpp_lib_version = "5.14.0"
53457        )))
53458    )]
53459    #[cfg(any(
53460        any(
53461            cpp_lib_version = "5.11.3",
53462            cpp_lib_version = "5.12.2",
53463            cpp_lib_version = "5.13.0",
53464            cpp_lib_version = "5.14.0"
53465        ),
53466        feature = "ritual_rustdoc"
53467    ))]
53468    pub fn destination_rect_changed(&self) -> ::qt_core::Signal<()> {
53469        unsafe {
53470            ::qt_core::Signal::new(
53471                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
53472                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2destinationRectChanged()\0"),
53473            )
53474        }
53475    }
53476
53477    /// <p><b>Access functions:</b></p>
53478    ///
53479    /// Returns a built-in Qt signal `Qt3DRender::QBlitFramebuffer::sourceAttachmentPointChanged` that can be passed to `qt_core::Signal::connect`.
53480    ///
53481    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceAttachmentPoint-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53482    /// <div class="table"><table class="alignedsummary">
53483    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRenderTargetOutput::AttachmentPoint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceAttachmentPoint">sourceAttachmentPoint</a></b></span>() const</td></tr>
53484    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setSourceAttachmentPoint">setSourceAttachmentPoint</a></b></span>(Qt3DRender::QRenderTargetOutput::AttachmentPoint <i>sourceAttachmentPoint</i>)</td></tr>
53485    /// </tbody></table></div>
53486    /// <p><b>Notifier signal:</b></p>
53487    /// <div class="table"><table class="alignedsummary">
53488    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAttachmentPointChanged</b></span>()</td></tr>
53489    /// </tbody></table></div></div>
53490    #[inline(always)]
53491    #[cfg_attr(
53492        feature = "ritual_rustdoc_nightly",
53493        doc(cfg(any(
53494            cpp_lib_version = "5.11.3",
53495            cpp_lib_version = "5.12.2",
53496            cpp_lib_version = "5.13.0",
53497            cpp_lib_version = "5.14.0"
53498        )))
53499    )]
53500    #[cfg(any(
53501        any(
53502            cpp_lib_version = "5.11.3",
53503            cpp_lib_version = "5.12.2",
53504            cpp_lib_version = "5.13.0",
53505            cpp_lib_version = "5.14.0"
53506        ),
53507        feature = "ritual_rustdoc"
53508    ))]
53509    pub fn source_attachment_point_changed(&self) -> ::qt_core::Signal<()> {
53510        unsafe {
53511            ::qt_core::Signal::new(
53512                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
53513                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
53514                    b"2sourceAttachmentPointChanged()\0",
53515                ),
53516            )
53517        }
53518    }
53519
53520    /// <p><b>Access functions:</b></p>
53521    ///
53522    /// Returns a built-in Qt signal `Qt3DRender::QBlitFramebuffer::destinationAttachmentPointChanged` that can be passed to `qt_core::Signal::connect`.
53523    ///
53524    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationAttachmentPoint-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53525    /// <div class="table"><table class="alignedsummary">
53526    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRenderTargetOutput::AttachmentPoint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationAttachmentPoint">destinationAttachmentPoint</a></b></span>() const</td></tr>
53527    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setDestinationAttachmentPoint">setDestinationAttachmentPoint</a></b></span>(Qt3DRender::QRenderTargetOutput::AttachmentPoint <i>destinationAttachmentPoint</i>)</td></tr>
53528    /// </tbody></table></div>
53529    /// <p><b>Notifier signal:</b></p>
53530    /// <div class="table"><table class="alignedsummary">
53531    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAttachmentPointChanged</b></span>()</td></tr>
53532    /// </tbody></table></div></div>
53533    #[inline(always)]
53534    #[cfg_attr(
53535        feature = "ritual_rustdoc_nightly",
53536        doc(cfg(any(
53537            cpp_lib_version = "5.11.3",
53538            cpp_lib_version = "5.12.2",
53539            cpp_lib_version = "5.13.0",
53540            cpp_lib_version = "5.14.0"
53541        )))
53542    )]
53543    #[cfg(any(
53544        any(
53545            cpp_lib_version = "5.11.3",
53546            cpp_lib_version = "5.12.2",
53547            cpp_lib_version = "5.13.0",
53548            cpp_lib_version = "5.14.0"
53549        ),
53550        feature = "ritual_rustdoc"
53551    ))]
53552    pub fn destination_attachment_point_changed(&self) -> ::qt_core::Signal<()> {
53553        unsafe {
53554            ::qt_core::Signal::new(
53555                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
53556                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
53557                    b"2destinationAttachmentPointChanged()\0",
53558                ),
53559            )
53560        }
53561    }
53562
53563    /// <p><b>Access functions:</b></p>
53564    ///
53565    /// Returns a built-in Qt signal `Qt3DRender::QBlitFramebuffer::interpolationMethodChanged` that can be passed to `qt_core::Signal::connect`.
53566    ///
53567    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#interpolationMethod-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53568    /// <div class="table"><table class="alignedsummary">
53569    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QBlitFramebuffer::InterpolationMethod </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#interpolationMethod">interpolationMethod</a></b></span>() const</td></tr>
53570    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setInterpolationMethod">setInterpolationMethod</a></b></span>(Qt3DRender::QBlitFramebuffer::InterpolationMethod <i>interpolationMethod</i>)</td></tr>
53571    /// </tbody></table></div>
53572    /// <p><b>Notifier signal:</b></p>
53573    /// <div class="table"><table class="alignedsummary">
53574    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>interpolationMethodChanged</b></span>()</td></tr>
53575    /// </tbody></table></div></div>
53576    #[inline(always)]
53577    #[cfg_attr(
53578        feature = "ritual_rustdoc_nightly",
53579        doc(cfg(any(
53580            cpp_lib_version = "5.11.3",
53581            cpp_lib_version = "5.12.2",
53582            cpp_lib_version = "5.13.0",
53583            cpp_lib_version = "5.14.0"
53584        )))
53585    )]
53586    #[cfg(any(
53587        any(
53588            cpp_lib_version = "5.11.3",
53589            cpp_lib_version = "5.12.2",
53590            cpp_lib_version = "5.13.0",
53591            cpp_lib_version = "5.14.0"
53592        ),
53593        feature = "ritual_rustdoc"
53594    ))]
53595    pub fn interpolation_method_changed(&self) -> ::qt_core::Signal<()> {
53596        unsafe {
53597            ::qt_core::Signal::new(
53598                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
53599                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2interpolationMethodChanged()\0"),
53600            )
53601        }
53602    }
53603
53604    /// <p><b>Access functions:</b></p>
53605    ///
53606    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTarget* Qt3DRender::QBlitFramebuffer::destination() const```</span>.
53607    ///
53608    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destination-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53609    /// <div class="table"><table class="alignedsummary">
53610    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRenderTarget *</td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destination">destination</a></b></span>() const</td></tr>
53611    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setDestination">setDestination</a></b></span>(Qt3DRender::QRenderTarget *<i>destination</i>)</td></tr>
53612    /// </tbody></table></div>
53613    /// <p><b>Notifier signal:</b></p>
53614    /// <div class="table"><table class="alignedsummary">
53615    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationChanged</b></span>()</td></tr>
53616    /// </tbody></table></div></div>
53617    #[inline(always)]
53618    #[cfg_attr(
53619        feature = "ritual_rustdoc_nightly",
53620        doc(cfg(any(
53621            cpp_lib_version = "5.11.3",
53622            cpp_lib_version = "5.12.2",
53623            cpp_lib_version = "5.13.0",
53624            cpp_lib_version = "5.14.0"
53625        )))
53626    )]
53627    #[cfg(any(
53628        any(
53629            cpp_lib_version = "5.11.3",
53630            cpp_lib_version = "5.12.2",
53631            cpp_lib_version = "5.13.0",
53632            cpp_lib_version = "5.14.0"
53633        ),
53634        feature = "ritual_rustdoc"
53635    ))]
53636    pub unsafe fn destination(&self) -> ::qt_core::QPtr<crate::QRenderTarget> {
53637        let ffi_result = {
53638            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_destination(
53639                self as *const crate::QBlitFramebuffer,
53640            )
53641        };
53642        ::qt_core::QPtr::from_raw(ffi_result)
53643    }
53644
53645    /// <p><b>Access functions:</b></p>
53646    ///
53647    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint Qt3DRender::QBlitFramebuffer::destinationAttachmentPoint() const```</span>.
53648    ///
53649    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationAttachmentPoint-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53650    /// <div class="table"><table class="alignedsummary">
53651    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRenderTargetOutput::AttachmentPoint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationAttachmentPoint">destinationAttachmentPoint</a></b></span>() const</td></tr>
53652    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setDestinationAttachmentPoint">setDestinationAttachmentPoint</a></b></span>(Qt3DRender::QRenderTargetOutput::AttachmentPoint <i>destinationAttachmentPoint</i>)</td></tr>
53653    /// </tbody></table></div>
53654    /// <p><b>Notifier signal:</b></p>
53655    /// <div class="table"><table class="alignedsummary">
53656    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationAttachmentPointChanged</b></span>()</td></tr>
53657    /// </tbody></table></div></div>
53658    #[inline(always)]
53659    #[cfg_attr(
53660        feature = "ritual_rustdoc_nightly",
53661        doc(cfg(any(
53662            cpp_lib_version = "5.11.3",
53663            cpp_lib_version = "5.12.2",
53664            cpp_lib_version = "5.13.0",
53665            cpp_lib_version = "5.14.0"
53666        )))
53667    )]
53668    #[cfg(any(
53669        any(
53670            cpp_lib_version = "5.11.3",
53671            cpp_lib_version = "5.12.2",
53672            cpp_lib_version = "5.13.0",
53673            cpp_lib_version = "5.14.0"
53674        ),
53675        feature = "ritual_rustdoc"
53676    ))]
53677    pub unsafe fn destination_attachment_point(
53678        &self,
53679    ) -> crate::q_render_target_output::AttachmentPoint {
53680        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_destinationAttachmentPoint(
53681            self as *const crate::QBlitFramebuffer,
53682        )
53683    }
53684
53685    /// <p><b>Access functions:</b></p>
53686    ///
53687    /// Calls C++ function: <span style='color: green;'>```QRectF Qt3DRender::QBlitFramebuffer::destinationRect() const```</span>.
53688    ///
53689    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationRect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53690    /// <div class="table"><table class="alignedsummary">
53691    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRectF </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationRect">destinationRect</a></b></span>() const</td></tr>
53692    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setDestinationRect">setDestinationRect</a></b></span>(const QRectF &amp;<i>outputRect</i>)</td></tr>
53693    /// </tbody></table></div>
53694    /// <p><b>Notifier signal:</b></p>
53695    /// <div class="table"><table class="alignedsummary">
53696    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>destinationRectChanged</b></span>()</td></tr>
53697    /// </tbody></table></div></div>
53698    #[inline(always)]
53699    #[cfg_attr(
53700        feature = "ritual_rustdoc_nightly",
53701        doc(cfg(any(
53702            cpp_lib_version = "5.11.3",
53703            cpp_lib_version = "5.12.2",
53704            cpp_lib_version = "5.13.0",
53705            cpp_lib_version = "5.14.0"
53706        )))
53707    )]
53708    #[cfg(any(
53709        any(
53710            cpp_lib_version = "5.11.3",
53711            cpp_lib_version = "5.12.2",
53712            cpp_lib_version = "5.13.0",
53713            cpp_lib_version = "5.14.0"
53714        ),
53715        feature = "ritual_rustdoc"
53716    ))]
53717    pub unsafe fn destination_rect(&self) -> ::cpp_core::CppBox<::qt_core::QRectF> {
53718        let ffi_result = {
53719            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_destinationRect(
53720                self as *const crate::QBlitFramebuffer,
53721            )
53722        };
53723        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
53724    }
53725
53726    /// <p><b>Access functions:</b></p>
53727    ///
53728    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer::InterpolationMethod Qt3DRender::QBlitFramebuffer::interpolationMethod() const```</span>.
53729    ///
53730    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#interpolationMethod-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
53731    /// <div class="table"><table class="alignedsummary">
53732    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QBlitFramebuffer::InterpolationMethod </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#interpolationMethod">interpolationMethod</a></b></span>() const</td></tr>
53733    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setInterpolationMethod">setInterpolationMethod</a></b></span>(Qt3DRender::QBlitFramebuffer::InterpolationMethod <i>interpolationMethod</i>)</td></tr>
53734    /// </tbody></table></div>
53735    /// <p><b>Notifier signal:</b></p>
53736    /// <div class="table"><table class="alignedsummary">
53737    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>interpolationMethodChanged</b></span>()</td></tr>
53738    /// </tbody></table></div></div>
53739    #[inline(always)]
53740    #[cfg_attr(
53741        feature = "ritual_rustdoc_nightly",
53742        doc(cfg(any(
53743            cpp_lib_version = "5.11.3",
53744            cpp_lib_version = "5.12.2",
53745            cpp_lib_version = "5.13.0",
53746            cpp_lib_version = "5.14.0"
53747        )))
53748    )]
53749    #[cfg(any(
53750        any(
53751            cpp_lib_version = "5.11.3",
53752            cpp_lib_version = "5.12.2",
53753            cpp_lib_version = "5.13.0",
53754            cpp_lib_version = "5.14.0"
53755        ),
53756        feature = "ritual_rustdoc"
53757    ))]
53758    pub unsafe fn interpolation_method(&self) -> crate::q_blit_framebuffer::InterpolationMethod {
53759        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_interpolationMethod(
53760            self as *const crate::QBlitFramebuffer,
53761        )
53762    }
53763
53764    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QBlitFramebuffer::metaObject() const```</span>.
53765    #[inline(always)]
53766    #[cfg_attr(
53767        feature = "ritual_rustdoc_nightly",
53768        doc(cfg(any(
53769            cpp_lib_version = "5.11.3",
53770            cpp_lib_version = "5.12.2",
53771            cpp_lib_version = "5.13.0",
53772            cpp_lib_version = "5.14.0"
53773        )))
53774    )]
53775    #[cfg(any(
53776        any(
53777            cpp_lib_version = "5.11.3",
53778            cpp_lib_version = "5.12.2",
53779            cpp_lib_version = "5.13.0",
53780            cpp_lib_version = "5.14.0"
53781        ),
53782        feature = "ritual_rustdoc"
53783    ))]
53784    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
53785        let ffi_result = {
53786            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_metaObject(
53787                self as *const crate::QBlitFramebuffer,
53788            )
53789        };
53790        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
53791    }
53792
53793    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html">QBlitFramebuffer</a> with the given <i>parent</i>.</p>
53794    ///
53795    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBlitFramebuffer::QBlitFramebuffer(Qt3DCore::QNode* parent = …)```</span>.
53796    ///
53797    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#QBlitFramebuffer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html">QBlitFramebuffer</a> with the given <i>parent</i>.</p></div>
53798    #[inline(always)]
53799    #[cfg_attr(
53800        feature = "ritual_rustdoc_nightly",
53801        doc(cfg(any(
53802            cpp_lib_version = "5.11.3",
53803            cpp_lib_version = "5.12.2",
53804            cpp_lib_version = "5.13.0",
53805            cpp_lib_version = "5.14.0"
53806        )))
53807    )]
53808    #[cfg(any(
53809        any(
53810            cpp_lib_version = "5.11.3",
53811            cpp_lib_version = "5.12.2",
53812            cpp_lib_version = "5.13.0",
53813            cpp_lib_version = "5.14.0"
53814        ),
53815        feature = "ritual_rustdoc"
53816    ))]
53817    pub unsafe fn new_1a(
53818        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
53819    ) -> ::qt_core::QBox<crate::QBlitFramebuffer> {
53820        let ffi_result = {
53821            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_QBlitFramebuffer(
53822                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
53823                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
53824            )
53825        };
53826        ::qt_core::QBox::from_raw(ffi_result)
53827    }
53828
53829    /// <p>FrameGraph node to transfer a rectangle of pixel values from one region of a render target to another.</p>
53830    ///
53831    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QBlitFramebuffer::QBlitFramebuffer()```</span>.
53832    ///
53833    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>FrameGraph node to transfer a rectangle of pixel values from one region of a render target to another.</p>
53834    /// <p>This node inserts a <code>glBlitFrameBuffer</code> or an equivalent into the command stream. This provides a more efficient method for copying rectangles between textures or surface backbuffers wrapped by <a href="http://doc.qt.io/qt-5/qt3drender-qrendertarget.html">QRenderTarget</a> than drawing textured quads. It also supports scaling with the specified interpolation method.</p>
53835    /// <p><b>Note: </b>In practice the <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html">QBlitFramebuffer</a> node will often be used in combination with <a href="http://doc.qt.io/qt-5/qt3drender-qnodraw.html">QNoDraw</a> since a blit should not involve issuing draw calls for any entities.</p></div>
53836    #[inline(always)]
53837    #[cfg_attr(
53838        feature = "ritual_rustdoc_nightly",
53839        doc(cfg(any(
53840            cpp_lib_version = "5.11.3",
53841            cpp_lib_version = "5.12.2",
53842            cpp_lib_version = "5.13.0",
53843            cpp_lib_version = "5.14.0"
53844        )))
53845    )]
53846    #[cfg(any(
53847        any(
53848            cpp_lib_version = "5.11.3",
53849            cpp_lib_version = "5.12.2",
53850            cpp_lib_version = "5.13.0",
53851            cpp_lib_version = "5.14.0"
53852        ),
53853        feature = "ritual_rustdoc"
53854    ))]
53855    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QBlitFramebuffer> {
53856        let ffi_result =
53857            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_QBlitFramebuffer1() };
53858        ::qt_core::QBox::from_raw(ffi_result)
53859    }
53860
53861    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QBlitFramebuffer::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
53862    #[inline(always)]
53863    #[cfg_attr(
53864        feature = "ritual_rustdoc_nightly",
53865        doc(cfg(any(
53866            cpp_lib_version = "5.11.3",
53867            cpp_lib_version = "5.12.2",
53868            cpp_lib_version = "5.13.0",
53869            cpp_lib_version = "5.14.0"
53870        )))
53871    )]
53872    #[cfg(any(
53873        any(
53874            cpp_lib_version = "5.11.3",
53875            cpp_lib_version = "5.12.2",
53876            cpp_lib_version = "5.13.0",
53877            cpp_lib_version = "5.14.0"
53878        ),
53879        feature = "ritual_rustdoc"
53880    ))]
53881    pub unsafe fn qt_metacall(
53882        &self,
53883        arg1: ::qt_core::q_meta_object::Call,
53884        arg2: ::std::os::raw::c_int,
53885        arg3: *mut *mut ::std::ffi::c_void,
53886    ) -> ::std::os::raw::c_int {
53887        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_qt_metacall(
53888            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
53889            arg1,
53890            arg2,
53891            arg3,
53892        )
53893    }
53894
53895    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QBlitFramebuffer::qt_metacast(const char* arg1)```</span>.
53896    #[inline(always)]
53897    #[cfg_attr(
53898        feature = "ritual_rustdoc_nightly",
53899        doc(cfg(any(
53900            cpp_lib_version = "5.11.3",
53901            cpp_lib_version = "5.12.2",
53902            cpp_lib_version = "5.13.0",
53903            cpp_lib_version = "5.14.0"
53904        )))
53905    )]
53906    #[cfg(any(
53907        any(
53908            cpp_lib_version = "5.11.3",
53909            cpp_lib_version = "5.12.2",
53910            cpp_lib_version = "5.13.0",
53911            cpp_lib_version = "5.14.0"
53912        ),
53913        feature = "ritual_rustdoc"
53914    ))]
53915    pub unsafe fn qt_metacast(
53916        &self,
53917        arg1: *const ::std::os::raw::c_char,
53918    ) -> *mut ::std::ffi::c_void {
53919        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_qt_metacast(
53920            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
53921            arg1,
53922        )
53923    }
53924
53925    /// <p>Sets the destination render target. The default value is nullptr, in which case the destination is assumed to be be the default framebuffer (i.e. the backbuffer of the current surface), if there is one.</p>
53926    ///
53927    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QBlitFramebuffer::setDestination(Qt3DRender::QRenderTarget* destination)```</span>.
53928    ///
53929    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setDestination">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the destination render target. The default value is nullptr, in which case the destination is assumed to be be the default framebuffer (i.e. the backbuffer of the current surface), if there is one.</p>
53930    /// <p><b>Note: </b>the source and destination must not refer to the same render target.</p><p><b>Note: </b>As with other nodes, <i>destination</i> gets automatically parented to the <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html">QBlitFramebuffer</a> instance when no parent has been set. The lifetime is also tracked, meaning the destination reverts to nullptr in case the currently set <i>destination</i> is destroyed.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destination-prop">destination</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destination">destination</a>().</p></div>
53931    #[inline(always)]
53932    #[cfg_attr(
53933        feature = "ritual_rustdoc_nightly",
53934        doc(cfg(any(
53935            cpp_lib_version = "5.11.3",
53936            cpp_lib_version = "5.12.2",
53937            cpp_lib_version = "5.13.0",
53938            cpp_lib_version = "5.14.0"
53939        )))
53940    )]
53941    #[cfg(any(
53942        any(
53943            cpp_lib_version = "5.11.3",
53944            cpp_lib_version = "5.12.2",
53945            cpp_lib_version = "5.13.0",
53946            cpp_lib_version = "5.14.0"
53947        ),
53948        feature = "ritual_rustdoc"
53949    ))]
53950    pub unsafe fn set_destination(
53951        &self,
53952        destination: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTarget>>,
53953    ) {
53954        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_setDestination(
53955            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
53956            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTarget>>::cast_into(destination)
53957                .as_raw_ptr() as *mut crate::QRenderTarget,
53958        )
53959    }
53960
53961    /// <p>Sets the <i>destinationAttachmentPoint</i>. Defaults to Qt3DRender::QRenderTargetOutput::AttachmentPoint::Color0.</p>
53962    ///
53963    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QBlitFramebuffer::setDestinationAttachmentPoint(Qt3DRender::QRenderTargetOutput::AttachmentPoint destinationAttachmentPoint)```</span>.
53964    ///
53965    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setDestinationAttachmentPoint">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>destinationAttachmentPoint</i>. Defaults to Qt3DRender::QRenderTargetOutput::AttachmentPoint::Color0.</p>
53966    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationAttachmentPoint-prop">destinationAttachmentPoint</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationAttachmentPoint">destinationAttachmentPoint</a>().</p></div>
53967    #[inline(always)]
53968    #[cfg_attr(
53969        feature = "ritual_rustdoc_nightly",
53970        doc(cfg(any(
53971            cpp_lib_version = "5.11.3",
53972            cpp_lib_version = "5.12.2",
53973            cpp_lib_version = "5.13.0",
53974            cpp_lib_version = "5.14.0"
53975        )))
53976    )]
53977    #[cfg(any(
53978        any(
53979            cpp_lib_version = "5.11.3",
53980            cpp_lib_version = "5.12.2",
53981            cpp_lib_version = "5.13.0",
53982            cpp_lib_version = "5.14.0"
53983        ),
53984        feature = "ritual_rustdoc"
53985    ))]
53986    pub unsafe fn set_destination_attachment_point(
53987        &self,
53988        destination_attachment_point: crate::q_render_target_output::AttachmentPoint,
53989    ) {
53990        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_setDestinationAttachmentPoint(
53991            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
53992            destination_attachment_point,
53993        )
53994    }
53995
53996    /// <p>Sets the destination rectangle to <i>outputRect</i>. The coordinates are assumed to follow the normal Qt coordinate system, meaning Y runs from top to bottom.</p>
53997    ///
53998    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QBlitFramebuffer::setDestinationRect(const QRectF& destinationRect)```</span>.
53999    ///
54000    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setDestinationRect">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the destination rectangle to <i>outputRect</i>. The coordinates are assumed to follow the normal Qt coordinate system, meaning Y runs from top to bottom.</p>
54001    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationRect-prop">destinationRect</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#destinationRect">destinationRect</a>().</p></div>
54002    #[inline(always)]
54003    #[cfg_attr(
54004        feature = "ritual_rustdoc_nightly",
54005        doc(cfg(any(
54006            cpp_lib_version = "5.11.3",
54007            cpp_lib_version = "5.12.2",
54008            cpp_lib_version = "5.13.0",
54009            cpp_lib_version = "5.14.0"
54010        )))
54011    )]
54012    #[cfg(any(
54013        any(
54014            cpp_lib_version = "5.11.3",
54015            cpp_lib_version = "5.12.2",
54016            cpp_lib_version = "5.13.0",
54017            cpp_lib_version = "5.14.0"
54018        ),
54019        feature = "ritual_rustdoc"
54020    ))]
54021    pub unsafe fn set_destination_rect(
54022        &self,
54023        destination_rect: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QRectF>>,
54024    ) {
54025        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_setDestinationRect(
54026            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
54027            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QRectF>>::cast_into(destination_rect)
54028                .as_raw_ptr(),
54029        )
54030    }
54031
54032    /// <p>Sets the <i>interpolationMethod</i> that is applied if the image is stretched. Defaults to Linear.</p>
54033    ///
54034    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QBlitFramebuffer::setInterpolationMethod(Qt3DRender::QBlitFramebuffer::InterpolationMethod interpolationMethod)```</span>.
54035    ///
54036    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setInterpolationMethod">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>interpolationMethod</i> that is applied if the image is stretched. Defaults to Linear.</p>
54037    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#interpolationMethod-prop">interpolationMethod</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#interpolationMethod">interpolationMethod</a>().</p></div>
54038    #[inline(always)]
54039    #[cfg_attr(
54040        feature = "ritual_rustdoc_nightly",
54041        doc(cfg(any(
54042            cpp_lib_version = "5.11.3",
54043            cpp_lib_version = "5.12.2",
54044            cpp_lib_version = "5.13.0",
54045            cpp_lib_version = "5.14.0"
54046        )))
54047    )]
54048    #[cfg(any(
54049        any(
54050            cpp_lib_version = "5.11.3",
54051            cpp_lib_version = "5.12.2",
54052            cpp_lib_version = "5.13.0",
54053            cpp_lib_version = "5.14.0"
54054        ),
54055        feature = "ritual_rustdoc"
54056    ))]
54057    pub unsafe fn set_interpolation_method(
54058        &self,
54059        interpolation_method: crate::q_blit_framebuffer::InterpolationMethod,
54060    ) {
54061        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_setInterpolationMethod(
54062            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
54063            interpolation_method,
54064        )
54065    }
54066
54067    /// <p>Sets the source render target. The default value is nullptr, in which case the source is assumed to be be the default framebuffer (i.e. the backbuffer of the current surface), if there is one.</p>
54068    ///
54069    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QBlitFramebuffer::setSource(Qt3DRender::QRenderTarget* source)```</span>.
54070    ///
54071    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setSource">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the source render target. The default value is nullptr, in which case the source is assumed to be be the default framebuffer (i.e. the backbuffer of the current surface), if there is one.</p>
54072    /// <p><b>Note: </b>the source and destination must not refer to the same render target.</p><p><b>Note: </b>As with other nodes, <i>source</i> gets automatically parented to the <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html">QBlitFramebuffer</a> instance when no parent has been set. The lifetime is also tracked, meaning the source reverts to nullptr in case the currently set <i>source</i> is destroyed.</p><p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#source-prop">source</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#source">source</a>().</p></div>
54073    #[inline(always)]
54074    #[cfg_attr(
54075        feature = "ritual_rustdoc_nightly",
54076        doc(cfg(any(
54077            cpp_lib_version = "5.11.3",
54078            cpp_lib_version = "5.12.2",
54079            cpp_lib_version = "5.13.0",
54080            cpp_lib_version = "5.14.0"
54081        )))
54082    )]
54083    #[cfg(any(
54084        any(
54085            cpp_lib_version = "5.11.3",
54086            cpp_lib_version = "5.12.2",
54087            cpp_lib_version = "5.13.0",
54088            cpp_lib_version = "5.14.0"
54089        ),
54090        feature = "ritual_rustdoc"
54091    ))]
54092    pub unsafe fn set_source(
54093        &self,
54094        source: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTarget>>,
54095    ) {
54096        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_setSource(
54097            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
54098            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTarget>>::cast_into(source)
54099                .as_raw_ptr() as *mut crate::QRenderTarget,
54100        )
54101    }
54102
54103    /// <p>Sets the <i>sourceAttachmentPoint</i>. Defaults to Qt3DRender::QRenderTargetOutput::AttachmentPoint::Color0.</p>
54104    ///
54105    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QBlitFramebuffer::setSourceAttachmentPoint(Qt3DRender::QRenderTargetOutput::AttachmentPoint sourceAttachmentPoint)```</span>.
54106    ///
54107    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setSourceAttachmentPoint">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the <i>sourceAttachmentPoint</i>. Defaults to Qt3DRender::QRenderTargetOutput::AttachmentPoint::Color0.</p>
54108    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceAttachmentPoint-prop">sourceAttachmentPoint</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceAttachmentPoint">sourceAttachmentPoint</a>().</p></div>
54109    #[inline(always)]
54110    #[cfg_attr(
54111        feature = "ritual_rustdoc_nightly",
54112        doc(cfg(any(
54113            cpp_lib_version = "5.11.3",
54114            cpp_lib_version = "5.12.2",
54115            cpp_lib_version = "5.13.0",
54116            cpp_lib_version = "5.14.0"
54117        )))
54118    )]
54119    #[cfg(any(
54120        any(
54121            cpp_lib_version = "5.11.3",
54122            cpp_lib_version = "5.12.2",
54123            cpp_lib_version = "5.13.0",
54124            cpp_lib_version = "5.14.0"
54125        ),
54126        feature = "ritual_rustdoc"
54127    ))]
54128    pub unsafe fn set_source_attachment_point(
54129        &self,
54130        source_attachment_point: crate::q_render_target_output::AttachmentPoint,
54131    ) {
54132        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_setSourceAttachmentPoint(
54133            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
54134            source_attachment_point,
54135        )
54136    }
54137
54138    /// <p>Sets the source rectangle to <i>inputRect</i>. The coordinates are assumed to follow the normal Qt coordinate system, meaning Y runs from top to bottom.</p>
54139    ///
54140    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QBlitFramebuffer::setSourceRect(const QRectF& sourceRect)```</span>.
54141    ///
54142    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setSourceRect">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the source rectangle to <i>inputRect</i>. The coordinates are assumed to follow the normal Qt coordinate system, meaning Y runs from top to bottom.</p>
54143    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceRect-prop">sourceRect</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceRect">sourceRect</a>().</p></div>
54144    #[inline(always)]
54145    #[cfg_attr(
54146        feature = "ritual_rustdoc_nightly",
54147        doc(cfg(any(
54148            cpp_lib_version = "5.11.3",
54149            cpp_lib_version = "5.12.2",
54150            cpp_lib_version = "5.13.0",
54151            cpp_lib_version = "5.14.0"
54152        )))
54153    )]
54154    #[cfg(any(
54155        any(
54156            cpp_lib_version = "5.11.3",
54157            cpp_lib_version = "5.12.2",
54158            cpp_lib_version = "5.13.0",
54159            cpp_lib_version = "5.14.0"
54160        ),
54161        feature = "ritual_rustdoc"
54162    ))]
54163    pub unsafe fn set_source_rect(
54164        &self,
54165        source_rect: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QRectF>>,
54166    ) {
54167        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_setSourceRect(
54168            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
54169            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QRectF>>::cast_into(source_rect)
54170                .as_raw_ptr(),
54171        )
54172    }
54173
54174    /// <p><b>Access functions:</b></p>
54175    ///
54176    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTarget* Qt3DRender::QBlitFramebuffer::source() const```</span>.
54177    ///
54178    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#source-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
54179    /// <div class="table"><table class="alignedsummary">
54180    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRenderTarget *</td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#source">source</a></b></span>() const</td></tr>
54181    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setSource">setSource</a></b></span>(Qt3DRender::QRenderTarget *<i>source</i>)</td></tr>
54182    /// </tbody></table></div>
54183    /// <p><b>Notifier signal:</b></p>
54184    /// <div class="table"><table class="alignedsummary">
54185    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceChanged</b></span>()</td></tr>
54186    /// </tbody></table></div></div>
54187    #[inline(always)]
54188    #[cfg_attr(
54189        feature = "ritual_rustdoc_nightly",
54190        doc(cfg(any(
54191            cpp_lib_version = "5.11.3",
54192            cpp_lib_version = "5.12.2",
54193            cpp_lib_version = "5.13.0",
54194            cpp_lib_version = "5.14.0"
54195        )))
54196    )]
54197    #[cfg(any(
54198        any(
54199            cpp_lib_version = "5.11.3",
54200            cpp_lib_version = "5.12.2",
54201            cpp_lib_version = "5.13.0",
54202            cpp_lib_version = "5.14.0"
54203        ),
54204        feature = "ritual_rustdoc"
54205    ))]
54206    pub unsafe fn source(&self) -> ::qt_core::QPtr<crate::QRenderTarget> {
54207        let ffi_result = {
54208            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_source(
54209                self as *const crate::QBlitFramebuffer,
54210            )
54211        };
54212        ::qt_core::QPtr::from_raw(ffi_result)
54213    }
54214
54215    /// <p><b>Access functions:</b></p>
54216    ///
54217    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint Qt3DRender::QBlitFramebuffer::sourceAttachmentPoint() const```</span>.
54218    ///
54219    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceAttachmentPoint-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
54220    /// <div class="table"><table class="alignedsummary">
54221    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRenderTargetOutput::AttachmentPoint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceAttachmentPoint">sourceAttachmentPoint</a></b></span>() const</td></tr>
54222    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setSourceAttachmentPoint">setSourceAttachmentPoint</a></b></span>(Qt3DRender::QRenderTargetOutput::AttachmentPoint <i>sourceAttachmentPoint</i>)</td></tr>
54223    /// </tbody></table></div>
54224    /// <p><b>Notifier signal:</b></p>
54225    /// <div class="table"><table class="alignedsummary">
54226    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceAttachmentPointChanged</b></span>()</td></tr>
54227    /// </tbody></table></div></div>
54228    #[inline(always)]
54229    #[cfg_attr(
54230        feature = "ritual_rustdoc_nightly",
54231        doc(cfg(any(
54232            cpp_lib_version = "5.11.3",
54233            cpp_lib_version = "5.12.2",
54234            cpp_lib_version = "5.13.0",
54235            cpp_lib_version = "5.14.0"
54236        )))
54237    )]
54238    #[cfg(any(
54239        any(
54240            cpp_lib_version = "5.11.3",
54241            cpp_lib_version = "5.12.2",
54242            cpp_lib_version = "5.13.0",
54243            cpp_lib_version = "5.14.0"
54244        ),
54245        feature = "ritual_rustdoc"
54246    ))]
54247    pub unsafe fn source_attachment_point(&self) -> crate::q_render_target_output::AttachmentPoint {
54248        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_sourceAttachmentPoint(
54249            self as *const crate::QBlitFramebuffer,
54250        )
54251    }
54252
54253    /// <p><b>Access functions:</b></p>
54254    ///
54255    /// Calls C++ function: <span style='color: green;'>```QRectF Qt3DRender::QBlitFramebuffer::sourceRect() const```</span>.
54256    ///
54257    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceRect-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
54258    /// <div class="table"><table class="alignedsummary">
54259    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QRectF </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#sourceRect">sourceRect</a></b></span>() const</td></tr>
54260    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#setSourceRect">setSourceRect</a></b></span>(const QRectF &amp;<i>inputRect</i>)</td></tr>
54261    /// </tbody></table></div>
54262    /// <p><b>Notifier signal:</b></p>
54263    /// <div class="table"><table class="alignedsummary">
54264    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sourceRectChanged</b></span>()</td></tr>
54265    /// </tbody></table></div></div>
54266    #[inline(always)]
54267    #[cfg_attr(
54268        feature = "ritual_rustdoc_nightly",
54269        doc(cfg(any(
54270            cpp_lib_version = "5.11.3",
54271            cpp_lib_version = "5.12.2",
54272            cpp_lib_version = "5.13.0",
54273            cpp_lib_version = "5.14.0"
54274        )))
54275    )]
54276    #[cfg(any(
54277        any(
54278            cpp_lib_version = "5.11.3",
54279            cpp_lib_version = "5.12.2",
54280            cpp_lib_version = "5.13.0",
54281            cpp_lib_version = "5.14.0"
54282        ),
54283        feature = "ritual_rustdoc"
54284    ))]
54285    pub unsafe fn source_rect(&self) -> ::cpp_core::CppBox<::qt_core::QRectF> {
54286        let ffi_result = {
54287            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_sourceRect(
54288                self as *const crate::QBlitFramebuffer,
54289            )
54290        };
54291        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
54292    }
54293
54294    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
54295    #[inline(always)]
54296    #[cfg_attr(
54297        feature = "ritual_rustdoc_nightly",
54298        doc(cfg(any(
54299            cpp_lib_version = "5.11.3",
54300            cpp_lib_version = "5.12.2",
54301            cpp_lib_version = "5.13.0",
54302            cpp_lib_version = "5.14.0"
54303        )))
54304    )]
54305    #[cfg(any(
54306        any(
54307            cpp_lib_version = "5.11.3",
54308            cpp_lib_version = "5.12.2",
54309            cpp_lib_version = "5.13.0",
54310            cpp_lib_version = "5.14.0"
54311        ),
54312        feature = "ritual_rustdoc"
54313    ))]
54314    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
54315        let ffi_result =
54316            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_staticMetaObject() };
54317        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
54318            .expect("attempted to construct a null Ref")
54319    }
54320
54321    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBlitFramebuffer::tr(const char* s, const char* c, int n)```</span>.
54322    #[inline(always)]
54323    #[cfg_attr(
54324        feature = "ritual_rustdoc_nightly",
54325        doc(cfg(any(
54326            cpp_lib_version = "5.11.3",
54327            cpp_lib_version = "5.12.2",
54328            cpp_lib_version = "5.13.0",
54329            cpp_lib_version = "5.14.0"
54330        )))
54331    )]
54332    #[cfg(any(
54333        any(
54334            cpp_lib_version = "5.11.3",
54335            cpp_lib_version = "5.12.2",
54336            cpp_lib_version = "5.13.0",
54337            cpp_lib_version = "5.14.0"
54338        ),
54339        feature = "ritual_rustdoc"
54340    ))]
54341    pub unsafe fn tr(
54342        s: *const ::std::os::raw::c_char,
54343        c: *const ::std::os::raw::c_char,
54344        n: ::std::os::raw::c_int,
54345    ) -> ::cpp_core::CppBox<::qt_core::QString> {
54346        let ffi_result =
54347            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_tr(s, c, n) };
54348        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
54349    }
54350
54351    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QBlitFramebuffer::trUtf8(const char* s, const char* c, int n)```</span>.
54352    #[inline(always)]
54353    #[cfg_attr(
54354        feature = "ritual_rustdoc_nightly",
54355        doc(cfg(any(
54356            cpp_lib_version = "5.11.3",
54357            cpp_lib_version = "5.12.2",
54358            cpp_lib_version = "5.13.0",
54359            cpp_lib_version = "5.14.0"
54360        )))
54361    )]
54362    #[cfg(any(
54363        any(
54364            cpp_lib_version = "5.11.3",
54365            cpp_lib_version = "5.12.2",
54366            cpp_lib_version = "5.13.0",
54367            cpp_lib_version = "5.14.0"
54368        ),
54369        feature = "ritual_rustdoc"
54370    ))]
54371    pub unsafe fn tr_utf8(
54372        s: *const ::std::os::raw::c_char,
54373        c: *const ::std::os::raw::c_char,
54374        n: ::std::os::raw::c_int,
54375    ) -> ::cpp_core::CppBox<::qt_core::QString> {
54376        let ffi_result =
54377            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_trUtf8(s, c, n) };
54378        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
54379    }
54380}
54381
54382/// <p>Specifies the width of rasterized lines.</p>
54383///
54384/// C++ class: <span style='color: green;'>```Qt3DRender::QLineWidth```</span>.
54385///
54386/// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the width of rasterized lines.</p></div>
54387#[repr(C)]
54388pub struct QLineWidth {
54389    _unused: u8,
54390}
54391impl QLineWidth {
54392    /// <p>Specifies the width value to be used.</p>
54393    ///
54394    /// Returns a built-in Qt slot `Qt3DRender::QLineWidth::setValue` that can be passed to `qt_core::Signal::connect`.
54395    ///
54396    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the width value to be used.</p>
54397    /// <p><b>Access functions:</b></p>
54398    /// <div class="table"><table class="alignedsummary">
54399    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
54400    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(float <i>value</i>)</td></tr>
54401    /// </tbody></table></div>
54402    /// <p><b>Notifier signal:</b></p>
54403    /// <div class="table"><table class="alignedsummary">
54404    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(float <i>value</i>)</td></tr>
54405    /// </tbody></table></div></div>
54406    #[inline(always)]
54407    #[cfg_attr(
54408        feature = "ritual_rustdoc_nightly",
54409        doc(cfg(any(
54410            cpp_lib_version = "5.11.3",
54411            cpp_lib_version = "5.12.2",
54412            cpp_lib_version = "5.13.0",
54413            cpp_lib_version = "5.14.0"
54414        )))
54415    )]
54416    #[cfg(any(
54417        any(
54418            cpp_lib_version = "5.11.3",
54419            cpp_lib_version = "5.12.2",
54420            cpp_lib_version = "5.13.0",
54421            cpp_lib_version = "5.14.0"
54422        ),
54423        feature = "ritual_rustdoc"
54424    ))]
54425    pub fn slot_set_value(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
54426        unsafe {
54427            ::qt_core::Receiver::new(
54428                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
54429                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setValue(float)\0"),
54430            )
54431        }
54432    }
54433
54434    /// <p><b>Access functions:</b></p>
54435    ///
54436    /// Returns a built-in Qt slot `Qt3DRender::QLineWidth::setSmooth` that can be passed to `qt_core::Signal::connect`.
54437    ///
54438    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#smooth-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
54439    /// <div class="table"><table class="alignedsummary">
54440    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>smooth</b></span>() const</td></tr>
54441    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSmooth</b></span>(bool <i>enabled</i>)</td></tr>
54442    /// </tbody></table></div>
54443    /// <p><b>Notifier signal:</b></p>
54444    /// <div class="table"><table class="alignedsummary">
54445    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>smoothChanged</b></span>(bool <i>enabled</i>)</td></tr>
54446    /// </tbody></table></div></div>
54447    #[inline(always)]
54448    #[cfg_attr(
54449        feature = "ritual_rustdoc_nightly",
54450        doc(cfg(any(
54451            cpp_lib_version = "5.11.3",
54452            cpp_lib_version = "5.12.2",
54453            cpp_lib_version = "5.13.0",
54454            cpp_lib_version = "5.14.0"
54455        )))
54456    )]
54457    #[cfg(any(
54458        any(
54459            cpp_lib_version = "5.11.3",
54460            cpp_lib_version = "5.12.2",
54461            cpp_lib_version = "5.13.0",
54462            cpp_lib_version = "5.14.0"
54463        ),
54464        feature = "ritual_rustdoc"
54465    ))]
54466    pub fn slot_set_smooth(&self) -> ::qt_core::Receiver<(bool,)> {
54467        unsafe {
54468            ::qt_core::Receiver::new(
54469                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
54470                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setSmooth(bool)\0"),
54471            )
54472        }
54473    }
54474
54475    /// <p>Specifies the width value to be used.</p>
54476    ///
54477    /// Returns a built-in Qt signal `Qt3DRender::QLineWidth::valueChanged` that can be passed to `qt_core::Signal::connect`.
54478    ///
54479    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the width value to be used.</p>
54480    /// <p><b>Access functions:</b></p>
54481    /// <div class="table"><table class="alignedsummary">
54482    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
54483    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(float <i>value</i>)</td></tr>
54484    /// </tbody></table></div>
54485    /// <p><b>Notifier signal:</b></p>
54486    /// <div class="table"><table class="alignedsummary">
54487    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(float <i>value</i>)</td></tr>
54488    /// </tbody></table></div></div>
54489    #[inline(always)]
54490    #[cfg_attr(
54491        feature = "ritual_rustdoc_nightly",
54492        doc(cfg(any(
54493            cpp_lib_version = "5.11.3",
54494            cpp_lib_version = "5.12.2",
54495            cpp_lib_version = "5.13.0",
54496            cpp_lib_version = "5.14.0"
54497        )))
54498    )]
54499    #[cfg(any(
54500        any(
54501            cpp_lib_version = "5.11.3",
54502            cpp_lib_version = "5.12.2",
54503            cpp_lib_version = "5.13.0",
54504            cpp_lib_version = "5.14.0"
54505        ),
54506        feature = "ritual_rustdoc"
54507    ))]
54508    pub fn value_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
54509        unsafe {
54510            ::qt_core::Signal::new(
54511                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
54512                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2valueChanged(float)\0"),
54513            )
54514        }
54515    }
54516
54517    /// <p><b>Access functions:</b></p>
54518    ///
54519    /// Returns a built-in Qt signal `Qt3DRender::QLineWidth::smoothChanged` that can be passed to `qt_core::Signal::connect`.
54520    ///
54521    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#smooth-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
54522    /// <div class="table"><table class="alignedsummary">
54523    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>smooth</b></span>() const</td></tr>
54524    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSmooth</b></span>(bool <i>enabled</i>)</td></tr>
54525    /// </tbody></table></div>
54526    /// <p><b>Notifier signal:</b></p>
54527    /// <div class="table"><table class="alignedsummary">
54528    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>smoothChanged</b></span>(bool <i>enabled</i>)</td></tr>
54529    /// </tbody></table></div></div>
54530    #[inline(always)]
54531    #[cfg_attr(
54532        feature = "ritual_rustdoc_nightly",
54533        doc(cfg(any(
54534            cpp_lib_version = "5.11.3",
54535            cpp_lib_version = "5.12.2",
54536            cpp_lib_version = "5.13.0",
54537            cpp_lib_version = "5.14.0"
54538        )))
54539    )]
54540    #[cfg(any(
54541        any(
54542            cpp_lib_version = "5.11.3",
54543            cpp_lib_version = "5.12.2",
54544            cpp_lib_version = "5.13.0",
54545            cpp_lib_version = "5.14.0"
54546        ),
54547        feature = "ritual_rustdoc"
54548    ))]
54549    pub fn smooth_changed(&self) -> ::qt_core::Signal<(bool,)> {
54550        unsafe {
54551            ::qt_core::Signal::new(
54552                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
54553                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2smoothChanged(bool)\0"),
54554            )
54555        }
54556    }
54557
54558    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QLineWidth::metaObject() const```</span>.
54559    #[inline(always)]
54560    #[cfg_attr(
54561        feature = "ritual_rustdoc_nightly",
54562        doc(cfg(any(
54563            cpp_lib_version = "5.11.3",
54564            cpp_lib_version = "5.12.2",
54565            cpp_lib_version = "5.13.0",
54566            cpp_lib_version = "5.14.0"
54567        )))
54568    )]
54569    #[cfg(any(
54570        any(
54571            cpp_lib_version = "5.11.3",
54572            cpp_lib_version = "5.12.2",
54573            cpp_lib_version = "5.13.0",
54574            cpp_lib_version = "5.14.0"
54575        ),
54576        feature = "ritual_rustdoc"
54577    ))]
54578    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
54579        let ffi_result = {
54580            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_metaObject(
54581                self as *const crate::QLineWidth,
54582            )
54583        };
54584        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
54585    }
54586
54587    /// <p>Default constructs an instance of QLineWidth.</p>
54588    ///
54589    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLineWidth::QLineWidth(Qt3DCore::QNode* parent = …)```</span>.
54590    ///
54591    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#QLineWidth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QLineWidth.</p></div>
54592    #[inline(always)]
54593    #[cfg_attr(
54594        feature = "ritual_rustdoc_nightly",
54595        doc(cfg(any(
54596            cpp_lib_version = "5.11.3",
54597            cpp_lib_version = "5.12.2",
54598            cpp_lib_version = "5.13.0",
54599            cpp_lib_version = "5.14.0"
54600        )))
54601    )]
54602    #[cfg(any(
54603        any(
54604            cpp_lib_version = "5.11.3",
54605            cpp_lib_version = "5.12.2",
54606            cpp_lib_version = "5.13.0",
54607            cpp_lib_version = "5.14.0"
54608        ),
54609        feature = "ritual_rustdoc"
54610    ))]
54611    pub unsafe fn new_1a(
54612        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
54613    ) -> ::qt_core::QBox<crate::QLineWidth> {
54614        let ffi_result = {
54615            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_QLineWidth(
54616                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
54617                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
54618            )
54619        };
54620        ::qt_core::QBox::from_raw(ffi_result)
54621    }
54622
54623    /// <p>Specifies the width of rasterized lines.</p>
54624    ///
54625    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QLineWidth::QLineWidth()```</span>.
54626    ///
54627    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the width of rasterized lines.</p></div>
54628    #[inline(always)]
54629    #[cfg_attr(
54630        feature = "ritual_rustdoc_nightly",
54631        doc(cfg(any(
54632            cpp_lib_version = "5.11.3",
54633            cpp_lib_version = "5.12.2",
54634            cpp_lib_version = "5.13.0",
54635            cpp_lib_version = "5.14.0"
54636        )))
54637    )]
54638    #[cfg(any(
54639        any(
54640            cpp_lib_version = "5.11.3",
54641            cpp_lib_version = "5.12.2",
54642            cpp_lib_version = "5.13.0",
54643            cpp_lib_version = "5.14.0"
54644        ),
54645        feature = "ritual_rustdoc"
54646    ))]
54647    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QLineWidth> {
54648        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_QLineWidth1() };
54649        ::qt_core::QBox::from_raw(ffi_result)
54650    }
54651
54652    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QLineWidth::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
54653    #[inline(always)]
54654    #[cfg_attr(
54655        feature = "ritual_rustdoc_nightly",
54656        doc(cfg(any(
54657            cpp_lib_version = "5.11.3",
54658            cpp_lib_version = "5.12.2",
54659            cpp_lib_version = "5.13.0",
54660            cpp_lib_version = "5.14.0"
54661        )))
54662    )]
54663    #[cfg(any(
54664        any(
54665            cpp_lib_version = "5.11.3",
54666            cpp_lib_version = "5.12.2",
54667            cpp_lib_version = "5.13.0",
54668            cpp_lib_version = "5.14.0"
54669        ),
54670        feature = "ritual_rustdoc"
54671    ))]
54672    pub unsafe fn qt_metacall(
54673        &self,
54674        arg1: ::qt_core::q_meta_object::Call,
54675        arg2: ::std::os::raw::c_int,
54676        arg3: *mut *mut ::std::ffi::c_void,
54677    ) -> ::std::os::raw::c_int {
54678        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_qt_metacall(
54679            self as *const crate::QLineWidth as *mut crate::QLineWidth,
54680            arg1,
54681            arg2,
54682            arg3,
54683        )
54684    }
54685
54686    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QLineWidth::qt_metacast(const char* arg1)```</span>.
54687    #[inline(always)]
54688    #[cfg_attr(
54689        feature = "ritual_rustdoc_nightly",
54690        doc(cfg(any(
54691            cpp_lib_version = "5.11.3",
54692            cpp_lib_version = "5.12.2",
54693            cpp_lib_version = "5.13.0",
54694            cpp_lib_version = "5.14.0"
54695        )))
54696    )]
54697    #[cfg(any(
54698        any(
54699            cpp_lib_version = "5.11.3",
54700            cpp_lib_version = "5.12.2",
54701            cpp_lib_version = "5.13.0",
54702            cpp_lib_version = "5.14.0"
54703        ),
54704        feature = "ritual_rustdoc"
54705    ))]
54706    pub unsafe fn qt_metacast(
54707        &self,
54708        arg1: *const ::std::os::raw::c_char,
54709    ) -> *mut ::std::ffi::c_void {
54710        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_qt_metacast(
54711            self as *const crate::QLineWidth as *mut crate::QLineWidth,
54712            arg1,
54713        )
54714    }
54715
54716    /// <p><b>Access functions:</b></p>
54717    ///
54718    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QLineWidth::setSmooth(bool enabled)```</span>.
54719    ///
54720    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#smooth-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
54721    /// <div class="table"><table class="alignedsummary">
54722    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>smooth</b></span>() const</td></tr>
54723    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSmooth</b></span>(bool <i>enabled</i>)</td></tr>
54724    /// </tbody></table></div>
54725    /// <p><b>Notifier signal:</b></p>
54726    /// <div class="table"><table class="alignedsummary">
54727    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>smoothChanged</b></span>(bool <i>enabled</i>)</td></tr>
54728    /// </tbody></table></div></div>
54729    #[inline(always)]
54730    #[cfg_attr(
54731        feature = "ritual_rustdoc_nightly",
54732        doc(cfg(any(
54733            cpp_lib_version = "5.11.3",
54734            cpp_lib_version = "5.12.2",
54735            cpp_lib_version = "5.13.0",
54736            cpp_lib_version = "5.14.0"
54737        )))
54738    )]
54739    #[cfg(any(
54740        any(
54741            cpp_lib_version = "5.11.3",
54742            cpp_lib_version = "5.12.2",
54743            cpp_lib_version = "5.13.0",
54744            cpp_lib_version = "5.14.0"
54745        ),
54746        feature = "ritual_rustdoc"
54747    ))]
54748    pub unsafe fn set_smooth(&self, enabled: bool) {
54749        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_setSmooth(
54750            self as *const crate::QLineWidth as *mut crate::QLineWidth,
54751            enabled,
54752        )
54753    }
54754
54755    /// <p>Specifies the width value to be used.</p>
54756    ///
54757    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QLineWidth::setValue(float value)```</span>.
54758    ///
54759    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the width value to be used.</p>
54760    /// <p><b>Access functions:</b></p>
54761    /// <div class="table"><table class="alignedsummary">
54762    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
54763    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(float <i>value</i>)</td></tr>
54764    /// </tbody></table></div>
54765    /// <p><b>Notifier signal:</b></p>
54766    /// <div class="table"><table class="alignedsummary">
54767    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(float <i>value</i>)</td></tr>
54768    /// </tbody></table></div></div>
54769    #[inline(always)]
54770    #[cfg_attr(
54771        feature = "ritual_rustdoc_nightly",
54772        doc(cfg(any(
54773            cpp_lib_version = "5.11.3",
54774            cpp_lib_version = "5.12.2",
54775            cpp_lib_version = "5.13.0",
54776            cpp_lib_version = "5.14.0"
54777        )))
54778    )]
54779    #[cfg(any(
54780        any(
54781            cpp_lib_version = "5.11.3",
54782            cpp_lib_version = "5.12.2",
54783            cpp_lib_version = "5.13.0",
54784            cpp_lib_version = "5.14.0"
54785        ),
54786        feature = "ritual_rustdoc"
54787    ))]
54788    pub unsafe fn set_value(&self, value: ::std::os::raw::c_float) {
54789        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_setValue(
54790            self as *const crate::QLineWidth as *mut crate::QLineWidth,
54791            value,
54792        )
54793    }
54794
54795    /// <p><b>Access functions:</b></p>
54796    ///
54797    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QLineWidth::smooth() const```</span>.
54798    ///
54799    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#smooth-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><b>Access functions:</b></p>
54800    /// <div class="table"><table class="alignedsummary">
54801    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>smooth</b></span>() const</td></tr>
54802    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setSmooth</b></span>(bool <i>enabled</i>)</td></tr>
54803    /// </tbody></table></div>
54804    /// <p><b>Notifier signal:</b></p>
54805    /// <div class="table"><table class="alignedsummary">
54806    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>smoothChanged</b></span>(bool <i>enabled</i>)</td></tr>
54807    /// </tbody></table></div></div>
54808    #[inline(always)]
54809    #[cfg_attr(
54810        feature = "ritual_rustdoc_nightly",
54811        doc(cfg(any(
54812            cpp_lib_version = "5.11.3",
54813            cpp_lib_version = "5.12.2",
54814            cpp_lib_version = "5.13.0",
54815            cpp_lib_version = "5.14.0"
54816        )))
54817    )]
54818    #[cfg(any(
54819        any(
54820            cpp_lib_version = "5.11.3",
54821            cpp_lib_version = "5.12.2",
54822            cpp_lib_version = "5.13.0",
54823            cpp_lib_version = "5.14.0"
54824        ),
54825        feature = "ritual_rustdoc"
54826    ))]
54827    pub unsafe fn smooth(&self) -> bool {
54828        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_smooth(
54829            self as *const crate::QLineWidth,
54830        )
54831    }
54832
54833    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
54834    #[inline(always)]
54835    #[cfg_attr(
54836        feature = "ritual_rustdoc_nightly",
54837        doc(cfg(any(
54838            cpp_lib_version = "5.11.3",
54839            cpp_lib_version = "5.12.2",
54840            cpp_lib_version = "5.13.0",
54841            cpp_lib_version = "5.14.0"
54842        )))
54843    )]
54844    #[cfg(any(
54845        any(
54846            cpp_lib_version = "5.11.3",
54847            cpp_lib_version = "5.12.2",
54848            cpp_lib_version = "5.13.0",
54849            cpp_lib_version = "5.14.0"
54850        ),
54851        feature = "ritual_rustdoc"
54852    ))]
54853    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
54854        let ffi_result =
54855            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_staticMetaObject() };
54856        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
54857            .expect("attempted to construct a null Ref")
54858    }
54859
54860    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLineWidth::tr(const char* s, const char* c, int n)```</span>.
54861    #[inline(always)]
54862    #[cfg_attr(
54863        feature = "ritual_rustdoc_nightly",
54864        doc(cfg(any(
54865            cpp_lib_version = "5.11.3",
54866            cpp_lib_version = "5.12.2",
54867            cpp_lib_version = "5.13.0",
54868            cpp_lib_version = "5.14.0"
54869        )))
54870    )]
54871    #[cfg(any(
54872        any(
54873            cpp_lib_version = "5.11.3",
54874            cpp_lib_version = "5.12.2",
54875            cpp_lib_version = "5.13.0",
54876            cpp_lib_version = "5.14.0"
54877        ),
54878        feature = "ritual_rustdoc"
54879    ))]
54880    pub unsafe fn tr(
54881        s: *const ::std::os::raw::c_char,
54882        c: *const ::std::os::raw::c_char,
54883        n: ::std::os::raw::c_int,
54884    ) -> ::cpp_core::CppBox<::qt_core::QString> {
54885        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_tr(s, c, n) };
54886        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
54887    }
54888
54889    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QLineWidth::trUtf8(const char* s, const char* c, int n)```</span>.
54890    #[inline(always)]
54891    #[cfg_attr(
54892        feature = "ritual_rustdoc_nightly",
54893        doc(cfg(any(
54894            cpp_lib_version = "5.11.3",
54895            cpp_lib_version = "5.12.2",
54896            cpp_lib_version = "5.13.0",
54897            cpp_lib_version = "5.14.0"
54898        )))
54899    )]
54900    #[cfg(any(
54901        any(
54902            cpp_lib_version = "5.11.3",
54903            cpp_lib_version = "5.12.2",
54904            cpp_lib_version = "5.13.0",
54905            cpp_lib_version = "5.14.0"
54906        ),
54907        feature = "ritual_rustdoc"
54908    ))]
54909    pub unsafe fn tr_utf8(
54910        s: *const ::std::os::raw::c_char,
54911        c: *const ::std::os::raw::c_char,
54912        n: ::std::os::raw::c_int,
54913    ) -> ::cpp_core::CppBox<::qt_core::QString> {
54914        let ffi_result =
54915            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_trUtf8(s, c, n) };
54916        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
54917    }
54918
54919    /// <p>Specifies the width value to be used.</p>
54920    ///
54921    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QLineWidth::value() const```</span>.
54922    ///
54923    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#value-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the width value to be used.</p>
54924    /// <p><b>Access functions:</b></p>
54925    /// <div class="table"><table class="alignedsummary">
54926    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>value</b></span>() const</td></tr>
54927    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setValue</b></span>(float <i>value</i>)</td></tr>
54928    /// </tbody></table></div>
54929    /// <p><b>Notifier signal:</b></p>
54930    /// <div class="table"><table class="alignedsummary">
54931    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>valueChanged</b></span>(float <i>value</i>)</td></tr>
54932    /// </tbody></table></div></div>
54933    #[inline(always)]
54934    #[cfg_attr(
54935        feature = "ritual_rustdoc_nightly",
54936        doc(cfg(any(
54937            cpp_lib_version = "5.11.3",
54938            cpp_lib_version = "5.12.2",
54939            cpp_lib_version = "5.13.0",
54940            cpp_lib_version = "5.14.0"
54941        )))
54942    )]
54943    #[cfg(any(
54944        any(
54945            cpp_lib_version = "5.11.3",
54946            cpp_lib_version = "5.12.2",
54947            cpp_lib_version = "5.13.0",
54948            cpp_lib_version = "5.14.0"
54949        ),
54950        feature = "ritual_rustdoc"
54951    ))]
54952    pub unsafe fn value(&self) -> ::std::os::raw::c_float {
54953        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_value(
54954            self as *const crate::QLineWidth,
54955        )
54956    }
54957}
54958
54959/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html">QPickLineEvent</a> class holds information when a segment of a line is picked.</p>
54960///
54961/// C++ class: <span style='color: green;'>```Qt3DRender::QPickLineEvent```</span>.
54962///
54963/// <a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html">QPickLineEvent</a> class holds information when a segment of a line is picked.</p></div>
54964#[repr(C)]
54965pub struct QPickLineEvent {
54966    _unused: u8,
54967}
54968impl QPickLineEvent {
54969    /// <p>Specifies the index of the edge that was picked</p>
54970    ///
54971    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QPickLineEvent::edgeIndex() const```</span>.
54972    ///
54973    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html#edgeIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the edge that was picked</p>
54974    /// <p><b>Access functions:</b></p>
54975    /// <div class="table"><table class="alignedsummary">
54976    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html#edgeIndex">edgeIndex</a></b></span>() const</td></tr>
54977    /// </tbody></table></div></div>
54978    #[inline(always)]
54979    #[cfg_attr(
54980        feature = "ritual_rustdoc_nightly",
54981        doc(cfg(any(
54982            cpp_lib_version = "5.11.3",
54983            cpp_lib_version = "5.12.2",
54984            cpp_lib_version = "5.13.0",
54985            cpp_lib_version = "5.14.0"
54986        )))
54987    )]
54988    #[cfg(any(
54989        any(
54990            cpp_lib_version = "5.11.3",
54991            cpp_lib_version = "5.12.2",
54992            cpp_lib_version = "5.13.0",
54993            cpp_lib_version = "5.14.0"
54994        ),
54995        feature = "ritual_rustdoc"
54996    ))]
54997    pub unsafe fn edge_index(&self) -> ::std::os::raw::c_uint {
54998        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_edgeIndex(
54999            self as *const crate::QPickLineEvent,
55000        )
55001    }
55002
55003    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QPickLineEvent::metaObject() const```</span>.
55004    #[inline(always)]
55005    #[cfg_attr(
55006        feature = "ritual_rustdoc_nightly",
55007        doc(cfg(any(
55008            cpp_lib_version = "5.11.3",
55009            cpp_lib_version = "5.12.2",
55010            cpp_lib_version = "5.13.0",
55011            cpp_lib_version = "5.14.0"
55012        )))
55013    )]
55014    #[cfg(any(
55015        any(
55016            cpp_lib_version = "5.11.3",
55017            cpp_lib_version = "5.12.2",
55018            cpp_lib_version = "5.13.0",
55019            cpp_lib_version = "5.14.0"
55020        ),
55021        feature = "ritual_rustdoc"
55022    ))]
55023    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
55024        let ffi_result = {
55025            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_metaObject(
55026                self as *const crate::QPickLineEvent,
55027            )
55028        };
55029        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
55030    }
55031
55032    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a>.</p>
55033    ///
55034    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickLineEvent::QPickLineEvent()```</span>.
55035    ///
55036    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html#QPickLineEvent">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a>.</p></div>
55037    #[inline(always)]
55038    #[cfg_attr(
55039        feature = "ritual_rustdoc_nightly",
55040        doc(cfg(any(
55041            cpp_lib_version = "5.11.3",
55042            cpp_lib_version = "5.12.2",
55043            cpp_lib_version = "5.13.0",
55044            cpp_lib_version = "5.14.0"
55045        )))
55046    )]
55047    #[cfg(any(
55048        any(
55049            cpp_lib_version = "5.11.3",
55050            cpp_lib_version = "5.12.2",
55051            cpp_lib_version = "5.13.0",
55052            cpp_lib_version = "5.14.0"
55053        ),
55054        feature = "ritual_rustdoc"
55055    ))]
55056    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QPickLineEvent> {
55057        let ffi_result =
55058            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_QPickLineEvent() };
55059        ::qt_core::QBox::from_raw(ffi_result)
55060    }
55061
55062    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a>.</p>
55063    ///
55064    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickLineEvent::QPickLineEvent(const QPointF& position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, unsigned int edgeIndex, unsigned int vertex1Index, unsigned int vertex2Index, Qt3DRender::QPickEvent::Buttons button, int buttons, int modifiers)```</span>.
55065    ///
55066    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html#QPickLineEvent">C++ documentation</a> for <span style='color: green;'>```QPickLineEvent::QPickLineEvent()```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickevent.html">QPickEvent</a>.</p></div>
55067    #[inline(always)]
55068    #[cfg_attr(
55069        feature = "ritual_rustdoc_nightly",
55070        doc(cfg(any(
55071            cpp_lib_version = "5.11.3",
55072            cpp_lib_version = "5.12.2",
55073            cpp_lib_version = "5.13.0",
55074            cpp_lib_version = "5.14.0"
55075        )))
55076    )]
55077    #[cfg(any(
55078        any(
55079            cpp_lib_version = "5.11.3",
55080            cpp_lib_version = "5.12.2",
55081            cpp_lib_version = "5.13.0",
55082            cpp_lib_version = "5.14.0"
55083        ),
55084        feature = "ritual_rustdoc"
55085    ))]
55086    pub unsafe fn new_10a(
55087        position: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPointF>>,
55088        world_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
55089        local_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
55090        distance: ::std::os::raw::c_float,
55091        edge_index: ::std::os::raw::c_uint,
55092        vertex1_index: ::std::os::raw::c_uint,
55093        vertex2_index: ::std::os::raw::c_uint,
55094        button: crate::q_pick_event::Buttons,
55095        buttons: ::std::os::raw::c_int,
55096        modifiers: ::std::os::raw::c_int,
55097    ) -> ::qt_core::QBox<crate::QPickLineEvent> {
55098        let ffi_result = {
55099            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_QPickLineEvent1(
55100                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPointF>>::cast_into(position)
55101                    .as_raw_ptr(),
55102                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
55103                    world_intersection,
55104                )
55105                .as_raw_ptr(),
55106                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
55107                    local_intersection,
55108                )
55109                .as_raw_ptr(),
55110                distance,
55111                edge_index,
55112                vertex1_index,
55113                vertex2_index,
55114                button,
55115                buttons,
55116                modifiers,
55117            )
55118        };
55119        ::qt_core::QBox::from_raw(ffi_result)
55120    }
55121
55122    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QPickLineEvent::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
55123    #[inline(always)]
55124    #[cfg_attr(
55125        feature = "ritual_rustdoc_nightly",
55126        doc(cfg(any(
55127            cpp_lib_version = "5.11.3",
55128            cpp_lib_version = "5.12.2",
55129            cpp_lib_version = "5.13.0",
55130            cpp_lib_version = "5.14.0"
55131        )))
55132    )]
55133    #[cfg(any(
55134        any(
55135            cpp_lib_version = "5.11.3",
55136            cpp_lib_version = "5.12.2",
55137            cpp_lib_version = "5.13.0",
55138            cpp_lib_version = "5.14.0"
55139        ),
55140        feature = "ritual_rustdoc"
55141    ))]
55142    pub unsafe fn qt_metacall(
55143        &self,
55144        arg1: ::qt_core::q_meta_object::Call,
55145        arg2: ::std::os::raw::c_int,
55146        arg3: *mut *mut ::std::ffi::c_void,
55147    ) -> ::std::os::raw::c_int {
55148        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_qt_metacall(
55149            self as *const crate::QPickLineEvent as *mut crate::QPickLineEvent,
55150            arg1,
55151            arg2,
55152            arg3,
55153        )
55154    }
55155
55156    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QPickLineEvent::qt_metacast(const char* arg1)```</span>.
55157    #[inline(always)]
55158    #[cfg_attr(
55159        feature = "ritual_rustdoc_nightly",
55160        doc(cfg(any(
55161            cpp_lib_version = "5.11.3",
55162            cpp_lib_version = "5.12.2",
55163            cpp_lib_version = "5.13.0",
55164            cpp_lib_version = "5.14.0"
55165        )))
55166    )]
55167    #[cfg(any(
55168        any(
55169            cpp_lib_version = "5.11.3",
55170            cpp_lib_version = "5.12.2",
55171            cpp_lib_version = "5.13.0",
55172            cpp_lib_version = "5.14.0"
55173        ),
55174        feature = "ritual_rustdoc"
55175    ))]
55176    pub unsafe fn qt_metacast(
55177        &self,
55178        arg1: *const ::std::os::raw::c_char,
55179    ) -> *mut ::std::ffi::c_void {
55180        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_qt_metacast(
55181            self as *const crate::QPickLineEvent as *mut crate::QPickLineEvent,
55182            arg1,
55183        )
55184    }
55185
55186    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
55187    #[inline(always)]
55188    #[cfg_attr(
55189        feature = "ritual_rustdoc_nightly",
55190        doc(cfg(any(
55191            cpp_lib_version = "5.11.3",
55192            cpp_lib_version = "5.12.2",
55193            cpp_lib_version = "5.13.0",
55194            cpp_lib_version = "5.14.0"
55195        )))
55196    )]
55197    #[cfg(any(
55198        any(
55199            cpp_lib_version = "5.11.3",
55200            cpp_lib_version = "5.12.2",
55201            cpp_lib_version = "5.13.0",
55202            cpp_lib_version = "5.14.0"
55203        ),
55204        feature = "ritual_rustdoc"
55205    ))]
55206    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
55207        let ffi_result =
55208            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_staticMetaObject() };
55209        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
55210            .expect("attempted to construct a null Ref")
55211    }
55212
55213    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickLineEvent::tr(const char* s, const char* c, int n)```</span>.
55214    #[inline(always)]
55215    #[cfg_attr(
55216        feature = "ritual_rustdoc_nightly",
55217        doc(cfg(any(
55218            cpp_lib_version = "5.11.3",
55219            cpp_lib_version = "5.12.2",
55220            cpp_lib_version = "5.13.0",
55221            cpp_lib_version = "5.14.0"
55222        )))
55223    )]
55224    #[cfg(any(
55225        any(
55226            cpp_lib_version = "5.11.3",
55227            cpp_lib_version = "5.12.2",
55228            cpp_lib_version = "5.13.0",
55229            cpp_lib_version = "5.14.0"
55230        ),
55231        feature = "ritual_rustdoc"
55232    ))]
55233    pub unsafe fn tr(
55234        s: *const ::std::os::raw::c_char,
55235        c: *const ::std::os::raw::c_char,
55236        n: ::std::os::raw::c_int,
55237    ) -> ::cpp_core::CppBox<::qt_core::QString> {
55238        let ffi_result =
55239            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_tr(s, c, n) };
55240        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
55241    }
55242
55243    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickLineEvent::trUtf8(const char* s, const char* c, int n)```</span>.
55244    #[inline(always)]
55245    #[cfg_attr(
55246        feature = "ritual_rustdoc_nightly",
55247        doc(cfg(any(
55248            cpp_lib_version = "5.11.3",
55249            cpp_lib_version = "5.12.2",
55250            cpp_lib_version = "5.13.0",
55251            cpp_lib_version = "5.14.0"
55252        )))
55253    )]
55254    #[cfg(any(
55255        any(
55256            cpp_lib_version = "5.11.3",
55257            cpp_lib_version = "5.12.2",
55258            cpp_lib_version = "5.13.0",
55259            cpp_lib_version = "5.14.0"
55260        ),
55261        feature = "ritual_rustdoc"
55262    ))]
55263    pub unsafe fn tr_utf8(
55264        s: *const ::std::os::raw::c_char,
55265        c: *const ::std::os::raw::c_char,
55266        n: ::std::os::raw::c_int,
55267    ) -> ::cpp_core::CppBox<::qt_core::QString> {
55268        let ffi_result =
55269            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_trUtf8(s, c, n) };
55270        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
55271    }
55272
55273    /// <p>Specifies the index of the first point of the picked edge</p>
55274    ///
55275    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QPickLineEvent::vertex1Index() const```</span>.
55276    ///
55277    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html#vertex1Index-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the first point of the picked edge</p>
55278    /// <p><b>Access functions:</b></p>
55279    /// <div class="table"><table class="alignedsummary">
55280    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html#vertex1Index">vertex1Index</a></b></span>() const</td></tr>
55281    /// </tbody></table></div></div>
55282    #[inline(always)]
55283    #[cfg_attr(
55284        feature = "ritual_rustdoc_nightly",
55285        doc(cfg(any(
55286            cpp_lib_version = "5.11.3",
55287            cpp_lib_version = "5.12.2",
55288            cpp_lib_version = "5.13.0",
55289            cpp_lib_version = "5.14.0"
55290        )))
55291    )]
55292    #[cfg(any(
55293        any(
55294            cpp_lib_version = "5.11.3",
55295            cpp_lib_version = "5.12.2",
55296            cpp_lib_version = "5.13.0",
55297            cpp_lib_version = "5.14.0"
55298        ),
55299        feature = "ritual_rustdoc"
55300    ))]
55301    pub unsafe fn vertex1_index(&self) -> ::std::os::raw::c_uint {
55302        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_vertex1Index(
55303            self as *const crate::QPickLineEvent,
55304        )
55305    }
55306
55307    /// <p>Specifies the index of the second point of the picked edge</p>
55308    ///
55309    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QPickLineEvent::vertex2Index() const```</span>.
55310    ///
55311    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html#vertex2Index-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the second point of the picked edge</p>
55312    /// <p><b>Access functions:</b></p>
55313    /// <div class="table"><table class="alignedsummary">
55314    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpicklineevent.html#vertex2Index">vertex2Index</a></b></span>() const</td></tr>
55315    /// </tbody></table></div></div>
55316    #[inline(always)]
55317    #[cfg_attr(
55318        feature = "ritual_rustdoc_nightly",
55319        doc(cfg(any(
55320            cpp_lib_version = "5.11.3",
55321            cpp_lib_version = "5.12.2",
55322            cpp_lib_version = "5.13.0",
55323            cpp_lib_version = "5.14.0"
55324        )))
55325    )]
55326    #[cfg(any(
55327        any(
55328            cpp_lib_version = "5.11.3",
55329            cpp_lib_version = "5.12.2",
55330            cpp_lib_version = "5.13.0",
55331            cpp_lib_version = "5.14.0"
55332        ),
55333        feature = "ritual_rustdoc"
55334    ))]
55335    pub unsafe fn vertex2_index(&self) -> ::std::os::raw::c_uint {
55336        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_vertex2Index(
55337            self as *const crate::QPickLineEvent,
55338        )
55339    }
55340}
55341
55342/// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html">QPickPointEvent</a> class holds information when a segment of a point cloud is picked.</p>
55343///
55344/// C++ class: <span style='color: green;'>```Qt3DRender::QPickPointEvent```</span>.
55345///
55346/// <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html">QPickPointEvent</a> class holds information when a segment of a point cloud is picked.</p></div>
55347#[repr(C)]
55348pub struct QPickPointEvent {
55349    _unused: u8,
55350}
55351impl QPickPointEvent {
55352    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QPickPointEvent::metaObject() const```</span>.
55353    #[inline(always)]
55354    #[cfg_attr(
55355        feature = "ritual_rustdoc_nightly",
55356        doc(cfg(any(
55357            cpp_lib_version = "5.11.3",
55358            cpp_lib_version = "5.12.2",
55359            cpp_lib_version = "5.13.0",
55360            cpp_lib_version = "5.14.0"
55361        )))
55362    )]
55363    #[cfg(any(
55364        any(
55365            cpp_lib_version = "5.11.3",
55366            cpp_lib_version = "5.12.2",
55367            cpp_lib_version = "5.13.0",
55368            cpp_lib_version = "5.14.0"
55369        ),
55370        feature = "ritual_rustdoc"
55371    ))]
55372    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
55373        let ffi_result = {
55374            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_metaObject(
55375                self as *const crate::QPickPointEvent,
55376            )
55377        };
55378        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
55379    }
55380
55381    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html">QPickPointEvent</a>.</p>
55382    ///
55383    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickPointEvent::QPickPointEvent()```</span>.
55384    ///
55385    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html#QPickPointEvent">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html">QPickPointEvent</a>.</p></div>
55386    #[inline(always)]
55387    #[cfg_attr(
55388        feature = "ritual_rustdoc_nightly",
55389        doc(cfg(any(
55390            cpp_lib_version = "5.11.3",
55391            cpp_lib_version = "5.12.2",
55392            cpp_lib_version = "5.13.0",
55393            cpp_lib_version = "5.14.0"
55394        )))
55395    )]
55396    #[cfg(any(
55397        any(
55398            cpp_lib_version = "5.11.3",
55399            cpp_lib_version = "5.12.2",
55400            cpp_lib_version = "5.13.0",
55401            cpp_lib_version = "5.14.0"
55402        ),
55403        feature = "ritual_rustdoc"
55404    ))]
55405    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QPickPointEvent> {
55406        let ffi_result =
55407            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_QPickPointEvent() };
55408        ::qt_core::QBox::from_raw(ffi_result)
55409    }
55410
55411    /// <p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html">QPickPointEvent</a>.</p>
55412    ///
55413    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QPickPointEvent::QPickPointEvent(const QPointF& position, const QVector3D& worldIntersection, const QVector3D& localIntersection, float distance, unsigned int pointIndex, Qt3DRender::QPickEvent::Buttons button, int buttons, int modifiers)```</span>.
55414    ///
55415    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html#QPickPointEvent">C++ documentation</a> for <span style='color: green;'>```QPickPointEvent::QPickPointEvent()```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a new <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html">QPickPointEvent</a>.</p></div>
55416    #[inline(always)]
55417    #[cfg_attr(
55418        feature = "ritual_rustdoc_nightly",
55419        doc(cfg(any(
55420            cpp_lib_version = "5.11.3",
55421            cpp_lib_version = "5.12.2",
55422            cpp_lib_version = "5.13.0",
55423            cpp_lib_version = "5.14.0"
55424        )))
55425    )]
55426    #[cfg(any(
55427        any(
55428            cpp_lib_version = "5.11.3",
55429            cpp_lib_version = "5.12.2",
55430            cpp_lib_version = "5.13.0",
55431            cpp_lib_version = "5.14.0"
55432        ),
55433        feature = "ritual_rustdoc"
55434    ))]
55435    pub unsafe fn new_8a(
55436        position: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPointF>>,
55437        world_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
55438        local_intersection: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
55439        distance: ::std::os::raw::c_float,
55440        point_index: ::std::os::raw::c_uint,
55441        button: crate::q_pick_event::Buttons,
55442        buttons: ::std::os::raw::c_int,
55443        modifiers: ::std::os::raw::c_int,
55444    ) -> ::qt_core::QBox<crate::QPickPointEvent> {
55445        let ffi_result = {
55446            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_QPickPointEvent1(
55447                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPointF>>::cast_into(position)
55448                    .as_raw_ptr(),
55449                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
55450                    world_intersection,
55451                )
55452                .as_raw_ptr(),
55453                ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(
55454                    local_intersection,
55455                )
55456                .as_raw_ptr(),
55457                distance,
55458                point_index,
55459                button,
55460                buttons,
55461                modifiers,
55462            )
55463        };
55464        ::qt_core::QBox::from_raw(ffi_result)
55465    }
55466
55467    /// <p>Specifies the index of the point that was picked</p>
55468    ///
55469    /// Calls C++ function: <span style='color: green;'>```unsigned int Qt3DRender::QPickPointEvent::pointIndex() const```</span>.
55470    ///
55471    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html#pointIndex-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the index of the point that was picked</p>
55472    /// <p><b>Access functions:</b></p>
55473    /// <div class="table"><table class="alignedsummary">
55474    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> uint </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpickpointevent.html#pointIndex">pointIndex</a></b></span>() const</td></tr>
55475    /// </tbody></table></div></div>
55476    #[inline(always)]
55477    #[cfg_attr(
55478        feature = "ritual_rustdoc_nightly",
55479        doc(cfg(any(
55480            cpp_lib_version = "5.11.3",
55481            cpp_lib_version = "5.12.2",
55482            cpp_lib_version = "5.13.0",
55483            cpp_lib_version = "5.14.0"
55484        )))
55485    )]
55486    #[cfg(any(
55487        any(
55488            cpp_lib_version = "5.11.3",
55489            cpp_lib_version = "5.12.2",
55490            cpp_lib_version = "5.13.0",
55491            cpp_lib_version = "5.14.0"
55492        ),
55493        feature = "ritual_rustdoc"
55494    ))]
55495    pub unsafe fn point_index(&self) -> ::std::os::raw::c_uint {
55496        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_pointIndex(
55497            self as *const crate::QPickPointEvent,
55498        )
55499    }
55500
55501    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QPickPointEvent::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
55502    #[inline(always)]
55503    #[cfg_attr(
55504        feature = "ritual_rustdoc_nightly",
55505        doc(cfg(any(
55506            cpp_lib_version = "5.11.3",
55507            cpp_lib_version = "5.12.2",
55508            cpp_lib_version = "5.13.0",
55509            cpp_lib_version = "5.14.0"
55510        )))
55511    )]
55512    #[cfg(any(
55513        any(
55514            cpp_lib_version = "5.11.3",
55515            cpp_lib_version = "5.12.2",
55516            cpp_lib_version = "5.13.0",
55517            cpp_lib_version = "5.14.0"
55518        ),
55519        feature = "ritual_rustdoc"
55520    ))]
55521    pub unsafe fn qt_metacall(
55522        &self,
55523        arg1: ::qt_core::q_meta_object::Call,
55524        arg2: ::std::os::raw::c_int,
55525        arg3: *mut *mut ::std::ffi::c_void,
55526    ) -> ::std::os::raw::c_int {
55527        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_qt_metacall(
55528            self as *const crate::QPickPointEvent as *mut crate::QPickPointEvent,
55529            arg1,
55530            arg2,
55531            arg3,
55532        )
55533    }
55534
55535    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QPickPointEvent::qt_metacast(const char* arg1)```</span>.
55536    #[inline(always)]
55537    #[cfg_attr(
55538        feature = "ritual_rustdoc_nightly",
55539        doc(cfg(any(
55540            cpp_lib_version = "5.11.3",
55541            cpp_lib_version = "5.12.2",
55542            cpp_lib_version = "5.13.0",
55543            cpp_lib_version = "5.14.0"
55544        )))
55545    )]
55546    #[cfg(any(
55547        any(
55548            cpp_lib_version = "5.11.3",
55549            cpp_lib_version = "5.12.2",
55550            cpp_lib_version = "5.13.0",
55551            cpp_lib_version = "5.14.0"
55552        ),
55553        feature = "ritual_rustdoc"
55554    ))]
55555    pub unsafe fn qt_metacast(
55556        &self,
55557        arg1: *const ::std::os::raw::c_char,
55558    ) -> *mut ::std::ffi::c_void {
55559        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_qt_metacast(
55560            self as *const crate::QPickPointEvent as *mut crate::QPickPointEvent,
55561            arg1,
55562        )
55563    }
55564
55565    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
55566    #[inline(always)]
55567    #[cfg_attr(
55568        feature = "ritual_rustdoc_nightly",
55569        doc(cfg(any(
55570            cpp_lib_version = "5.11.3",
55571            cpp_lib_version = "5.12.2",
55572            cpp_lib_version = "5.13.0",
55573            cpp_lib_version = "5.14.0"
55574        )))
55575    )]
55576    #[cfg(any(
55577        any(
55578            cpp_lib_version = "5.11.3",
55579            cpp_lib_version = "5.12.2",
55580            cpp_lib_version = "5.13.0",
55581            cpp_lib_version = "5.14.0"
55582        ),
55583        feature = "ritual_rustdoc"
55584    ))]
55585    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
55586        let ffi_result =
55587            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_staticMetaObject() };
55588        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
55589            .expect("attempted to construct a null Ref")
55590    }
55591
55592    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickPointEvent::tr(const char* s, const char* c, int n)```</span>.
55593    #[inline(always)]
55594    #[cfg_attr(
55595        feature = "ritual_rustdoc_nightly",
55596        doc(cfg(any(
55597            cpp_lib_version = "5.11.3",
55598            cpp_lib_version = "5.12.2",
55599            cpp_lib_version = "5.13.0",
55600            cpp_lib_version = "5.14.0"
55601        )))
55602    )]
55603    #[cfg(any(
55604        any(
55605            cpp_lib_version = "5.11.3",
55606            cpp_lib_version = "5.12.2",
55607            cpp_lib_version = "5.13.0",
55608            cpp_lib_version = "5.14.0"
55609        ),
55610        feature = "ritual_rustdoc"
55611    ))]
55612    pub unsafe fn tr(
55613        s: *const ::std::os::raw::c_char,
55614        c: *const ::std::os::raw::c_char,
55615        n: ::std::os::raw::c_int,
55616    ) -> ::cpp_core::CppBox<::qt_core::QString> {
55617        let ffi_result =
55618            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_tr(s, c, n) };
55619        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
55620    }
55621
55622    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QPickPointEvent::trUtf8(const char* s, const char* c, int n)```</span>.
55623    #[inline(always)]
55624    #[cfg_attr(
55625        feature = "ritual_rustdoc_nightly",
55626        doc(cfg(any(
55627            cpp_lib_version = "5.11.3",
55628            cpp_lib_version = "5.12.2",
55629            cpp_lib_version = "5.13.0",
55630            cpp_lib_version = "5.14.0"
55631        )))
55632    )]
55633    #[cfg(any(
55634        any(
55635            cpp_lib_version = "5.11.3",
55636            cpp_lib_version = "5.12.2",
55637            cpp_lib_version = "5.13.0",
55638            cpp_lib_version = "5.14.0"
55639        ),
55640        feature = "ritual_rustdoc"
55641    ))]
55642    pub unsafe fn tr_utf8(
55643        s: *const ::std::os::raw::c_char,
55644        c: *const ::std::os::raw::c_char,
55645        n: ::std::os::raw::c_int,
55646    ) -> ::cpp_core::CppBox<::qt_core::QString> {
55647        let ffi_result =
55648            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_trUtf8(s, c, n) };
55649        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
55650    }
55651}
55652
55653/// <p>Select entities which are within a distance threshold of a target entity.</p>
55654///
55655/// C++ class: <span style='color: green;'>```Qt3DRender::QProximityFilter```</span>.
55656///
55657/// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Select entities which are within a distance threshold of a target entity.</p>
55658/// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html">Qt3DRender::QProximityFilter</a> can be used to select entities to render when they are placed within a given distance threshold of another entity.</p></div>
55659#[repr(C)]
55660pub struct QProximityFilter {
55661    _unused: u8,
55662}
55663impl QProximityFilter {
55664    /// <p>Holds the entity against which we should compare the distance to.</p>
55665    ///
55666    /// Returns a built-in Qt slot `Qt3DRender::QProximityFilter::setEntity` that can be passed to `qt_core::Signal::connect`.
55667    ///
55668    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html#entity-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the entity against which we should compare the distance to.</p>
55669    /// <p><b>Access functions:</b></p>
55670    /// <div class="table"><table class="alignedsummary">
55671    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DCore::QEntity *</td><td class="memItemRight bottomAlign"><span class="name"><b>entity</b></span>() const</td></tr>
55672    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEntity</b></span>(Qt3DCore::QEntity *<i>entity</i>)</td></tr>
55673    /// </tbody></table></div>
55674    /// <p><b>Notifier signal:</b></p>
55675    /// <div class="table"><table class="alignedsummary">
55676    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>entityChanged</b></span>(Qt3DCore::QEntity *<i>entity</i>)</td></tr>
55677    /// </tbody></table></div></div>
55678    #[inline(always)]
55679    #[cfg_attr(
55680        feature = "ritual_rustdoc_nightly",
55681        doc(cfg(any(
55682            cpp_lib_version = "5.11.3",
55683            cpp_lib_version = "5.12.2",
55684            cpp_lib_version = "5.13.0",
55685            cpp_lib_version = "5.14.0"
55686        )))
55687    )]
55688    #[cfg(any(
55689        any(
55690            cpp_lib_version = "5.11.3",
55691            cpp_lib_version = "5.12.2",
55692            cpp_lib_version = "5.13.0",
55693            cpp_lib_version = "5.14.0"
55694        ),
55695        feature = "ritual_rustdoc"
55696    ))]
55697    pub fn slot_set_entity(&self) -> ::qt_core::Receiver<(*mut ::qt_3d_core::QEntity,)> {
55698        unsafe {
55699            ::qt_core::Receiver::new(
55700                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
55701                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
55702                    b"1setEntity(Qt3DCore::QEntity *)\0",
55703                ),
55704            )
55705        }
55706    }
55707
55708    /// <p>Holds the distance to the target entity above which entities are filtered out.</p>
55709    ///
55710    /// Returns a built-in Qt slot `Qt3DRender::QProximityFilter::setDistanceThreshold` that can be passed to `qt_core::Signal::connect`.
55711    ///
55712    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html#distanceThreshold-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the distance to the target entity above which entities are filtered out.</p>
55713    /// <p><b>Access functions:</b></p>
55714    /// <div class="table"><table class="alignedsummary">
55715    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceThreshold</b></span>() const</td></tr>
55716    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDistanceThreshold</b></span>(float <i>distanceThreshold</i>)</td></tr>
55717    /// </tbody></table></div>
55718    /// <p><b>Notifier signal:</b></p>
55719    /// <div class="table"><table class="alignedsummary">
55720    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceThresholdChanged</b></span>(float <i>distanceThreshold</i>)</td></tr>
55721    /// </tbody></table></div></div>
55722    #[inline(always)]
55723    #[cfg_attr(
55724        feature = "ritual_rustdoc_nightly",
55725        doc(cfg(any(
55726            cpp_lib_version = "5.11.3",
55727            cpp_lib_version = "5.12.2",
55728            cpp_lib_version = "5.13.0",
55729            cpp_lib_version = "5.14.0"
55730        )))
55731    )]
55732    #[cfg(any(
55733        any(
55734            cpp_lib_version = "5.11.3",
55735            cpp_lib_version = "5.12.2",
55736            cpp_lib_version = "5.13.0",
55737            cpp_lib_version = "5.14.0"
55738        ),
55739        feature = "ritual_rustdoc"
55740    ))]
55741    pub fn slot_set_distance_threshold(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
55742        unsafe {
55743            ::qt_core::Receiver::new(
55744                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
55745                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setDistanceThreshold(float)\0"),
55746            )
55747        }
55748    }
55749
55750    /// <p>Holds the entity against which we should compare the distance to.</p>
55751    ///
55752    /// Returns a built-in Qt signal `Qt3DRender::QProximityFilter::entityChanged` that can be passed to `qt_core::Signal::connect`.
55753    ///
55754    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html#entity-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the entity against which we should compare the distance to.</p>
55755    /// <p><b>Access functions:</b></p>
55756    /// <div class="table"><table class="alignedsummary">
55757    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DCore::QEntity *</td><td class="memItemRight bottomAlign"><span class="name"><b>entity</b></span>() const</td></tr>
55758    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEntity</b></span>(Qt3DCore::QEntity *<i>entity</i>)</td></tr>
55759    /// </tbody></table></div>
55760    /// <p><b>Notifier signal:</b></p>
55761    /// <div class="table"><table class="alignedsummary">
55762    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>entityChanged</b></span>(Qt3DCore::QEntity *<i>entity</i>)</td></tr>
55763    /// </tbody></table></div></div>
55764    #[inline(always)]
55765    #[cfg_attr(
55766        feature = "ritual_rustdoc_nightly",
55767        doc(cfg(any(
55768            cpp_lib_version = "5.11.3",
55769            cpp_lib_version = "5.12.2",
55770            cpp_lib_version = "5.13.0",
55771            cpp_lib_version = "5.14.0"
55772        )))
55773    )]
55774    #[cfg(any(
55775        any(
55776            cpp_lib_version = "5.11.3",
55777            cpp_lib_version = "5.12.2",
55778            cpp_lib_version = "5.13.0",
55779            cpp_lib_version = "5.14.0"
55780        ),
55781        feature = "ritual_rustdoc"
55782    ))]
55783    pub fn entity_changed(&self) -> ::qt_core::Signal<(*mut ::qt_3d_core::QEntity,)> {
55784        unsafe {
55785            ::qt_core::Signal::new(
55786                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
55787                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
55788                    b"2entityChanged(Qt3DCore::QEntity *)\0",
55789                ),
55790            )
55791        }
55792    }
55793
55794    /// <p>Holds the distance to the target entity above which entities are filtered out.</p>
55795    ///
55796    /// Returns a built-in Qt signal `Qt3DRender::QProximityFilter::distanceThresholdChanged` that can be passed to `qt_core::Signal::connect`.
55797    ///
55798    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html#distanceThreshold-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the distance to the target entity above which entities are filtered out.</p>
55799    /// <p><b>Access functions:</b></p>
55800    /// <div class="table"><table class="alignedsummary">
55801    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceThreshold</b></span>() const</td></tr>
55802    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDistanceThreshold</b></span>(float <i>distanceThreshold</i>)</td></tr>
55803    /// </tbody></table></div>
55804    /// <p><b>Notifier signal:</b></p>
55805    /// <div class="table"><table class="alignedsummary">
55806    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceThresholdChanged</b></span>(float <i>distanceThreshold</i>)</td></tr>
55807    /// </tbody></table></div></div>
55808    #[inline(always)]
55809    #[cfg_attr(
55810        feature = "ritual_rustdoc_nightly",
55811        doc(cfg(any(
55812            cpp_lib_version = "5.11.3",
55813            cpp_lib_version = "5.12.2",
55814            cpp_lib_version = "5.13.0",
55815            cpp_lib_version = "5.14.0"
55816        )))
55817    )]
55818    #[cfg(any(
55819        any(
55820            cpp_lib_version = "5.11.3",
55821            cpp_lib_version = "5.12.2",
55822            cpp_lib_version = "5.13.0",
55823            cpp_lib_version = "5.14.0"
55824        ),
55825        feature = "ritual_rustdoc"
55826    ))]
55827    pub fn distance_threshold_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
55828        unsafe {
55829            ::qt_core::Signal::new(
55830                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
55831                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
55832                    b"2distanceThresholdChanged(float)\0",
55833                ),
55834            )
55835        }
55836    }
55837
55838    /// <p>Holds the distance to the target entity above which entities are filtered out.</p>
55839    ///
55840    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QProximityFilter::distanceThreshold() const```</span>.
55841    ///
55842    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html#distanceThreshold-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the distance to the target entity above which entities are filtered out.</p>
55843    /// <p><b>Access functions:</b></p>
55844    /// <div class="table"><table class="alignedsummary">
55845    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceThreshold</b></span>() const</td></tr>
55846    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDistanceThreshold</b></span>(float <i>distanceThreshold</i>)</td></tr>
55847    /// </tbody></table></div>
55848    /// <p><b>Notifier signal:</b></p>
55849    /// <div class="table"><table class="alignedsummary">
55850    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceThresholdChanged</b></span>(float <i>distanceThreshold</i>)</td></tr>
55851    /// </tbody></table></div></div>
55852    #[inline(always)]
55853    #[cfg_attr(
55854        feature = "ritual_rustdoc_nightly",
55855        doc(cfg(any(
55856            cpp_lib_version = "5.11.3",
55857            cpp_lib_version = "5.12.2",
55858            cpp_lib_version = "5.13.0",
55859            cpp_lib_version = "5.14.0"
55860        )))
55861    )]
55862    #[cfg(any(
55863        any(
55864            cpp_lib_version = "5.11.3",
55865            cpp_lib_version = "5.12.2",
55866            cpp_lib_version = "5.13.0",
55867            cpp_lib_version = "5.14.0"
55868        ),
55869        feature = "ritual_rustdoc"
55870    ))]
55871    pub unsafe fn distance_threshold(&self) -> ::std::os::raw::c_float {
55872        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_distanceThreshold(
55873            self as *const crate::QProximityFilter,
55874        )
55875    }
55876
55877    /// <p>Holds the entity against which we should compare the distance to.</p>
55878    ///
55879    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QEntity* Qt3DRender::QProximityFilter::entity() const```</span>.
55880    ///
55881    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html#entity-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the entity against which we should compare the distance to.</p>
55882    /// <p><b>Access functions:</b></p>
55883    /// <div class="table"><table class="alignedsummary">
55884    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DCore::QEntity *</td><td class="memItemRight bottomAlign"><span class="name"><b>entity</b></span>() const</td></tr>
55885    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEntity</b></span>(Qt3DCore::QEntity *<i>entity</i>)</td></tr>
55886    /// </tbody></table></div>
55887    /// <p><b>Notifier signal:</b></p>
55888    /// <div class="table"><table class="alignedsummary">
55889    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>entityChanged</b></span>(Qt3DCore::QEntity *<i>entity</i>)</td></tr>
55890    /// </tbody></table></div></div>
55891    #[inline(always)]
55892    #[cfg_attr(
55893        feature = "ritual_rustdoc_nightly",
55894        doc(cfg(any(
55895            cpp_lib_version = "5.11.3",
55896            cpp_lib_version = "5.12.2",
55897            cpp_lib_version = "5.13.0",
55898            cpp_lib_version = "5.14.0"
55899        )))
55900    )]
55901    #[cfg(any(
55902        any(
55903            cpp_lib_version = "5.11.3",
55904            cpp_lib_version = "5.12.2",
55905            cpp_lib_version = "5.13.0",
55906            cpp_lib_version = "5.14.0"
55907        ),
55908        feature = "ritual_rustdoc"
55909    ))]
55910    pub unsafe fn entity(&self) -> ::qt_core::QPtr<::qt_3d_core::QEntity> {
55911        let ffi_result = {
55912            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_entity(
55913                self as *const crate::QProximityFilter,
55914            )
55915        };
55916        ::qt_core::QPtr::from_raw(ffi_result)
55917    }
55918
55919    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QProximityFilter::metaObject() const```</span>.
55920    #[inline(always)]
55921    #[cfg_attr(
55922        feature = "ritual_rustdoc_nightly",
55923        doc(cfg(any(
55924            cpp_lib_version = "5.11.3",
55925            cpp_lib_version = "5.12.2",
55926            cpp_lib_version = "5.13.0",
55927            cpp_lib_version = "5.14.0"
55928        )))
55929    )]
55930    #[cfg(any(
55931        any(
55932            cpp_lib_version = "5.11.3",
55933            cpp_lib_version = "5.12.2",
55934            cpp_lib_version = "5.13.0",
55935            cpp_lib_version = "5.14.0"
55936        ),
55937        feature = "ritual_rustdoc"
55938    ))]
55939    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
55940        let ffi_result = {
55941            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_metaObject(
55942                self as *const crate::QProximityFilter,
55943            )
55944        };
55945        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
55946    }
55947
55948    /// <p>Default constructs an instance of QProximityFilter.</p>
55949    ///
55950    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QProximityFilter::QProximityFilter(Qt3DCore::QNode* parent = …)```</span>.
55951    ///
55952    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html#QProximityFilter">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QProximityFilter.</p></div>
55953    #[inline(always)]
55954    #[cfg_attr(
55955        feature = "ritual_rustdoc_nightly",
55956        doc(cfg(any(
55957            cpp_lib_version = "5.11.3",
55958            cpp_lib_version = "5.12.2",
55959            cpp_lib_version = "5.13.0",
55960            cpp_lib_version = "5.14.0"
55961        )))
55962    )]
55963    #[cfg(any(
55964        any(
55965            cpp_lib_version = "5.11.3",
55966            cpp_lib_version = "5.12.2",
55967            cpp_lib_version = "5.13.0",
55968            cpp_lib_version = "5.14.0"
55969        ),
55970        feature = "ritual_rustdoc"
55971    ))]
55972    pub unsafe fn new_1a(
55973        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
55974    ) -> ::qt_core::QBox<crate::QProximityFilter> {
55975        let ffi_result = {
55976            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_QProximityFilter(
55977                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
55978                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
55979            )
55980        };
55981        ::qt_core::QBox::from_raw(ffi_result)
55982    }
55983
55984    /// <p>Select entities which are within a distance threshold of a target entity.</p>
55985    ///
55986    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QProximityFilter::QProximityFilter()```</span>.
55987    ///
55988    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Select entities which are within a distance threshold of a target entity.</p>
55989    /// <p>A <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html">Qt3DRender::QProximityFilter</a> can be used to select entities to render when they are placed within a given distance threshold of another entity.</p></div>
55990    #[inline(always)]
55991    #[cfg_attr(
55992        feature = "ritual_rustdoc_nightly",
55993        doc(cfg(any(
55994            cpp_lib_version = "5.11.3",
55995            cpp_lib_version = "5.12.2",
55996            cpp_lib_version = "5.13.0",
55997            cpp_lib_version = "5.14.0"
55998        )))
55999    )]
56000    #[cfg(any(
56001        any(
56002            cpp_lib_version = "5.11.3",
56003            cpp_lib_version = "5.12.2",
56004            cpp_lib_version = "5.13.0",
56005            cpp_lib_version = "5.14.0"
56006        ),
56007        feature = "ritual_rustdoc"
56008    ))]
56009    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QProximityFilter> {
56010        let ffi_result =
56011            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_QProximityFilter1() };
56012        ::qt_core::QBox::from_raw(ffi_result)
56013    }
56014
56015    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QProximityFilter::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
56016    #[inline(always)]
56017    #[cfg_attr(
56018        feature = "ritual_rustdoc_nightly",
56019        doc(cfg(any(
56020            cpp_lib_version = "5.11.3",
56021            cpp_lib_version = "5.12.2",
56022            cpp_lib_version = "5.13.0",
56023            cpp_lib_version = "5.14.0"
56024        )))
56025    )]
56026    #[cfg(any(
56027        any(
56028            cpp_lib_version = "5.11.3",
56029            cpp_lib_version = "5.12.2",
56030            cpp_lib_version = "5.13.0",
56031            cpp_lib_version = "5.14.0"
56032        ),
56033        feature = "ritual_rustdoc"
56034    ))]
56035    pub unsafe fn qt_metacall(
56036        &self,
56037        arg1: ::qt_core::q_meta_object::Call,
56038        arg2: ::std::os::raw::c_int,
56039        arg3: *mut *mut ::std::ffi::c_void,
56040    ) -> ::std::os::raw::c_int {
56041        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_qt_metacall(
56042            self as *const crate::QProximityFilter as *mut crate::QProximityFilter,
56043            arg1,
56044            arg2,
56045            arg3,
56046        )
56047    }
56048
56049    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QProximityFilter::qt_metacast(const char* arg1)```</span>.
56050    #[inline(always)]
56051    #[cfg_attr(
56052        feature = "ritual_rustdoc_nightly",
56053        doc(cfg(any(
56054            cpp_lib_version = "5.11.3",
56055            cpp_lib_version = "5.12.2",
56056            cpp_lib_version = "5.13.0",
56057            cpp_lib_version = "5.14.0"
56058        )))
56059    )]
56060    #[cfg(any(
56061        any(
56062            cpp_lib_version = "5.11.3",
56063            cpp_lib_version = "5.12.2",
56064            cpp_lib_version = "5.13.0",
56065            cpp_lib_version = "5.14.0"
56066        ),
56067        feature = "ritual_rustdoc"
56068    ))]
56069    pub unsafe fn qt_metacast(
56070        &self,
56071        arg1: *const ::std::os::raw::c_char,
56072    ) -> *mut ::std::ffi::c_void {
56073        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_qt_metacast(
56074            self as *const crate::QProximityFilter as *mut crate::QProximityFilter,
56075            arg1,
56076        )
56077    }
56078
56079    /// <p>Holds the distance to the target entity above which entities are filtered out.</p>
56080    ///
56081    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QProximityFilter::setDistanceThreshold(float distanceThreshold)```</span>.
56082    ///
56083    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html#distanceThreshold-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the distance to the target entity above which entities are filtered out.</p>
56084    /// <p><b>Access functions:</b></p>
56085    /// <div class="table"><table class="alignedsummary">
56086    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceThreshold</b></span>() const</td></tr>
56087    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDistanceThreshold</b></span>(float <i>distanceThreshold</i>)</td></tr>
56088    /// </tbody></table></div>
56089    /// <p><b>Notifier signal:</b></p>
56090    /// <div class="table"><table class="alignedsummary">
56091    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>distanceThresholdChanged</b></span>(float <i>distanceThreshold</i>)</td></tr>
56092    /// </tbody></table></div></div>
56093    #[inline(always)]
56094    #[cfg_attr(
56095        feature = "ritual_rustdoc_nightly",
56096        doc(cfg(any(
56097            cpp_lib_version = "5.11.3",
56098            cpp_lib_version = "5.12.2",
56099            cpp_lib_version = "5.13.0",
56100            cpp_lib_version = "5.14.0"
56101        )))
56102    )]
56103    #[cfg(any(
56104        any(
56105            cpp_lib_version = "5.11.3",
56106            cpp_lib_version = "5.12.2",
56107            cpp_lib_version = "5.13.0",
56108            cpp_lib_version = "5.14.0"
56109        ),
56110        feature = "ritual_rustdoc"
56111    ))]
56112    pub unsafe fn set_distance_threshold(&self, distance_threshold: ::std::os::raw::c_float) {
56113        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_setDistanceThreshold(
56114            self as *const crate::QProximityFilter as *mut crate::QProximityFilter,
56115            distance_threshold,
56116        )
56117    }
56118
56119    /// <p>Holds the entity against which we should compare the distance to.</p>
56120    ///
56121    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QProximityFilter::setEntity(Qt3DCore::QEntity* entity)```</span>.
56122    ///
56123    /// <a href="http://doc.qt.io/qt-5/qt3drender-qproximityfilter.html#entity-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the entity against which we should compare the distance to.</p>
56124    /// <p><b>Access functions:</b></p>
56125    /// <div class="table"><table class="alignedsummary">
56126    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DCore::QEntity *</td><td class="memItemRight bottomAlign"><span class="name"><b>entity</b></span>() const</td></tr>
56127    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEntity</b></span>(Qt3DCore::QEntity *<i>entity</i>)</td></tr>
56128    /// </tbody></table></div>
56129    /// <p><b>Notifier signal:</b></p>
56130    /// <div class="table"><table class="alignedsummary">
56131    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>entityChanged</b></span>(Qt3DCore::QEntity *<i>entity</i>)</td></tr>
56132    /// </tbody></table></div></div>
56133    #[inline(always)]
56134    #[cfg_attr(
56135        feature = "ritual_rustdoc_nightly",
56136        doc(cfg(any(
56137            cpp_lib_version = "5.11.3",
56138            cpp_lib_version = "5.12.2",
56139            cpp_lib_version = "5.13.0",
56140            cpp_lib_version = "5.14.0"
56141        )))
56142    )]
56143    #[cfg(any(
56144        any(
56145            cpp_lib_version = "5.11.3",
56146            cpp_lib_version = "5.12.2",
56147            cpp_lib_version = "5.13.0",
56148            cpp_lib_version = "5.14.0"
56149        ),
56150        feature = "ritual_rustdoc"
56151    ))]
56152    pub unsafe fn set_entity(
56153        &self,
56154        entity: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QEntity>>,
56155    ) {
56156        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_setEntity(
56157            self as *const crate::QProximityFilter as *mut crate::QProximityFilter,
56158            ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QEntity>>::cast_into(entity)
56159                .as_raw_ptr() as *mut ::qt_3d_core::QEntity,
56160        )
56161    }
56162
56163    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
56164    #[inline(always)]
56165    #[cfg_attr(
56166        feature = "ritual_rustdoc_nightly",
56167        doc(cfg(any(
56168            cpp_lib_version = "5.11.3",
56169            cpp_lib_version = "5.12.2",
56170            cpp_lib_version = "5.13.0",
56171            cpp_lib_version = "5.14.0"
56172        )))
56173    )]
56174    #[cfg(any(
56175        any(
56176            cpp_lib_version = "5.11.3",
56177            cpp_lib_version = "5.12.2",
56178            cpp_lib_version = "5.13.0",
56179            cpp_lib_version = "5.14.0"
56180        ),
56181        feature = "ritual_rustdoc"
56182    ))]
56183    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
56184        let ffi_result =
56185            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_staticMetaObject() };
56186        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
56187            .expect("attempted to construct a null Ref")
56188    }
56189
56190    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QProximityFilter::tr(const char* s, const char* c, int n)```</span>.
56191    #[inline(always)]
56192    #[cfg_attr(
56193        feature = "ritual_rustdoc_nightly",
56194        doc(cfg(any(
56195            cpp_lib_version = "5.11.3",
56196            cpp_lib_version = "5.12.2",
56197            cpp_lib_version = "5.13.0",
56198            cpp_lib_version = "5.14.0"
56199        )))
56200    )]
56201    #[cfg(any(
56202        any(
56203            cpp_lib_version = "5.11.3",
56204            cpp_lib_version = "5.12.2",
56205            cpp_lib_version = "5.13.0",
56206            cpp_lib_version = "5.14.0"
56207        ),
56208        feature = "ritual_rustdoc"
56209    ))]
56210    pub unsafe fn tr(
56211        s: *const ::std::os::raw::c_char,
56212        c: *const ::std::os::raw::c_char,
56213        n: ::std::os::raw::c_int,
56214    ) -> ::cpp_core::CppBox<::qt_core::QString> {
56215        let ffi_result =
56216            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_tr(s, c, n) };
56217        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
56218    }
56219
56220    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QProximityFilter::trUtf8(const char* s, const char* c, int n)```</span>.
56221    #[inline(always)]
56222    #[cfg_attr(
56223        feature = "ritual_rustdoc_nightly",
56224        doc(cfg(any(
56225            cpp_lib_version = "5.11.3",
56226            cpp_lib_version = "5.12.2",
56227            cpp_lib_version = "5.13.0",
56228            cpp_lib_version = "5.14.0"
56229        )))
56230    )]
56231    #[cfg(any(
56232        any(
56233            cpp_lib_version = "5.11.3",
56234            cpp_lib_version = "5.12.2",
56235            cpp_lib_version = "5.13.0",
56236            cpp_lib_version = "5.14.0"
56237        ),
56238        feature = "ritual_rustdoc"
56239    ))]
56240    pub unsafe fn tr_utf8(
56241        s: *const ::std::os::raw::c_char,
56242        c: *const ::std::os::raw::c_char,
56243        n: ::std::os::raw::c_int,
56244    ) -> ::cpp_core::CppBox<::qt_core::QString> {
56245        let ffi_result =
56246            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_trUtf8(s, c, n) };
56247        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
56248    }
56249}
56250
56251/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html">Qt3DRender::QRayCaster</a> is used to perform ray casting tests in 3d world coordinates.</p>
56252///
56253/// C++ class: <span style='color: green;'>```Qt3DRender::QRayCaster```</span>.
56254///
56255/// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html">Qt3DRender::QRayCaster</a> is used to perform ray casting tests in 3d world coordinates.</p>
56256/// <p>The 3d ray is defined by its origin, direction and length. It will be affected by the transformations applied to the entity it belongs to.</p>
56257/// <p>Ray casting tests will be performed every frame as long as the component is enabled. The hits property will be updated with the list of intersections.</p></div>
56258#[repr(C)]
56259pub struct QRayCaster {
56260    _unused: u8,
56261}
56262impl QRayCaster {
56263    /// <p>Holds the origin of the 3D ray in local coordinates.</p>
56264    ///
56265    /// Returns a built-in Qt slot `Qt3DRender::QRayCaster::setOrigin` that can be passed to `qt_core::Signal::connect`.
56266    ///
56267    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#origin-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the origin of the 3D ray in local coordinates.</p>
56268    /// <p><b>Access functions:</b></p>
56269    /// <div class="table"><table class="alignedsummary">
56270    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>origin</b></span>() const</td></tr>
56271    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setOrigin</b></span>(const QVector3D &amp;<i>origin</i>)</td></tr>
56272    /// </tbody></table></div>
56273    /// <p><b>Notifier signal:</b></p>
56274    /// <div class="table"><table class="alignedsummary">
56275    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>originChanged</b></span>(const QVector3D &amp;<i>origin</i>)</td></tr>
56276    /// </tbody></table></div></div>
56277    #[inline(always)]
56278    #[cfg_attr(
56279        feature = "ritual_rustdoc_nightly",
56280        doc(cfg(any(
56281            cpp_lib_version = "5.11.3",
56282            cpp_lib_version = "5.12.2",
56283            cpp_lib_version = "5.13.0",
56284            cpp_lib_version = "5.14.0"
56285        )))
56286    )]
56287    #[cfg(any(
56288        any(
56289            cpp_lib_version = "5.11.3",
56290            cpp_lib_version = "5.12.2",
56291            cpp_lib_version = "5.13.0",
56292            cpp_lib_version = "5.14.0"
56293        ),
56294        feature = "ritual_rustdoc"
56295    ))]
56296    pub fn slot_set_origin(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QVector3D,)> {
56297        unsafe {
56298            ::qt_core::Receiver::new(
56299                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
56300                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setOrigin(QVector3D const &)\0"),
56301            )
56302        }
56303    }
56304
56305    /// <p>Holds the direction of the 3D ray. This should be a unit vector.</p>
56306    ///
56307    /// Returns a built-in Qt slot `Qt3DRender::QRayCaster::setDirection` that can be passed to `qt_core::Signal::connect`.
56308    ///
56309    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#direction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the direction of the 3D ray. This should be a unit vector.</p>
56310    /// <p><b>Access functions:</b></p>
56311    /// <div class="table"><table class="alignedsummary">
56312    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>direction</b></span>() const</td></tr>
56313    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDirection</b></span>(const QVector3D &amp;<i>direction</i>)</td></tr>
56314    /// </tbody></table></div>
56315    /// <p><b>Notifier signal:</b></p>
56316    /// <div class="table"><table class="alignedsummary">
56317    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>directionChanged</b></span>(const QVector3D &amp;<i>direction</i>)</td></tr>
56318    /// </tbody></table></div></div>
56319    #[inline(always)]
56320    #[cfg_attr(
56321        feature = "ritual_rustdoc_nightly",
56322        doc(cfg(any(
56323            cpp_lib_version = "5.11.3",
56324            cpp_lib_version = "5.12.2",
56325            cpp_lib_version = "5.13.0",
56326            cpp_lib_version = "5.14.0"
56327        )))
56328    )]
56329    #[cfg(any(
56330        any(
56331            cpp_lib_version = "5.11.3",
56332            cpp_lib_version = "5.12.2",
56333            cpp_lib_version = "5.13.0",
56334            cpp_lib_version = "5.14.0"
56335        ),
56336        feature = "ritual_rustdoc"
56337    ))]
56338    pub fn slot_set_direction(&self) -> ::qt_core::Receiver<(*const ::qt_gui::QVector3D,)> {
56339        unsafe {
56340            ::qt_core::Receiver::new(
56341                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
56342                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
56343                    b"1setDirection(QVector3D const &)\0",
56344                ),
56345            )
56346        }
56347    }
56348
56349    /// <p>Sets the length of the ray to <i>length</i>.</p>
56350    ///
56351    /// Returns a built-in Qt slot `Qt3DRender::QRayCaster::setLength` that can be passed to `qt_core::Signal::connect`.
56352    ///
56353    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#setLength">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the length of the ray to <i>length</i>.</p>
56354    /// <p>If the value is less than or equal to zero, the ray is concidered to be infinite.</p>
56355    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#length-prop">length</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#length-prop">length</a>().</p></div>
56356    #[inline(always)]
56357    #[cfg_attr(
56358        feature = "ritual_rustdoc_nightly",
56359        doc(cfg(any(
56360            cpp_lib_version = "5.11.3",
56361            cpp_lib_version = "5.12.2",
56362            cpp_lib_version = "5.13.0",
56363            cpp_lib_version = "5.14.0"
56364        )))
56365    )]
56366    #[cfg(any(
56367        any(
56368            cpp_lib_version = "5.11.3",
56369            cpp_lib_version = "5.12.2",
56370            cpp_lib_version = "5.13.0",
56371            cpp_lib_version = "5.14.0"
56372        ),
56373        feature = "ritual_rustdoc"
56374    ))]
56375    pub fn slot_set_length(&self) -> ::qt_core::Receiver<(::std::os::raw::c_float,)> {
56376        unsafe {
56377            ::qt_core::Receiver::new(
56378                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
56379                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLength(float)\0"),
56380            )
56381        }
56382    }
56383
56384    /// <p>Convenience method to enable the component and trigger tests using the current ray.</p>
56385    ///
56386    /// Returns a built-in Qt slot `Qt3DRender::QRayCaster::trigger` that can be passed to `qt_core::Signal::connect`.
56387    ///
56388    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#trigger">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Convenience method to enable the component and trigger tests using the current ray.</p></div>
56389    #[inline(always)]
56390    #[cfg_attr(
56391        feature = "ritual_rustdoc_nightly",
56392        doc(cfg(any(
56393            cpp_lib_version = "5.11.3",
56394            cpp_lib_version = "5.12.2",
56395            cpp_lib_version = "5.13.0",
56396            cpp_lib_version = "5.14.0"
56397        )))
56398    )]
56399    #[cfg(any(
56400        any(
56401            cpp_lib_version = "5.11.3",
56402            cpp_lib_version = "5.12.2",
56403            cpp_lib_version = "5.13.0",
56404            cpp_lib_version = "5.14.0"
56405        ),
56406        feature = "ritual_rustdoc"
56407    ))]
56408    pub fn slot_trigger(&self) -> ::qt_core::Receiver<()> {
56409        unsafe {
56410            ::qt_core::Receiver::new(
56411                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
56412                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1trigger()\0"),
56413            )
56414        }
56415    }
56416
56417    /// <p>Convenience method to set the ray details <i>origin</i>, <i>direction</i>, and <i>length</i>, and enable the component to trigger tests.</p>
56418    ///
56419    /// Returns a built-in Qt slot `Qt3DRender::QRayCaster::trigger` that can be passed to `qt_core::Signal::connect`.
56420    ///
56421    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#trigger-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Convenience method to set the ray details <i>origin</i>, <i>direction</i>, and <i>length</i>, and enable the component to trigger tests.</p></div>
56422    #[inline(always)]
56423    #[cfg_attr(
56424        feature = "ritual_rustdoc_nightly",
56425        doc(cfg(any(
56426            cpp_lib_version = "5.11.3",
56427            cpp_lib_version = "5.12.2",
56428            cpp_lib_version = "5.13.0",
56429            cpp_lib_version = "5.14.0"
56430        )))
56431    )]
56432    #[cfg(any(
56433        any(
56434            cpp_lib_version = "5.11.3",
56435            cpp_lib_version = "5.12.2",
56436            cpp_lib_version = "5.13.0",
56437            cpp_lib_version = "5.14.0"
56438        ),
56439        feature = "ritual_rustdoc"
56440    ))]
56441    pub fn slot_trigger2(
56442        &self,
56443    ) -> ::qt_core::Receiver<(
56444        *const ::qt_gui::QVector3D,
56445        *const ::qt_gui::QVector3D,
56446        ::std::os::raw::c_float,
56447    )> {
56448        unsafe {
56449            ::qt_core::Receiver::new(
56450                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
56451                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
56452                    b"1trigger(QVector3D const &,QVector3D const &,float)\0",
56453                ),
56454            )
56455        }
56456    }
56457
56458    /// <p>Holds the origin of the 3D ray in local coordinates.</p>
56459    ///
56460    /// Returns a built-in Qt signal `Qt3DRender::QRayCaster::originChanged` that can be passed to `qt_core::Signal::connect`.
56461    ///
56462    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#origin-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the origin of the 3D ray in local coordinates.</p>
56463    /// <p><b>Access functions:</b></p>
56464    /// <div class="table"><table class="alignedsummary">
56465    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>origin</b></span>() const</td></tr>
56466    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setOrigin</b></span>(const QVector3D &amp;<i>origin</i>)</td></tr>
56467    /// </tbody></table></div>
56468    /// <p><b>Notifier signal:</b></p>
56469    /// <div class="table"><table class="alignedsummary">
56470    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>originChanged</b></span>(const QVector3D &amp;<i>origin</i>)</td></tr>
56471    /// </tbody></table></div></div>
56472    #[inline(always)]
56473    #[cfg_attr(
56474        feature = "ritual_rustdoc_nightly",
56475        doc(cfg(any(
56476            cpp_lib_version = "5.11.3",
56477            cpp_lib_version = "5.12.2",
56478            cpp_lib_version = "5.13.0",
56479            cpp_lib_version = "5.14.0"
56480        )))
56481    )]
56482    #[cfg(any(
56483        any(
56484            cpp_lib_version = "5.11.3",
56485            cpp_lib_version = "5.12.2",
56486            cpp_lib_version = "5.13.0",
56487            cpp_lib_version = "5.14.0"
56488        ),
56489        feature = "ritual_rustdoc"
56490    ))]
56491    pub fn origin_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
56492        unsafe {
56493            ::qt_core::Signal::new(
56494                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
56495                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
56496                    b"2originChanged(QVector3D const &)\0",
56497                ),
56498            )
56499        }
56500    }
56501
56502    /// <p>Holds the direction of the 3D ray. This should be a unit vector.</p>
56503    ///
56504    /// Returns a built-in Qt signal `Qt3DRender::QRayCaster::directionChanged` that can be passed to `qt_core::Signal::connect`.
56505    ///
56506    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#direction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the direction of the 3D ray. This should be a unit vector.</p>
56507    /// <p><b>Access functions:</b></p>
56508    /// <div class="table"><table class="alignedsummary">
56509    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>direction</b></span>() const</td></tr>
56510    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDirection</b></span>(const QVector3D &amp;<i>direction</i>)</td></tr>
56511    /// </tbody></table></div>
56512    /// <p><b>Notifier signal:</b></p>
56513    /// <div class="table"><table class="alignedsummary">
56514    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>directionChanged</b></span>(const QVector3D &amp;<i>direction</i>)</td></tr>
56515    /// </tbody></table></div></div>
56516    #[inline(always)]
56517    #[cfg_attr(
56518        feature = "ritual_rustdoc_nightly",
56519        doc(cfg(any(
56520            cpp_lib_version = "5.11.3",
56521            cpp_lib_version = "5.12.2",
56522            cpp_lib_version = "5.13.0",
56523            cpp_lib_version = "5.14.0"
56524        )))
56525    )]
56526    #[cfg(any(
56527        any(
56528            cpp_lib_version = "5.11.3",
56529            cpp_lib_version = "5.12.2",
56530            cpp_lib_version = "5.13.0",
56531            cpp_lib_version = "5.14.0"
56532        ),
56533        feature = "ritual_rustdoc"
56534    ))]
56535    pub fn direction_changed(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
56536        unsafe {
56537            ::qt_core::Signal::new(
56538                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
56539                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
56540                    b"2directionChanged(QVector3D const &)\0",
56541                ),
56542            )
56543        }
56544    }
56545
56546    /// <p>Holds the length of the 3D ray.</p>
56547    ///
56548    /// Returns a built-in Qt signal `Qt3DRender::QRayCaster::lengthChanged` that can be passed to `qt_core::Signal::connect`.
56549    ///
56550    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#length-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the length of the 3D ray.</p>
56551    /// <p><b>Access functions:</b></p>
56552    /// <div class="table"><table class="alignedsummary">
56553    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>length</b></span>() const</td></tr>
56554    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#setLength">setLength</a></b></span>(float <i>length</i>)</td></tr>
56555    /// </tbody></table></div>
56556    /// <p><b>Notifier signal:</b></p>
56557    /// <div class="table"><table class="alignedsummary">
56558    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>lengthChanged</b></span>(float <i>length</i>)</td></tr>
56559    /// </tbody></table></div></div>
56560    #[inline(always)]
56561    #[cfg_attr(
56562        feature = "ritual_rustdoc_nightly",
56563        doc(cfg(any(
56564            cpp_lib_version = "5.11.3",
56565            cpp_lib_version = "5.12.2",
56566            cpp_lib_version = "5.13.0",
56567            cpp_lib_version = "5.14.0"
56568        )))
56569    )]
56570    #[cfg(any(
56571        any(
56572            cpp_lib_version = "5.11.3",
56573            cpp_lib_version = "5.12.2",
56574            cpp_lib_version = "5.13.0",
56575            cpp_lib_version = "5.14.0"
56576        ),
56577        feature = "ritual_rustdoc"
56578    ))]
56579    pub fn length_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_float,)> {
56580        unsafe {
56581            ::qt_core::Signal::new(
56582                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
56583                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2lengthChanged(float)\0"),
56584            )
56585        }
56586    }
56587
56588    /// <p>Holds the direction of the 3D ray. This should be a unit vector.</p>
56589    ///
56590    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QRayCaster::direction() const```</span>.
56591    ///
56592    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#direction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the direction of the 3D ray. This should be a unit vector.</p>
56593    /// <p><b>Access functions:</b></p>
56594    /// <div class="table"><table class="alignedsummary">
56595    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>direction</b></span>() const</td></tr>
56596    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDirection</b></span>(const QVector3D &amp;<i>direction</i>)</td></tr>
56597    /// </tbody></table></div>
56598    /// <p><b>Notifier signal:</b></p>
56599    /// <div class="table"><table class="alignedsummary">
56600    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>directionChanged</b></span>(const QVector3D &amp;<i>direction</i>)</td></tr>
56601    /// </tbody></table></div></div>
56602    #[inline(always)]
56603    #[cfg_attr(
56604        feature = "ritual_rustdoc_nightly",
56605        doc(cfg(any(
56606            cpp_lib_version = "5.11.3",
56607            cpp_lib_version = "5.12.2",
56608            cpp_lib_version = "5.13.0",
56609            cpp_lib_version = "5.14.0"
56610        )))
56611    )]
56612    #[cfg(any(
56613        any(
56614            cpp_lib_version = "5.11.3",
56615            cpp_lib_version = "5.12.2",
56616            cpp_lib_version = "5.13.0",
56617            cpp_lib_version = "5.14.0"
56618        ),
56619        feature = "ritual_rustdoc"
56620    ))]
56621    pub unsafe fn direction(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
56622        let ffi_result = {
56623            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_direction(
56624                self as *const crate::QRayCaster,
56625            )
56626        };
56627        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
56628    }
56629
56630    /// <p>Holds the length of the 3D ray.</p>
56631    ///
56632    /// Calls C++ function: <span style='color: green;'>```float Qt3DRender::QRayCaster::length() const```</span>.
56633    ///
56634    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#length-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the length of the 3D ray.</p>
56635    /// <p><b>Access functions:</b></p>
56636    /// <div class="table"><table class="alignedsummary">
56637    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> float </td><td class="memItemRight bottomAlign"><span class="name"><b>length</b></span>() const</td></tr>
56638    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#setLength">setLength</a></b></span>(float <i>length</i>)</td></tr>
56639    /// </tbody></table></div>
56640    /// <p><b>Notifier signal:</b></p>
56641    /// <div class="table"><table class="alignedsummary">
56642    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>lengthChanged</b></span>(float <i>length</i>)</td></tr>
56643    /// </tbody></table></div></div>
56644    #[inline(always)]
56645    #[cfg_attr(
56646        feature = "ritual_rustdoc_nightly",
56647        doc(cfg(any(
56648            cpp_lib_version = "5.11.3",
56649            cpp_lib_version = "5.12.2",
56650            cpp_lib_version = "5.13.0",
56651            cpp_lib_version = "5.14.0"
56652        )))
56653    )]
56654    #[cfg(any(
56655        any(
56656            cpp_lib_version = "5.11.3",
56657            cpp_lib_version = "5.12.2",
56658            cpp_lib_version = "5.13.0",
56659            cpp_lib_version = "5.14.0"
56660        ),
56661        feature = "ritual_rustdoc"
56662    ))]
56663    pub unsafe fn length(&self) -> ::std::os::raw::c_float {
56664        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_length(
56665            self as *const crate::QRayCaster,
56666        )
56667    }
56668
56669    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRayCaster::metaObject() const```</span>.
56670    #[inline(always)]
56671    #[cfg_attr(
56672        feature = "ritual_rustdoc_nightly",
56673        doc(cfg(any(
56674            cpp_lib_version = "5.11.3",
56675            cpp_lib_version = "5.12.2",
56676            cpp_lib_version = "5.13.0",
56677            cpp_lib_version = "5.14.0"
56678        )))
56679    )]
56680    #[cfg(any(
56681        any(
56682            cpp_lib_version = "5.11.3",
56683            cpp_lib_version = "5.12.2",
56684            cpp_lib_version = "5.13.0",
56685            cpp_lib_version = "5.14.0"
56686        ),
56687        feature = "ritual_rustdoc"
56688    ))]
56689    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
56690        let ffi_result = {
56691            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_metaObject(
56692                self as *const crate::QRayCaster,
56693            )
56694        };
56695        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
56696    }
56697
56698    /// <p>Default constructs an instance of QRayCaster.</p>
56699    ///
56700    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRayCaster::QRayCaster(Qt3DCore::QNode* parent = …)```</span>.
56701    ///
56702    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#QRayCaster">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QRayCaster.</p></div>
56703    #[inline(always)]
56704    #[cfg_attr(
56705        feature = "ritual_rustdoc_nightly",
56706        doc(cfg(any(
56707            cpp_lib_version = "5.11.3",
56708            cpp_lib_version = "5.12.2",
56709            cpp_lib_version = "5.13.0",
56710            cpp_lib_version = "5.14.0"
56711        )))
56712    )]
56713    #[cfg(any(
56714        any(
56715            cpp_lib_version = "5.11.3",
56716            cpp_lib_version = "5.12.2",
56717            cpp_lib_version = "5.13.0",
56718            cpp_lib_version = "5.14.0"
56719        ),
56720        feature = "ritual_rustdoc"
56721    ))]
56722    pub unsafe fn new_1a(
56723        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
56724    ) -> ::qt_core::QBox<crate::QRayCaster> {
56725        let ffi_result = {
56726            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_QRayCaster(
56727                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
56728                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
56729            )
56730        };
56731        ::qt_core::QBox::from_raw(ffi_result)
56732    }
56733
56734    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html">Qt3DRender::QRayCaster</a> is used to perform ray casting tests in 3d world coordinates.</p>
56735    ///
56736    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRayCaster::QRayCaster()```</span>.
56737    ///
56738    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p><a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html">Qt3DRender::QRayCaster</a> is used to perform ray casting tests in 3d world coordinates.</p>
56739    /// <p>The 3d ray is defined by its origin, direction and length. It will be affected by the transformations applied to the entity it belongs to.</p>
56740    /// <p>Ray casting tests will be performed every frame as long as the component is enabled. The hits property will be updated with the list of intersections.</p></div>
56741    #[inline(always)]
56742    #[cfg_attr(
56743        feature = "ritual_rustdoc_nightly",
56744        doc(cfg(any(
56745            cpp_lib_version = "5.11.3",
56746            cpp_lib_version = "5.12.2",
56747            cpp_lib_version = "5.13.0",
56748            cpp_lib_version = "5.14.0"
56749        )))
56750    )]
56751    #[cfg(any(
56752        any(
56753            cpp_lib_version = "5.11.3",
56754            cpp_lib_version = "5.12.2",
56755            cpp_lib_version = "5.13.0",
56756            cpp_lib_version = "5.14.0"
56757        ),
56758        feature = "ritual_rustdoc"
56759    ))]
56760    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRayCaster> {
56761        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_QRayCaster1() };
56762        ::qt_core::QBox::from_raw(ffi_result)
56763    }
56764
56765    /// <p>Holds the origin of the 3D ray in local coordinates.</p>
56766    ///
56767    /// Calls C++ function: <span style='color: green;'>```QVector3D Qt3DRender::QRayCaster::origin() const```</span>.
56768    ///
56769    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#origin-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the origin of the 3D ray in local coordinates.</p>
56770    /// <p><b>Access functions:</b></p>
56771    /// <div class="table"><table class="alignedsummary">
56772    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>origin</b></span>() const</td></tr>
56773    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setOrigin</b></span>(const QVector3D &amp;<i>origin</i>)</td></tr>
56774    /// </tbody></table></div>
56775    /// <p><b>Notifier signal:</b></p>
56776    /// <div class="table"><table class="alignedsummary">
56777    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>originChanged</b></span>(const QVector3D &amp;<i>origin</i>)</td></tr>
56778    /// </tbody></table></div></div>
56779    #[inline(always)]
56780    #[cfg_attr(
56781        feature = "ritual_rustdoc_nightly",
56782        doc(cfg(any(
56783            cpp_lib_version = "5.11.3",
56784            cpp_lib_version = "5.12.2",
56785            cpp_lib_version = "5.13.0",
56786            cpp_lib_version = "5.14.0"
56787        )))
56788    )]
56789    #[cfg(any(
56790        any(
56791            cpp_lib_version = "5.11.3",
56792            cpp_lib_version = "5.12.2",
56793            cpp_lib_version = "5.13.0",
56794            cpp_lib_version = "5.14.0"
56795        ),
56796        feature = "ritual_rustdoc"
56797    ))]
56798    pub unsafe fn origin(&self) -> ::cpp_core::CppBox<::qt_gui::QVector3D> {
56799        let ffi_result = {
56800            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_origin(
56801                self as *const crate::QRayCaster,
56802            )
56803        };
56804        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
56805    }
56806
56807    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRayCaster::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
56808    #[inline(always)]
56809    #[cfg_attr(
56810        feature = "ritual_rustdoc_nightly",
56811        doc(cfg(any(
56812            cpp_lib_version = "5.11.3",
56813            cpp_lib_version = "5.12.2",
56814            cpp_lib_version = "5.13.0",
56815            cpp_lib_version = "5.14.0"
56816        )))
56817    )]
56818    #[cfg(any(
56819        any(
56820            cpp_lib_version = "5.11.3",
56821            cpp_lib_version = "5.12.2",
56822            cpp_lib_version = "5.13.0",
56823            cpp_lib_version = "5.14.0"
56824        ),
56825        feature = "ritual_rustdoc"
56826    ))]
56827    pub unsafe fn qt_metacall(
56828        &self,
56829        arg1: ::qt_core::q_meta_object::Call,
56830        arg2: ::std::os::raw::c_int,
56831        arg3: *mut *mut ::std::ffi::c_void,
56832    ) -> ::std::os::raw::c_int {
56833        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_qt_metacall(
56834            self as *const crate::QRayCaster as *mut crate::QRayCaster,
56835            arg1,
56836            arg2,
56837            arg3,
56838        )
56839    }
56840
56841    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRayCaster::qt_metacast(const char* arg1)```</span>.
56842    #[inline(always)]
56843    #[cfg_attr(
56844        feature = "ritual_rustdoc_nightly",
56845        doc(cfg(any(
56846            cpp_lib_version = "5.11.3",
56847            cpp_lib_version = "5.12.2",
56848            cpp_lib_version = "5.13.0",
56849            cpp_lib_version = "5.14.0"
56850        )))
56851    )]
56852    #[cfg(any(
56853        any(
56854            cpp_lib_version = "5.11.3",
56855            cpp_lib_version = "5.12.2",
56856            cpp_lib_version = "5.13.0",
56857            cpp_lib_version = "5.14.0"
56858        ),
56859        feature = "ritual_rustdoc"
56860    ))]
56861    pub unsafe fn qt_metacast(
56862        &self,
56863        arg1: *const ::std::os::raw::c_char,
56864    ) -> *mut ::std::ffi::c_void {
56865        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_qt_metacast(
56866            self as *const crate::QRayCaster as *mut crate::QRayCaster,
56867            arg1,
56868        )
56869    }
56870
56871    /// <p>Holds the direction of the 3D ray. This should be a unit vector.</p>
56872    ///
56873    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRayCaster::setDirection(const QVector3D& direction)```</span>.
56874    ///
56875    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#direction-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the direction of the 3D ray. This should be a unit vector.</p>
56876    /// <p><b>Access functions:</b></p>
56877    /// <div class="table"><table class="alignedsummary">
56878    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>direction</b></span>() const</td></tr>
56879    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setDirection</b></span>(const QVector3D &amp;<i>direction</i>)</td></tr>
56880    /// </tbody></table></div>
56881    /// <p><b>Notifier signal:</b></p>
56882    /// <div class="table"><table class="alignedsummary">
56883    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>directionChanged</b></span>(const QVector3D &amp;<i>direction</i>)</td></tr>
56884    /// </tbody></table></div></div>
56885    #[inline(always)]
56886    #[cfg_attr(
56887        feature = "ritual_rustdoc_nightly",
56888        doc(cfg(any(
56889            cpp_lib_version = "5.11.3",
56890            cpp_lib_version = "5.12.2",
56891            cpp_lib_version = "5.13.0",
56892            cpp_lib_version = "5.14.0"
56893        )))
56894    )]
56895    #[cfg(any(
56896        any(
56897            cpp_lib_version = "5.11.3",
56898            cpp_lib_version = "5.12.2",
56899            cpp_lib_version = "5.13.0",
56900            cpp_lib_version = "5.14.0"
56901        ),
56902        feature = "ritual_rustdoc"
56903    ))]
56904    pub unsafe fn set_direction(
56905        &self,
56906        direction: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
56907    ) {
56908        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_setDirection(
56909            self as *const crate::QRayCaster as *mut crate::QRayCaster,
56910            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(direction)
56911                .as_raw_ptr(),
56912        )
56913    }
56914
56915    /// <p>Sets the length of the ray to <i>length</i>.</p>
56916    ///
56917    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRayCaster::setLength(float length)```</span>.
56918    ///
56919    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#setLength">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the length of the ray to <i>length</i>.</p>
56920    /// <p>If the value is less than or equal to zero, the ray is concidered to be infinite.</p>
56921    /// <p><b>Note:</b> Setter function for property <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#length-prop">length</a>. </p><p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#length-prop">length</a>().</p></div>
56922    #[inline(always)]
56923    #[cfg_attr(
56924        feature = "ritual_rustdoc_nightly",
56925        doc(cfg(any(
56926            cpp_lib_version = "5.11.3",
56927            cpp_lib_version = "5.12.2",
56928            cpp_lib_version = "5.13.0",
56929            cpp_lib_version = "5.14.0"
56930        )))
56931    )]
56932    #[cfg(any(
56933        any(
56934            cpp_lib_version = "5.11.3",
56935            cpp_lib_version = "5.12.2",
56936            cpp_lib_version = "5.13.0",
56937            cpp_lib_version = "5.14.0"
56938        ),
56939        feature = "ritual_rustdoc"
56940    ))]
56941    pub unsafe fn set_length(&self, length: ::std::os::raw::c_float) {
56942        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_setLength(
56943            self as *const crate::QRayCaster as *mut crate::QRayCaster,
56944            length,
56945        )
56946    }
56947
56948    /// <p>Holds the origin of the 3D ray in local coordinates.</p>
56949    ///
56950    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRayCaster::setOrigin(const QVector3D& origin)```</span>.
56951    ///
56952    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#origin-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the origin of the 3D ray in local coordinates.</p>
56953    /// <p><b>Access functions:</b></p>
56954    /// <div class="table"><table class="alignedsummary">
56955    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVector3D </td><td class="memItemRight bottomAlign"><span class="name"><b>origin</b></span>() const</td></tr>
56956    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setOrigin</b></span>(const QVector3D &amp;<i>origin</i>)</td></tr>
56957    /// </tbody></table></div>
56958    /// <p><b>Notifier signal:</b></p>
56959    /// <div class="table"><table class="alignedsummary">
56960    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>originChanged</b></span>(const QVector3D &amp;<i>origin</i>)</td></tr>
56961    /// </tbody></table></div></div>
56962    #[inline(always)]
56963    #[cfg_attr(
56964        feature = "ritual_rustdoc_nightly",
56965        doc(cfg(any(
56966            cpp_lib_version = "5.11.3",
56967            cpp_lib_version = "5.12.2",
56968            cpp_lib_version = "5.13.0",
56969            cpp_lib_version = "5.14.0"
56970        )))
56971    )]
56972    #[cfg(any(
56973        any(
56974            cpp_lib_version = "5.11.3",
56975            cpp_lib_version = "5.12.2",
56976            cpp_lib_version = "5.13.0",
56977            cpp_lib_version = "5.14.0"
56978        ),
56979        feature = "ritual_rustdoc"
56980    ))]
56981    pub unsafe fn set_origin(
56982        &self,
56983        origin: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
56984    ) {
56985        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_setOrigin(
56986            self as *const crate::QRayCaster as *mut crate::QRayCaster,
56987            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(origin)
56988                .as_raw_ptr(),
56989        )
56990    }
56991
56992    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
56993    #[inline(always)]
56994    #[cfg_attr(
56995        feature = "ritual_rustdoc_nightly",
56996        doc(cfg(any(
56997            cpp_lib_version = "5.11.3",
56998            cpp_lib_version = "5.12.2",
56999            cpp_lib_version = "5.13.0",
57000            cpp_lib_version = "5.14.0"
57001        )))
57002    )]
57003    #[cfg(any(
57004        any(
57005            cpp_lib_version = "5.11.3",
57006            cpp_lib_version = "5.12.2",
57007            cpp_lib_version = "5.13.0",
57008            cpp_lib_version = "5.14.0"
57009        ),
57010        feature = "ritual_rustdoc"
57011    ))]
57012    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
57013        let ffi_result =
57014            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_staticMetaObject() };
57015        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
57016            .expect("attempted to construct a null Ref")
57017    }
57018
57019    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRayCaster::tr(const char* s, const char* c, int n)```</span>.
57020    #[inline(always)]
57021    #[cfg_attr(
57022        feature = "ritual_rustdoc_nightly",
57023        doc(cfg(any(
57024            cpp_lib_version = "5.11.3",
57025            cpp_lib_version = "5.12.2",
57026            cpp_lib_version = "5.13.0",
57027            cpp_lib_version = "5.14.0"
57028        )))
57029    )]
57030    #[cfg(any(
57031        any(
57032            cpp_lib_version = "5.11.3",
57033            cpp_lib_version = "5.12.2",
57034            cpp_lib_version = "5.13.0",
57035            cpp_lib_version = "5.14.0"
57036        ),
57037        feature = "ritual_rustdoc"
57038    ))]
57039    pub unsafe fn tr(
57040        s: *const ::std::os::raw::c_char,
57041        c: *const ::std::os::raw::c_char,
57042        n: ::std::os::raw::c_int,
57043    ) -> ::cpp_core::CppBox<::qt_core::QString> {
57044        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_tr(s, c, n) };
57045        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
57046    }
57047
57048    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRayCaster::trUtf8(const char* s, const char* c, int n)```</span>.
57049    #[inline(always)]
57050    #[cfg_attr(
57051        feature = "ritual_rustdoc_nightly",
57052        doc(cfg(any(
57053            cpp_lib_version = "5.11.3",
57054            cpp_lib_version = "5.12.2",
57055            cpp_lib_version = "5.13.0",
57056            cpp_lib_version = "5.14.0"
57057        )))
57058    )]
57059    #[cfg(any(
57060        any(
57061            cpp_lib_version = "5.11.3",
57062            cpp_lib_version = "5.12.2",
57063            cpp_lib_version = "5.13.0",
57064            cpp_lib_version = "5.14.0"
57065        ),
57066        feature = "ritual_rustdoc"
57067    ))]
57068    pub unsafe fn tr_utf8(
57069        s: *const ::std::os::raw::c_char,
57070        c: *const ::std::os::raw::c_char,
57071        n: ::std::os::raw::c_int,
57072    ) -> ::cpp_core::CppBox<::qt_core::QString> {
57073        let ffi_result =
57074            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_trUtf8(s, c, n) };
57075        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
57076    }
57077
57078    /// <p>Convenience method to enable the component and trigger tests using the current ray.</p>
57079    ///
57080    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRayCaster::trigger()```</span>.
57081    ///
57082    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#trigger">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Convenience method to enable the component and trigger tests using the current ray.</p></div>
57083    #[inline(always)]
57084    #[cfg_attr(
57085        feature = "ritual_rustdoc_nightly",
57086        doc(cfg(any(
57087            cpp_lib_version = "5.11.3",
57088            cpp_lib_version = "5.12.2",
57089            cpp_lib_version = "5.13.0",
57090            cpp_lib_version = "5.14.0"
57091        )))
57092    )]
57093    #[cfg(any(
57094        any(
57095            cpp_lib_version = "5.11.3",
57096            cpp_lib_version = "5.12.2",
57097            cpp_lib_version = "5.13.0",
57098            cpp_lib_version = "5.14.0"
57099        ),
57100        feature = "ritual_rustdoc"
57101    ))]
57102    pub unsafe fn trigger_0a(&self) {
57103        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_trigger(
57104            self as *const crate::QRayCaster as *mut crate::QRayCaster,
57105        )
57106    }
57107
57108    /// <p>Convenience method to set the ray details <i>origin</i>, <i>direction</i>, and <i>length</i>, and enable the component to trigger tests.</p>
57109    ///
57110    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRayCaster::trigger(const QVector3D& origin, const QVector3D& direction, float length)```</span>.
57111    ///
57112    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycaster.html#trigger-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Convenience method to set the ray details <i>origin</i>, <i>direction</i>, and <i>length</i>, and enable the component to trigger tests.</p></div>
57113    #[inline(always)]
57114    #[cfg_attr(
57115        feature = "ritual_rustdoc_nightly",
57116        doc(cfg(any(
57117            cpp_lib_version = "5.11.3",
57118            cpp_lib_version = "5.12.2",
57119            cpp_lib_version = "5.13.0",
57120            cpp_lib_version = "5.14.0"
57121        )))
57122    )]
57123    #[cfg(any(
57124        any(
57125            cpp_lib_version = "5.11.3",
57126            cpp_lib_version = "5.12.2",
57127            cpp_lib_version = "5.13.0",
57128            cpp_lib_version = "5.14.0"
57129        ),
57130        feature = "ritual_rustdoc"
57131    ))]
57132    pub unsafe fn trigger_3a(
57133        &self,
57134        origin: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
57135        direction: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
57136        length: ::std::os::raw::c_float,
57137    ) {
57138        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_trigger1(
57139            self as *const crate::QRayCaster as *mut crate::QRayCaster,
57140            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(origin)
57141                .as_raw_ptr(),
57142            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(direction)
57143                .as_raw_ptr(),
57144            length,
57145        )
57146    }
57147}
57148
57149/// <p>Performe ray casting test based on screen coordinates.</p>
57150///
57151/// C++ class: <span style='color: green;'>```Qt3DRender::QScreenRayCaster```</span>.
57152///
57153/// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Performe ray casting test based on screen coordinates.</p>
57154/// <p><a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html">QScreenRayCaster</a> can be used to perform ray casting tests by specifying coordinates in screen space, which will be used to construct an actual 3D ray between the near and far planes.</p></div>
57155#[repr(C)]
57156pub struct QScreenRayCaster {
57157    _unused: u8,
57158}
57159impl QScreenRayCaster {
57160    /// <p>Holds the screen space position used to compute the actual 3D ray for intersection tests.</p>
57161    ///
57162    /// Returns a built-in Qt slot `Qt3DRender::QScreenRayCaster::setPosition` that can be passed to `qt_core::Signal::connect`.
57163    ///
57164    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html#position-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the screen space position used to compute the actual 3D ray for intersection tests.</p>
57165    /// <p>Note: the coordinates will be used for every available render surface as long as they are in the valid range.</p>
57166    /// <p><b>Access functions:</b></p>
57167    /// <div class="table"><table class="alignedsummary">
57168    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QPoint </td><td class="memItemRight bottomAlign"><span class="name"><b>position</b></span>() const</td></tr>
57169    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPosition</b></span>(const QPoint &amp;<i>position</i>)</td></tr>
57170    /// </tbody></table></div>
57171    /// <p><b>Notifier signal:</b></p>
57172    /// <div class="table"><table class="alignedsummary">
57173    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>positionChanged</b></span>(const QPoint &amp;<i>position</i>)</td></tr>
57174    /// </tbody></table></div></div>
57175    #[inline(always)]
57176    #[cfg_attr(
57177        feature = "ritual_rustdoc_nightly",
57178        doc(cfg(any(
57179            cpp_lib_version = "5.11.3",
57180            cpp_lib_version = "5.12.2",
57181            cpp_lib_version = "5.13.0",
57182            cpp_lib_version = "5.14.0"
57183        )))
57184    )]
57185    #[cfg(any(
57186        any(
57187            cpp_lib_version = "5.11.3",
57188            cpp_lib_version = "5.12.2",
57189            cpp_lib_version = "5.13.0",
57190            cpp_lib_version = "5.14.0"
57191        ),
57192        feature = "ritual_rustdoc"
57193    ))]
57194    pub fn slot_set_position(&self) -> ::qt_core::Receiver<(*const ::qt_core::QPoint,)> {
57195        unsafe {
57196            ::qt_core::Receiver::new(
57197                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57198                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setPosition(QPoint const &)\0"),
57199            )
57200        }
57201    }
57202
57203    /// <p>Convenience method to enable the component and trigger tests using the current coordinate value.</p>
57204    ///
57205    /// Returns a built-in Qt slot `Qt3DRender::QScreenRayCaster::trigger` that can be passed to `qt_core::Signal::connect`.
57206    ///
57207    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html#trigger">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Convenience method to enable the component and trigger tests using the current coordinate value.</p></div>
57208    #[inline(always)]
57209    #[cfg_attr(
57210        feature = "ritual_rustdoc_nightly",
57211        doc(cfg(any(
57212            cpp_lib_version = "5.11.3",
57213            cpp_lib_version = "5.12.2",
57214            cpp_lib_version = "5.13.0",
57215            cpp_lib_version = "5.14.0"
57216        )))
57217    )]
57218    #[cfg(any(
57219        any(
57220            cpp_lib_version = "5.11.3",
57221            cpp_lib_version = "5.12.2",
57222            cpp_lib_version = "5.13.0",
57223            cpp_lib_version = "5.14.0"
57224        ),
57225        feature = "ritual_rustdoc"
57226    ))]
57227    pub fn slot_trigger(&self) -> ::qt_core::Receiver<()> {
57228        unsafe {
57229            ::qt_core::Receiver::new(
57230                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57231                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1trigger()\0"),
57232            )
57233        }
57234    }
57235
57236    /// <p>Convenience method to set the coordinate value <i>position</i> and enable the component to trigger tests.</p>
57237    ///
57238    /// Returns a built-in Qt slot `Qt3DRender::QScreenRayCaster::trigger` that can be passed to `qt_core::Signal::connect`.
57239    ///
57240    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html#trigger-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Convenience method to set the coordinate value <i>position</i> and enable the component to trigger tests.</p></div>
57241    #[inline(always)]
57242    #[cfg_attr(
57243        feature = "ritual_rustdoc_nightly",
57244        doc(cfg(any(
57245            cpp_lib_version = "5.11.3",
57246            cpp_lib_version = "5.12.2",
57247            cpp_lib_version = "5.13.0",
57248            cpp_lib_version = "5.14.0"
57249        )))
57250    )]
57251    #[cfg(any(
57252        any(
57253            cpp_lib_version = "5.11.3",
57254            cpp_lib_version = "5.12.2",
57255            cpp_lib_version = "5.13.0",
57256            cpp_lib_version = "5.14.0"
57257        ),
57258        feature = "ritual_rustdoc"
57259    ))]
57260    pub fn slot_trigger2(&self) -> ::qt_core::Receiver<(*const ::qt_core::QPoint,)> {
57261        unsafe {
57262            ::qt_core::Receiver::new(
57263                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57264                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1trigger(QPoint const &)\0"),
57265            )
57266        }
57267    }
57268
57269    /// <p>Holds the screen space position used to compute the actual 3D ray for intersection tests.</p>
57270    ///
57271    /// Returns a built-in Qt signal `Qt3DRender::QScreenRayCaster::positionChanged` that can be passed to `qt_core::Signal::connect`.
57272    ///
57273    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html#position-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the screen space position used to compute the actual 3D ray for intersection tests.</p>
57274    /// <p>Note: the coordinates will be used for every available render surface as long as they are in the valid range.</p>
57275    /// <p><b>Access functions:</b></p>
57276    /// <div class="table"><table class="alignedsummary">
57277    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QPoint </td><td class="memItemRight bottomAlign"><span class="name"><b>position</b></span>() const</td></tr>
57278    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPosition</b></span>(const QPoint &amp;<i>position</i>)</td></tr>
57279    /// </tbody></table></div>
57280    /// <p><b>Notifier signal:</b></p>
57281    /// <div class="table"><table class="alignedsummary">
57282    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>positionChanged</b></span>(const QPoint &amp;<i>position</i>)</td></tr>
57283    /// </tbody></table></div></div>
57284    #[inline(always)]
57285    #[cfg_attr(
57286        feature = "ritual_rustdoc_nightly",
57287        doc(cfg(any(
57288            cpp_lib_version = "5.11.3",
57289            cpp_lib_version = "5.12.2",
57290            cpp_lib_version = "5.13.0",
57291            cpp_lib_version = "5.14.0"
57292        )))
57293    )]
57294    #[cfg(any(
57295        any(
57296            cpp_lib_version = "5.11.3",
57297            cpp_lib_version = "5.12.2",
57298            cpp_lib_version = "5.13.0",
57299            cpp_lib_version = "5.14.0"
57300        ),
57301        feature = "ritual_rustdoc"
57302    ))]
57303    pub fn position_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QPoint,)> {
57304        unsafe {
57305            ::qt_core::Signal::new(
57306                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57307                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
57308                    b"2positionChanged(QPoint const &)\0",
57309                ),
57310            )
57311        }
57312    }
57313
57314    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QScreenRayCaster::metaObject() const```</span>.
57315    #[inline(always)]
57316    #[cfg_attr(
57317        feature = "ritual_rustdoc_nightly",
57318        doc(cfg(any(
57319            cpp_lib_version = "5.11.3",
57320            cpp_lib_version = "5.12.2",
57321            cpp_lib_version = "5.13.0",
57322            cpp_lib_version = "5.14.0"
57323        )))
57324    )]
57325    #[cfg(any(
57326        any(
57327            cpp_lib_version = "5.11.3",
57328            cpp_lib_version = "5.12.2",
57329            cpp_lib_version = "5.13.0",
57330            cpp_lib_version = "5.14.0"
57331        ),
57332        feature = "ritual_rustdoc"
57333    ))]
57334    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
57335        let ffi_result = {
57336            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_metaObject(
57337                self as *const crate::QScreenRayCaster,
57338            )
57339        };
57340        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
57341    }
57342
57343    /// <p>Default constructs an instance of QScreenRayCaster.</p>
57344    ///
57345    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QScreenRayCaster::QScreenRayCaster(Qt3DCore::QNode* parent = …)```</span>.
57346    ///
57347    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html#QScreenRayCaster">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QScreenRayCaster.</p></div>
57348    #[inline(always)]
57349    #[cfg_attr(
57350        feature = "ritual_rustdoc_nightly",
57351        doc(cfg(any(
57352            cpp_lib_version = "5.11.3",
57353            cpp_lib_version = "5.12.2",
57354            cpp_lib_version = "5.13.0",
57355            cpp_lib_version = "5.14.0"
57356        )))
57357    )]
57358    #[cfg(any(
57359        any(
57360            cpp_lib_version = "5.11.3",
57361            cpp_lib_version = "5.12.2",
57362            cpp_lib_version = "5.13.0",
57363            cpp_lib_version = "5.14.0"
57364        ),
57365        feature = "ritual_rustdoc"
57366    ))]
57367    pub unsafe fn new_1a(
57368        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
57369    ) -> ::qt_core::QBox<crate::QScreenRayCaster> {
57370        let ffi_result = {
57371            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_QScreenRayCaster(
57372                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
57373                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
57374            )
57375        };
57376        ::qt_core::QBox::from_raw(ffi_result)
57377    }
57378
57379    /// <p>Performe ray casting test based on screen coordinates.</p>
57380    ///
57381    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QScreenRayCaster::QScreenRayCaster()```</span>.
57382    ///
57383    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Performe ray casting test based on screen coordinates.</p>
57384    /// <p><a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html">QScreenRayCaster</a> can be used to perform ray casting tests by specifying coordinates in screen space, which will be used to construct an actual 3D ray between the near and far planes.</p></div>
57385    #[inline(always)]
57386    #[cfg_attr(
57387        feature = "ritual_rustdoc_nightly",
57388        doc(cfg(any(
57389            cpp_lib_version = "5.11.3",
57390            cpp_lib_version = "5.12.2",
57391            cpp_lib_version = "5.13.0",
57392            cpp_lib_version = "5.14.0"
57393        )))
57394    )]
57395    #[cfg(any(
57396        any(
57397            cpp_lib_version = "5.11.3",
57398            cpp_lib_version = "5.12.2",
57399            cpp_lib_version = "5.13.0",
57400            cpp_lib_version = "5.14.0"
57401        ),
57402        feature = "ritual_rustdoc"
57403    ))]
57404    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QScreenRayCaster> {
57405        let ffi_result =
57406            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_QScreenRayCaster1() };
57407        ::qt_core::QBox::from_raw(ffi_result)
57408    }
57409
57410    /// <p>Holds the screen space position used to compute the actual 3D ray for intersection tests.</p>
57411    ///
57412    /// Calls C++ function: <span style='color: green;'>```QPoint Qt3DRender::QScreenRayCaster::position() const```</span>.
57413    ///
57414    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html#position-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the screen space position used to compute the actual 3D ray for intersection tests.</p>
57415    /// <p>Note: the coordinates will be used for every available render surface as long as they are in the valid range.</p>
57416    /// <p><b>Access functions:</b></p>
57417    /// <div class="table"><table class="alignedsummary">
57418    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QPoint </td><td class="memItemRight bottomAlign"><span class="name"><b>position</b></span>() const</td></tr>
57419    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPosition</b></span>(const QPoint &amp;<i>position</i>)</td></tr>
57420    /// </tbody></table></div>
57421    /// <p><b>Notifier signal:</b></p>
57422    /// <div class="table"><table class="alignedsummary">
57423    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>positionChanged</b></span>(const QPoint &amp;<i>position</i>)</td></tr>
57424    /// </tbody></table></div></div>
57425    #[inline(always)]
57426    #[cfg_attr(
57427        feature = "ritual_rustdoc_nightly",
57428        doc(cfg(any(
57429            cpp_lib_version = "5.11.3",
57430            cpp_lib_version = "5.12.2",
57431            cpp_lib_version = "5.13.0",
57432            cpp_lib_version = "5.14.0"
57433        )))
57434    )]
57435    #[cfg(any(
57436        any(
57437            cpp_lib_version = "5.11.3",
57438            cpp_lib_version = "5.12.2",
57439            cpp_lib_version = "5.13.0",
57440            cpp_lib_version = "5.14.0"
57441        ),
57442        feature = "ritual_rustdoc"
57443    ))]
57444    pub unsafe fn position(&self) -> ::cpp_core::CppBox<::qt_core::QPoint> {
57445        let ffi_result = {
57446            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_position(
57447                self as *const crate::QScreenRayCaster,
57448            )
57449        };
57450        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
57451    }
57452
57453    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QScreenRayCaster::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
57454    #[inline(always)]
57455    #[cfg_attr(
57456        feature = "ritual_rustdoc_nightly",
57457        doc(cfg(any(
57458            cpp_lib_version = "5.11.3",
57459            cpp_lib_version = "5.12.2",
57460            cpp_lib_version = "5.13.0",
57461            cpp_lib_version = "5.14.0"
57462        )))
57463    )]
57464    #[cfg(any(
57465        any(
57466            cpp_lib_version = "5.11.3",
57467            cpp_lib_version = "5.12.2",
57468            cpp_lib_version = "5.13.0",
57469            cpp_lib_version = "5.14.0"
57470        ),
57471        feature = "ritual_rustdoc"
57472    ))]
57473    pub unsafe fn qt_metacall(
57474        &self,
57475        arg1: ::qt_core::q_meta_object::Call,
57476        arg2: ::std::os::raw::c_int,
57477        arg3: *mut *mut ::std::ffi::c_void,
57478    ) -> ::std::os::raw::c_int {
57479        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_qt_metacall(
57480            self as *const crate::QScreenRayCaster as *mut crate::QScreenRayCaster,
57481            arg1,
57482            arg2,
57483            arg3,
57484        )
57485    }
57486
57487    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QScreenRayCaster::qt_metacast(const char* arg1)```</span>.
57488    #[inline(always)]
57489    #[cfg_attr(
57490        feature = "ritual_rustdoc_nightly",
57491        doc(cfg(any(
57492            cpp_lib_version = "5.11.3",
57493            cpp_lib_version = "5.12.2",
57494            cpp_lib_version = "5.13.0",
57495            cpp_lib_version = "5.14.0"
57496        )))
57497    )]
57498    #[cfg(any(
57499        any(
57500            cpp_lib_version = "5.11.3",
57501            cpp_lib_version = "5.12.2",
57502            cpp_lib_version = "5.13.0",
57503            cpp_lib_version = "5.14.0"
57504        ),
57505        feature = "ritual_rustdoc"
57506    ))]
57507    pub unsafe fn qt_metacast(
57508        &self,
57509        arg1: *const ::std::os::raw::c_char,
57510    ) -> *mut ::std::ffi::c_void {
57511        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_qt_metacast(
57512            self as *const crate::QScreenRayCaster as *mut crate::QScreenRayCaster,
57513            arg1,
57514        )
57515    }
57516
57517    /// <p>Holds the screen space position used to compute the actual 3D ray for intersection tests.</p>
57518    ///
57519    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QScreenRayCaster::setPosition(const QPoint& position)```</span>.
57520    ///
57521    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html#position-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the screen space position used to compute the actual 3D ray for intersection tests.</p>
57522    /// <p>Note: the coordinates will be used for every available render surface as long as they are in the valid range.</p>
57523    /// <p><b>Access functions:</b></p>
57524    /// <div class="table"><table class="alignedsummary">
57525    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QPoint </td><td class="memItemRight bottomAlign"><span class="name"><b>position</b></span>() const</td></tr>
57526    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setPosition</b></span>(const QPoint &amp;<i>position</i>)</td></tr>
57527    /// </tbody></table></div>
57528    /// <p><b>Notifier signal:</b></p>
57529    /// <div class="table"><table class="alignedsummary">
57530    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>positionChanged</b></span>(const QPoint &amp;<i>position</i>)</td></tr>
57531    /// </tbody></table></div></div>
57532    #[inline(always)]
57533    #[cfg_attr(
57534        feature = "ritual_rustdoc_nightly",
57535        doc(cfg(any(
57536            cpp_lib_version = "5.11.3",
57537            cpp_lib_version = "5.12.2",
57538            cpp_lib_version = "5.13.0",
57539            cpp_lib_version = "5.14.0"
57540        )))
57541    )]
57542    #[cfg(any(
57543        any(
57544            cpp_lib_version = "5.11.3",
57545            cpp_lib_version = "5.12.2",
57546            cpp_lib_version = "5.13.0",
57547            cpp_lib_version = "5.14.0"
57548        ),
57549        feature = "ritual_rustdoc"
57550    ))]
57551    pub unsafe fn set_position(
57552        &self,
57553        position: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPoint>>,
57554    ) {
57555        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_setPosition(
57556            self as *const crate::QScreenRayCaster as *mut crate::QScreenRayCaster,
57557            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPoint>>::cast_into(position)
57558                .as_raw_ptr(),
57559        )
57560    }
57561
57562    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
57563    #[inline(always)]
57564    #[cfg_attr(
57565        feature = "ritual_rustdoc_nightly",
57566        doc(cfg(any(
57567            cpp_lib_version = "5.11.3",
57568            cpp_lib_version = "5.12.2",
57569            cpp_lib_version = "5.13.0",
57570            cpp_lib_version = "5.14.0"
57571        )))
57572    )]
57573    #[cfg(any(
57574        any(
57575            cpp_lib_version = "5.11.3",
57576            cpp_lib_version = "5.12.2",
57577            cpp_lib_version = "5.13.0",
57578            cpp_lib_version = "5.14.0"
57579        ),
57580        feature = "ritual_rustdoc"
57581    ))]
57582    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
57583        let ffi_result =
57584            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_staticMetaObject() };
57585        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
57586            .expect("attempted to construct a null Ref")
57587    }
57588
57589    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QScreenRayCaster::tr(const char* s, const char* c, int n)```</span>.
57590    #[inline(always)]
57591    #[cfg_attr(
57592        feature = "ritual_rustdoc_nightly",
57593        doc(cfg(any(
57594            cpp_lib_version = "5.11.3",
57595            cpp_lib_version = "5.12.2",
57596            cpp_lib_version = "5.13.0",
57597            cpp_lib_version = "5.14.0"
57598        )))
57599    )]
57600    #[cfg(any(
57601        any(
57602            cpp_lib_version = "5.11.3",
57603            cpp_lib_version = "5.12.2",
57604            cpp_lib_version = "5.13.0",
57605            cpp_lib_version = "5.14.0"
57606        ),
57607        feature = "ritual_rustdoc"
57608    ))]
57609    pub unsafe fn tr(
57610        s: *const ::std::os::raw::c_char,
57611        c: *const ::std::os::raw::c_char,
57612        n: ::std::os::raw::c_int,
57613    ) -> ::cpp_core::CppBox<::qt_core::QString> {
57614        let ffi_result =
57615            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_tr(s, c, n) };
57616        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
57617    }
57618
57619    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QScreenRayCaster::trUtf8(const char* s, const char* c, int n)```</span>.
57620    #[inline(always)]
57621    #[cfg_attr(
57622        feature = "ritual_rustdoc_nightly",
57623        doc(cfg(any(
57624            cpp_lib_version = "5.11.3",
57625            cpp_lib_version = "5.12.2",
57626            cpp_lib_version = "5.13.0",
57627            cpp_lib_version = "5.14.0"
57628        )))
57629    )]
57630    #[cfg(any(
57631        any(
57632            cpp_lib_version = "5.11.3",
57633            cpp_lib_version = "5.12.2",
57634            cpp_lib_version = "5.13.0",
57635            cpp_lib_version = "5.14.0"
57636        ),
57637        feature = "ritual_rustdoc"
57638    ))]
57639    pub unsafe fn tr_utf8(
57640        s: *const ::std::os::raw::c_char,
57641        c: *const ::std::os::raw::c_char,
57642        n: ::std::os::raw::c_int,
57643    ) -> ::cpp_core::CppBox<::qt_core::QString> {
57644        let ffi_result =
57645            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_trUtf8(s, c, n) };
57646        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
57647    }
57648
57649    /// <p>Convenience method to enable the component and trigger tests using the current coordinate value.</p>
57650    ///
57651    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QScreenRayCaster::trigger()```</span>.
57652    ///
57653    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html#trigger">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Convenience method to enable the component and trigger tests using the current coordinate value.</p></div>
57654    #[inline(always)]
57655    #[cfg_attr(
57656        feature = "ritual_rustdoc_nightly",
57657        doc(cfg(any(
57658            cpp_lib_version = "5.11.3",
57659            cpp_lib_version = "5.12.2",
57660            cpp_lib_version = "5.13.0",
57661            cpp_lib_version = "5.14.0"
57662        )))
57663    )]
57664    #[cfg(any(
57665        any(
57666            cpp_lib_version = "5.11.3",
57667            cpp_lib_version = "5.12.2",
57668            cpp_lib_version = "5.13.0",
57669            cpp_lib_version = "5.14.0"
57670        ),
57671        feature = "ritual_rustdoc"
57672    ))]
57673    pub unsafe fn trigger_0a(&self) {
57674        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_trigger(
57675            self as *const crate::QScreenRayCaster as *mut crate::QScreenRayCaster,
57676        )
57677    }
57678
57679    /// <p>Convenience method to set the coordinate value <i>position</i> and enable the component to trigger tests.</p>
57680    ///
57681    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QScreenRayCaster::trigger(const QPoint& position)```</span>.
57682    ///
57683    /// <a href="http://doc.qt.io/qt-5/qt3drender-qscreenraycaster.html#trigger-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Convenience method to set the coordinate value <i>position</i> and enable the component to trigger tests.</p></div>
57684    #[inline(always)]
57685    #[cfg_attr(
57686        feature = "ritual_rustdoc_nightly",
57687        doc(cfg(any(
57688            cpp_lib_version = "5.11.3",
57689            cpp_lib_version = "5.12.2",
57690            cpp_lib_version = "5.13.0",
57691            cpp_lib_version = "5.14.0"
57692        )))
57693    )]
57694    #[cfg(any(
57695        any(
57696            cpp_lib_version = "5.11.3",
57697            cpp_lib_version = "5.12.2",
57698            cpp_lib_version = "5.13.0",
57699            cpp_lib_version = "5.14.0"
57700        ),
57701        feature = "ritual_rustdoc"
57702    ))]
57703    pub unsafe fn trigger_1a(
57704        &self,
57705        position: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPoint>>,
57706    ) {
57707        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_trigger1(
57708            self as *const crate::QScreenRayCaster as *mut crate::QScreenRayCaster,
57709            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPoint>>::cast_into(position)
57710                .as_raw_ptr(),
57711        )
57712    }
57713}
57714
57715/// <p>Generates a Shader Program content from loaded graphs.</p>
57716///
57717/// C++ class: <span style='color: green;'>```Qt3DRender::QShaderProgramBuilder```</span>.
57718///
57719/// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Generates a Shader Program content from loaded graphs.</p>
57720/// <p>A shader program builder consists of several different shader graphs used to generate shader code.</p></div>
57721#[repr(C)]
57722pub struct QShaderProgramBuilder {
57723    _unused: u8,
57724}
57725impl QShaderProgramBuilder {
57726    /// <p>Holds the shader program on which this builder generates code.</p>
57727    ///
57728    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgramBuilder::setShaderProgram` that can be passed to `qt_core::Signal::connect`.
57729    ///
57730    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#shaderProgram-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the shader program on which this builder generates code.</p>
57731    /// <p><b>Access functions:</b></p>
57732    /// <div class="table"><table class="alignedsummary">
57733    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderProgram *</td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgram</b></span>() const</td></tr>
57734    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setShaderProgram</b></span>(Qt3DRender::QShaderProgram *<i>program</i>)</td></tr>
57735    /// </tbody></table></div>
57736    /// <p><b>Notifier signal:</b></p>
57737    /// <div class="table"><table class="alignedsummary">
57738    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgramChanged</b></span>(Qt3DRender::QShaderProgram *<i>shaderProgram</i>)</td></tr>
57739    /// </tbody></table></div></div>
57740    #[inline(always)]
57741    #[cfg_attr(
57742        feature = "ritual_rustdoc_nightly",
57743        doc(cfg(any(
57744            cpp_lib_version = "5.11.3",
57745            cpp_lib_version = "5.12.2",
57746            cpp_lib_version = "5.13.0",
57747            cpp_lib_version = "5.14.0"
57748        )))
57749    )]
57750    #[cfg(any(
57751        any(
57752            cpp_lib_version = "5.11.3",
57753            cpp_lib_version = "5.12.2",
57754            cpp_lib_version = "5.13.0",
57755            cpp_lib_version = "5.14.0"
57756        ),
57757        feature = "ritual_rustdoc"
57758    ))]
57759    pub fn slot_set_shader_program(&self) -> ::qt_core::Receiver<(*mut crate::QShaderProgram,)> {
57760        unsafe {
57761            ::qt_core::Receiver::new(
57762                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57763                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
57764                    b"1setShaderProgram(Qt3DRender::QShaderProgram *)\0",
57765                ),
57766            )
57767        }
57768    }
57769
57770    /// <p>Holds the list of layers this builder will activate on the shader graphs during code generation.</p>
57771    ///
57772    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgramBuilder::setEnabledLayers` that can be passed to `qt_core::Signal::connect`.
57773    ///
57774    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#enabledLayers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the list of layers this builder will activate on the shader graphs during code generation.</p>
57775    /// <p><b>Access functions:</b></p>
57776    /// <div class="table"><table class="alignedsummary">
57777    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStringList </td><td class="memItemRight bottomAlign"><span class="name"><b>enabledLayers</b></span>() const</td></tr>
57778    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEnabledLayers</b></span>(const QStringList &amp;<i>layers</i>)</td></tr>
57779    /// </tbody></table></div>
57780    /// <p><b>Notifier signal:</b></p>
57781    /// <div class="table"><table class="alignedsummary">
57782    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>enabledLayersChanged</b></span>(const QStringList &amp;<i>layers</i>)</td></tr>
57783    /// </tbody></table></div></div>
57784    #[inline(always)]
57785    #[cfg_attr(
57786        feature = "ritual_rustdoc_nightly",
57787        doc(cfg(any(
57788            cpp_lib_version = "5.11.3",
57789            cpp_lib_version = "5.12.2",
57790            cpp_lib_version = "5.13.0",
57791            cpp_lib_version = "5.14.0"
57792        )))
57793    )]
57794    #[cfg(any(
57795        any(
57796            cpp_lib_version = "5.11.3",
57797            cpp_lib_version = "5.12.2",
57798            cpp_lib_version = "5.13.0",
57799            cpp_lib_version = "5.14.0"
57800        ),
57801        feature = "ritual_rustdoc"
57802    ))]
57803    pub fn slot_set_enabled_layers(&self) -> ::qt_core::Receiver<(*const ::qt_core::QStringList,)> {
57804        unsafe {
57805            ::qt_core::Receiver::new(
57806                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57807                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
57808                    b"1setEnabledLayers(QStringList const &)\0",
57809                ),
57810            )
57811        }
57812    }
57813
57814    /// <p>Holds the URL to the vertex shader graph used by this shader program builder.</p>
57815    ///
57816    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgramBuilder::setVertexShaderGraph` that can be passed to `qt_core::Signal::connect`.
57817    ///
57818    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#vertexShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the vertex shader graph used by this shader program builder.</p>
57819    /// <p><b>Access functions:</b></p>
57820    /// <div class="table"><table class="alignedsummary">
57821    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderGraph</b></span>() const</td></tr>
57822    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexShaderGraph</b></span>(const QUrl &amp;<i>vertexShaderGraph</i>)</td></tr>
57823    /// </tbody></table></div>
57824    /// <p><b>Notifier signal:</b></p>
57825    /// <div class="table"><table class="alignedsummary">
57826    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderGraphChanged</b></span>(const QUrl &amp;<i>vertexShaderGraph</i>)</td></tr>
57827    /// </tbody></table></div></div>
57828    #[inline(always)]
57829    #[cfg_attr(
57830        feature = "ritual_rustdoc_nightly",
57831        doc(cfg(any(
57832            cpp_lib_version = "5.11.3",
57833            cpp_lib_version = "5.12.2",
57834            cpp_lib_version = "5.13.0",
57835            cpp_lib_version = "5.14.0"
57836        )))
57837    )]
57838    #[cfg(any(
57839        any(
57840            cpp_lib_version = "5.11.3",
57841            cpp_lib_version = "5.12.2",
57842            cpp_lib_version = "5.13.0",
57843            cpp_lib_version = "5.14.0"
57844        ),
57845        feature = "ritual_rustdoc"
57846    ))]
57847    pub fn slot_set_vertex_shader_graph(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
57848        unsafe {
57849            ::qt_core::Receiver::new(
57850                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57851                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
57852                    b"1setVertexShaderGraph(QUrl const &)\0",
57853                ),
57854            )
57855        }
57856    }
57857
57858    /// <p>Holds the URL to the tesselation control shader graph used by this shader program builder.</p>
57859    ///
57860    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgramBuilder::setTessellationControlShaderGraph` that can be passed to `qt_core::Signal::connect`.
57861    ///
57862    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationControlShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the tesselation control shader graph used by this shader program builder.</p>
57863    /// <p><b>Access functions:</b></p>
57864    /// <div class="table"><table class="alignedsummary">
57865    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderGraph</b></span>() const</td></tr>
57866    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationControlShaderGraph</b></span>(const QUrl &amp;<i>tessellationControlShaderGraph</i>)</td></tr>
57867    /// </tbody></table></div>
57868    /// <p><b>Notifier signal:</b></p>
57869    /// <div class="table"><table class="alignedsummary">
57870    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderGraphChanged</b></span>(const QUrl &amp;<i>tessellationControlShaderGraph</i>)</td></tr>
57871    /// </tbody></table></div></div>
57872    #[inline(always)]
57873    #[cfg_attr(
57874        feature = "ritual_rustdoc_nightly",
57875        doc(cfg(any(
57876            cpp_lib_version = "5.11.3",
57877            cpp_lib_version = "5.12.2",
57878            cpp_lib_version = "5.13.0",
57879            cpp_lib_version = "5.14.0"
57880        )))
57881    )]
57882    #[cfg(any(
57883        any(
57884            cpp_lib_version = "5.11.3",
57885            cpp_lib_version = "5.12.2",
57886            cpp_lib_version = "5.13.0",
57887            cpp_lib_version = "5.14.0"
57888        ),
57889        feature = "ritual_rustdoc"
57890    ))]
57891    pub fn slot_set_tessellation_control_shader_graph(
57892        &self,
57893    ) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
57894        unsafe {
57895            ::qt_core::Receiver::new(
57896                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57897                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
57898                    b"1setTessellationControlShaderGraph(QUrl const &)\0",
57899                ),
57900            )
57901        }
57902    }
57903
57904    /// <p>Holds the URL to the tesselation evaluation shader graph used by this shader program builder.</p>
57905    ///
57906    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgramBuilder::setTessellationEvaluationShaderGraph` that can be passed to `qt_core::Signal::connect`.
57907    ///
57908    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationEvaluationShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the tesselation evaluation shader graph used by this shader program builder.</p>
57909    /// <p><b>Access functions:</b></p>
57910    /// <div class="table"><table class="alignedsummary">
57911    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderGraph</b></span>() const</td></tr>
57912    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationEvaluationShaderGraph</b></span>(const QUrl &amp;<i>tessellationEvaluationShaderGraph</i>)</td></tr>
57913    /// </tbody></table></div>
57914    /// <p><b>Notifier signal:</b></p>
57915    /// <div class="table"><table class="alignedsummary">
57916    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderGraphChanged</b></span>(const QUrl &amp;<i>tessellationEvaluationShaderGraph</i>)</td></tr>
57917    /// </tbody></table></div></div>
57918    #[inline(always)]
57919    #[cfg_attr(
57920        feature = "ritual_rustdoc_nightly",
57921        doc(cfg(any(
57922            cpp_lib_version = "5.11.3",
57923            cpp_lib_version = "5.12.2",
57924            cpp_lib_version = "5.13.0",
57925            cpp_lib_version = "5.14.0"
57926        )))
57927    )]
57928    #[cfg(any(
57929        any(
57930            cpp_lib_version = "5.11.3",
57931            cpp_lib_version = "5.12.2",
57932            cpp_lib_version = "5.13.0",
57933            cpp_lib_version = "5.14.0"
57934        ),
57935        feature = "ritual_rustdoc"
57936    ))]
57937    pub fn slot_set_tessellation_evaluation_shader_graph(
57938        &self,
57939    ) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
57940        unsafe {
57941            ::qt_core::Receiver::new(
57942                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57943                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
57944                    b"1setTessellationEvaluationShaderGraph(QUrl const &)\0",
57945                ),
57946            )
57947        }
57948    }
57949
57950    /// <p>Holds the URL to the geometry shader graph used by this shader program builder.</p>
57951    ///
57952    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgramBuilder::setGeometryShaderGraph` that can be passed to `qt_core::Signal::connect`.
57953    ///
57954    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#geometryShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the geometry shader graph used by this shader program builder.</p>
57955    /// <p><b>Access functions:</b></p>
57956    /// <div class="table"><table class="alignedsummary">
57957    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderGraph</b></span>() const</td></tr>
57958    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometryShaderGraph</b></span>(const QUrl &amp;<i>geometryShaderGraph</i>)</td></tr>
57959    /// </tbody></table></div>
57960    /// <p><b>Notifier signal:</b></p>
57961    /// <div class="table"><table class="alignedsummary">
57962    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderGraphChanged</b></span>(const QUrl &amp;<i>geometryShaderGraph</i>)</td></tr>
57963    /// </tbody></table></div></div>
57964    #[inline(always)]
57965    #[cfg_attr(
57966        feature = "ritual_rustdoc_nightly",
57967        doc(cfg(any(
57968            cpp_lib_version = "5.11.3",
57969            cpp_lib_version = "5.12.2",
57970            cpp_lib_version = "5.13.0",
57971            cpp_lib_version = "5.14.0"
57972        )))
57973    )]
57974    #[cfg(any(
57975        any(
57976            cpp_lib_version = "5.11.3",
57977            cpp_lib_version = "5.12.2",
57978            cpp_lib_version = "5.13.0",
57979            cpp_lib_version = "5.14.0"
57980        ),
57981        feature = "ritual_rustdoc"
57982    ))]
57983    pub fn slot_set_geometry_shader_graph(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
57984        unsafe {
57985            ::qt_core::Receiver::new(
57986                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
57987                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
57988                    b"1setGeometryShaderGraph(QUrl const &)\0",
57989                ),
57990            )
57991        }
57992    }
57993
57994    /// <p>Holds the URL to the fragment shader graph used by this shader program builder.</p>
57995    ///
57996    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgramBuilder::setFragmentShaderGraph` that can be passed to `qt_core::Signal::connect`.
57997    ///
57998    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#fragmentShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the fragment shader graph used by this shader program builder.</p>
57999    /// <p><b>Access functions:</b></p>
58000    /// <div class="table"><table class="alignedsummary">
58001    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderGraph</b></span>() const</td></tr>
58002    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFragmentShaderGraph</b></span>(const QUrl &amp;<i>fragmentShaderGraph</i>)</td></tr>
58003    /// </tbody></table></div>
58004    /// <p><b>Notifier signal:</b></p>
58005    /// <div class="table"><table class="alignedsummary">
58006    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderGraphChanged</b></span>(const QUrl &amp;<i>fragmentShaderGraph</i>)</td></tr>
58007    /// </tbody></table></div></div>
58008    #[inline(always)]
58009    #[cfg_attr(
58010        feature = "ritual_rustdoc_nightly",
58011        doc(cfg(any(
58012            cpp_lib_version = "5.11.3",
58013            cpp_lib_version = "5.12.2",
58014            cpp_lib_version = "5.13.0",
58015            cpp_lib_version = "5.14.0"
58016        )))
58017    )]
58018    #[cfg(any(
58019        any(
58020            cpp_lib_version = "5.11.3",
58021            cpp_lib_version = "5.12.2",
58022            cpp_lib_version = "5.13.0",
58023            cpp_lib_version = "5.14.0"
58024        ),
58025        feature = "ritual_rustdoc"
58026    ))]
58027    pub fn slot_set_fragment_shader_graph(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
58028        unsafe {
58029            ::qt_core::Receiver::new(
58030                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58031                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58032                    b"1setFragmentShaderGraph(QUrl const &)\0",
58033                ),
58034            )
58035        }
58036    }
58037
58038    /// <p>Holds the URL to the compute shader graph used by this shader program builder.</p>
58039    ///
58040    /// Returns a built-in Qt slot `Qt3DRender::QShaderProgramBuilder::setComputeShaderGraph` that can be passed to `qt_core::Signal::connect`.
58041    ///
58042    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#computeShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the compute shader graph used by this shader program builder.</p>
58043    /// <p><b>Access functions:</b></p>
58044    /// <div class="table"><table class="alignedsummary">
58045    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderGraph</b></span>() const</td></tr>
58046    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComputeShaderGraph</b></span>(const QUrl &amp;<i>computeShaderGraph</i>)</td></tr>
58047    /// </tbody></table></div>
58048    /// <p><b>Notifier signal:</b></p>
58049    /// <div class="table"><table class="alignedsummary">
58050    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderGraphChanged</b></span>(const QUrl &amp;<i>computeShaderGraph</i>)</td></tr>
58051    /// </tbody></table></div></div>
58052    #[inline(always)]
58053    #[cfg_attr(
58054        feature = "ritual_rustdoc_nightly",
58055        doc(cfg(any(
58056            cpp_lib_version = "5.11.3",
58057            cpp_lib_version = "5.12.2",
58058            cpp_lib_version = "5.13.0",
58059            cpp_lib_version = "5.14.0"
58060        )))
58061    )]
58062    #[cfg(any(
58063        any(
58064            cpp_lib_version = "5.11.3",
58065            cpp_lib_version = "5.12.2",
58066            cpp_lib_version = "5.13.0",
58067            cpp_lib_version = "5.14.0"
58068        ),
58069        feature = "ritual_rustdoc"
58070    ))]
58071    pub fn slot_set_compute_shader_graph(&self) -> ::qt_core::Receiver<(*const ::qt_core::QUrl,)> {
58072        unsafe {
58073            ::qt_core::Receiver::new(
58074                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58075                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58076                    b"1setComputeShaderGraph(QUrl const &)\0",
58077                ),
58078            )
58079        }
58080    }
58081
58082    /// <p>Holds the shader program on which this builder generates code.</p>
58083    ///
58084    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgramBuilder::shaderProgramChanged` that can be passed to `qt_core::Signal::connect`.
58085    ///
58086    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#shaderProgram-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the shader program on which this builder generates code.</p>
58087    /// <p><b>Access functions:</b></p>
58088    /// <div class="table"><table class="alignedsummary">
58089    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderProgram *</td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgram</b></span>() const</td></tr>
58090    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setShaderProgram</b></span>(Qt3DRender::QShaderProgram *<i>program</i>)</td></tr>
58091    /// </tbody></table></div>
58092    /// <p><b>Notifier signal:</b></p>
58093    /// <div class="table"><table class="alignedsummary">
58094    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgramChanged</b></span>(Qt3DRender::QShaderProgram *<i>shaderProgram</i>)</td></tr>
58095    /// </tbody></table></div></div>
58096    #[inline(always)]
58097    #[cfg_attr(
58098        feature = "ritual_rustdoc_nightly",
58099        doc(cfg(any(
58100            cpp_lib_version = "5.11.3",
58101            cpp_lib_version = "5.12.2",
58102            cpp_lib_version = "5.13.0",
58103            cpp_lib_version = "5.14.0"
58104        )))
58105    )]
58106    #[cfg(any(
58107        any(
58108            cpp_lib_version = "5.11.3",
58109            cpp_lib_version = "5.12.2",
58110            cpp_lib_version = "5.13.0",
58111            cpp_lib_version = "5.14.0"
58112        ),
58113        feature = "ritual_rustdoc"
58114    ))]
58115    pub fn shader_program_changed(&self) -> ::qt_core::Signal<(*mut crate::QShaderProgram,)> {
58116        unsafe {
58117            ::qt_core::Signal::new(
58118                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58119                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58120                    b"2shaderProgramChanged(Qt3DRender::QShaderProgram *)\0",
58121                ),
58122            )
58123        }
58124    }
58125
58126    /// <p>Holds the list of layers this builder will activate on the shader graphs during code generation.</p>
58127    ///
58128    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgramBuilder::enabledLayersChanged` that can be passed to `qt_core::Signal::connect`.
58129    ///
58130    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#enabledLayers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the list of layers this builder will activate on the shader graphs during code generation.</p>
58131    /// <p><b>Access functions:</b></p>
58132    /// <div class="table"><table class="alignedsummary">
58133    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStringList </td><td class="memItemRight bottomAlign"><span class="name"><b>enabledLayers</b></span>() const</td></tr>
58134    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEnabledLayers</b></span>(const QStringList &amp;<i>layers</i>)</td></tr>
58135    /// </tbody></table></div>
58136    /// <p><b>Notifier signal:</b></p>
58137    /// <div class="table"><table class="alignedsummary">
58138    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>enabledLayersChanged</b></span>(const QStringList &amp;<i>layers</i>)</td></tr>
58139    /// </tbody></table></div></div>
58140    #[inline(always)]
58141    #[cfg_attr(
58142        feature = "ritual_rustdoc_nightly",
58143        doc(cfg(any(
58144            cpp_lib_version = "5.11.3",
58145            cpp_lib_version = "5.12.2",
58146            cpp_lib_version = "5.13.0",
58147            cpp_lib_version = "5.14.0"
58148        )))
58149    )]
58150    #[cfg(any(
58151        any(
58152            cpp_lib_version = "5.11.3",
58153            cpp_lib_version = "5.12.2",
58154            cpp_lib_version = "5.13.0",
58155            cpp_lib_version = "5.14.0"
58156        ),
58157        feature = "ritual_rustdoc"
58158    ))]
58159    pub fn enabled_layers_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QStringList,)> {
58160        unsafe {
58161            ::qt_core::Signal::new(
58162                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58163                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58164                    b"2enabledLayersChanged(QStringList const &)\0",
58165                ),
58166            )
58167        }
58168    }
58169
58170    /// <p>Holds the URL to the vertex shader graph used by this shader program builder.</p>
58171    ///
58172    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgramBuilder::vertexShaderGraphChanged` that can be passed to `qt_core::Signal::connect`.
58173    ///
58174    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#vertexShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the vertex shader graph used by this shader program builder.</p>
58175    /// <p><b>Access functions:</b></p>
58176    /// <div class="table"><table class="alignedsummary">
58177    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderGraph</b></span>() const</td></tr>
58178    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexShaderGraph</b></span>(const QUrl &amp;<i>vertexShaderGraph</i>)</td></tr>
58179    /// </tbody></table></div>
58180    /// <p><b>Notifier signal:</b></p>
58181    /// <div class="table"><table class="alignedsummary">
58182    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderGraphChanged</b></span>(const QUrl &amp;<i>vertexShaderGraph</i>)</td></tr>
58183    /// </tbody></table></div></div>
58184    #[inline(always)]
58185    #[cfg_attr(
58186        feature = "ritual_rustdoc_nightly",
58187        doc(cfg(any(
58188            cpp_lib_version = "5.11.3",
58189            cpp_lib_version = "5.12.2",
58190            cpp_lib_version = "5.13.0",
58191            cpp_lib_version = "5.14.0"
58192        )))
58193    )]
58194    #[cfg(any(
58195        any(
58196            cpp_lib_version = "5.11.3",
58197            cpp_lib_version = "5.12.2",
58198            cpp_lib_version = "5.13.0",
58199            cpp_lib_version = "5.14.0"
58200        ),
58201        feature = "ritual_rustdoc"
58202    ))]
58203    pub fn vertex_shader_graph_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
58204        unsafe {
58205            ::qt_core::Signal::new(
58206                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58207                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58208                    b"2vertexShaderGraphChanged(QUrl const &)\0",
58209                ),
58210            )
58211        }
58212    }
58213
58214    /// <p>Holds the URL to the tesselation control shader graph used by this shader program builder.</p>
58215    ///
58216    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgramBuilder::tessellationControlShaderGraphChanged` that can be passed to `qt_core::Signal::connect`.
58217    ///
58218    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationControlShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the tesselation control shader graph used by this shader program builder.</p>
58219    /// <p><b>Access functions:</b></p>
58220    /// <div class="table"><table class="alignedsummary">
58221    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderGraph</b></span>() const</td></tr>
58222    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationControlShaderGraph</b></span>(const QUrl &amp;<i>tessellationControlShaderGraph</i>)</td></tr>
58223    /// </tbody></table></div>
58224    /// <p><b>Notifier signal:</b></p>
58225    /// <div class="table"><table class="alignedsummary">
58226    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderGraphChanged</b></span>(const QUrl &amp;<i>tessellationControlShaderGraph</i>)</td></tr>
58227    /// </tbody></table></div></div>
58228    #[inline(always)]
58229    #[cfg_attr(
58230        feature = "ritual_rustdoc_nightly",
58231        doc(cfg(any(
58232            cpp_lib_version = "5.11.3",
58233            cpp_lib_version = "5.12.2",
58234            cpp_lib_version = "5.13.0",
58235            cpp_lib_version = "5.14.0"
58236        )))
58237    )]
58238    #[cfg(any(
58239        any(
58240            cpp_lib_version = "5.11.3",
58241            cpp_lib_version = "5.12.2",
58242            cpp_lib_version = "5.13.0",
58243            cpp_lib_version = "5.14.0"
58244        ),
58245        feature = "ritual_rustdoc"
58246    ))]
58247    pub fn tessellation_control_shader_graph_changed(
58248        &self,
58249    ) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
58250        unsafe {
58251            ::qt_core::Signal::new(
58252                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58253                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58254                    b"2tessellationControlShaderGraphChanged(QUrl const &)\0",
58255                ),
58256            )
58257        }
58258    }
58259
58260    /// <p>Holds the URL to the tesselation evaluation shader graph used by this shader program builder.</p>
58261    ///
58262    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgramBuilder::tessellationEvaluationShaderGraphChanged` that can be passed to `qt_core::Signal::connect`.
58263    ///
58264    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationEvaluationShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the tesselation evaluation shader graph used by this shader program builder.</p>
58265    /// <p><b>Access functions:</b></p>
58266    /// <div class="table"><table class="alignedsummary">
58267    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderGraph</b></span>() const</td></tr>
58268    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationEvaluationShaderGraph</b></span>(const QUrl &amp;<i>tessellationEvaluationShaderGraph</i>)</td></tr>
58269    /// </tbody></table></div>
58270    /// <p><b>Notifier signal:</b></p>
58271    /// <div class="table"><table class="alignedsummary">
58272    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderGraphChanged</b></span>(const QUrl &amp;<i>tessellationEvaluationShaderGraph</i>)</td></tr>
58273    /// </tbody></table></div></div>
58274    #[inline(always)]
58275    #[cfg_attr(
58276        feature = "ritual_rustdoc_nightly",
58277        doc(cfg(any(
58278            cpp_lib_version = "5.11.3",
58279            cpp_lib_version = "5.12.2",
58280            cpp_lib_version = "5.13.0",
58281            cpp_lib_version = "5.14.0"
58282        )))
58283    )]
58284    #[cfg(any(
58285        any(
58286            cpp_lib_version = "5.11.3",
58287            cpp_lib_version = "5.12.2",
58288            cpp_lib_version = "5.13.0",
58289            cpp_lib_version = "5.14.0"
58290        ),
58291        feature = "ritual_rustdoc"
58292    ))]
58293    pub fn tessellation_evaluation_shader_graph_changed(
58294        &self,
58295    ) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
58296        unsafe {
58297            ::qt_core::Signal::new(
58298                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58299                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58300                    b"2tessellationEvaluationShaderGraphChanged(QUrl const &)\0",
58301                ),
58302            )
58303        }
58304    }
58305
58306    /// <p>Holds the URL to the geometry shader graph used by this shader program builder.</p>
58307    ///
58308    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgramBuilder::geometryShaderGraphChanged` that can be passed to `qt_core::Signal::connect`.
58309    ///
58310    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#geometryShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the geometry shader graph used by this shader program builder.</p>
58311    /// <p><b>Access functions:</b></p>
58312    /// <div class="table"><table class="alignedsummary">
58313    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderGraph</b></span>() const</td></tr>
58314    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometryShaderGraph</b></span>(const QUrl &amp;<i>geometryShaderGraph</i>)</td></tr>
58315    /// </tbody></table></div>
58316    /// <p><b>Notifier signal:</b></p>
58317    /// <div class="table"><table class="alignedsummary">
58318    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderGraphChanged</b></span>(const QUrl &amp;<i>geometryShaderGraph</i>)</td></tr>
58319    /// </tbody></table></div></div>
58320    #[inline(always)]
58321    #[cfg_attr(
58322        feature = "ritual_rustdoc_nightly",
58323        doc(cfg(any(
58324            cpp_lib_version = "5.11.3",
58325            cpp_lib_version = "5.12.2",
58326            cpp_lib_version = "5.13.0",
58327            cpp_lib_version = "5.14.0"
58328        )))
58329    )]
58330    #[cfg(any(
58331        any(
58332            cpp_lib_version = "5.11.3",
58333            cpp_lib_version = "5.12.2",
58334            cpp_lib_version = "5.13.0",
58335            cpp_lib_version = "5.14.0"
58336        ),
58337        feature = "ritual_rustdoc"
58338    ))]
58339    pub fn geometry_shader_graph_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
58340        unsafe {
58341            ::qt_core::Signal::new(
58342                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58343                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58344                    b"2geometryShaderGraphChanged(QUrl const &)\0",
58345                ),
58346            )
58347        }
58348    }
58349
58350    /// <p>Holds the URL to the fragment shader graph used by this shader program builder.</p>
58351    ///
58352    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgramBuilder::fragmentShaderGraphChanged` that can be passed to `qt_core::Signal::connect`.
58353    ///
58354    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#fragmentShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the fragment shader graph used by this shader program builder.</p>
58355    /// <p><b>Access functions:</b></p>
58356    /// <div class="table"><table class="alignedsummary">
58357    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderGraph</b></span>() const</td></tr>
58358    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFragmentShaderGraph</b></span>(const QUrl &amp;<i>fragmentShaderGraph</i>)</td></tr>
58359    /// </tbody></table></div>
58360    /// <p><b>Notifier signal:</b></p>
58361    /// <div class="table"><table class="alignedsummary">
58362    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderGraphChanged</b></span>(const QUrl &amp;<i>fragmentShaderGraph</i>)</td></tr>
58363    /// </tbody></table></div></div>
58364    #[inline(always)]
58365    #[cfg_attr(
58366        feature = "ritual_rustdoc_nightly",
58367        doc(cfg(any(
58368            cpp_lib_version = "5.11.3",
58369            cpp_lib_version = "5.12.2",
58370            cpp_lib_version = "5.13.0",
58371            cpp_lib_version = "5.14.0"
58372        )))
58373    )]
58374    #[cfg(any(
58375        any(
58376            cpp_lib_version = "5.11.3",
58377            cpp_lib_version = "5.12.2",
58378            cpp_lib_version = "5.13.0",
58379            cpp_lib_version = "5.14.0"
58380        ),
58381        feature = "ritual_rustdoc"
58382    ))]
58383    pub fn fragment_shader_graph_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
58384        unsafe {
58385            ::qt_core::Signal::new(
58386                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58387                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58388                    b"2fragmentShaderGraphChanged(QUrl const &)\0",
58389                ),
58390            )
58391        }
58392    }
58393
58394    /// <p>Holds the URL to the compute shader graph used by this shader program builder.</p>
58395    ///
58396    /// Returns a built-in Qt signal `Qt3DRender::QShaderProgramBuilder::computeShaderGraphChanged` that can be passed to `qt_core::Signal::connect`.
58397    ///
58398    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#computeShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the compute shader graph used by this shader program builder.</p>
58399    /// <p><b>Access functions:</b></p>
58400    /// <div class="table"><table class="alignedsummary">
58401    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderGraph</b></span>() const</td></tr>
58402    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComputeShaderGraph</b></span>(const QUrl &amp;<i>computeShaderGraph</i>)</td></tr>
58403    /// </tbody></table></div>
58404    /// <p><b>Notifier signal:</b></p>
58405    /// <div class="table"><table class="alignedsummary">
58406    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderGraphChanged</b></span>(const QUrl &amp;<i>computeShaderGraph</i>)</td></tr>
58407    /// </tbody></table></div></div>
58408    #[inline(always)]
58409    #[cfg_attr(
58410        feature = "ritual_rustdoc_nightly",
58411        doc(cfg(any(
58412            cpp_lib_version = "5.11.3",
58413            cpp_lib_version = "5.12.2",
58414            cpp_lib_version = "5.13.0",
58415            cpp_lib_version = "5.14.0"
58416        )))
58417    )]
58418    #[cfg(any(
58419        any(
58420            cpp_lib_version = "5.11.3",
58421            cpp_lib_version = "5.12.2",
58422            cpp_lib_version = "5.13.0",
58423            cpp_lib_version = "5.14.0"
58424        ),
58425        feature = "ritual_rustdoc"
58426    ))]
58427    pub fn compute_shader_graph_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QUrl,)> {
58428        unsafe {
58429            ::qt_core::Signal::new(
58430                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
58431                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
58432                    b"2computeShaderGraphChanged(QUrl const &)\0",
58433                ),
58434            )
58435        }
58436    }
58437
58438    /// <p>Holds the generate compute shader code.</p>
58439    ///
58440    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgramBuilder::computeShaderCode() const```</span>.
58441    ///
58442    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#computeShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate compute shader code.</p>
58443    /// <p>This property was introduced in  Qt 5.13.</p>
58444    /// <p><b>Access functions:</b></p>
58445    /// <div class="table"><table class="alignedsummary">
58446    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCode</b></span>() const</td></tr>
58447    /// </tbody></table></div>
58448    /// <p><b>Notifier signal:</b></p>
58449    /// <div class="table"><table class="alignedsummary">
58450    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCodeChanged</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
58451    /// </tbody></table></div></div>
58452    #[inline(always)]
58453    #[cfg_attr(
58454        feature = "ritual_rustdoc_nightly",
58455        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
58456    )]
58457    #[cfg(any(
58458        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
58459        feature = "ritual_rustdoc"
58460    ))]
58461    pub unsafe fn compute_shader_code(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
58462        let ffi_result = {
58463            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_computeShaderCode(
58464                self as *const crate::QShaderProgramBuilder,
58465            )
58466        };
58467        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
58468    }
58469
58470    /// <p>Holds the generate compute shader code.</p>
58471    ///
58472    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QShaderProgramBuilder::computeShaderCodeChanged(const QByteArray& computeShaderCode)```</span>.
58473    ///
58474    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#computeShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate compute shader code.</p>
58475    /// <p>This property was introduced in  Qt 5.13.</p>
58476    /// <p><b>Access functions:</b></p>
58477    /// <div class="table"><table class="alignedsummary">
58478    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCode</b></span>() const</td></tr>
58479    /// </tbody></table></div>
58480    /// <p><b>Notifier signal:</b></p>
58481    /// <div class="table"><table class="alignedsummary">
58482    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderCodeChanged</b></span>(const QByteArray &amp;<i>computeShaderCode</i>)</td></tr>
58483    /// </tbody></table></div></div>
58484    #[inline(always)]
58485    #[cfg_attr(
58486        feature = "ritual_rustdoc_nightly",
58487        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
58488    )]
58489    #[cfg(any(
58490        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
58491        feature = "ritual_rustdoc"
58492    ))]
58493    pub unsafe fn compute_shader_code_changed(
58494        &self,
58495        compute_shader_code: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
58496    ) {
58497        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_computeShaderCodeChanged(
58498            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
58499            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(
58500                compute_shader_code,
58501            )
58502            .as_raw_ptr(),
58503        )
58504    }
58505
58506    /// <p>Holds the URL to the compute shader graph used by this shader program builder.</p>
58507    ///
58508    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QShaderProgramBuilder::computeShaderGraph() const```</span>.
58509    ///
58510    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#computeShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the compute shader graph used by this shader program builder.</p>
58511    /// <p><b>Access functions:</b></p>
58512    /// <div class="table"><table class="alignedsummary">
58513    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderGraph</b></span>() const</td></tr>
58514    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComputeShaderGraph</b></span>(const QUrl &amp;<i>computeShaderGraph</i>)</td></tr>
58515    /// </tbody></table></div>
58516    /// <p><b>Notifier signal:</b></p>
58517    /// <div class="table"><table class="alignedsummary">
58518    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderGraphChanged</b></span>(const QUrl &amp;<i>computeShaderGraph</i>)</td></tr>
58519    /// </tbody></table></div></div>
58520    #[inline(always)]
58521    #[cfg_attr(
58522        feature = "ritual_rustdoc_nightly",
58523        doc(cfg(any(
58524            cpp_lib_version = "5.11.3",
58525            cpp_lib_version = "5.12.2",
58526            cpp_lib_version = "5.13.0",
58527            cpp_lib_version = "5.14.0"
58528        )))
58529    )]
58530    #[cfg(any(
58531        any(
58532            cpp_lib_version = "5.11.3",
58533            cpp_lib_version = "5.12.2",
58534            cpp_lib_version = "5.13.0",
58535            cpp_lib_version = "5.14.0"
58536        ),
58537        feature = "ritual_rustdoc"
58538    ))]
58539    pub unsafe fn compute_shader_graph(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
58540        let ffi_result = {
58541            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_computeShaderGraph(
58542                self as *const crate::QShaderProgramBuilder,
58543            )
58544        };
58545        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
58546    }
58547
58548    /// <p>Holds the list of layers this builder will activate on the shader graphs during code generation.</p>
58549    ///
58550    /// Calls C++ function: <span style='color: green;'>```QStringList Qt3DRender::QShaderProgramBuilder::enabledLayers() const```</span>.
58551    ///
58552    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#enabledLayers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the list of layers this builder will activate on the shader graphs during code generation.</p>
58553    /// <p><b>Access functions:</b></p>
58554    /// <div class="table"><table class="alignedsummary">
58555    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStringList </td><td class="memItemRight bottomAlign"><span class="name"><b>enabledLayers</b></span>() const</td></tr>
58556    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEnabledLayers</b></span>(const QStringList &amp;<i>layers</i>)</td></tr>
58557    /// </tbody></table></div>
58558    /// <p><b>Notifier signal:</b></p>
58559    /// <div class="table"><table class="alignedsummary">
58560    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>enabledLayersChanged</b></span>(const QStringList &amp;<i>layers</i>)</td></tr>
58561    /// </tbody></table></div></div>
58562    #[inline(always)]
58563    #[cfg_attr(
58564        feature = "ritual_rustdoc_nightly",
58565        doc(cfg(any(
58566            cpp_lib_version = "5.11.3",
58567            cpp_lib_version = "5.12.2",
58568            cpp_lib_version = "5.13.0",
58569            cpp_lib_version = "5.14.0"
58570        )))
58571    )]
58572    #[cfg(any(
58573        any(
58574            cpp_lib_version = "5.11.3",
58575            cpp_lib_version = "5.12.2",
58576            cpp_lib_version = "5.13.0",
58577            cpp_lib_version = "5.14.0"
58578        ),
58579        feature = "ritual_rustdoc"
58580    ))]
58581    pub unsafe fn enabled_layers(&self) -> ::cpp_core::CppBox<::qt_core::QStringList> {
58582        let ffi_result = {
58583            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_enabledLayers(
58584                self as *const crate::QShaderProgramBuilder,
58585            )
58586        };
58587        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
58588    }
58589
58590    /// <p>Holds the generate fragment shader code.</p>
58591    ///
58592    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgramBuilder::fragmentShaderCode() const```</span>.
58593    ///
58594    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#fragmentShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate fragment shader code.</p>
58595    /// <p>This property was introduced in  Qt 5.13.</p>
58596    /// <p><b>Access functions:</b></p>
58597    /// <div class="table"><table class="alignedsummary">
58598    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCode</b></span>() const</td></tr>
58599    /// </tbody></table></div>
58600    /// <p><b>Notifier signal:</b></p>
58601    /// <div class="table"><table class="alignedsummary">
58602    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCodeChanged</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
58603    /// </tbody></table></div></div>
58604    #[inline(always)]
58605    #[cfg_attr(
58606        feature = "ritual_rustdoc_nightly",
58607        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
58608    )]
58609    #[cfg(any(
58610        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
58611        feature = "ritual_rustdoc"
58612    ))]
58613    pub unsafe fn fragment_shader_code(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
58614        let ffi_result = {
58615            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_fragmentShaderCode(
58616                self as *const crate::QShaderProgramBuilder,
58617            )
58618        };
58619        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
58620    }
58621
58622    /// <p>Holds the generate fragment shader code.</p>
58623    ///
58624    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QShaderProgramBuilder::fragmentShaderCodeChanged(const QByteArray& fragmentShaderCode)```</span>.
58625    ///
58626    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#fragmentShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate fragment shader code.</p>
58627    /// <p>This property was introduced in  Qt 5.13.</p>
58628    /// <p><b>Access functions:</b></p>
58629    /// <div class="table"><table class="alignedsummary">
58630    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCode</b></span>() const</td></tr>
58631    /// </tbody></table></div>
58632    /// <p><b>Notifier signal:</b></p>
58633    /// <div class="table"><table class="alignedsummary">
58634    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderCodeChanged</b></span>(const QByteArray &amp;<i>fragmentShaderCode</i>)</td></tr>
58635    /// </tbody></table></div></div>
58636    #[inline(always)]
58637    #[cfg_attr(
58638        feature = "ritual_rustdoc_nightly",
58639        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
58640    )]
58641    #[cfg(any(
58642        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
58643        feature = "ritual_rustdoc"
58644    ))]
58645    pub unsafe fn fragment_shader_code_changed(
58646        &self,
58647        fragment_shader_code: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
58648    ) {
58649        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_fragmentShaderCodeChanged(self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(fragment_shader_code).as_raw_ptr())
58650    }
58651
58652    /// <p>Holds the URL to the fragment shader graph used by this shader program builder.</p>
58653    ///
58654    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QShaderProgramBuilder::fragmentShaderGraph() const```</span>.
58655    ///
58656    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#fragmentShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the fragment shader graph used by this shader program builder.</p>
58657    /// <p><b>Access functions:</b></p>
58658    /// <div class="table"><table class="alignedsummary">
58659    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderGraph</b></span>() const</td></tr>
58660    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFragmentShaderGraph</b></span>(const QUrl &amp;<i>fragmentShaderGraph</i>)</td></tr>
58661    /// </tbody></table></div>
58662    /// <p><b>Notifier signal:</b></p>
58663    /// <div class="table"><table class="alignedsummary">
58664    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderGraphChanged</b></span>(const QUrl &amp;<i>fragmentShaderGraph</i>)</td></tr>
58665    /// </tbody></table></div></div>
58666    #[inline(always)]
58667    #[cfg_attr(
58668        feature = "ritual_rustdoc_nightly",
58669        doc(cfg(any(
58670            cpp_lib_version = "5.11.3",
58671            cpp_lib_version = "5.12.2",
58672            cpp_lib_version = "5.13.0",
58673            cpp_lib_version = "5.14.0"
58674        )))
58675    )]
58676    #[cfg(any(
58677        any(
58678            cpp_lib_version = "5.11.3",
58679            cpp_lib_version = "5.12.2",
58680            cpp_lib_version = "5.13.0",
58681            cpp_lib_version = "5.14.0"
58682        ),
58683        feature = "ritual_rustdoc"
58684    ))]
58685    pub unsafe fn fragment_shader_graph(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
58686        let ffi_result = {
58687            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_fragmentShaderGraph(
58688                self as *const crate::QShaderProgramBuilder,
58689            )
58690        };
58691        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
58692    }
58693
58694    /// <p>Holds the generate geometry shader code.</p>
58695    ///
58696    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgramBuilder::geometryShaderCode() const```</span>.
58697    ///
58698    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#geometryShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate geometry shader code.</p>
58699    /// <p>This property was introduced in  Qt 5.13.</p>
58700    /// <p><b>Access functions:</b></p>
58701    /// <div class="table"><table class="alignedsummary">
58702    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCode</b></span>() const</td></tr>
58703    /// </tbody></table></div>
58704    /// <p><b>Notifier signal:</b></p>
58705    /// <div class="table"><table class="alignedsummary">
58706    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCodeChanged</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
58707    /// </tbody></table></div></div>
58708    #[inline(always)]
58709    #[cfg_attr(
58710        feature = "ritual_rustdoc_nightly",
58711        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
58712    )]
58713    #[cfg(any(
58714        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
58715        feature = "ritual_rustdoc"
58716    ))]
58717    pub unsafe fn geometry_shader_code(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
58718        let ffi_result = {
58719            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_geometryShaderCode(
58720                self as *const crate::QShaderProgramBuilder,
58721            )
58722        };
58723        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
58724    }
58725
58726    /// <p>Holds the generate geometry shader code.</p>
58727    ///
58728    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QShaderProgramBuilder::geometryShaderCodeChanged(const QByteArray& geometryShaderCode)```</span>.
58729    ///
58730    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#geometryShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate geometry shader code.</p>
58731    /// <p>This property was introduced in  Qt 5.13.</p>
58732    /// <p><b>Access functions:</b></p>
58733    /// <div class="table"><table class="alignedsummary">
58734    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCode</b></span>() const</td></tr>
58735    /// </tbody></table></div>
58736    /// <p><b>Notifier signal:</b></p>
58737    /// <div class="table"><table class="alignedsummary">
58738    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderCodeChanged</b></span>(const QByteArray &amp;<i>geometryShaderCode</i>)</td></tr>
58739    /// </tbody></table></div></div>
58740    #[inline(always)]
58741    #[cfg_attr(
58742        feature = "ritual_rustdoc_nightly",
58743        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
58744    )]
58745    #[cfg(any(
58746        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
58747        feature = "ritual_rustdoc"
58748    ))]
58749    pub unsafe fn geometry_shader_code_changed(
58750        &self,
58751        geometry_shader_code: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
58752    ) {
58753        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_geometryShaderCodeChanged(self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(geometry_shader_code).as_raw_ptr())
58754    }
58755
58756    /// <p>Holds the URL to the geometry shader graph used by this shader program builder.</p>
58757    ///
58758    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QShaderProgramBuilder::geometryShaderGraph() const```</span>.
58759    ///
58760    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#geometryShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the geometry shader graph used by this shader program builder.</p>
58761    /// <p><b>Access functions:</b></p>
58762    /// <div class="table"><table class="alignedsummary">
58763    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderGraph</b></span>() const</td></tr>
58764    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometryShaderGraph</b></span>(const QUrl &amp;<i>geometryShaderGraph</i>)</td></tr>
58765    /// </tbody></table></div>
58766    /// <p><b>Notifier signal:</b></p>
58767    /// <div class="table"><table class="alignedsummary">
58768    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderGraphChanged</b></span>(const QUrl &amp;<i>geometryShaderGraph</i>)</td></tr>
58769    /// </tbody></table></div></div>
58770    #[inline(always)]
58771    #[cfg_attr(
58772        feature = "ritual_rustdoc_nightly",
58773        doc(cfg(any(
58774            cpp_lib_version = "5.11.3",
58775            cpp_lib_version = "5.12.2",
58776            cpp_lib_version = "5.13.0",
58777            cpp_lib_version = "5.14.0"
58778        )))
58779    )]
58780    #[cfg(any(
58781        any(
58782            cpp_lib_version = "5.11.3",
58783            cpp_lib_version = "5.12.2",
58784            cpp_lib_version = "5.13.0",
58785            cpp_lib_version = "5.14.0"
58786        ),
58787        feature = "ritual_rustdoc"
58788    ))]
58789    pub unsafe fn geometry_shader_graph(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
58790        let ffi_result = {
58791            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_geometryShaderGraph(
58792                self as *const crate::QShaderProgramBuilder,
58793            )
58794        };
58795        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
58796    }
58797
58798    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QShaderProgramBuilder::metaObject() const```</span>.
58799    #[inline(always)]
58800    #[cfg_attr(
58801        feature = "ritual_rustdoc_nightly",
58802        doc(cfg(any(
58803            cpp_lib_version = "5.11.3",
58804            cpp_lib_version = "5.12.2",
58805            cpp_lib_version = "5.13.0",
58806            cpp_lib_version = "5.14.0"
58807        )))
58808    )]
58809    #[cfg(any(
58810        any(
58811            cpp_lib_version = "5.11.3",
58812            cpp_lib_version = "5.12.2",
58813            cpp_lib_version = "5.13.0",
58814            cpp_lib_version = "5.14.0"
58815        ),
58816        feature = "ritual_rustdoc"
58817    ))]
58818    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
58819        let ffi_result = {
58820            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_metaObject(
58821                self as *const crate::QShaderProgramBuilder,
58822            )
58823        };
58824        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
58825    }
58826
58827    /// <p>Default constructs an instance of QShaderProgramBuilder.</p>
58828    ///
58829    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QShaderProgramBuilder::QShaderProgramBuilder(Qt3DCore::QNode* parent = …)```</span>.
58830    ///
58831    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#QShaderProgramBuilder">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Default constructs an instance of QShaderProgramBuilder.</p></div>
58832    #[inline(always)]
58833    #[cfg_attr(
58834        feature = "ritual_rustdoc_nightly",
58835        doc(cfg(any(
58836            cpp_lib_version = "5.11.3",
58837            cpp_lib_version = "5.12.2",
58838            cpp_lib_version = "5.13.0",
58839            cpp_lib_version = "5.14.0"
58840        )))
58841    )]
58842    #[cfg(any(
58843        any(
58844            cpp_lib_version = "5.11.3",
58845            cpp_lib_version = "5.12.2",
58846            cpp_lib_version = "5.13.0",
58847            cpp_lib_version = "5.14.0"
58848        ),
58849        feature = "ritual_rustdoc"
58850    ))]
58851    pub unsafe fn new_1a(
58852        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
58853    ) -> ::qt_core::QBox<crate::QShaderProgramBuilder> {
58854        let ffi_result = {
58855            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_QShaderProgramBuilder(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent).as_raw_ptr() as *mut ::qt_3d_core::QNode)
58856        };
58857        ::qt_core::QBox::from_raw(ffi_result)
58858    }
58859
58860    /// <p>Generates a Shader Program content from loaded graphs.</p>
58861    ///
58862    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QShaderProgramBuilder::QShaderProgramBuilder()```</span>.
58863    ///
58864    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Generates a Shader Program content from loaded graphs.</p>
58865    /// <p>A shader program builder consists of several different shader graphs used to generate shader code.</p></div>
58866    #[inline(always)]
58867    #[cfg_attr(
58868        feature = "ritual_rustdoc_nightly",
58869        doc(cfg(any(
58870            cpp_lib_version = "5.11.3",
58871            cpp_lib_version = "5.12.2",
58872            cpp_lib_version = "5.13.0",
58873            cpp_lib_version = "5.14.0"
58874        )))
58875    )]
58876    #[cfg(any(
58877        any(
58878            cpp_lib_version = "5.11.3",
58879            cpp_lib_version = "5.12.2",
58880            cpp_lib_version = "5.13.0",
58881            cpp_lib_version = "5.14.0"
58882        ),
58883        feature = "ritual_rustdoc"
58884    ))]
58885    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QShaderProgramBuilder> {
58886        let ffi_result = {
58887            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_QShaderProgramBuilder1()
58888        };
58889        ::qt_core::QBox::from_raw(ffi_result)
58890    }
58891
58892    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QShaderProgramBuilder::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
58893    #[inline(always)]
58894    #[cfg_attr(
58895        feature = "ritual_rustdoc_nightly",
58896        doc(cfg(any(
58897            cpp_lib_version = "5.11.3",
58898            cpp_lib_version = "5.12.2",
58899            cpp_lib_version = "5.13.0",
58900            cpp_lib_version = "5.14.0"
58901        )))
58902    )]
58903    #[cfg(any(
58904        any(
58905            cpp_lib_version = "5.11.3",
58906            cpp_lib_version = "5.12.2",
58907            cpp_lib_version = "5.13.0",
58908            cpp_lib_version = "5.14.0"
58909        ),
58910        feature = "ritual_rustdoc"
58911    ))]
58912    pub unsafe fn qt_metacall(
58913        &self,
58914        arg1: ::qt_core::q_meta_object::Call,
58915        arg2: ::std::os::raw::c_int,
58916        arg3: *mut *mut ::std::ffi::c_void,
58917    ) -> ::std::os::raw::c_int {
58918        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_qt_metacall(
58919            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
58920            arg1,
58921            arg2,
58922            arg3,
58923        )
58924    }
58925
58926    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QShaderProgramBuilder::qt_metacast(const char* arg1)```</span>.
58927    #[inline(always)]
58928    #[cfg_attr(
58929        feature = "ritual_rustdoc_nightly",
58930        doc(cfg(any(
58931            cpp_lib_version = "5.11.3",
58932            cpp_lib_version = "5.12.2",
58933            cpp_lib_version = "5.13.0",
58934            cpp_lib_version = "5.14.0"
58935        )))
58936    )]
58937    #[cfg(any(
58938        any(
58939            cpp_lib_version = "5.11.3",
58940            cpp_lib_version = "5.12.2",
58941            cpp_lib_version = "5.13.0",
58942            cpp_lib_version = "5.14.0"
58943        ),
58944        feature = "ritual_rustdoc"
58945    ))]
58946    pub unsafe fn qt_metacast(
58947        &self,
58948        arg1: *const ::std::os::raw::c_char,
58949    ) -> *mut ::std::ffi::c_void {
58950        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_qt_metacast(
58951            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
58952            arg1,
58953        )
58954    }
58955
58956    /// <p>Holds the URL to the compute shader graph used by this shader program builder.</p>
58957    ///
58958    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgramBuilder::setComputeShaderGraph(const QUrl& computeShaderGraph)```</span>.
58959    ///
58960    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#computeShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the compute shader graph used by this shader program builder.</p>
58961    /// <p><b>Access functions:</b></p>
58962    /// <div class="table"><table class="alignedsummary">
58963    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderGraph</b></span>() const</td></tr>
58964    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setComputeShaderGraph</b></span>(const QUrl &amp;<i>computeShaderGraph</i>)</td></tr>
58965    /// </tbody></table></div>
58966    /// <p><b>Notifier signal:</b></p>
58967    /// <div class="table"><table class="alignedsummary">
58968    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>computeShaderGraphChanged</b></span>(const QUrl &amp;<i>computeShaderGraph</i>)</td></tr>
58969    /// </tbody></table></div></div>
58970    #[inline(always)]
58971    #[cfg_attr(
58972        feature = "ritual_rustdoc_nightly",
58973        doc(cfg(any(
58974            cpp_lib_version = "5.11.3",
58975            cpp_lib_version = "5.12.2",
58976            cpp_lib_version = "5.13.0",
58977            cpp_lib_version = "5.14.0"
58978        )))
58979    )]
58980    #[cfg(any(
58981        any(
58982            cpp_lib_version = "5.11.3",
58983            cpp_lib_version = "5.12.2",
58984            cpp_lib_version = "5.13.0",
58985            cpp_lib_version = "5.14.0"
58986        ),
58987        feature = "ritual_rustdoc"
58988    ))]
58989    pub unsafe fn set_compute_shader_graph(
58990        &self,
58991        compute_shader_graph: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
58992    ) {
58993        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_setComputeShaderGraph(
58994            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
58995            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(
58996                compute_shader_graph,
58997            )
58998            .as_raw_ptr(),
58999        )
59000    }
59001
59002    /// <p>Holds the list of layers this builder will activate on the shader graphs during code generation.</p>
59003    ///
59004    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgramBuilder::setEnabledLayers(const QStringList& layers)```</span>.
59005    ///
59006    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#enabledLayers-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the list of layers this builder will activate on the shader graphs during code generation.</p>
59007    /// <p><b>Access functions:</b></p>
59008    /// <div class="table"><table class="alignedsummary">
59009    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QStringList </td><td class="memItemRight bottomAlign"><span class="name"><b>enabledLayers</b></span>() const</td></tr>
59010    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEnabledLayers</b></span>(const QStringList &amp;<i>layers</i>)</td></tr>
59011    /// </tbody></table></div>
59012    /// <p><b>Notifier signal:</b></p>
59013    /// <div class="table"><table class="alignedsummary">
59014    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>enabledLayersChanged</b></span>(const QStringList &amp;<i>layers</i>)</td></tr>
59015    /// </tbody></table></div></div>
59016    #[inline(always)]
59017    #[cfg_attr(
59018        feature = "ritual_rustdoc_nightly",
59019        doc(cfg(any(
59020            cpp_lib_version = "5.11.3",
59021            cpp_lib_version = "5.12.2",
59022            cpp_lib_version = "5.13.0",
59023            cpp_lib_version = "5.14.0"
59024        )))
59025    )]
59026    #[cfg(any(
59027        any(
59028            cpp_lib_version = "5.11.3",
59029            cpp_lib_version = "5.12.2",
59030            cpp_lib_version = "5.13.0",
59031            cpp_lib_version = "5.14.0"
59032        ),
59033        feature = "ritual_rustdoc"
59034    ))]
59035    pub unsafe fn set_enabled_layers(
59036        &self,
59037        layers: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QStringList>>,
59038    ) {
59039        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_setEnabledLayers(
59040            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
59041            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QStringList>>::cast_into(layers)
59042                .as_raw_ptr(),
59043        )
59044    }
59045
59046    /// <p>Holds the URL to the fragment shader graph used by this shader program builder.</p>
59047    ///
59048    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgramBuilder::setFragmentShaderGraph(const QUrl& fragmentShaderGraph)```</span>.
59049    ///
59050    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#fragmentShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the fragment shader graph used by this shader program builder.</p>
59051    /// <p><b>Access functions:</b></p>
59052    /// <div class="table"><table class="alignedsummary">
59053    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderGraph</b></span>() const</td></tr>
59054    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFragmentShaderGraph</b></span>(const QUrl &amp;<i>fragmentShaderGraph</i>)</td></tr>
59055    /// </tbody></table></div>
59056    /// <p><b>Notifier signal:</b></p>
59057    /// <div class="table"><table class="alignedsummary">
59058    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>fragmentShaderGraphChanged</b></span>(const QUrl &amp;<i>fragmentShaderGraph</i>)</td></tr>
59059    /// </tbody></table></div></div>
59060    #[inline(always)]
59061    #[cfg_attr(
59062        feature = "ritual_rustdoc_nightly",
59063        doc(cfg(any(
59064            cpp_lib_version = "5.11.3",
59065            cpp_lib_version = "5.12.2",
59066            cpp_lib_version = "5.13.0",
59067            cpp_lib_version = "5.14.0"
59068        )))
59069    )]
59070    #[cfg(any(
59071        any(
59072            cpp_lib_version = "5.11.3",
59073            cpp_lib_version = "5.12.2",
59074            cpp_lib_version = "5.13.0",
59075            cpp_lib_version = "5.14.0"
59076        ),
59077        feature = "ritual_rustdoc"
59078    ))]
59079    pub unsafe fn set_fragment_shader_graph(
59080        &self,
59081        fragment_shader_graph: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
59082    ) {
59083        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_setFragmentShaderGraph(
59084            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
59085            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(
59086                fragment_shader_graph,
59087            )
59088            .as_raw_ptr(),
59089        )
59090    }
59091
59092    /// <p>Holds the URL to the geometry shader graph used by this shader program builder.</p>
59093    ///
59094    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgramBuilder::setGeometryShaderGraph(const QUrl& geometryShaderGraph)```</span>.
59095    ///
59096    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#geometryShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the geometry shader graph used by this shader program builder.</p>
59097    /// <p><b>Access functions:</b></p>
59098    /// <div class="table"><table class="alignedsummary">
59099    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderGraph</b></span>() const</td></tr>
59100    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setGeometryShaderGraph</b></span>(const QUrl &amp;<i>geometryShaderGraph</i>)</td></tr>
59101    /// </tbody></table></div>
59102    /// <p><b>Notifier signal:</b></p>
59103    /// <div class="table"><table class="alignedsummary">
59104    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>geometryShaderGraphChanged</b></span>(const QUrl &amp;<i>geometryShaderGraph</i>)</td></tr>
59105    /// </tbody></table></div></div>
59106    #[inline(always)]
59107    #[cfg_attr(
59108        feature = "ritual_rustdoc_nightly",
59109        doc(cfg(any(
59110            cpp_lib_version = "5.11.3",
59111            cpp_lib_version = "5.12.2",
59112            cpp_lib_version = "5.13.0",
59113            cpp_lib_version = "5.14.0"
59114        )))
59115    )]
59116    #[cfg(any(
59117        any(
59118            cpp_lib_version = "5.11.3",
59119            cpp_lib_version = "5.12.2",
59120            cpp_lib_version = "5.13.0",
59121            cpp_lib_version = "5.14.0"
59122        ),
59123        feature = "ritual_rustdoc"
59124    ))]
59125    pub unsafe fn set_geometry_shader_graph(
59126        &self,
59127        geometry_shader_graph: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
59128    ) {
59129        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_setGeometryShaderGraph(
59130            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
59131            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(
59132                geometry_shader_graph,
59133            )
59134            .as_raw_ptr(),
59135        )
59136    }
59137
59138    /// <p>Holds the shader program on which this builder generates code.</p>
59139    ///
59140    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgramBuilder::setShaderProgram(Qt3DRender::QShaderProgram* program)```</span>.
59141    ///
59142    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#shaderProgram-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the shader program on which this builder generates code.</p>
59143    /// <p><b>Access functions:</b></p>
59144    /// <div class="table"><table class="alignedsummary">
59145    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderProgram *</td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgram</b></span>() const</td></tr>
59146    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setShaderProgram</b></span>(Qt3DRender::QShaderProgram *<i>program</i>)</td></tr>
59147    /// </tbody></table></div>
59148    /// <p><b>Notifier signal:</b></p>
59149    /// <div class="table"><table class="alignedsummary">
59150    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgramChanged</b></span>(Qt3DRender::QShaderProgram *<i>shaderProgram</i>)</td></tr>
59151    /// </tbody></table></div></div>
59152    #[inline(always)]
59153    #[cfg_attr(
59154        feature = "ritual_rustdoc_nightly",
59155        doc(cfg(any(
59156            cpp_lib_version = "5.11.3",
59157            cpp_lib_version = "5.12.2",
59158            cpp_lib_version = "5.13.0",
59159            cpp_lib_version = "5.14.0"
59160        )))
59161    )]
59162    #[cfg(any(
59163        any(
59164            cpp_lib_version = "5.11.3",
59165            cpp_lib_version = "5.12.2",
59166            cpp_lib_version = "5.13.0",
59167            cpp_lib_version = "5.14.0"
59168        ),
59169        feature = "ritual_rustdoc"
59170    ))]
59171    pub unsafe fn set_shader_program(
59172        &self,
59173        program: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QShaderProgram>>,
59174    ) {
59175        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_setShaderProgram(
59176            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
59177            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QShaderProgram>>::cast_into(program)
59178                .as_raw_ptr() as *mut crate::QShaderProgram,
59179        )
59180    }
59181
59182    /// <p>Holds the URL to the tesselation control shader graph used by this shader program builder.</p>
59183    ///
59184    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgramBuilder::setTessellationControlShaderGraph(const QUrl& tessellationControlShaderGraph)```</span>.
59185    ///
59186    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationControlShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the tesselation control shader graph used by this shader program builder.</p>
59187    /// <p><b>Access functions:</b></p>
59188    /// <div class="table"><table class="alignedsummary">
59189    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderGraph</b></span>() const</td></tr>
59190    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationControlShaderGraph</b></span>(const QUrl &amp;<i>tessellationControlShaderGraph</i>)</td></tr>
59191    /// </tbody></table></div>
59192    /// <p><b>Notifier signal:</b></p>
59193    /// <div class="table"><table class="alignedsummary">
59194    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderGraphChanged</b></span>(const QUrl &amp;<i>tessellationControlShaderGraph</i>)</td></tr>
59195    /// </tbody></table></div></div>
59196    #[inline(always)]
59197    #[cfg_attr(
59198        feature = "ritual_rustdoc_nightly",
59199        doc(cfg(any(
59200            cpp_lib_version = "5.11.3",
59201            cpp_lib_version = "5.12.2",
59202            cpp_lib_version = "5.13.0",
59203            cpp_lib_version = "5.14.0"
59204        )))
59205    )]
59206    #[cfg(any(
59207        any(
59208            cpp_lib_version = "5.11.3",
59209            cpp_lib_version = "5.12.2",
59210            cpp_lib_version = "5.13.0",
59211            cpp_lib_version = "5.14.0"
59212        ),
59213        feature = "ritual_rustdoc"
59214    ))]
59215    pub unsafe fn set_tessellation_control_shader_graph(
59216        &self,
59217        tessellation_control_shader_graph: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
59218    ) {
59219        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_setTessellationControlShaderGraph(self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(tessellation_control_shader_graph).as_raw_ptr())
59220    }
59221
59222    /// <p>Holds the URL to the tesselation evaluation shader graph used by this shader program builder.</p>
59223    ///
59224    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgramBuilder::setTessellationEvaluationShaderGraph(const QUrl& tessellationEvaluationShaderGraph)```</span>.
59225    ///
59226    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationEvaluationShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the tesselation evaluation shader graph used by this shader program builder.</p>
59227    /// <p><b>Access functions:</b></p>
59228    /// <div class="table"><table class="alignedsummary">
59229    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderGraph</b></span>() const</td></tr>
59230    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationEvaluationShaderGraph</b></span>(const QUrl &amp;<i>tessellationEvaluationShaderGraph</i>)</td></tr>
59231    /// </tbody></table></div>
59232    /// <p><b>Notifier signal:</b></p>
59233    /// <div class="table"><table class="alignedsummary">
59234    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderGraphChanged</b></span>(const QUrl &amp;<i>tessellationEvaluationShaderGraph</i>)</td></tr>
59235    /// </tbody></table></div></div>
59236    #[inline(always)]
59237    #[cfg_attr(
59238        feature = "ritual_rustdoc_nightly",
59239        doc(cfg(any(
59240            cpp_lib_version = "5.11.3",
59241            cpp_lib_version = "5.12.2",
59242            cpp_lib_version = "5.13.0",
59243            cpp_lib_version = "5.14.0"
59244        )))
59245    )]
59246    #[cfg(any(
59247        any(
59248            cpp_lib_version = "5.11.3",
59249            cpp_lib_version = "5.12.2",
59250            cpp_lib_version = "5.13.0",
59251            cpp_lib_version = "5.14.0"
59252        ),
59253        feature = "ritual_rustdoc"
59254    ))]
59255    pub unsafe fn set_tessellation_evaluation_shader_graph(
59256        &self,
59257        tessellation_evaluation_shader_graph: impl ::cpp_core::CastInto<
59258            ::cpp_core::Ref<::qt_core::QUrl>,
59259        >,
59260    ) {
59261        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_setTessellationEvaluationShaderGraph(self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(tessellation_evaluation_shader_graph).as_raw_ptr())
59262    }
59263
59264    /// <p>Holds the URL to the vertex shader graph used by this shader program builder.</p>
59265    ///
59266    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderProgramBuilder::setVertexShaderGraph(const QUrl& vertexShaderGraph)```</span>.
59267    ///
59268    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#vertexShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the vertex shader graph used by this shader program builder.</p>
59269    /// <p><b>Access functions:</b></p>
59270    /// <div class="table"><table class="alignedsummary">
59271    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderGraph</b></span>() const</td></tr>
59272    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexShaderGraph</b></span>(const QUrl &amp;<i>vertexShaderGraph</i>)</td></tr>
59273    /// </tbody></table></div>
59274    /// <p><b>Notifier signal:</b></p>
59275    /// <div class="table"><table class="alignedsummary">
59276    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderGraphChanged</b></span>(const QUrl &amp;<i>vertexShaderGraph</i>)</td></tr>
59277    /// </tbody></table></div></div>
59278    #[inline(always)]
59279    #[cfg_attr(
59280        feature = "ritual_rustdoc_nightly",
59281        doc(cfg(any(
59282            cpp_lib_version = "5.11.3",
59283            cpp_lib_version = "5.12.2",
59284            cpp_lib_version = "5.13.0",
59285            cpp_lib_version = "5.14.0"
59286        )))
59287    )]
59288    #[cfg(any(
59289        any(
59290            cpp_lib_version = "5.11.3",
59291            cpp_lib_version = "5.12.2",
59292            cpp_lib_version = "5.13.0",
59293            cpp_lib_version = "5.14.0"
59294        ),
59295        feature = "ritual_rustdoc"
59296    ))]
59297    pub unsafe fn set_vertex_shader_graph(
59298        &self,
59299        vertex_shader_graph: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QUrl>>,
59300    ) {
59301        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_setVertexShaderGraph(
59302            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
59303            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QUrl>>::cast_into(
59304                vertex_shader_graph,
59305            )
59306            .as_raw_ptr(),
59307        )
59308    }
59309
59310    /// <p>Holds the shader program on which this builder generates code.</p>
59311    ///
59312    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgram* Qt3DRender::QShaderProgramBuilder::shaderProgram() const```</span>.
59313    ///
59314    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#shaderProgram-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the shader program on which this builder generates code.</p>
59315    /// <p><b>Access functions:</b></p>
59316    /// <div class="table"><table class="alignedsummary">
59317    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderProgram *</td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgram</b></span>() const</td></tr>
59318    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setShaderProgram</b></span>(Qt3DRender::QShaderProgram *<i>program</i>)</td></tr>
59319    /// </tbody></table></div>
59320    /// <p><b>Notifier signal:</b></p>
59321    /// <div class="table"><table class="alignedsummary">
59322    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>shaderProgramChanged</b></span>(Qt3DRender::QShaderProgram *<i>shaderProgram</i>)</td></tr>
59323    /// </tbody></table></div></div>
59324    #[inline(always)]
59325    #[cfg_attr(
59326        feature = "ritual_rustdoc_nightly",
59327        doc(cfg(any(
59328            cpp_lib_version = "5.11.3",
59329            cpp_lib_version = "5.12.2",
59330            cpp_lib_version = "5.13.0",
59331            cpp_lib_version = "5.14.0"
59332        )))
59333    )]
59334    #[cfg(any(
59335        any(
59336            cpp_lib_version = "5.11.3",
59337            cpp_lib_version = "5.12.2",
59338            cpp_lib_version = "5.13.0",
59339            cpp_lib_version = "5.14.0"
59340        ),
59341        feature = "ritual_rustdoc"
59342    ))]
59343    pub unsafe fn shader_program(&self) -> ::qt_core::QPtr<crate::QShaderProgram> {
59344        let ffi_result = {
59345            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_shaderProgram(
59346                self as *const crate::QShaderProgramBuilder,
59347            )
59348        };
59349        ::qt_core::QPtr::from_raw(ffi_result)
59350    }
59351
59352    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
59353    #[inline(always)]
59354    #[cfg_attr(
59355        feature = "ritual_rustdoc_nightly",
59356        doc(cfg(any(
59357            cpp_lib_version = "5.11.3",
59358            cpp_lib_version = "5.12.2",
59359            cpp_lib_version = "5.13.0",
59360            cpp_lib_version = "5.14.0"
59361        )))
59362    )]
59363    #[cfg(any(
59364        any(
59365            cpp_lib_version = "5.11.3",
59366            cpp_lib_version = "5.12.2",
59367            cpp_lib_version = "5.13.0",
59368            cpp_lib_version = "5.14.0"
59369        ),
59370        feature = "ritual_rustdoc"
59371    ))]
59372    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
59373        let ffi_result = {
59374            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_staticMetaObject()
59375        };
59376        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
59377            .expect("attempted to construct a null Ref")
59378    }
59379
59380    /// <p>Holds the generate tessellation control shader code.</p>
59381    ///
59382    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgramBuilder::tessellationControlShaderCode() const```</span>.
59383    ///
59384    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationControlShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate tessellation control shader code.</p>
59385    /// <p>This property was introduced in  Qt 5.13.</p>
59386    /// <p><b>Access functions:</b></p>
59387    /// <div class="table"><table class="alignedsummary">
59388    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCode</b></span>() const</td></tr>
59389    /// </tbody></table></div>
59390    /// <p><b>Notifier signal:</b></p>
59391    /// <div class="table"><table class="alignedsummary">
59392    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
59393    /// </tbody></table></div></div>
59394    #[inline(always)]
59395    #[cfg_attr(
59396        feature = "ritual_rustdoc_nightly",
59397        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
59398    )]
59399    #[cfg(any(
59400        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
59401        feature = "ritual_rustdoc"
59402    ))]
59403    pub unsafe fn tessellation_control_shader_code(
59404        &self,
59405    ) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
59406        let ffi_result = {
59407            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_tessellationControlShaderCode(self as *const crate::QShaderProgramBuilder)
59408        };
59409        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
59410    }
59411
59412    /// <p>Holds the generate tessellation control shader code.</p>
59413    ///
59414    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QShaderProgramBuilder::tessellationControlShaderCodeChanged(const QByteArray& tessellationControlShaderCode)```</span>.
59415    ///
59416    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationControlShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate tessellation control shader code.</p>
59417    /// <p>This property was introduced in  Qt 5.13.</p>
59418    /// <p><b>Access functions:</b></p>
59419    /// <div class="table"><table class="alignedsummary">
59420    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCode</b></span>() const</td></tr>
59421    /// </tbody></table></div>
59422    /// <p><b>Notifier signal:</b></p>
59423    /// <div class="table"><table class="alignedsummary">
59424    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationControlShaderCode</i>)</td></tr>
59425    /// </tbody></table></div></div>
59426    #[inline(always)]
59427    #[cfg_attr(
59428        feature = "ritual_rustdoc_nightly",
59429        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
59430    )]
59431    #[cfg(any(
59432        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
59433        feature = "ritual_rustdoc"
59434    ))]
59435    pub unsafe fn tessellation_control_shader_code_changed(
59436        &self,
59437        tessellation_control_shader_code: impl ::cpp_core::CastInto<
59438            ::cpp_core::Ref<::qt_core::QByteArray>,
59439        >,
59440    ) {
59441        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_tessellationControlShaderCodeChanged(self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(tessellation_control_shader_code).as_raw_ptr())
59442    }
59443
59444    /// <p>Holds the URL to the tesselation control shader graph used by this shader program builder.</p>
59445    ///
59446    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QShaderProgramBuilder::tessellationControlShaderGraph() const```</span>.
59447    ///
59448    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationControlShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the tesselation control shader graph used by this shader program builder.</p>
59449    /// <p><b>Access functions:</b></p>
59450    /// <div class="table"><table class="alignedsummary">
59451    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderGraph</b></span>() const</td></tr>
59452    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationControlShaderGraph</b></span>(const QUrl &amp;<i>tessellationControlShaderGraph</i>)</td></tr>
59453    /// </tbody></table></div>
59454    /// <p><b>Notifier signal:</b></p>
59455    /// <div class="table"><table class="alignedsummary">
59456    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationControlShaderGraphChanged</b></span>(const QUrl &amp;<i>tessellationControlShaderGraph</i>)</td></tr>
59457    /// </tbody></table></div></div>
59458    #[inline(always)]
59459    #[cfg_attr(
59460        feature = "ritual_rustdoc_nightly",
59461        doc(cfg(any(
59462            cpp_lib_version = "5.11.3",
59463            cpp_lib_version = "5.12.2",
59464            cpp_lib_version = "5.13.0",
59465            cpp_lib_version = "5.14.0"
59466        )))
59467    )]
59468    #[cfg(any(
59469        any(
59470            cpp_lib_version = "5.11.3",
59471            cpp_lib_version = "5.12.2",
59472            cpp_lib_version = "5.13.0",
59473            cpp_lib_version = "5.14.0"
59474        ),
59475        feature = "ritual_rustdoc"
59476    ))]
59477    pub unsafe fn tessellation_control_shader_graph(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
59478        let ffi_result = {
59479            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_tessellationControlShaderGraph(self as *const crate::QShaderProgramBuilder)
59480        };
59481        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
59482    }
59483
59484    /// <p>Holds the generate tessellation evaluation shader code.</p>
59485    ///
59486    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgramBuilder::tessellationEvaluationShaderCode() const```</span>.
59487    ///
59488    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationEvaluationShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate tessellation evaluation shader code.</p>
59489    /// <p>This property was introduced in  Qt 5.13.</p>
59490    /// <p><b>Access functions:</b></p>
59491    /// <div class="table"><table class="alignedsummary">
59492    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCode</b></span>() const</td></tr>
59493    /// </tbody></table></div>
59494    /// <p><b>Notifier signal:</b></p>
59495    /// <div class="table"><table class="alignedsummary">
59496    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
59497    /// </tbody></table></div></div>
59498    #[inline(always)]
59499    #[cfg_attr(
59500        feature = "ritual_rustdoc_nightly",
59501        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
59502    )]
59503    #[cfg(any(
59504        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
59505        feature = "ritual_rustdoc"
59506    ))]
59507    pub unsafe fn tessellation_evaluation_shader_code(
59508        &self,
59509    ) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
59510        let ffi_result = {
59511            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_tessellationEvaluationShaderCode(self as *const crate::QShaderProgramBuilder)
59512        };
59513        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
59514    }
59515
59516    /// <p>Holds the generate tessellation evaluation shader code.</p>
59517    ///
59518    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QShaderProgramBuilder::tessellationEvaluationShaderCodeChanged(const QByteArray& tessellationEvaluationShaderCode)```</span>.
59519    ///
59520    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationEvaluationShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate tessellation evaluation shader code.</p>
59521    /// <p>This property was introduced in  Qt 5.13.</p>
59522    /// <p><b>Access functions:</b></p>
59523    /// <div class="table"><table class="alignedsummary">
59524    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCode</b></span>() const</td></tr>
59525    /// </tbody></table></div>
59526    /// <p><b>Notifier signal:</b></p>
59527    /// <div class="table"><table class="alignedsummary">
59528    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderCodeChanged</b></span>(const QByteArray &amp;<i>tessellationEvaluationShaderCode</i>)</td></tr>
59529    /// </tbody></table></div></div>
59530    #[inline(always)]
59531    #[cfg_attr(
59532        feature = "ritual_rustdoc_nightly",
59533        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
59534    )]
59535    #[cfg(any(
59536        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
59537        feature = "ritual_rustdoc"
59538    ))]
59539    pub unsafe fn tessellation_evaluation_shader_code_changed(
59540        &self,
59541        tessellation_evaluation_shader_code: impl ::cpp_core::CastInto<
59542            ::cpp_core::Ref<::qt_core::QByteArray>,
59543        >,
59544    ) {
59545        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_tessellationEvaluationShaderCodeChanged(self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(tessellation_evaluation_shader_code).as_raw_ptr())
59546    }
59547
59548    /// <p>Holds the URL to the tesselation evaluation shader graph used by this shader program builder.</p>
59549    ///
59550    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QShaderProgramBuilder::tessellationEvaluationShaderGraph() const```</span>.
59551    ///
59552    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#tessellationEvaluationShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the tesselation evaluation shader graph used by this shader program builder.</p>
59553    /// <p><b>Access functions:</b></p>
59554    /// <div class="table"><table class="alignedsummary">
59555    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderGraph</b></span>() const</td></tr>
59556    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTessellationEvaluationShaderGraph</b></span>(const QUrl &amp;<i>tessellationEvaluationShaderGraph</i>)</td></tr>
59557    /// </tbody></table></div>
59558    /// <p><b>Notifier signal:</b></p>
59559    /// <div class="table"><table class="alignedsummary">
59560    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>tessellationEvaluationShaderGraphChanged</b></span>(const QUrl &amp;<i>tessellationEvaluationShaderGraph</i>)</td></tr>
59561    /// </tbody></table></div></div>
59562    #[inline(always)]
59563    #[cfg_attr(
59564        feature = "ritual_rustdoc_nightly",
59565        doc(cfg(any(
59566            cpp_lib_version = "5.11.3",
59567            cpp_lib_version = "5.12.2",
59568            cpp_lib_version = "5.13.0",
59569            cpp_lib_version = "5.14.0"
59570        )))
59571    )]
59572    #[cfg(any(
59573        any(
59574            cpp_lib_version = "5.11.3",
59575            cpp_lib_version = "5.12.2",
59576            cpp_lib_version = "5.13.0",
59577            cpp_lib_version = "5.14.0"
59578        ),
59579        feature = "ritual_rustdoc"
59580    ))]
59581    pub unsafe fn tessellation_evaluation_shader_graph(
59582        &self,
59583    ) -> ::cpp_core::CppBox<::qt_core::QUrl> {
59584        let ffi_result = {
59585            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_tessellationEvaluationShaderGraph(self as *const crate::QShaderProgramBuilder)
59586        };
59587        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
59588    }
59589
59590    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QShaderProgramBuilder::tr(const char* s, const char* c, int n)```</span>.
59591    #[inline(always)]
59592    #[cfg_attr(
59593        feature = "ritual_rustdoc_nightly",
59594        doc(cfg(any(
59595            cpp_lib_version = "5.11.3",
59596            cpp_lib_version = "5.12.2",
59597            cpp_lib_version = "5.13.0",
59598            cpp_lib_version = "5.14.0"
59599        )))
59600    )]
59601    #[cfg(any(
59602        any(
59603            cpp_lib_version = "5.11.3",
59604            cpp_lib_version = "5.12.2",
59605            cpp_lib_version = "5.13.0",
59606            cpp_lib_version = "5.14.0"
59607        ),
59608        feature = "ritual_rustdoc"
59609    ))]
59610    pub unsafe fn tr(
59611        s: *const ::std::os::raw::c_char,
59612        c: *const ::std::os::raw::c_char,
59613        n: ::std::os::raw::c_int,
59614    ) -> ::cpp_core::CppBox<::qt_core::QString> {
59615        let ffi_result =
59616            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_tr(s, c, n) };
59617        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
59618    }
59619
59620    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QShaderProgramBuilder::trUtf8(const char* s, const char* c, int n)```</span>.
59621    #[inline(always)]
59622    #[cfg_attr(
59623        feature = "ritual_rustdoc_nightly",
59624        doc(cfg(any(
59625            cpp_lib_version = "5.11.3",
59626            cpp_lib_version = "5.12.2",
59627            cpp_lib_version = "5.13.0",
59628            cpp_lib_version = "5.14.0"
59629        )))
59630    )]
59631    #[cfg(any(
59632        any(
59633            cpp_lib_version = "5.11.3",
59634            cpp_lib_version = "5.12.2",
59635            cpp_lib_version = "5.13.0",
59636            cpp_lib_version = "5.14.0"
59637        ),
59638        feature = "ritual_rustdoc"
59639    ))]
59640    pub unsafe fn tr_utf8(
59641        s: *const ::std::os::raw::c_char,
59642        c: *const ::std::os::raw::c_char,
59643        n: ::std::os::raw::c_int,
59644    ) -> ::cpp_core::CppBox<::qt_core::QString> {
59645        let ffi_result =
59646            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_trUtf8(s, c, n) };
59647        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
59648    }
59649
59650    /// <p>Holds the generate vertex shader code.</p>
59651    ///
59652    /// Calls C++ function: <span style='color: green;'>```QByteArray Qt3DRender::QShaderProgramBuilder::vertexShaderCode() const```</span>.
59653    ///
59654    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#vertexShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate vertex shader code.</p>
59655    /// <p>This property was introduced in  Qt 5.13.</p>
59656    /// <p><b>Access functions:</b></p>
59657    /// <div class="table"><table class="alignedsummary">
59658    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCode</b></span>() const</td></tr>
59659    /// </tbody></table></div>
59660    /// <p><b>Notifier signal:</b></p>
59661    /// <div class="table"><table class="alignedsummary">
59662    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCodeChanged</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
59663    /// </tbody></table></div></div>
59664    #[inline(always)]
59665    #[cfg_attr(
59666        feature = "ritual_rustdoc_nightly",
59667        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
59668    )]
59669    #[cfg(any(
59670        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
59671        feature = "ritual_rustdoc"
59672    ))]
59673    pub unsafe fn vertex_shader_code(&self) -> ::cpp_core::CppBox<::qt_core::QByteArray> {
59674        let ffi_result = {
59675            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_vertexShaderCode(
59676                self as *const crate::QShaderProgramBuilder,
59677            )
59678        };
59679        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
59680    }
59681
59682    /// <p>Holds the generate vertex shader code.</p>
59683    ///
59684    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QShaderProgramBuilder::vertexShaderCodeChanged(const QByteArray& vertexShaderCode)```</span>.
59685    ///
59686    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#vertexShaderCode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the generate vertex shader code.</p>
59687    /// <p>This property was introduced in  Qt 5.13.</p>
59688    /// <p><b>Access functions:</b></p>
59689    /// <div class="table"><table class="alignedsummary">
59690    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QByteArray </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCode</b></span>() const</td></tr>
59691    /// </tbody></table></div>
59692    /// <p><b>Notifier signal:</b></p>
59693    /// <div class="table"><table class="alignedsummary">
59694    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderCodeChanged</b></span>(const QByteArray &amp;<i>vertexShaderCode</i>)</td></tr>
59695    /// </tbody></table></div></div>
59696    #[inline(always)]
59697    #[cfg_attr(
59698        feature = "ritual_rustdoc_nightly",
59699        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
59700    )]
59701    #[cfg(any(
59702        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
59703        feature = "ritual_rustdoc"
59704    ))]
59705    pub unsafe fn vertex_shader_code_changed(
59706        &self,
59707        vertex_shader_code: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
59708    ) {
59709        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_vertexShaderCodeChanged(
59710            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
59711            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(
59712                vertex_shader_code,
59713            )
59714            .as_raw_ptr(),
59715        )
59716    }
59717
59718    /// <p>Holds the URL to the vertex shader graph used by this shader program builder.</p>
59719    ///
59720    /// Calls C++ function: <span style='color: green;'>```QUrl Qt3DRender::QShaderProgramBuilder::vertexShaderGraph() const```</span>.
59721    ///
59722    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#vertexShaderGraph-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the URL to the vertex shader graph used by this shader program builder.</p>
59723    /// <p><b>Access functions:</b></p>
59724    /// <div class="table"><table class="alignedsummary">
59725    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QUrl </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderGraph</b></span>() const</td></tr>
59726    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setVertexShaderGraph</b></span>(const QUrl &amp;<i>vertexShaderGraph</i>)</td></tr>
59727    /// </tbody></table></div>
59728    /// <p><b>Notifier signal:</b></p>
59729    /// <div class="table"><table class="alignedsummary">
59730    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>vertexShaderGraphChanged</b></span>(const QUrl &amp;<i>vertexShaderGraph</i>)</td></tr>
59731    /// </tbody></table></div></div>
59732    #[inline(always)]
59733    #[cfg_attr(
59734        feature = "ritual_rustdoc_nightly",
59735        doc(cfg(any(
59736            cpp_lib_version = "5.11.3",
59737            cpp_lib_version = "5.12.2",
59738            cpp_lib_version = "5.13.0",
59739            cpp_lib_version = "5.14.0"
59740        )))
59741    )]
59742    #[cfg(any(
59743        any(
59744            cpp_lib_version = "5.11.3",
59745            cpp_lib_version = "5.12.2",
59746            cpp_lib_version = "5.13.0",
59747            cpp_lib_version = "5.14.0"
59748        ),
59749        feature = "ritual_rustdoc"
59750    ))]
59751    pub unsafe fn vertex_shader_graph(&self) -> ::cpp_core::CppBox<::qt_core::QUrl> {
59752        let ffi_result = {
59753            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_vertexShaderGraph(
59754                self as *const crate::QShaderProgramBuilder,
59755            )
59756        };
59757        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
59758    }
59759}
59760
59761/// <p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
59762///
59763/// C++ class: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit>```</span>.
59764///
59765/// <a href="http://doc.qt.io/qt-5/qvector.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> class is a template class that provides a dynamic array.</p>
59766/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; is one of Qt's generic <a href="http://doc.qt.io/qt-5/containers.html">container classes</a>. It stores its items in adjacent memory locations and provides fast index-based access.</p>
59767/// <p><a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>&lt;T&gt;, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt;, and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>&lt;T&gt; provide similar APIs and functionality. They are often interchangeable, but there are performance consequences. Here is an overview of use cases:</p>
59768/// <ul>
59769/// <li><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> should be your default first choice. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; will usually give better performance than <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt;, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>&lt;T&gt; always stores its items sequentially in memory, where <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>&lt;T&gt; will allocate its items on the heap unless <code>sizeof(T) &lt;= sizeof(void*)</code> and T has been declared to be either a <code>Q_MOVABLE_TYPE</code> or a <code>Q_PRIMITIVE_TYPE</code> using <a href="http://doc.qt.io/qt-5/qtglobal.html#Q_DECLARE_TYPEINFO">Q_DECLARE_TYPEINFO</a>. See the <a href="http://marcmutz.wordpress.com/effective-qt/containers/#containers-qlist">Pros and Cons of Using QList</a> for an explanation.</li>
59770/// <li>However, <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> is used throughout the Qt APIs for passing parameters and for returning values. Use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> to interface with those APIs.</li>
59771/// <li>If you need a real linked list, which guarantees <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a> insertions mid-list and uses iterators to items rather than indexes, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a>.</li>
59772/// </ul>
59773/// <p><b>Note: </b><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a> both guarantee C-compatible array layout. <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> does not. This might be important if your application must interface with a C API.</p><p><b>Note: </b>Iterators into a <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> and references into heap-allocating QLists remain valid as long as the referenced items remain in the container. This is not true for iterators and references into a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> and non-heap-allocating QLists.</p><p>Here's an example of a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores integers and a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> that stores <a href="http://doc.qt.io/qt-5/qstring.html">QString</a> values:</p>
59774/// <pre class="cpp">
59775///
59776///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> integerVector;
59777///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> stringVector;
59778///
59779/// </pre>
59780/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> stores its items in a vector (array). Typically, vectors are created with an initial size. For example, the following code constructs a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> with 200 elements:</p>
59781/// <pre class="cpp">
59782///
59783///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span>);
59784///
59785/// </pre>
59786/// <p>The elements are automatically initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you want to initialize the vector with a different value, pass that value as the second argument to the constructor:</p>
59787/// <pre class="cpp">
59788///
59789///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">200</span><span class="operator">,</span> <span class="string">"Pass"</span>);
59790///
59791/// </pre>
59792/// <p>You can also call <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>() at any time to fill the vector with a value.</p>
59793/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> uses 0-based indexes, just like C++ arrays. To access the item at a particular index position, you can use operator[](). On non-const vectors, operator[]() returns a reference to the item that can be used on the left side of an assignment:</p>
59794/// <pre class="cpp">
59795///
59796///   <span class="keyword">if</span> (vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span><span class="operator">=</span> <span class="string">"Liz"</span>)
59797/// &#32;     vector<span class="operator">[</span><span class="number">0</span><span class="operator">]</span> <span class="operator">=</span> <span class="string">"Elizabeth"</span>;
59798///
59799/// </pre>
59800/// <p>For read-only access, an alternative syntax is to use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>():</p>
59801/// <pre class="cpp">
59802///
59803///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> vector<span class="operator">.</span>size(); <span class="operator">+</span><span class="operator">+</span>i) {
59804/// &#32;     <span class="keyword">if</span> (vector<span class="operator">.</span>at(i) <span class="operator">=</span><span class="operator">=</span> <span class="string">"Alfonso"</span>)
59805/// &#32;   &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"Found Alfonso at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
59806///   }
59807///
59808/// </pre>
59809/// <p><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() can be faster than operator[](), because it never causes a <a href="http://doc.qt.io/qt-5/implicit-sharing.html#deep-copy">deep copy</a> to occur.</p>
59810/// <p>Another way to access the data stored in a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is to call <a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>(). The function returns a pointer to the first item in the vector. You can use the pointer to directly access and modify the elements stored in the vector. The pointer is also useful if you need to pass a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to a function that accepts a plain C++ array.</p>
59811/// <p>If you want to find all occurrences of a particular value in a vector, use <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() or <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>(). The former searches forward starting from a given index position, the latter searches backward. Both return the index of the matching item if they found one; otherwise, they return -1. For example:</p>
59812/// <pre class="cpp">
59813///
59814///   <span class="type">int</span> i <span class="operator">=</span> vector<span class="operator">.</span>indexOf(<span class="string">"Harumi"</span>);
59815///   <span class="keyword">if</span> (i <span class="operator">!</span><span class="operator">=</span> <span class="operator">-</span><span class="number">1</span>)
59816/// &#32;     cout <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"First occurrence of Harumi is at position "</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> i <span class="operator">&lt;</span><span class="operator">&lt;</span> endl;
59817///
59818/// </pre>
59819/// <p>If you simply want to check whether a vector contains a particular value, use <a href="http://doc.qt.io/qt-5/qvector.html#contains">contains</a>(). If you want to find out how many times a particular value occurs in the vector, use <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
59820/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides these basic functions to add, move, and remove items: <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(). With the exception of <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), these functions can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>) for large vectors, because they require moving many items in the vector by one position in memory. If you want a container class that provides fast insertion/removal in the middle, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
59821/// <p>Unlike plain C++ arrays, QVectors can be resized at any time by calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). If the new size is larger than the old size, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> might need to reallocate the whole vector. <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> tries to reduce the number of reallocations by preallocating up to twice as much memory as the actual data needs.</p>
59822/// <p>If you know in advance approximately how many items the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will contain, you can call <a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>(), asking <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to preallocate a certain amount of memory. You can also call <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>() to find out how much memory <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> actually allocated.</p>
59823/// <p>Note that using non-const operators and functions can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy of the data. This is due to <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicit sharing</a>.</p>
59824/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s value type must be an <a href="http://doc.qt.io/qt-5/containers.html#assignable-data-type">assignable data type</a>. This covers most data types that are commonly used, but the compiler won't let you, for example, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> as a value; instead, store a <a href="http://doc.qt.io/qt-5/qwidget.html">QWidget</a> *. A few functions have additional requirements; for example, <a href="http://doc.qt.io/qt-5/qvector.html#indexOf">indexOf</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#lastIndexOf">lastIndexOf</a>() expect the value type to support <code>operator==()</code>. These requirements are documented on a per-function basis.</p>
59825/// <p>Like the other container classes, <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> provides <a href="http://doc.qt.io/qt-5/containers.html#java-style-iterators">Java-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvectoriterator.html">QVectorIterator</a> and <a href="http://doc.qt.io/qt-5/qmutablevectoriterator.html">QMutableVectorIterator</a>) and <a href="http://doc.qt.io/qt-5/containers.html#stl-style-iterators">STL-style iterators</a> (<a href="http://doc.qt.io/qt-5/qvector.html#const_iterator-typedef">QVector::const_iterator</a> and <a href="http://doc.qt.io/qt-5/qvector.html#iterator-typedefx">QVector::iterator</a>). In practice, these are rarely used, because you can use indexes into the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>.</p>
59826/// <p>In addition to <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>, Qt also provides <a href="http://doc.qt.io/qt-5/qvarlengtharray.html">QVarLengthArray</a>, a very low-level class with little functionality that is optimized for speed.</p>
59827/// <p><a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> does <i>not</i> support inserting, prepending, appending or replacing with references to its own values. Doing so will cause your application to abort with an error message.</p>
59828/// <a name="more-information-on-using-qt-containers"></a>
59829/// <h4>More Information on Using Qt Containers</h4>
59830/// <p>For a detailed discussion comparing Qt containers with each other and with STL containers, see <a href="http://marcmutz.wordpress.com/effective-qt/containers/">Understand the Qt Containers</a>.</p></div>
59831#[repr(C)]
59832pub struct QVectorOfQRayCasterHit {
59833    _unused: u8,
59834}
59835impl QVectorOfQRayCasterHit {
59836    /// <p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
59837    ///
59838    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit>& QVector<Qt3DRender::QRayCasterHit>::operator+=(const QVector<Qt3DRender::QRayCasterHit>& l)```</span>.
59839    ///
59840    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends the items of the <i>other</i> vector to this vector and returns a reference to this vector.</p>
59841    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">operator+</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>().</p></div>
59842    #[inline(always)]
59843    #[cfg_attr(
59844        feature = "ritual_rustdoc_nightly",
59845        doc(cfg(any(
59846            cpp_lib_version = "5.11.3",
59847            cpp_lib_version = "5.12.2",
59848            cpp_lib_version = "5.13.0",
59849            cpp_lib_version = "5.14.0"
59850        )))
59851    )]
59852    #[cfg(any(
59853        any(
59854            cpp_lib_version = "5.11.3",
59855            cpp_lib_version = "5.12.2",
59856            cpp_lib_version = "5.13.0",
59857            cpp_lib_version = "5.14.0"
59858        ),
59859        feature = "ritual_rustdoc"
59860    ))]
59861    pub unsafe fn add_assign_q_vector_of_q_ray_caster_hit(
59862        &self,
59863        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>,
59864    ) -> ::cpp_core::Ref<crate::QVectorOfQRayCasterHit> {
59865        let ffi_result = {
59866            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_operator__4(
59867                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
59868                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>::cast_into(
59869                    l,
59870                )
59871                .as_raw_ptr(),
59872            )
59873        };
59874        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
59875    }
59876
59877    /// <p>This is an overloaded function.</p>
59878    ///
59879    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit>& QVector<Qt3DRender::QRayCasterHit>::operator+=(const Qt3DRender::QRayCasterHit& t)```</span>.
59880    ///
59881    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
59882    /// <p>Appends <i>value</i> to the vector.</p>
59883    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>().</p></div>
59884    #[inline(always)]
59885    #[cfg_attr(
59886        feature = "ritual_rustdoc_nightly",
59887        doc(cfg(any(
59888            cpp_lib_version = "5.11.3",
59889            cpp_lib_version = "5.12.2",
59890            cpp_lib_version = "5.13.0",
59891            cpp_lib_version = "5.14.0"
59892        )))
59893    )]
59894    #[cfg(any(
59895        any(
59896            cpp_lib_version = "5.11.3",
59897            cpp_lib_version = "5.12.2",
59898            cpp_lib_version = "5.13.0",
59899            cpp_lib_version = "5.14.0"
59900        ),
59901        feature = "ritual_rustdoc"
59902    ))]
59903    pub unsafe fn add_assign_q_ray_caster_hit(
59904        &self,
59905        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
59906    ) -> ::cpp_core::Ref<crate::QVectorOfQRayCasterHit> {
59907        let ffi_result = {
59908            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_operator__5(
59909                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
59910                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
59911                    .as_raw_ptr(),
59912            )
59913        };
59914        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
59915    }
59916
59917    /// <p>Inserts <i>value</i> at the end of the vector.</p>
59918    ///
59919    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::append(const Qt3DRender::QRayCasterHit& t)```</span>.
59920    ///
59921    /// <a href="http://doc.qt.io/qt-5/qvector.html#append">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the end of the vector.</p>
59922    /// <p>Example:</p>
59923    /// <pre class="cpp">
59924    ///
59925    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
59926    ///   vector<span class="operator">.</span>append(<span class="string">"one"</span>);
59927    ///   vector<span class="operator">.</span>append(<span class="string">"two"</span>);
59928    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span> three <span class="operator">=</span> <span class="string">"three"</span>;
59929    ///   vector<span class="operator">.</span>append(three);
59930    ///   <span class="comment">// vector: ["one", "two", "three"]</span>
59931    ///   <span class="comment">// three: "three"</span>
59932    ///
59933    /// </pre>
59934    /// <p>This is the same as calling resize(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() + 1) and assigning <i>value</i> to the new last element in the vector.</p>
59935    /// <p>This operation is relatively fast, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> typically allocates more memory than necessary, so it can grow without reallocating the entire vector each time.</p>
59936    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
59937    #[inline(always)]
59938    #[cfg_attr(
59939        feature = "ritual_rustdoc_nightly",
59940        doc(cfg(any(
59941            cpp_lib_version = "5.11.3",
59942            cpp_lib_version = "5.12.2",
59943            cpp_lib_version = "5.13.0",
59944            cpp_lib_version = "5.14.0"
59945        )))
59946    )]
59947    #[cfg(any(
59948        any(
59949            cpp_lib_version = "5.11.3",
59950            cpp_lib_version = "5.12.2",
59951            cpp_lib_version = "5.13.0",
59952            cpp_lib_version = "5.14.0"
59953        ),
59954        feature = "ritual_rustdoc"
59955    ))]
59956    pub unsafe fn append_q_ray_caster_hit(
59957        &self,
59958        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
59959    ) {
59960        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_append(
59961            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
59962            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
59963                .as_raw_ptr(),
59964        )
59965    }
59966
59967    /// <p>This is an overloaded function.</p>
59968    ///
59969    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::append(const QVector<Qt3DRender::QRayCasterHit>& l)```</span>.
59970    ///
59971    /// <a href="http://doc.qt.io/qt-5/qvector.html#append-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
59972    /// <p>Appends the items of the <i>value</i> vector to this vector.</p>
59973    /// <p>This function was introduced in  Qt 5.5.</p>
59974    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">operator&lt;&lt;</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
59975    #[inline(always)]
59976    #[cfg_attr(
59977        feature = "ritual_rustdoc_nightly",
59978        doc(cfg(any(
59979            cpp_lib_version = "5.11.3",
59980            cpp_lib_version = "5.12.2",
59981            cpp_lib_version = "5.13.0",
59982            cpp_lib_version = "5.14.0"
59983        )))
59984    )]
59985    #[cfg(any(
59986        any(
59987            cpp_lib_version = "5.11.3",
59988            cpp_lib_version = "5.12.2",
59989            cpp_lib_version = "5.13.0",
59990            cpp_lib_version = "5.14.0"
59991        ),
59992        feature = "ritual_rustdoc"
59993    ))]
59994    pub unsafe fn append_q_vector_of_q_ray_caster_hit(
59995        &self,
59996        l: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>,
59997    ) {
59998        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_append2(
59999            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60000            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>::cast_into(l)
60001                .as_raw_ptr(),
60002        )
60003    }
60004
60005    /// <p>Returns the item at index position <i>i</i> in the vector.</p>
60006    ///
60007    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::at(int i) const```</span>.
60008    ///
60009    /// <a href="http://doc.qt.io/qt-5/qvector.html#at">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> in the vector.</p>
60010    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
60011    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
60012    #[inline(always)]
60013    #[cfg_attr(
60014        feature = "ritual_rustdoc_nightly",
60015        doc(cfg(any(
60016            cpp_lib_version = "5.11.3",
60017            cpp_lib_version = "5.12.2",
60018            cpp_lib_version = "5.13.0",
60019            cpp_lib_version = "5.14.0"
60020        )))
60021    )]
60022    #[cfg(any(
60023        any(
60024            cpp_lib_version = "5.11.3",
60025            cpp_lib_version = "5.12.2",
60026            cpp_lib_version = "5.13.0",
60027            cpp_lib_version = "5.14.0"
60028        ),
60029        feature = "ritual_rustdoc"
60030    ))]
60031    pub unsafe fn at(&self, i: ::std::os::raw::c_int) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60032        let ffi_result = {
60033            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_at(
60034                self as *const crate::QVectorOfQRayCasterHit,
60035                i,
60036            )
60037        };
60038        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QRayCasterHit)
60039            .expect("attempted to construct a null Ref")
60040    }
60041
60042    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p>
60043    ///
60044    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::back()```</span>.
60045    ///
60046    /// <a href="http://doc.qt.io/qt-5/qvector.html#back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
60047    #[inline(always)]
60048    #[cfg_attr(
60049        feature = "ritual_rustdoc_nightly",
60050        doc(cfg(any(
60051            cpp_lib_version = "5.11.3",
60052            cpp_lib_version = "5.12.2",
60053            cpp_lib_version = "5.13.0",
60054            cpp_lib_version = "5.14.0"
60055        )))
60056    )]
60057    #[cfg(any(
60058        any(
60059            cpp_lib_version = "5.11.3",
60060            cpp_lib_version = "5.12.2",
60061            cpp_lib_version = "5.13.0",
60062            cpp_lib_version = "5.14.0"
60063        ),
60064        feature = "ritual_rustdoc"
60065    ))]
60066    pub unsafe fn back_mut(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60067        let ffi_result = {
60068            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_back(
60069                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60070            )
60071        };
60072        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
60073    }
60074
60075    /// <p>This is an overloaded function.</p>
60076    ///
60077    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::back() const```</span>.
60078    ///
60079    /// <a href="http://doc.qt.io/qt-5/qvector.html#back-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
60080    #[inline(always)]
60081    #[cfg_attr(
60082        feature = "ritual_rustdoc_nightly",
60083        doc(cfg(any(
60084            cpp_lib_version = "5.11.3",
60085            cpp_lib_version = "5.12.2",
60086            cpp_lib_version = "5.13.0",
60087            cpp_lib_version = "5.14.0"
60088        )))
60089    )]
60090    #[cfg(any(
60091        any(
60092            cpp_lib_version = "5.11.3",
60093            cpp_lib_version = "5.12.2",
60094            cpp_lib_version = "5.13.0",
60095            cpp_lib_version = "5.14.0"
60096        ),
60097        feature = "ritual_rustdoc"
60098    ))]
60099    pub unsafe fn back(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60100        let ffi_result = {
60101            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_back1(
60102                self as *const crate::QVectorOfQRayCasterHit,
60103            )
60104        };
60105        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QRayCasterHit)
60106            .expect("attempted to construct a null Ref")
60107    }
60108
60109    /// <p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
60110    ///
60111    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRayCasterHit>::capacity() const```</span>.
60112    ///
60113    /// <a href="http://doc.qt.io/qt-5/qvector.html#capacity">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the maximum number of items that can be stored in the vector without forcing a reallocation.</p>
60114    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function. If you want to know how many items are in the vector, call <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
60115    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
60116    #[inline(always)]
60117    #[cfg_attr(
60118        feature = "ritual_rustdoc_nightly",
60119        doc(cfg(any(
60120            cpp_lib_version = "5.11.3",
60121            cpp_lib_version = "5.12.2",
60122            cpp_lib_version = "5.13.0",
60123            cpp_lib_version = "5.14.0"
60124        )))
60125    )]
60126    #[cfg(any(
60127        any(
60128            cpp_lib_version = "5.11.3",
60129            cpp_lib_version = "5.12.2",
60130            cpp_lib_version = "5.13.0",
60131            cpp_lib_version = "5.14.0"
60132        ),
60133        feature = "ritual_rustdoc"
60134    ))]
60135    pub unsafe fn capacity(&self) -> ::std::os::raw::c_int {
60136        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_capacity(
60137            self as *const crate::QVectorOfQRayCasterHit,
60138        )
60139    }
60140
60141    /// <p>Removes all the elements from the vector.</p>
60142    ///
60143    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::clear()```</span>.
60144    ///
60145    /// <a href="http://doc.qt.io/qt-5/qvector.html#clear">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes all the elements from the vector.</p>
60146    /// <p><b>Note: </b>Until Qt 5.6, this also released the memory used by the vector. From Qt 5.7, the capacity is preserved. To shed all capacity, swap with a default-constructed vector:</p><pre class="cpp">
60147    ///
60148    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span> v <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>;
60149    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span>T<span class="operator">&gt;</span>()<span class="operator">.</span>swap(v);
60150    ///   Q_ASSERT(v<span class="operator">.</span>capacity() <span class="operator">=</span><span class="operator">=</span> <span class="number">0</span>);
60151    ///
60152    /// </pre>
60153    /// <p>or call <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
60154    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p></div>
60155    #[inline(always)]
60156    #[cfg_attr(
60157        feature = "ritual_rustdoc_nightly",
60158        doc(cfg(any(
60159            cpp_lib_version = "5.11.3",
60160            cpp_lib_version = "5.12.2",
60161            cpp_lib_version = "5.13.0",
60162            cpp_lib_version = "5.14.0"
60163        )))
60164    )]
60165    #[cfg(any(
60166        any(
60167            cpp_lib_version = "5.11.3",
60168            cpp_lib_version = "5.12.2",
60169            cpp_lib_version = "5.13.0",
60170            cpp_lib_version = "5.14.0"
60171        ),
60172        feature = "ritual_rustdoc"
60173    ))]
60174    pub unsafe fn clear(&self) {
60175        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_clear(
60176            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60177        )
60178    }
60179
60180    /// <p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
60181    ///
60182    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit* QVector<Qt3DRender::QRayCasterHit>::constData() const```</span>.
60183    ///
60184    /// <a href="http://doc.qt.io/qt-5/qvector.html#constData">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const pointer to the data stored in the vector. The pointer can be used to access the items in the vector. The pointer remains valid as long as the vector isn't reallocated.</p>
60185    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
60186    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#data">data</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
60187    #[inline(always)]
60188    #[cfg_attr(
60189        feature = "ritual_rustdoc_nightly",
60190        doc(cfg(any(
60191            cpp_lib_version = "5.11.3",
60192            cpp_lib_version = "5.12.2",
60193            cpp_lib_version = "5.13.0",
60194            cpp_lib_version = "5.14.0"
60195        )))
60196    )]
60197    #[cfg(any(
60198        any(
60199            cpp_lib_version = "5.11.3",
60200            cpp_lib_version = "5.12.2",
60201            cpp_lib_version = "5.13.0",
60202            cpp_lib_version = "5.14.0"
60203        ),
60204        feature = "ritual_rustdoc"
60205    ))]
60206    pub unsafe fn const_data(&self) -> ::cpp_core::Ptr<crate::QRayCasterHit> {
60207        let ffi_result = {
60208            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_constData(
60209                self as *const crate::QVectorOfQRayCasterHit,
60210            )
60211        };
60212        ::cpp_core::Ptr::from_raw(ffi_result as *mut crate::QRayCasterHit)
60213    }
60214
60215    /// <p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
60216    ///
60217    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::constFirst() const```</span>.
60218    ///
60219    /// <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
60220    /// <p>This function was introduced in  Qt 5.6.</p>
60221    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
60222    #[inline(always)]
60223    #[cfg_attr(
60224        feature = "ritual_rustdoc_nightly",
60225        doc(cfg(any(
60226            cpp_lib_version = "5.11.3",
60227            cpp_lib_version = "5.12.2",
60228            cpp_lib_version = "5.13.0",
60229            cpp_lib_version = "5.14.0"
60230        )))
60231    )]
60232    #[cfg(any(
60233        any(
60234            cpp_lib_version = "5.11.3",
60235            cpp_lib_version = "5.12.2",
60236            cpp_lib_version = "5.13.0",
60237            cpp_lib_version = "5.14.0"
60238        ),
60239        feature = "ritual_rustdoc"
60240    ))]
60241    pub unsafe fn const_first(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60242        let ffi_result = {
60243            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_constFirst(
60244                self as *const crate::QVectorOfQRayCasterHit,
60245            )
60246        };
60247        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QRayCasterHit)
60248            .expect("attempted to construct a null Ref")
60249    }
60250
60251    /// <p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
60252    ///
60253    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::constLast() const```</span>.
60254    ///
60255    /// <a href="http://doc.qt.io/qt-5/qvector.html#constLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a const reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
60256    /// <p>This function was introduced in  Qt 5.6.</p>
60257    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>().</p></div>
60258    #[inline(always)]
60259    #[cfg_attr(
60260        feature = "ritual_rustdoc_nightly",
60261        doc(cfg(any(
60262            cpp_lib_version = "5.11.3",
60263            cpp_lib_version = "5.12.2",
60264            cpp_lib_version = "5.13.0",
60265            cpp_lib_version = "5.14.0"
60266        )))
60267    )]
60268    #[cfg(any(
60269        any(
60270            cpp_lib_version = "5.11.3",
60271            cpp_lib_version = "5.12.2",
60272            cpp_lib_version = "5.13.0",
60273            cpp_lib_version = "5.14.0"
60274        ),
60275        feature = "ritual_rustdoc"
60276    ))]
60277    pub unsafe fn const_last(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60278        let ffi_result = {
60279            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_constLast(
60280                self as *const crate::QVectorOfQRayCasterHit,
60281            )
60282        };
60283        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QRayCasterHit)
60284            .expect("attempted to construct a null Ref")
60285    }
60286
60287    /// <p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p>
60288    ///
60289    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit>& QVector<Qt3DRender::QRayCasterHit>::operator=(const QVector<Qt3DRender::QRayCasterHit>& v)```</span>.
60290    ///
60291    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>other</i> to this vector and returns a reference to this vector.</p></div>
60292    #[inline(always)]
60293    #[cfg_attr(
60294        feature = "ritual_rustdoc_nightly",
60295        doc(cfg(any(
60296            cpp_lib_version = "5.11.3",
60297            cpp_lib_version = "5.12.2",
60298            cpp_lib_version = "5.13.0",
60299            cpp_lib_version = "5.14.0"
60300        )))
60301    )]
60302    #[cfg(any(
60303        any(
60304            cpp_lib_version = "5.11.3",
60305            cpp_lib_version = "5.12.2",
60306            cpp_lib_version = "5.13.0",
60307            cpp_lib_version = "5.14.0"
60308        ),
60309        feature = "ritual_rustdoc"
60310    ))]
60311    pub unsafe fn copy_from(
60312        &self,
60313        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>,
60314    ) -> ::cpp_core::Ref<crate::QVectorOfQRayCasterHit> {
60315        let ffi_result = {
60316            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_operator_(
60317                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60318                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>::cast_into(
60319                    v,
60320                )
60321                .as_raw_ptr(),
60322            )
60323        };
60324        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
60325    }
60326
60327    /// <p>This is an overloaded function.</p>
60328    ///
60329    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRayCasterHit>::count() const```</span>.
60330    ///
60331    /// <a href="http://doc.qt.io/qt-5/qvector.html#count-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
60332    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
60333    #[inline(always)]
60334    #[cfg_attr(
60335        feature = "ritual_rustdoc_nightly",
60336        doc(cfg(any(
60337            cpp_lib_version = "5.11.3",
60338            cpp_lib_version = "5.12.2",
60339            cpp_lib_version = "5.13.0",
60340            cpp_lib_version = "5.14.0"
60341        )))
60342    )]
60343    #[cfg(any(
60344        any(
60345            cpp_lib_version = "5.11.3",
60346            cpp_lib_version = "5.12.2",
60347            cpp_lib_version = "5.13.0",
60348            cpp_lib_version = "5.14.0"
60349        ),
60350        feature = "ritual_rustdoc"
60351    ))]
60352    pub unsafe fn count(&self) -> ::std::os::raw::c_int {
60353        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_count1(
60354            self as *const crate::QVectorOfQRayCasterHit,
60355        )
60356    }
60357
60358    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
60359    ///
60360    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit* QVector<Qt3DRender::QRayCasterHit>::data()```</span>.
60361    ///
60362    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
60363    /// <p>Example:</p>
60364    /// <pre class="cpp">
60365    ///
60366    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
60367    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
60368    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
60369    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
60370    ///
60371    /// </pre>
60372    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
60373    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
60374    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
60375    #[inline(always)]
60376    #[cfg_attr(
60377        feature = "ritual_rustdoc_nightly",
60378        doc(cfg(any(
60379            cpp_lib_version = "5.11.3",
60380            cpp_lib_version = "5.12.2",
60381            cpp_lib_version = "5.13.0",
60382            cpp_lib_version = "5.14.0"
60383        )))
60384    )]
60385    #[cfg(any(
60386        any(
60387            cpp_lib_version = "5.11.3",
60388            cpp_lib_version = "5.12.2",
60389            cpp_lib_version = "5.13.0",
60390            cpp_lib_version = "5.14.0"
60391        ),
60392        feature = "ritual_rustdoc"
60393    ))]
60394    pub unsafe fn data_mut(&self) -> ::cpp_core::Ptr<crate::QRayCasterHit> {
60395        let ffi_result = {
60396            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_data(
60397                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60398            )
60399        };
60400        ::cpp_core::Ptr::from_raw(ffi_result)
60401    }
60402
60403    /// <p>This is an overloaded function.</p>
60404    ///
60405    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit* QVector<Qt3DRender::QRayCasterHit>::data() const```</span>.
60406    ///
60407    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
60408    #[inline(always)]
60409    #[cfg_attr(
60410        feature = "ritual_rustdoc_nightly",
60411        doc(cfg(any(
60412            cpp_lib_version = "5.11.3",
60413            cpp_lib_version = "5.12.2",
60414            cpp_lib_version = "5.13.0",
60415            cpp_lib_version = "5.14.0"
60416        )))
60417    )]
60418    #[cfg(any(
60419        any(
60420            cpp_lib_version = "5.11.3",
60421            cpp_lib_version = "5.12.2",
60422            cpp_lib_version = "5.13.0",
60423            cpp_lib_version = "5.14.0"
60424        ),
60425        feature = "ritual_rustdoc"
60426    ))]
60427    pub unsafe fn data(&self) -> ::cpp_core::Ptr<crate::QRayCasterHit> {
60428        let ffi_result = {
60429            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_data1(
60430                self as *const crate::QVectorOfQRayCasterHit,
60431            )
60432        };
60433        ::cpp_core::Ptr::from_raw(ffi_result as *mut crate::QRayCasterHit)
60434    }
60435
60436    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::detach()```</span>.
60437    #[inline(always)]
60438    #[cfg_attr(
60439        feature = "ritual_rustdoc_nightly",
60440        doc(cfg(any(
60441            cpp_lib_version = "5.11.3",
60442            cpp_lib_version = "5.12.2",
60443            cpp_lib_version = "5.13.0",
60444            cpp_lib_version = "5.14.0"
60445        )))
60446    )]
60447    #[cfg(any(
60448        any(
60449            cpp_lib_version = "5.11.3",
60450            cpp_lib_version = "5.12.2",
60451            cpp_lib_version = "5.13.0",
60452            cpp_lib_version = "5.14.0"
60453        ),
60454        feature = "ritual_rustdoc"
60455    ))]
60456    pub unsafe fn detach(&self) {
60457        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_detach(
60458            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60459        )
60460    }
60461
60462    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p>
60463    ///
60464    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRayCasterHit>::empty() const```</span>.
60465    ///
60466    /// <a href="http://doc.qt.io/qt-5/qvector.html#empty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), returning <code>true</code> if the vector is empty; otherwise returns <code>false</code>.</p></div>
60467    #[inline(always)]
60468    #[cfg_attr(
60469        feature = "ritual_rustdoc_nightly",
60470        doc(cfg(any(
60471            cpp_lib_version = "5.11.3",
60472            cpp_lib_version = "5.12.2",
60473            cpp_lib_version = "5.13.0",
60474            cpp_lib_version = "5.14.0"
60475        )))
60476    )]
60477    #[cfg(any(
60478        any(
60479            cpp_lib_version = "5.11.3",
60480            cpp_lib_version = "5.12.2",
60481            cpp_lib_version = "5.13.0",
60482            cpp_lib_version = "5.14.0"
60483        ),
60484        feature = "ritual_rustdoc"
60485    ))]
60486    pub unsafe fn empty(&self) -> bool {
60487        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_empty(
60488            self as *const crate::QVectorOfQRayCasterHit,
60489        )
60490    }
60491
60492    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
60493    ///
60494    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit>& QVector<Qt3DRender::QRayCasterHit>::fill(const Qt3DRender::QRayCasterHit& t, int size = …)```</span>.
60495    ///
60496    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
60497    /// <p>Example:</p>
60498    /// <pre class="cpp">
60499    ///
60500    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
60501    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
60502    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
60503    ///
60504    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
60505    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
60506    ///
60507    /// </pre>
60508    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
60509    #[inline(always)]
60510    #[cfg_attr(
60511        feature = "ritual_rustdoc_nightly",
60512        doc(cfg(any(
60513            cpp_lib_version = "5.11.3",
60514            cpp_lib_version = "5.12.2",
60515            cpp_lib_version = "5.13.0",
60516            cpp_lib_version = "5.14.0"
60517        )))
60518    )]
60519    #[cfg(any(
60520        any(
60521            cpp_lib_version = "5.11.3",
60522            cpp_lib_version = "5.12.2",
60523            cpp_lib_version = "5.13.0",
60524            cpp_lib_version = "5.14.0"
60525        ),
60526        feature = "ritual_rustdoc"
60527    ))]
60528    pub unsafe fn fill_2a(
60529        &self,
60530        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
60531        size: ::std::os::raw::c_int,
60532    ) -> ::cpp_core::Ref<crate::QVectorOfQRayCasterHit> {
60533        let ffi_result = {
60534            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_fill(
60535                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60536                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
60537                    .as_raw_ptr(),
60538                size,
60539            )
60540        };
60541        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
60542    }
60543
60544    /// <p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
60545    ///
60546    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit>& QVector<Qt3DRender::QRayCasterHit>::fill(const Qt3DRender::QRayCasterHit& t)```</span>.
60547    ///
60548    /// <a href="http://doc.qt.io/qt-5/qvector.html#fill">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Assigns <i>value</i> to all items in the vector. If <i>size</i> is different from -1 (the default), the vector is resized to size <i>size</i> beforehand.</p>
60549    /// <p>Example:</p>
60550    /// <pre class="cpp">
60551    ///
60552    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector(<span class="number">3</span>);
60553    ///   vector<span class="operator">.</span>fill(<span class="string">"Yes"</span>);
60554    ///   <span class="comment">// vector: ["Yes", "Yes", "Yes"]</span>
60555    ///
60556    ///   vector<span class="operator">.</span>fill(<span class="string">"oh"</span><span class="operator">,</span> <span class="number">5</span>);
60557    ///   <span class="comment">// vector: ["oh", "oh", "oh", "oh", "oh"]</span>
60558    ///
60559    /// </pre>
60560    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
60561    #[inline(always)]
60562    #[cfg_attr(
60563        feature = "ritual_rustdoc_nightly",
60564        doc(cfg(any(
60565            cpp_lib_version = "5.11.3",
60566            cpp_lib_version = "5.12.2",
60567            cpp_lib_version = "5.13.0",
60568            cpp_lib_version = "5.14.0"
60569        )))
60570    )]
60571    #[cfg(any(
60572        any(
60573            cpp_lib_version = "5.11.3",
60574            cpp_lib_version = "5.12.2",
60575            cpp_lib_version = "5.13.0",
60576            cpp_lib_version = "5.14.0"
60577        ),
60578        feature = "ritual_rustdoc"
60579    ))]
60580    pub unsafe fn fill_1a(
60581        &self,
60582        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
60583    ) -> ::cpp_core::Ref<crate::QVectorOfQRayCasterHit> {
60584        let ffi_result = {
60585            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_fill1(
60586                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60587                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
60588                    .as_raw_ptr(),
60589            )
60590        };
60591        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
60592    }
60593
60594    /// <p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
60595    ///
60596    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::first()```</span>.
60597    ///
60598    /// <a href="http://doc.qt.io/qt-5/qvector.html#first">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the first item in the vector. This function assumes that the vector isn't empty.</p>
60599    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#last">last</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constFirst">constFirst</a>().</p></div>
60600    #[inline(always)]
60601    #[cfg_attr(
60602        feature = "ritual_rustdoc_nightly",
60603        doc(cfg(any(
60604            cpp_lib_version = "5.11.3",
60605            cpp_lib_version = "5.12.2",
60606            cpp_lib_version = "5.13.0",
60607            cpp_lib_version = "5.14.0"
60608        )))
60609    )]
60610    #[cfg(any(
60611        any(
60612            cpp_lib_version = "5.11.3",
60613            cpp_lib_version = "5.12.2",
60614            cpp_lib_version = "5.13.0",
60615            cpp_lib_version = "5.14.0"
60616        ),
60617        feature = "ritual_rustdoc"
60618    ))]
60619    pub unsafe fn first_mut(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60620        let ffi_result = {
60621            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_first(
60622                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60623            )
60624        };
60625        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
60626    }
60627
60628    /// <p>This is an overloaded function.</p>
60629    ///
60630    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::first() const```</span>.
60631    ///
60632    /// <a href="http://doc.qt.io/qt-5/qvector.html#first-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
60633    #[inline(always)]
60634    #[cfg_attr(
60635        feature = "ritual_rustdoc_nightly",
60636        doc(cfg(any(
60637            cpp_lib_version = "5.11.3",
60638            cpp_lib_version = "5.12.2",
60639            cpp_lib_version = "5.13.0",
60640            cpp_lib_version = "5.14.0"
60641        )))
60642    )]
60643    #[cfg(any(
60644        any(
60645            cpp_lib_version = "5.11.3",
60646            cpp_lib_version = "5.12.2",
60647            cpp_lib_version = "5.13.0",
60648            cpp_lib_version = "5.14.0"
60649        ),
60650        feature = "ritual_rustdoc"
60651    ))]
60652    pub unsafe fn first(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60653        let ffi_result = {
60654            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_first1(
60655                self as *const crate::QVectorOfQRayCasterHit,
60656            )
60657        };
60658        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QRayCasterHit)
60659            .expect("attempted to construct a null Ref")
60660    }
60661
60662    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p>
60663    ///
60664    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::front()```</span>.
60665    ///
60666    /// <a href="http://doc.qt.io/qt-5/qvector.html#front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>().</p></div>
60667    #[inline(always)]
60668    #[cfg_attr(
60669        feature = "ritual_rustdoc_nightly",
60670        doc(cfg(any(
60671            cpp_lib_version = "5.11.3",
60672            cpp_lib_version = "5.12.2",
60673            cpp_lib_version = "5.13.0",
60674            cpp_lib_version = "5.14.0"
60675        )))
60676    )]
60677    #[cfg(any(
60678        any(
60679            cpp_lib_version = "5.11.3",
60680            cpp_lib_version = "5.12.2",
60681            cpp_lib_version = "5.13.0",
60682            cpp_lib_version = "5.14.0"
60683        ),
60684        feature = "ritual_rustdoc"
60685    ))]
60686    pub unsafe fn front_mut(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60687        let ffi_result = {
60688            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_front(
60689                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60690            )
60691        };
60692        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
60693    }
60694
60695    /// <p>This is an overloaded function.</p>
60696    ///
60697    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::front() const```</span>.
60698    ///
60699    /// <a href="http://doc.qt.io/qt-5/qvector.html#front-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
60700    #[inline(always)]
60701    #[cfg_attr(
60702        feature = "ritual_rustdoc_nightly",
60703        doc(cfg(any(
60704            cpp_lib_version = "5.11.3",
60705            cpp_lib_version = "5.12.2",
60706            cpp_lib_version = "5.13.0",
60707            cpp_lib_version = "5.14.0"
60708        )))
60709    )]
60710    #[cfg(any(
60711        any(
60712            cpp_lib_version = "5.11.3",
60713            cpp_lib_version = "5.12.2",
60714            cpp_lib_version = "5.13.0",
60715            cpp_lib_version = "5.14.0"
60716        ),
60717        feature = "ritual_rustdoc"
60718    ))]
60719    pub unsafe fn front(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60720        let ffi_result = {
60721            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_front1(
60722                self as *const crate::QVectorOfQRayCasterHit,
60723            )
60724        };
60725        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QRayCasterHit)
60726            .expect("attempted to construct a null Ref")
60727    }
60728
60729    /// <p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
60730    ///
60731    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::operator[](int i)```</span>.
60732    ///
60733    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the item at index position <i>i</i> as a modifiable reference.</p>
60734    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
60735    /// <p>Note that using non-const operators can cause <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> to do a deep copy.</p>
60736    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#value">value</a>().</p></div>
60737    #[inline(always)]
60738    #[cfg_attr(
60739        feature = "ritual_rustdoc_nightly",
60740        doc(cfg(any(
60741            cpp_lib_version = "5.11.3",
60742            cpp_lib_version = "5.12.2",
60743            cpp_lib_version = "5.13.0",
60744            cpp_lib_version = "5.14.0"
60745        )))
60746    )]
60747    #[cfg(any(
60748        any(
60749            cpp_lib_version = "5.11.3",
60750            cpp_lib_version = "5.12.2",
60751            cpp_lib_version = "5.13.0",
60752            cpp_lib_version = "5.14.0"
60753        ),
60754        feature = "ritual_rustdoc"
60755    ))]
60756    pub unsafe fn index_mut(
60757        &self,
60758        i: ::std::os::raw::c_int,
60759    ) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60760        let ffi_result = {
60761            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_operator__2(
60762                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60763                i,
60764            )
60765        };
60766        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
60767    }
60768
60769    /// <p>This is an overloaded function.</p>
60770    ///
60771    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::operator[](int i) const```</span>.
60772    ///
60773    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
60774    /// <p>Same as at(<i>i</i>).</p></div>
60775    #[inline(always)]
60776    #[cfg_attr(
60777        feature = "ritual_rustdoc_nightly",
60778        doc(cfg(any(
60779            cpp_lib_version = "5.11.3",
60780            cpp_lib_version = "5.12.2",
60781            cpp_lib_version = "5.13.0",
60782            cpp_lib_version = "5.14.0"
60783        )))
60784    )]
60785    #[cfg(any(
60786        any(
60787            cpp_lib_version = "5.11.3",
60788            cpp_lib_version = "5.12.2",
60789            cpp_lib_version = "5.13.0",
60790            cpp_lib_version = "5.14.0"
60791        ),
60792        feature = "ritual_rustdoc"
60793    ))]
60794    pub unsafe fn index(&self, i: ::std::os::raw::c_int) -> ::cpp_core::Ref<crate::QRayCasterHit> {
60795        let ffi_result = {
60796            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_operator__3(
60797                self as *const crate::QVectorOfQRayCasterHit,
60798                i,
60799            )
60800        };
60801        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QRayCasterHit)
60802            .expect("attempted to construct a null Ref")
60803    }
60804
60805    /// <p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
60806    ///
60807    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::insert(int i, const Qt3DRender::QRayCasterHit& t)```</span>.
60808    ///
60809    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at index position <i>i</i> in the vector. If <i>i</i> is 0, the value is prepended to the vector. If <i>i</i> is <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), the value is appended to the vector.</p>
60810    /// <p>Example:</p>
60811    /// <pre class="cpp">
60812    ///
60813    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
60814    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"alpha"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"beta"</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="string">"delta"</span>;
60815    ///   vector<span class="operator">.</span>insert(<span class="number">2</span><span class="operator">,</span> <span class="string">"gamma"</span>);
60816    ///   <span class="comment">// vector: ["alpha", "beta", "gamma", "delta"]</span>
60817    ///
60818    /// </pre>
60819    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items at indexes <i>i</i> and above by one position further in memory. If you want a container class that provides a fast insert() function, use <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
60820    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#prepend">prepend</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
60821    #[inline(always)]
60822    #[cfg_attr(
60823        feature = "ritual_rustdoc_nightly",
60824        doc(cfg(any(
60825            cpp_lib_version = "5.11.3",
60826            cpp_lib_version = "5.12.2",
60827            cpp_lib_version = "5.13.0",
60828            cpp_lib_version = "5.14.0"
60829        )))
60830    )]
60831    #[cfg(any(
60832        any(
60833            cpp_lib_version = "5.11.3",
60834            cpp_lib_version = "5.12.2",
60835            cpp_lib_version = "5.13.0",
60836            cpp_lib_version = "5.14.0"
60837        ),
60838        feature = "ritual_rustdoc"
60839    ))]
60840    pub unsafe fn insert_2a(
60841        &self,
60842        i: ::std::os::raw::c_int,
60843        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
60844    ) {
60845        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_insert(
60846            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60847            i,
60848            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
60849                .as_raw_ptr(),
60850        )
60851    }
60852
60853    /// <p>This is an overloaded function.</p>
60854    ///
60855    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::insert(int i, int n, const Qt3DRender::QRayCasterHit& t)```</span>.
60856    ///
60857    /// <a href="http://doc.qt.io/qt-5/qvector.html#insert-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
60858    /// <p>Inserts <i>count</i> copies of <i>value</i> at index position <i>i</i> in the vector.</p>
60859    /// <p>Example:</p>
60860    /// <pre class="cpp">
60861    ///
60862    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">double</span><span class="operator">&gt;</span> vector;
60863    ///   vector <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">2.718</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">1.442</span> <span class="operator">&lt;</span><span class="operator">&lt;</span> <span class="number">0.4342</span>;
60864    ///   vector<span class="operator">.</span>insert(<span class="number">1</span><span class="operator">,</span> <span class="number">3</span><span class="operator">,</span> <span class="number">9.9</span>);
60865    ///   <span class="comment">// vector: [2.718, 9.9, 9.9, 9.9, 1.442, 0.4342]</span>
60866    ///
60867    /// </pre></div>
60868    #[inline(always)]
60869    #[cfg_attr(
60870        feature = "ritual_rustdoc_nightly",
60871        doc(cfg(any(
60872            cpp_lib_version = "5.11.3",
60873            cpp_lib_version = "5.12.2",
60874            cpp_lib_version = "5.13.0",
60875            cpp_lib_version = "5.14.0"
60876        )))
60877    )]
60878    #[cfg(any(
60879        any(
60880            cpp_lib_version = "5.11.3",
60881            cpp_lib_version = "5.12.2",
60882            cpp_lib_version = "5.13.0",
60883            cpp_lib_version = "5.14.0"
60884        ),
60885        feature = "ritual_rustdoc"
60886    ))]
60887    pub unsafe fn insert_3a(
60888        &self,
60889        i: ::std::os::raw::c_int,
60890        n: ::std::os::raw::c_int,
60891        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
60892    ) {
60893        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_insert1(
60894            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
60895            i,
60896            n,
60897            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
60898                .as_raw_ptr(),
60899        )
60900    }
60901
60902    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRayCasterHit>::isDetached() const```</span>.
60903    #[inline(always)]
60904    #[cfg_attr(
60905        feature = "ritual_rustdoc_nightly",
60906        doc(cfg(any(
60907            cpp_lib_version = "5.11.3",
60908            cpp_lib_version = "5.12.2",
60909            cpp_lib_version = "5.13.0",
60910            cpp_lib_version = "5.14.0"
60911        )))
60912    )]
60913    #[cfg(any(
60914        any(
60915            cpp_lib_version = "5.11.3",
60916            cpp_lib_version = "5.12.2",
60917            cpp_lib_version = "5.13.0",
60918            cpp_lib_version = "5.14.0"
60919        ),
60920        feature = "ritual_rustdoc"
60921    ))]
60922    pub unsafe fn is_detached(&self) -> bool {
60923        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_isDetached(
60924            self as *const crate::QVectorOfQRayCasterHit,
60925        )
60926    }
60927
60928    /// <p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
60929    ///
60930    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRayCasterHit>::isEmpty() const```</span>.
60931    ///
60932    /// <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the vector has size 0; otherwise returns <code>false</code>.</p>
60933    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
60934    #[inline(always)]
60935    #[cfg_attr(
60936        feature = "ritual_rustdoc_nightly",
60937        doc(cfg(any(
60938            cpp_lib_version = "5.11.3",
60939            cpp_lib_version = "5.12.2",
60940            cpp_lib_version = "5.13.0",
60941            cpp_lib_version = "5.14.0"
60942        )))
60943    )]
60944    #[cfg(any(
60945        any(
60946            cpp_lib_version = "5.11.3",
60947            cpp_lib_version = "5.12.2",
60948            cpp_lib_version = "5.13.0",
60949            cpp_lib_version = "5.14.0"
60950        ),
60951        feature = "ritual_rustdoc"
60952    ))]
60953    pub unsafe fn is_empty(&self) -> bool {
60954        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_isEmpty(
60955            self as *const crate::QVectorOfQRayCasterHit,
60956        )
60957    }
60958
60959    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRayCasterHit>::isSharedWith(const QVector<Qt3DRender::QRayCasterHit>& other) const```</span>.
60960    #[inline(always)]
60961    #[cfg_attr(
60962        feature = "ritual_rustdoc_nightly",
60963        doc(cfg(any(
60964            cpp_lib_version = "5.11.3",
60965            cpp_lib_version = "5.12.2",
60966            cpp_lib_version = "5.13.0",
60967            cpp_lib_version = "5.14.0"
60968        )))
60969    )]
60970    #[cfg(any(
60971        any(
60972            cpp_lib_version = "5.11.3",
60973            cpp_lib_version = "5.12.2",
60974            cpp_lib_version = "5.13.0",
60975            cpp_lib_version = "5.14.0"
60976        ),
60977        feature = "ritual_rustdoc"
60978    ))]
60979    pub unsafe fn is_shared_with(
60980        &self,
60981        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>,
60982    ) -> bool {
60983        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_isSharedWith(
60984            self as *const crate::QVectorOfQRayCasterHit,
60985            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>::cast_into(
60986                other,
60987            )
60988            .as_raw_ptr(),
60989        )
60990    }
60991
60992    /// <p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
60993    ///
60994    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::last()```</span>.
60995    ///
60996    /// <a href="http://doc.qt.io/qt-5/qvector.html#last">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a reference to the last item in the vector. This function assumes that the vector isn't empty.</p>
60997    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#first">first</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#constLast">constLast</a>().</p></div>
60998    #[inline(always)]
60999    #[cfg_attr(
61000        feature = "ritual_rustdoc_nightly",
61001        doc(cfg(any(
61002            cpp_lib_version = "5.11.3",
61003            cpp_lib_version = "5.12.2",
61004            cpp_lib_version = "5.13.0",
61005            cpp_lib_version = "5.14.0"
61006        )))
61007    )]
61008    #[cfg(any(
61009        any(
61010            cpp_lib_version = "5.11.3",
61011            cpp_lib_version = "5.12.2",
61012            cpp_lib_version = "5.13.0",
61013            cpp_lib_version = "5.14.0"
61014        ),
61015        feature = "ritual_rustdoc"
61016    ))]
61017    pub unsafe fn last_mut(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
61018        let ffi_result = {
61019            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_last(
61020                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61021            )
61022        };
61023        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
61024    }
61025
61026    /// <p>This is an overloaded function.</p>
61027    ///
61028    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit& QVector<Qt3DRender::QRayCasterHit>::last() const```</span>.
61029    ///
61030    /// <a href="http://doc.qt.io/qt-5/qvector.html#last-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
61031    #[inline(always)]
61032    #[cfg_attr(
61033        feature = "ritual_rustdoc_nightly",
61034        doc(cfg(any(
61035            cpp_lib_version = "5.11.3",
61036            cpp_lib_version = "5.12.2",
61037            cpp_lib_version = "5.13.0",
61038            cpp_lib_version = "5.14.0"
61039        )))
61040    )]
61041    #[cfg(any(
61042        any(
61043            cpp_lib_version = "5.11.3",
61044            cpp_lib_version = "5.12.2",
61045            cpp_lib_version = "5.13.0",
61046            cpp_lib_version = "5.14.0"
61047        ),
61048        feature = "ritual_rustdoc"
61049    ))]
61050    pub unsafe fn last(&self) -> ::cpp_core::Ref<crate::QRayCasterHit> {
61051        let ffi_result = {
61052            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_last1(
61053                self as *const crate::QVectorOfQRayCasterHit,
61054            )
61055        };
61056        ::cpp_core::Ref::from_raw(ffi_result as *mut crate::QRayCasterHit)
61057            .expect("attempted to construct a null Ref")
61058    }
61059
61060    /// <p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
61061    ///
61062    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRayCasterHit>::length() const```</span>.
61063    ///
61064    /// <a href="http://doc.qt.io/qt-5/qvector.html#length">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Same as <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>().</p>
61065    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
61066    /// <p>This function was introduced in  Qt 5.2.</p>
61067    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#count-1">count</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#length">QList::length</a>().</p></div>
61068    #[inline(always)]
61069    #[cfg_attr(
61070        feature = "ritual_rustdoc_nightly",
61071        doc(cfg(any(
61072            cpp_lib_version = "5.11.3",
61073            cpp_lib_version = "5.12.2",
61074            cpp_lib_version = "5.13.0",
61075            cpp_lib_version = "5.14.0"
61076        )))
61077    )]
61078    #[cfg(any(
61079        any(
61080            cpp_lib_version = "5.11.3",
61081            cpp_lib_version = "5.12.2",
61082            cpp_lib_version = "5.13.0",
61083            cpp_lib_version = "5.14.0"
61084        ),
61085        feature = "ritual_rustdoc"
61086    ))]
61087    pub unsafe fn length(&self) -> ::std::os::raw::c_int {
61088        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_length(
61089            self as *const crate::QVectorOfQRayCasterHit,
61090        )
61091    }
61092
61093    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
61094    ///
61095    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit> QVector<Qt3DRender::QRayCasterHit>::mid(int pos, int len = …) const```</span>.
61096    ///
61097    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
61098    #[inline(always)]
61099    #[cfg_attr(
61100        feature = "ritual_rustdoc_nightly",
61101        doc(cfg(any(
61102            cpp_lib_version = "5.11.3",
61103            cpp_lib_version = "5.12.2",
61104            cpp_lib_version = "5.13.0",
61105            cpp_lib_version = "5.14.0"
61106        )))
61107    )]
61108    #[cfg(any(
61109        any(
61110            cpp_lib_version = "5.11.3",
61111            cpp_lib_version = "5.12.2",
61112            cpp_lib_version = "5.13.0",
61113            cpp_lib_version = "5.14.0"
61114        ),
61115        feature = "ritual_rustdoc"
61116    ))]
61117    pub unsafe fn mid_2a(
61118        &self,
61119        pos: ::std::os::raw::c_int,
61120        len: ::std::os::raw::c_int,
61121    ) -> ::cpp_core::CppBox<crate::QVectorOfQRayCasterHit> {
61122        let ffi_result = {
61123            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_mid(
61124                self as *const crate::QVectorOfQRayCasterHit,
61125                pos,
61126                len,
61127            )
61128        };
61129        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
61130    }
61131
61132    /// <p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p>
61133    ///
61134    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit> QVector<Qt3DRender::QRayCasterHit>::mid(int pos) const```</span>.
61135    ///
61136    /// <a href="http://doc.qt.io/qt-5/qvector.html#mid">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a sub-vector which contains elements from this vector, starting at position <i>pos</i>. If <i>length</i> is -1 (the default), all elements after <i>pos</i> are included; otherwise <i>length</i> elements (or all remaining elements if there are less than <i>length</i> elements) are included.</p></div>
61137    #[inline(always)]
61138    #[cfg_attr(
61139        feature = "ritual_rustdoc_nightly",
61140        doc(cfg(any(
61141            cpp_lib_version = "5.11.3",
61142            cpp_lib_version = "5.12.2",
61143            cpp_lib_version = "5.13.0",
61144            cpp_lib_version = "5.14.0"
61145        )))
61146    )]
61147    #[cfg(any(
61148        any(
61149            cpp_lib_version = "5.11.3",
61150            cpp_lib_version = "5.12.2",
61151            cpp_lib_version = "5.13.0",
61152            cpp_lib_version = "5.14.0"
61153        ),
61154        feature = "ritual_rustdoc"
61155    ))]
61156    pub unsafe fn mid_1a(
61157        &self,
61158        pos: ::std::os::raw::c_int,
61159    ) -> ::cpp_core::CppBox<crate::QVectorOfQRayCasterHit> {
61160        let ffi_result = {
61161            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_mid1(
61162                self as *const crate::QVectorOfQRayCasterHit,
61163                pos,
61164            )
61165        };
61166        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
61167    }
61168
61169    /// <p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
61170    ///
61171    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::move(int from, int to)```</span>.
61172    ///
61173    /// <a href="http://doc.qt.io/qt-5/qvector.html#move">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Moves the item at index position <i>from</i> to index position <i>to</i>.</p>
61174    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
61175    /// <p>This function was introduced in  Qt 5.6.</p>
61176    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qlist.html#move">QList::move</a>().</p></div>
61177    #[inline(always)]
61178    #[cfg_attr(
61179        feature = "ritual_rustdoc_nightly",
61180        doc(cfg(any(
61181            cpp_lib_version = "5.11.3",
61182            cpp_lib_version = "5.12.2",
61183            cpp_lib_version = "5.13.0",
61184            cpp_lib_version = "5.14.0"
61185        )))
61186    )]
61187    #[cfg(any(
61188        any(
61189            cpp_lib_version = "5.11.3",
61190            cpp_lib_version = "5.12.2",
61191            cpp_lib_version = "5.13.0",
61192            cpp_lib_version = "5.14.0"
61193        ),
61194        feature = "ritual_rustdoc"
61195    ))]
61196    pub unsafe fn move_(&self, from: ::std::os::raw::c_int, to: ::std::os::raw::c_int) {
61197        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_move(
61198            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61199            from,
61200            to,
61201        )
61202    }
61203
61204    /// <p>Constructs an empty vector.</p>
61205    ///
61206    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRayCasterHit>::QVector()```</span>.
61207    ///
61208    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs an empty vector.</p>
61209    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
61210    #[inline(always)]
61211    #[cfg_attr(
61212        feature = "ritual_rustdoc_nightly",
61213        doc(cfg(any(
61214            cpp_lib_version = "5.11.3",
61215            cpp_lib_version = "5.12.2",
61216            cpp_lib_version = "5.13.0",
61217            cpp_lib_version = "5.14.0"
61218        )))
61219    )]
61220    #[cfg(any(
61221        any(
61222            cpp_lib_version = "5.11.3",
61223            cpp_lib_version = "5.12.2",
61224            cpp_lib_version = "5.13.0",
61225            cpp_lib_version = "5.14.0"
61226        ),
61227        feature = "ritual_rustdoc"
61228    ))]
61229    pub unsafe fn new_0a() -> ::cpp_core::CppBox<crate::QVectorOfQRayCasterHit> {
61230        let ffi_result =
61231            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_QVector() };
61232        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
61233    }
61234
61235    /// <p>Constructs a vector with an initial size of <i>size</i> elements.</p>
61236    ///
61237    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRayCasterHit>::QVector(int size)```</span>.
61238    ///
61239    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements.</p>
61240    /// <p>The elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>.</p>
61241    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
61242    #[inline(always)]
61243    #[cfg_attr(
61244        feature = "ritual_rustdoc_nightly",
61245        doc(cfg(any(
61246            cpp_lib_version = "5.11.3",
61247            cpp_lib_version = "5.12.2",
61248            cpp_lib_version = "5.13.0",
61249            cpp_lib_version = "5.14.0"
61250        )))
61251    )]
61252    #[cfg(any(
61253        any(
61254            cpp_lib_version = "5.11.3",
61255            cpp_lib_version = "5.12.2",
61256            cpp_lib_version = "5.13.0",
61257            cpp_lib_version = "5.14.0"
61258        ),
61259        feature = "ritual_rustdoc"
61260    ))]
61261    pub unsafe fn new_1a(
61262        size: ::std::os::raw::c_int,
61263    ) -> ::cpp_core::CppBox<crate::QVectorOfQRayCasterHit> {
61264        let ffi_result =
61265            { crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_QVector1(size) };
61266        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
61267    }
61268
61269    /// <p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
61270    ///
61271    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRayCasterHit>::QVector(int size, const Qt3DRender::QRayCasterHit& t)```</span>.
61272    ///
61273    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-2">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a vector with an initial size of <i>size</i> elements. Each element is initialized with <i>value</i>.</p>
61274    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
61275    #[inline(always)]
61276    #[cfg_attr(
61277        feature = "ritual_rustdoc_nightly",
61278        doc(cfg(any(
61279            cpp_lib_version = "5.11.3",
61280            cpp_lib_version = "5.12.2",
61281            cpp_lib_version = "5.13.0",
61282            cpp_lib_version = "5.14.0"
61283        )))
61284    )]
61285    #[cfg(any(
61286        any(
61287            cpp_lib_version = "5.11.3",
61288            cpp_lib_version = "5.12.2",
61289            cpp_lib_version = "5.13.0",
61290            cpp_lib_version = "5.14.0"
61291        ),
61292        feature = "ritual_rustdoc"
61293    ))]
61294    pub unsafe fn new_2a(
61295        size: ::std::os::raw::c_int,
61296        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
61297    ) -> ::cpp_core::CppBox<crate::QVectorOfQRayCasterHit> {
61298        let ffi_result = {
61299            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_QVector2(
61300                size,
61301                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
61302                    .as_raw_ptr(),
61303            )
61304        };
61305        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
61306    }
61307
61308    /// <p>Constructs a copy of <i>other</i>.</p>
61309    ///
61310    /// Calls C++ function: <span style='color: green;'>```[constructor] void QVector<Qt3DRender::QRayCasterHit>::QVector(const QVector<Qt3DRender::QRayCasterHit>& v)```</span>.
61311    ///
61312    /// <a href="http://doc.qt.io/qt-5/qvector.html#QVector-3">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Constructs a copy of <i>other</i>.</p>
61313    /// <p>This operation takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">constant time</a>, because <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> is <a href="http://doc.qt.io/qt-5/implicit-sharing.html">implicitly shared</a>. This makes returning a <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes <a href="http://doc.qt.io/qt-5/containers.html#algorithmic-complexity">linear time</a>.</p>
61314    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-eq">operator=</a>().</p></div>
61315    #[inline(always)]
61316    #[cfg_attr(
61317        feature = "ritual_rustdoc_nightly",
61318        doc(cfg(any(
61319            cpp_lib_version = "5.11.3",
61320            cpp_lib_version = "5.12.2",
61321            cpp_lib_version = "5.13.0",
61322            cpp_lib_version = "5.14.0"
61323        )))
61324    )]
61325    #[cfg(any(
61326        any(
61327            cpp_lib_version = "5.11.3",
61328            cpp_lib_version = "5.12.2",
61329            cpp_lib_version = "5.13.0",
61330            cpp_lib_version = "5.14.0"
61331        ),
61332        feature = "ritual_rustdoc"
61333    ))]
61334    pub unsafe fn new_copy(
61335        v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>,
61336    ) -> ::cpp_core::CppBox<crate::QVectorOfQRayCasterHit> {
61337        let ffi_result = {
61338            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_QVector3(
61339                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>::cast_into(
61340                    v,
61341                )
61342                .as_raw_ptr(),
61343            )
61344        };
61345        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
61346    }
61347
61348    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p>
61349    ///
61350    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::pop_back()```</span>.
61351    ///
61352    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
61353    #[inline(always)]
61354    #[cfg_attr(
61355        feature = "ritual_rustdoc_nightly",
61356        doc(cfg(any(
61357            cpp_lib_version = "5.11.3",
61358            cpp_lib_version = "5.12.2",
61359            cpp_lib_version = "5.13.0",
61360            cpp_lib_version = "5.14.0"
61361        )))
61362    )]
61363    #[cfg(any(
61364        any(
61365            cpp_lib_version = "5.11.3",
61366            cpp_lib_version = "5.12.2",
61367            cpp_lib_version = "5.13.0",
61368            cpp_lib_version = "5.14.0"
61369        ),
61370        feature = "ritual_rustdoc"
61371    ))]
61372    pub unsafe fn pop_back(&self) {
61373        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_pop_back(
61374            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61375        )
61376    }
61377
61378    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p>
61379    ///
61380    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::pop_front()```</span>.
61381    ///
61382    /// <a href="http://doc.qt.io/qt-5/qvector.html#pop_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
61383    #[inline(always)]
61384    #[cfg_attr(
61385        feature = "ritual_rustdoc_nightly",
61386        doc(cfg(any(
61387            cpp_lib_version = "5.11.3",
61388            cpp_lib_version = "5.12.2",
61389            cpp_lib_version = "5.13.0",
61390            cpp_lib_version = "5.14.0"
61391        )))
61392    )]
61393    #[cfg(any(
61394        any(
61395            cpp_lib_version = "5.11.3",
61396            cpp_lib_version = "5.12.2",
61397            cpp_lib_version = "5.13.0",
61398            cpp_lib_version = "5.14.0"
61399        ),
61400        feature = "ritual_rustdoc"
61401    ))]
61402    pub unsafe fn pop_front(&self) {
61403        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_pop_front(
61404            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61405        )
61406    }
61407
61408    /// <p>Inserts <i>value</i> at the beginning of the vector.</p>
61409    ///
61410    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::prepend(const Qt3DRender::QRayCasterHit& t)```</span>.
61411    ///
61412    /// <a href="http://doc.qt.io/qt-5/qvector.html#prepend">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Inserts <i>value</i> at the beginning of the vector.</p>
61413    /// <p>Example:</p>
61414    /// <pre class="cpp">
61415    ///
61416    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type"><a href="http://doc.qt.io/qt-5/qstring.html">QString</a></span><span class="operator">&gt;</span> vector;
61417    ///   vector<span class="operator">.</span>prepend(<span class="string">"one"</span>);
61418    ///   vector<span class="operator">.</span>prepend(<span class="string">"two"</span>);
61419    ///   vector<span class="operator">.</span>prepend(<span class="string">"three"</span>);
61420    ///   <span class="comment">// vector: ["three", "two", "one"]</span>
61421    ///
61422    /// </pre>
61423    /// <p>This is the same as vector.insert(0, <i>value</i>).</p>
61424    /// <p>For large vectors, this operation can be slow (<a href="http://doc.qt.io/qt-5/containers.html#linear-time">linear time</a>), because it requires moving all the items in the vector by one position further in memory. If you want a container class that provides a fast prepend() function, use <a href="http://doc.qt.io/qt-5/qlist.html">QList</a> or <a href="http://doc.qt.io/qt-5/qlinkedlist.html">QLinkedList</a> instead.</p>
61425    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>().</p></div>
61426    #[inline(always)]
61427    #[cfg_attr(
61428        feature = "ritual_rustdoc_nightly",
61429        doc(cfg(any(
61430            cpp_lib_version = "5.11.3",
61431            cpp_lib_version = "5.12.2",
61432            cpp_lib_version = "5.13.0",
61433            cpp_lib_version = "5.14.0"
61434        )))
61435    )]
61436    #[cfg(any(
61437        any(
61438            cpp_lib_version = "5.11.3",
61439            cpp_lib_version = "5.12.2",
61440            cpp_lib_version = "5.13.0",
61441            cpp_lib_version = "5.14.0"
61442        ),
61443        feature = "ritual_rustdoc"
61444    ))]
61445    pub unsafe fn prepend(
61446        &self,
61447        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
61448    ) {
61449        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_prepend(
61450            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61451            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
61452                .as_raw_ptr(),
61453        )
61454    }
61455
61456    /// <p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p>
61457    ///
61458    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::push_back(const Qt3DRender::QRayCasterHit& t)```</span>.
61459    ///
61460    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_back">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to append(<i>value</i>).</p></div>
61461    #[inline(always)]
61462    #[cfg_attr(
61463        feature = "ritual_rustdoc_nightly",
61464        doc(cfg(any(
61465            cpp_lib_version = "5.11.3",
61466            cpp_lib_version = "5.12.2",
61467            cpp_lib_version = "5.13.0",
61468            cpp_lib_version = "5.14.0"
61469        )))
61470    )]
61471    #[cfg(any(
61472        any(
61473            cpp_lib_version = "5.11.3",
61474            cpp_lib_version = "5.12.2",
61475            cpp_lib_version = "5.13.0",
61476            cpp_lib_version = "5.14.0"
61477        ),
61478        feature = "ritual_rustdoc"
61479    ))]
61480    pub unsafe fn push_back(
61481        &self,
61482        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
61483    ) {
61484        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_push_back(
61485            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61486            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
61487                .as_raw_ptr(),
61488        )
61489    }
61490
61491    /// <p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p>
61492    ///
61493    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::push_front(const Qt3DRender::QRayCasterHit& t)```</span>.
61494    ///
61495    /// <a href="http://doc.qt.io/qt-5/qvector.html#push_front">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to prepend(<i>value</i>).</p></div>
61496    #[inline(always)]
61497    #[cfg_attr(
61498        feature = "ritual_rustdoc_nightly",
61499        doc(cfg(any(
61500            cpp_lib_version = "5.11.3",
61501            cpp_lib_version = "5.12.2",
61502            cpp_lib_version = "5.13.0",
61503            cpp_lib_version = "5.14.0"
61504        )))
61505    )]
61506    #[cfg(any(
61507        any(
61508            cpp_lib_version = "5.11.3",
61509            cpp_lib_version = "5.12.2",
61510            cpp_lib_version = "5.13.0",
61511            cpp_lib_version = "5.14.0"
61512        ),
61513        feature = "ritual_rustdoc"
61514    ))]
61515    pub unsafe fn push_front(
61516        &self,
61517        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
61518    ) {
61519        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_push_front(
61520            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61521            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
61522                .as_raw_ptr(),
61523        )
61524    }
61525
61526    /// <p>This is an overloaded function.</p>
61527    ///
61528    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::remove(int i)```</span>.
61529    ///
61530    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
61531    /// <p>Removes the element at index position <i>i</i>.</p>
61532    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
61533    #[inline(always)]
61534    #[cfg_attr(
61535        feature = "ritual_rustdoc_nightly",
61536        doc(cfg(any(
61537            cpp_lib_version = "5.11.3",
61538            cpp_lib_version = "5.12.2",
61539            cpp_lib_version = "5.13.0",
61540            cpp_lib_version = "5.14.0"
61541        )))
61542    )]
61543    #[cfg(any(
61544        any(
61545            cpp_lib_version = "5.11.3",
61546            cpp_lib_version = "5.12.2",
61547            cpp_lib_version = "5.13.0",
61548            cpp_lib_version = "5.14.0"
61549        ),
61550        feature = "ritual_rustdoc"
61551    ))]
61552    pub unsafe fn remove_1a(&self, i: ::std::os::raw::c_int) {
61553        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_remove(
61554            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61555            i,
61556        )
61557    }
61558
61559    /// <p>This is an overloaded function.</p>
61560    ///
61561    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::remove(int i, int n)```</span>.
61562    ///
61563    /// <a href="http://doc.qt.io/qt-5/qvector.html#remove-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
61564    /// <p>Removes <i>count</i> elements from the middle of the vector, starting at index position <i>i</i>.</p>
61565    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#insert">insert</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#replace">replace</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#fill">fill</a>().</p></div>
61566    #[inline(always)]
61567    #[cfg_attr(
61568        feature = "ritual_rustdoc_nightly",
61569        doc(cfg(any(
61570            cpp_lib_version = "5.11.3",
61571            cpp_lib_version = "5.12.2",
61572            cpp_lib_version = "5.13.0",
61573            cpp_lib_version = "5.14.0"
61574        )))
61575    )]
61576    #[cfg(any(
61577        any(
61578            cpp_lib_version = "5.11.3",
61579            cpp_lib_version = "5.12.2",
61580            cpp_lib_version = "5.13.0",
61581            cpp_lib_version = "5.14.0"
61582        ),
61583        feature = "ritual_rustdoc"
61584    ))]
61585    pub unsafe fn remove_2a(&self, i: ::std::os::raw::c_int, n: ::std::os::raw::c_int) {
61586        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_remove1(
61587            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61588            i,
61589            n,
61590        )
61591    }
61592
61593    /// <p>Removes the element at index position <i>i</i>. Equivalent to</p>
61594    ///
61595    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::removeAt(int i)```</span>.
61596    ///
61597    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i>. Equivalent to</p>
61598    /// <pre class="cpp">
61599    ///
61600    ///   remove(i);
61601    ///
61602    /// </pre>
61603    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
61604    /// <p>This function was introduced in  Qt 5.2.</p>
61605    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>() and <a href="http://doc.qt.io/qt-5/qlist.html#removeAt">QList::removeAt</a>().</p></div>
61606    #[inline(always)]
61607    #[cfg_attr(
61608        feature = "ritual_rustdoc_nightly",
61609        doc(cfg(any(
61610            cpp_lib_version = "5.11.3",
61611            cpp_lib_version = "5.12.2",
61612            cpp_lib_version = "5.13.0",
61613            cpp_lib_version = "5.14.0"
61614        )))
61615    )]
61616    #[cfg(any(
61617        any(
61618            cpp_lib_version = "5.11.3",
61619            cpp_lib_version = "5.12.2",
61620            cpp_lib_version = "5.13.0",
61621            cpp_lib_version = "5.14.0"
61622        ),
61623        feature = "ritual_rustdoc"
61624    ))]
61625    pub unsafe fn remove_at(&self, i: ::std::os::raw::c_int) {
61626        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_removeAt(
61627            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61628            i,
61629        )
61630    }
61631
61632    /// <p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
61633    ///
61634    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::removeFirst()```</span>.
61635    ///
61636    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector. Calling this function is equivalent to calling remove(0). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
61637    /// <p>This function was introduced in  Qt 5.1.</p>
61638    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
61639    #[inline(always)]
61640    #[cfg_attr(
61641        feature = "ritual_rustdoc_nightly",
61642        doc(cfg(any(
61643            cpp_lib_version = "5.11.3",
61644            cpp_lib_version = "5.12.2",
61645            cpp_lib_version = "5.13.0",
61646            cpp_lib_version = "5.14.0"
61647        )))
61648    )]
61649    #[cfg(any(
61650        any(
61651            cpp_lib_version = "5.11.3",
61652            cpp_lib_version = "5.12.2",
61653            cpp_lib_version = "5.13.0",
61654            cpp_lib_version = "5.14.0"
61655        ),
61656        feature = "ritual_rustdoc"
61657    ))]
61658    pub unsafe fn remove_first(&self) {
61659        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_removeFirst(
61660            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61661        )
61662    }
61663
61664    /// <p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
61665    ///
61666    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::removeLast()```</span>.
61667    ///
61668    /// <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the vector. Calling this function is equivalent to calling remove(<a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>() - 1). The vector must not be empty. If the vector can be empty, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
61669    /// <p>This function was introduced in  Qt 5.1.</p>
61670    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>(), and <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>().</p></div>
61671    #[inline(always)]
61672    #[cfg_attr(
61673        feature = "ritual_rustdoc_nightly",
61674        doc(cfg(any(
61675            cpp_lib_version = "5.11.3",
61676            cpp_lib_version = "5.12.2",
61677            cpp_lib_version = "5.13.0",
61678            cpp_lib_version = "5.14.0"
61679        )))
61680    )]
61681    #[cfg(any(
61682        any(
61683            cpp_lib_version = "5.11.3",
61684            cpp_lib_version = "5.12.2",
61685            cpp_lib_version = "5.13.0",
61686            cpp_lib_version = "5.14.0"
61687        ),
61688        feature = "ritual_rustdoc"
61689    ))]
61690    pub unsafe fn remove_last(&self) {
61691        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_removeLast(
61692            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61693        )
61694    }
61695
61696    /// <p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
61697    ///
61698    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::replace(int i, const Qt3DRender::QRayCasterHit& t)```</span>.
61699    ///
61700    /// <a href="http://doc.qt.io/qt-5/qvector.html#replace">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Replaces the item at index position <i>i</i> with <i>value</i>.</p>
61701    /// <p><i>i</i> must be a valid index position in the vector (i.e., 0 &lt;= <i>i</i> &lt; <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>()).</p>
61702    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#remove">remove</a>().</p></div>
61703    #[inline(always)]
61704    #[cfg_attr(
61705        feature = "ritual_rustdoc_nightly",
61706        doc(cfg(any(
61707            cpp_lib_version = "5.11.3",
61708            cpp_lib_version = "5.12.2",
61709            cpp_lib_version = "5.13.0",
61710            cpp_lib_version = "5.14.0"
61711        )))
61712    )]
61713    #[cfg(any(
61714        any(
61715            cpp_lib_version = "5.11.3",
61716            cpp_lib_version = "5.12.2",
61717            cpp_lib_version = "5.13.0",
61718            cpp_lib_version = "5.14.0"
61719        ),
61720        feature = "ritual_rustdoc"
61721    ))]
61722    pub unsafe fn replace(
61723        &self,
61724        i: ::std::os::raw::c_int,
61725        t: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
61726    ) {
61727        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_replace(
61728            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61729            i,
61730            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(t)
61731                .as_raw_ptr(),
61732        )
61733    }
61734
61735    /// <p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
61736    ///
61737    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::reserve(int size)```</span>.
61738    ///
61739    /// <a href="http://doc.qt.io/qt-5/qvector.html#reserve">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Attempts to allocate memory for at least <i>size</i> elements. If you know in advance how large the vector will be, you should call this function to prevent reallocations and memory fragmentation.</p>
61740    /// <p>If <i>size</i> is an underestimate, the worst that will happen is that the <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> will be a bit slower. If <i>size</i> is an overestimate, you may have used more memory than the normal <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a> growth strategy would have allocated—or you may have used less.</p>
61741    /// <p>An alternative to reserve() is calling <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>(). Whether or not that is faster than reserve() depends on the element type, because <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() default-constructs all elements, and requires assignment to existing entries rather than calling <a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>(), which copy- or move-constructs. For simple types, like <code>int</code> or <code>double</code>, <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() is typically faster, but for anything more complex, you should prefer reserve().</p>
61742    /// <p><b>Warning:</b> If the size passed to <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>() was underestimated, you run out of allocated space and into undefined behavior. This problem does not exist with reserve(), because it treats the size as just a hint.</p>
61743    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
61744    #[inline(always)]
61745    #[cfg_attr(
61746        feature = "ritual_rustdoc_nightly",
61747        doc(cfg(any(
61748            cpp_lib_version = "5.11.3",
61749            cpp_lib_version = "5.12.2",
61750            cpp_lib_version = "5.13.0",
61751            cpp_lib_version = "5.14.0"
61752        )))
61753    )]
61754    #[cfg(any(
61755        any(
61756            cpp_lib_version = "5.11.3",
61757            cpp_lib_version = "5.12.2",
61758            cpp_lib_version = "5.13.0",
61759            cpp_lib_version = "5.14.0"
61760        ),
61761        feature = "ritual_rustdoc"
61762    ))]
61763    pub unsafe fn reserve(&self, size: ::std::os::raw::c_int) {
61764        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_reserve(
61765            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61766            size,
61767        )
61768    }
61769
61770    /// <p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
61771    ///
61772    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::resize(int size)```</span>.
61773    ///
61774    /// <a href="http://doc.qt.io/qt-5/qvector.html#resize">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Sets the size of the vector to <i>size</i>. If <i>size</i> is greater than the current size, elements are added to the end; the new elements are initialized with a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If <i>size</i> is less than the current size, elements are removed from the end.</p>
61775    /// <p>Since Qt 5.6, resize() doesn't shrink the capacity anymore. To shed excess capacity, use <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
61776    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p></div>
61777    #[inline(always)]
61778    #[cfg_attr(
61779        feature = "ritual_rustdoc_nightly",
61780        doc(cfg(any(
61781            cpp_lib_version = "5.11.3",
61782            cpp_lib_version = "5.12.2",
61783            cpp_lib_version = "5.13.0",
61784            cpp_lib_version = "5.14.0"
61785        )))
61786    )]
61787    #[cfg(any(
61788        any(
61789            cpp_lib_version = "5.11.3",
61790            cpp_lib_version = "5.12.2",
61791            cpp_lib_version = "5.13.0",
61792            cpp_lib_version = "5.14.0"
61793        ),
61794        feature = "ritual_rustdoc"
61795    ))]
61796    pub unsafe fn resize(&self, size: ::std::os::raw::c_int) {
61797        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_resize(
61798            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61799            size,
61800        )
61801    }
61802
61803    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::setSharable(bool sharable)```</span>.
61804    #[inline(always)]
61805    #[cfg_attr(
61806        feature = "ritual_rustdoc_nightly",
61807        doc(cfg(any(
61808            cpp_lib_version = "5.11.3",
61809            cpp_lib_version = "5.12.2",
61810            cpp_lib_version = "5.13.0",
61811            cpp_lib_version = "5.14.0"
61812        )))
61813    )]
61814    #[cfg(any(
61815        any(
61816            cpp_lib_version = "5.11.3",
61817            cpp_lib_version = "5.12.2",
61818            cpp_lib_version = "5.13.0",
61819            cpp_lib_version = "5.14.0"
61820        ),
61821        feature = "ritual_rustdoc"
61822    ))]
61823    pub unsafe fn set_sharable(&self, sharable: bool) {
61824        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_setSharable(
61825            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61826            sharable,
61827        )
61828    }
61829
61830    /// <p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
61831    ///
61832    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::shrink_to_fit()```</span>.
61833    ///
61834    /// <a href="http://doc.qt.io/qt-5/qvector.html#shrink_to_fit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This function is provided for STL compatibility. It is equivalent to <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">squeeze</a>().</p>
61835    /// <p>This function was introduced in  Qt 5.10.</p></div>
61836    #[inline(always)]
61837    #[cfg_attr(
61838        feature = "ritual_rustdoc_nightly",
61839        doc(cfg(any(
61840            cpp_lib_version = "5.11.3",
61841            cpp_lib_version = "5.12.2",
61842            cpp_lib_version = "5.13.0",
61843            cpp_lib_version = "5.14.0"
61844        )))
61845    )]
61846    #[cfg(any(
61847        any(
61848            cpp_lib_version = "5.11.3",
61849            cpp_lib_version = "5.12.2",
61850            cpp_lib_version = "5.13.0",
61851            cpp_lib_version = "5.14.0"
61852        ),
61853        feature = "ritual_rustdoc"
61854    ))]
61855    pub unsafe fn shrink_to_fit(&self) {
61856        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_shrink_to_fit(
61857            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61858        )
61859    }
61860
61861    /// <p>Returns the number of items in the vector.</p>
61862    ///
61863    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRayCasterHit>::size() const```</span>.
61864    ///
61865    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
61866    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
61867    #[inline(always)]
61868    #[cfg_attr(
61869        feature = "ritual_rustdoc_nightly",
61870        doc(cfg(any(
61871            cpp_lib_version = "5.11.3",
61872            cpp_lib_version = "5.12.2",
61873            cpp_lib_version = "5.13.0",
61874            cpp_lib_version = "5.14.0"
61875        )))
61876    )]
61877    #[cfg(any(
61878        any(
61879            cpp_lib_version = "5.11.3",
61880            cpp_lib_version = "5.12.2",
61881            cpp_lib_version = "5.13.0",
61882            cpp_lib_version = "5.14.0"
61883        ),
61884        feature = "ritual_rustdoc"
61885    ))]
61886    pub unsafe fn size(&self) -> ::std::os::raw::c_int {
61887        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_size(
61888            self as *const crate::QVectorOfQRayCasterHit,
61889        )
61890    }
61891
61892    /// <p>Releases any memory not required to store the items.</p>
61893    ///
61894    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::squeeze()```</span>.
61895    ///
61896    /// <a href="http://doc.qt.io/qt-5/qvector.html#squeeze">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Releases any memory not required to store the items.</p>
61897    /// <p>The sole purpose of this function is to provide a means of fine tuning <a href="http://doc.qt.io/qt-5/qvector.html">QVector</a>'s memory usage. In general, you will rarely ever need to call this function.</p>
61898    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#reserve">reserve</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#capacity">capacity</a>().</p></div>
61899    #[inline(always)]
61900    #[cfg_attr(
61901        feature = "ritual_rustdoc_nightly",
61902        doc(cfg(any(
61903            cpp_lib_version = "5.11.3",
61904            cpp_lib_version = "5.12.2",
61905            cpp_lib_version = "5.13.0",
61906            cpp_lib_version = "5.14.0"
61907        )))
61908    )]
61909    #[cfg(any(
61910        any(
61911            cpp_lib_version = "5.11.3",
61912            cpp_lib_version = "5.12.2",
61913            cpp_lib_version = "5.13.0",
61914            cpp_lib_version = "5.14.0"
61915        ),
61916        feature = "ritual_rustdoc"
61917    ))]
61918    pub unsafe fn squeeze(&self) {
61919        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_squeeze(
61920            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61921        )
61922    }
61923
61924    /// <p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
61925    ///
61926    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::swap(QVector<Qt3DRender::QRayCasterHit>& other)```</span>.
61927    ///
61928    /// <a href="http://doc.qt.io/qt-5/qvector.html#swap">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Swaps vector <i>other</i> with this vector. This operation is very fast and never fails.</p>
61929    /// <p>This function was introduced in  Qt 4.8.</p></div>
61930    #[inline(always)]
61931    #[cfg_attr(
61932        feature = "ritual_rustdoc_nightly",
61933        doc(cfg(any(
61934            cpp_lib_version = "5.11.3",
61935            cpp_lib_version = "5.12.2",
61936            cpp_lib_version = "5.13.0",
61937            cpp_lib_version = "5.14.0"
61938        )))
61939    )]
61940    #[cfg(any(
61941        any(
61942            cpp_lib_version = "5.11.3",
61943            cpp_lib_version = "5.12.2",
61944            cpp_lib_version = "5.13.0",
61945            cpp_lib_version = "5.14.0"
61946        ),
61947        feature = "ritual_rustdoc"
61948    ))]
61949    pub unsafe fn swap(
61950        &self,
61951        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>,
61952    ) {
61953        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_swap(
61954            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61955            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>::cast_into(other)
61956                .as_raw_ptr() as *mut crate::QVectorOfQRayCasterHit,
61957        )
61958    }
61959
61960    /// <p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
61961    ///
61962    /// Calls C++ function: <span style='color: green;'>```void QVector<Qt3DRender::QRayCasterHit>::swapItemsAt(int i, int j)```</span>.
61963    ///
61964    /// <a href="http://doc.qt.io/qt-5/qvector.html#swapItemsAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Exchange the item at index position <i>i</i> with the item at index position <i>j</i>. This function assumes that both <i>i</i> and <i>j</i> are at least 0 but less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>(). To avoid failure, test that both <i>i</i> and <i>j</i> are at least 0 and less than <a href="http://doc.qt.io/qt-5/qvector.html#size">size</a>().</p>
61965    /// <p>This function was introduced in  Qt 5.14.</p></div>
61966    #[inline(always)]
61967    #[cfg_attr(
61968        feature = "ritual_rustdoc_nightly",
61969        doc(cfg(cpp_lib_version = "5.14.0"))
61970    )]
61971    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
61972    pub unsafe fn swap_items_at(&self, i: ::std::os::raw::c_int, j: ::std::os::raw::c_int) {
61973        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_swapItemsAt(
61974            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
61975            i,
61976            j,
61977        )
61978    }
61979
61980    /// <p>Removes the element at index position <i>i</i> and returns it.</p>
61981    ///
61982    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit QVector<Qt3DRender::QRayCasterHit>::takeAt(int i)```</span>.
61983    ///
61984    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeAt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the element at index position <i>i</i> and returns it.</p>
61985    /// <p>Equivalent to</p>
61986    /// <pre class="cpp">
61987    ///
61988    ///   T t <span class="operator">=</span> at(i);
61989    ///   remove(i);
61990    ///   <span class="keyword">return</span> t;
61991    ///
61992    /// </pre>
61993    /// <p>Provided for compatibility with <a href="http://doc.qt.io/qt-5/qlist.html">QList</a>.</p>
61994    /// <p>This function was introduced in  Qt 5.2.</p>
61995    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>(), <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>(), and <a href="http://doc.qt.io/qt-5/qlist.html#takeAt">QList::takeAt</a>().</p></div>
61996    #[inline(always)]
61997    #[cfg_attr(
61998        feature = "ritual_rustdoc_nightly",
61999        doc(cfg(any(
62000            cpp_lib_version = "5.11.3",
62001            cpp_lib_version = "5.12.2",
62002            cpp_lib_version = "5.13.0",
62003            cpp_lib_version = "5.14.0"
62004        )))
62005    )]
62006    #[cfg(any(
62007        any(
62008            cpp_lib_version = "5.11.3",
62009            cpp_lib_version = "5.12.2",
62010            cpp_lib_version = "5.13.0",
62011            cpp_lib_version = "5.14.0"
62012        ),
62013        feature = "ritual_rustdoc"
62014    ))]
62015    pub unsafe fn take_at(
62016        &self,
62017        i: ::std::os::raw::c_int,
62018    ) -> ::cpp_core::CppBox<crate::QRayCasterHit> {
62019        let ffi_result = {
62020            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_takeAt(
62021                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
62022                i,
62023            )
62024        };
62025        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62026    }
62027
62028    /// <p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
62029    ///
62030    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit QVector<Qt3DRender::QRayCasterHit>::takeFirst()```</span>.
62031    ///
62032    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the first item in the vector and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
62033    /// <p>This function was introduced in  Qt 5.1.</p>
62034    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeLast">takeLast</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeFirst">removeFirst</a>().</p></div>
62035    #[inline(always)]
62036    #[cfg_attr(
62037        feature = "ritual_rustdoc_nightly",
62038        doc(cfg(any(
62039            cpp_lib_version = "5.11.3",
62040            cpp_lib_version = "5.12.2",
62041            cpp_lib_version = "5.13.0",
62042            cpp_lib_version = "5.14.0"
62043        )))
62044    )]
62045    #[cfg(any(
62046        any(
62047            cpp_lib_version = "5.11.3",
62048            cpp_lib_version = "5.12.2",
62049            cpp_lib_version = "5.13.0",
62050            cpp_lib_version = "5.14.0"
62051        ),
62052        feature = "ritual_rustdoc"
62053    ))]
62054    pub unsafe fn take_first(&self) -> ::cpp_core::CppBox<crate::QRayCasterHit> {
62055        let ffi_result = {
62056            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_takeFirst(
62057                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
62058            )
62059        };
62060        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62061    }
62062
62063    /// <p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
62064    ///
62065    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit QVector<Qt3DRender::QRayCasterHit>::takeLast()```</span>.
62066    ///
62067    /// <a href="http://doc.qt.io/qt-5/qvector.html#takeLast">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Removes the last item in the list and returns it. This function assumes the vector is not empty. To avoid failure, call <a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() before calling this function.</p>
62068    /// <p>If you don't use the return value, <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>() is more efficient.</p>
62069    /// <p>This function was introduced in  Qt 5.1.</p>
62070    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#takeFirst">takeFirst</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#removeLast">removeLast</a>().</p></div>
62071    #[inline(always)]
62072    #[cfg_attr(
62073        feature = "ritual_rustdoc_nightly",
62074        doc(cfg(any(
62075            cpp_lib_version = "5.11.3",
62076            cpp_lib_version = "5.12.2",
62077            cpp_lib_version = "5.13.0",
62078            cpp_lib_version = "5.14.0"
62079        )))
62080    )]
62081    #[cfg(any(
62082        any(
62083            cpp_lib_version = "5.11.3",
62084            cpp_lib_version = "5.12.2",
62085            cpp_lib_version = "5.13.0",
62086            cpp_lib_version = "5.14.0"
62087        ),
62088        feature = "ritual_rustdoc"
62089    ))]
62090    pub unsafe fn take_last(&self) -> ::cpp_core::CppBox<crate::QRayCasterHit> {
62091        let ffi_result = {
62092            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_takeLast(
62093                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
62094            )
62095        };
62096        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62097    }
62098
62099    /// <p>Returns the value at index position <i>i</i> in the vector.</p>
62100    ///
62101    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit QVector<Qt3DRender::QRayCasterHit>::value(int i) const```</span>.
62102    ///
62103    /// <a href="http://doc.qt.io/qt-5/qvector.html#value">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the value at index position <i>i</i> in the vector.</p>
62104    /// <p>If the index <i>i</i> is out of bounds, the function returns a <a href="http://doc.qt.io/qt-5/containers.html#default-constructed-value">default-constructed value</a>. If you are certain that <i>i</i> is within bounds, you can use <a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() instead, which is slightly faster.</p>
62105    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#at">at</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
62106    #[inline(always)]
62107    #[cfg_attr(
62108        feature = "ritual_rustdoc_nightly",
62109        doc(cfg(any(
62110            cpp_lib_version = "5.11.3",
62111            cpp_lib_version = "5.12.2",
62112            cpp_lib_version = "5.13.0",
62113            cpp_lib_version = "5.14.0"
62114        )))
62115    )]
62116    #[cfg(any(
62117        any(
62118            cpp_lib_version = "5.11.3",
62119            cpp_lib_version = "5.12.2",
62120            cpp_lib_version = "5.13.0",
62121            cpp_lib_version = "5.14.0"
62122        ),
62123        feature = "ritual_rustdoc"
62124    ))]
62125    pub unsafe fn value_1a(
62126        &self,
62127        i: ::std::os::raw::c_int,
62128    ) -> ::cpp_core::CppBox<crate::QRayCasterHit> {
62129        let ffi_result = {
62130            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_value(
62131                self as *const crate::QVectorOfQRayCasterHit,
62132                i,
62133            )
62134        };
62135        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62136    }
62137
62138    /// <p>This is an overloaded function.</p>
62139    ///
62140    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit QVector<Qt3DRender::QRayCasterHit>::value(int i, const Qt3DRender::QRayCasterHit& defaultValue) const```</span>.
62141    ///
62142    /// <a href="http://doc.qt.io/qt-5/qvector.html#value-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p>
62143    /// <p>If the index <i>i</i> is out of bounds, the function returns <i>defaultValue</i>.</p></div>
62144    #[inline(always)]
62145    #[cfg_attr(
62146        feature = "ritual_rustdoc_nightly",
62147        doc(cfg(any(
62148            cpp_lib_version = "5.11.3",
62149            cpp_lib_version = "5.12.2",
62150            cpp_lib_version = "5.13.0",
62151            cpp_lib_version = "5.14.0"
62152        )))
62153    )]
62154    #[cfg(any(
62155        any(
62156            cpp_lib_version = "5.11.3",
62157            cpp_lib_version = "5.12.2",
62158            cpp_lib_version = "5.13.0",
62159            cpp_lib_version = "5.14.0"
62160        ),
62161        feature = "ritual_rustdoc"
62162    ))]
62163    pub unsafe fn value_2a(
62164        &self,
62165        i: ::std::os::raw::c_int,
62166        default_value: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QRayCasterHit>>,
62167    ) -> ::cpp_core::CppBox<crate::QRayCasterHit> {
62168        let ffi_result = {
62169            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_value1(
62170                self as *const crate::QVectorOfQRayCasterHit,
62171                i,
62172                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QRayCasterHit>>::cast_into(
62173                    default_value,
62174                )
62175                .as_raw_ptr(),
62176            )
62177        };
62178        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62179    }
62180}
62181
62182pub mod q_set_fence {
62183    //! C++ type: <span style='color: green;'>```Qt3DRender::QSetFence```</span>
62184
62185    /// C++ enum: <span style='color: green;'>```Qt3DRender::QSetFence::HandleType```</span>.
62186    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
62187    #[repr(transparent)]
62188    pub struct HandleType(::std::os::raw::c_int);
62189
62190    impl From<::std::os::raw::c_int> for HandleType {
62191        fn from(value: ::std::os::raw::c_int) -> Self {
62192            HandleType(value)
62193        }
62194    }
62195
62196    impl From<HandleType> for ::std::os::raw::c_int {
62197        fn from(value: HandleType) -> Self {
62198            value.0
62199        }
62200    }
62201
62202    impl HandleType {
62203        pub fn to_int(&self) -> ::std::os::raw::c_int {
62204            self.0
62205        }
62206    }
62207
62208    impl HandleType {
62209        /// C++ enum variant: <span style='color: green;'>```NoHandle = 0```</span>
62210        #[allow(non_upper_case_globals)]
62211        pub const NoHandle: crate::q_set_fence::HandleType = crate::q_set_fence::HandleType(0);
62212        /// C++ enum variant: <span style='color: green;'>```OpenGLFenceId = 1```</span>
62213        #[allow(non_upper_case_globals)]
62214        pub const OpenGLFenceId: crate::q_set_fence::HandleType = crate::q_set_fence::HandleType(1);
62215    }
62216}
62217/// <p>Fence allow to synchronosize GPU and CPU workloads. GPU commands usually are non-blocking. When issued, commands are inserted in command buffers which will be read at a later time by the GPU. In some cases, you want to continue processing or issue specific command only when you are sure a command has been executed by the hardware. Fences are a way to do so. This is especially important when using 3rd party engines with Qt3D, Qt3D should only access shared resources when we know the other engine command are done modifying the resource.</p>
62218///
62219/// C++ class: <span style='color: green;'>```Qt3DRender::QSetFence```</span>.
62220///
62221/// <a href="http://doc.qt.io/qt-5/qt3drender-qsetfence.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Fence allow to synchronosize GPU and CPU workloads. GPU commands usually are non-blocking. When issued, commands are inserted in command buffers which will be read at a later time by the GPU. In some cases, you want to continue processing or issue specific command only when you are sure a command has been executed by the hardware. Fences are a way to do so. This is especially important when using 3rd party engines with Qt3D, Qt3D should only access shared resources when we know the other engine command are done modifying the resource.</p>
62222/// <p>QSetFence is a FrameGraph node that inserts a fence into the command stream. It can then be used in conjunction with <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html">QWaitFence</a> or by extracting the underlying handle.</p>
62223/// <p>The handle property will be updated once the renderer has created the underlying fence resource. The handle will remain valid as long as it remains in the unsignaled state. Once it has reached the signaled state, it will be destroyed and a new handle will be created. That means that depending on how long it takes for the fence to be signaled, the same handle could be used over several frames.</p></div>
62224#[repr(C)]
62225pub struct QSetFence {
62226    _unused: u8,
62227}
62228impl QSetFence {
62229    /// <p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
62230    ///
62231    /// Returns a built-in Qt signal `Qt3DRender::QSetFence::handleTypeChanged` that can be passed to `qt_core::Signal::connect`.
62232    ///
62233    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsetfence.html#handleType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
62234    /// <p><b>Access functions:</b></p>
62235    /// <div class="table"><table class="alignedsummary">
62236    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QSetFence::HandleType </td><td class="memItemRight bottomAlign"><span class="name"><b>handleType</b></span>() const</td></tr>
62237    /// </tbody></table></div>
62238    /// <p><b>Notifier signal:</b></p>
62239    /// <div class="table"><table class="alignedsummary">
62240    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleTypeChanged</b></span>(Qt3DRender::QSetFence::HandleType <i>handleType</i>)</td></tr>
62241    /// </tbody></table></div></div>
62242    #[inline(always)]
62243    #[cfg_attr(
62244        feature = "ritual_rustdoc_nightly",
62245        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62246    )]
62247    #[cfg(any(
62248        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62249        feature = "ritual_rustdoc"
62250    ))]
62251    pub fn handle_type_changed(&self) -> ::qt_core::Signal<(crate::q_set_fence::HandleType,)> {
62252        unsafe {
62253            ::qt_core::Signal::new(
62254                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
62255                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
62256                    b"2handleTypeChanged(Qt3DRender::QSetFence::HandleType)\0",
62257                ),
62258            )
62259        }
62260    }
62261
62262    /// <p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
62263    ///
62264    /// Returns a built-in Qt signal `Qt3DRender::QSetFence::handleChanged` that can be passed to `qt_core::Signal::connect`.
62265    ///
62266    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsetfence.html#handle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
62267    /// <p><b>Access functions:</b></p>
62268    /// <div class="table"><table class="alignedsummary">
62269    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>handle</b></span>() const</td></tr>
62270    /// </tbody></table></div>
62271    /// <p><b>Notifier signal:</b></p>
62272    /// <div class="table"><table class="alignedsummary">
62273    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleChanged</b></span>(QVariant <i>handle</i>)</td></tr>
62274    /// </tbody></table></div></div>
62275    #[inline(always)]
62276    #[cfg_attr(
62277        feature = "ritual_rustdoc_nightly",
62278        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62279    )]
62280    #[cfg(any(
62281        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62282        feature = "ritual_rustdoc"
62283    ))]
62284    pub fn handle_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QVariant,)> {
62285        unsafe {
62286            ::qt_core::Signal::new(
62287                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
62288                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2handleChanged(QVariant)\0"),
62289            )
62290        }
62291    }
62292
62293    /// <p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
62294    ///
62295    /// Calls C++ function: <span style='color: green;'>```QVariant Qt3DRender::QSetFence::handle() const```</span>.
62296    ///
62297    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsetfence.html#handle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
62298    /// <p><b>Access functions:</b></p>
62299    /// <div class="table"><table class="alignedsummary">
62300    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>handle</b></span>() const</td></tr>
62301    /// </tbody></table></div>
62302    /// <p><b>Notifier signal:</b></p>
62303    /// <div class="table"><table class="alignedsummary">
62304    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleChanged</b></span>(QVariant <i>handle</i>)</td></tr>
62305    /// </tbody></table></div></div>
62306    #[inline(always)]
62307    #[cfg_attr(
62308        feature = "ritual_rustdoc_nightly",
62309        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62310    )]
62311    #[cfg(any(
62312        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62313        feature = "ritual_rustdoc"
62314    ))]
62315    pub unsafe fn handle(&self) -> ::cpp_core::CppBox<::qt_core::QVariant> {
62316        let ffi_result = {
62317            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_handle(
62318                self as *const crate::QSetFence,
62319            )
62320        };
62321        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62322    }
62323
62324    /// <p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
62325    ///
62326    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSetFence::HandleType Qt3DRender::QSetFence::handleType() const```</span>.
62327    ///
62328    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsetfence.html#handleType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
62329    /// <p><b>Access functions:</b></p>
62330    /// <div class="table"><table class="alignedsummary">
62331    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QSetFence::HandleType </td><td class="memItemRight bottomAlign"><span class="name"><b>handleType</b></span>() const</td></tr>
62332    /// </tbody></table></div>
62333    /// <p><b>Notifier signal:</b></p>
62334    /// <div class="table"><table class="alignedsummary">
62335    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleTypeChanged</b></span>(Qt3DRender::QSetFence::HandleType <i>handleType</i>)</td></tr>
62336    /// </tbody></table></div></div>
62337    #[inline(always)]
62338    #[cfg_attr(
62339        feature = "ritual_rustdoc_nightly",
62340        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62341    )]
62342    #[cfg(any(
62343        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62344        feature = "ritual_rustdoc"
62345    ))]
62346    pub unsafe fn handle_type(&self) -> crate::q_set_fence::HandleType {
62347        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_handleType(
62348            self as *const crate::QSetFence,
62349        )
62350    }
62351
62352    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QSetFence::metaObject() const```</span>.
62353    #[inline(always)]
62354    #[cfg_attr(
62355        feature = "ritual_rustdoc_nightly",
62356        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62357    )]
62358    #[cfg(any(
62359        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62360        feature = "ritual_rustdoc"
62361    ))]
62362    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
62363        let ffi_result = {
62364            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_metaObject(
62365                self as *const crate::QSetFence,
62366            )
62367        };
62368        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
62369    }
62370
62371    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSetFence::QSetFence(Qt3DCore::QNode* parent = …)```</span>.
62372    #[inline(always)]
62373    #[cfg_attr(
62374        feature = "ritual_rustdoc_nightly",
62375        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62376    )]
62377    #[cfg(any(
62378        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62379        feature = "ritual_rustdoc"
62380    ))]
62381    pub unsafe fn new_1a(
62382        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
62383    ) -> ::qt_core::QBox<crate::QSetFence> {
62384        let ffi_result = {
62385            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_QSetFence(
62386                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
62387                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
62388            )
62389        };
62390        ::qt_core::QBox::from_raw(ffi_result)
62391    }
62392
62393    /// <p>Fence allow to synchronosize GPU and CPU workloads. GPU commands usually are non-blocking. When issued, commands are inserted in command buffers which will be read at a later time by the GPU. In some cases, you want to continue processing or issue specific command only when you are sure a command has been executed by the hardware. Fences are a way to do so. This is especially important when using 3rd party engines with Qt3D, Qt3D should only access shared resources when we know the other engine command are done modifying the resource.</p>
62394    ///
62395    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSetFence::QSetFence()```</span>.
62396    ///
62397    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsetfence.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Fence allow to synchronosize GPU and CPU workloads. GPU commands usually are non-blocking. When issued, commands are inserted in command buffers which will be read at a later time by the GPU. In some cases, you want to continue processing or issue specific command only when you are sure a command has been executed by the hardware. Fences are a way to do so. This is especially important when using 3rd party engines with Qt3D, Qt3D should only access shared resources when we know the other engine command are done modifying the resource.</p>
62398    /// <p>QSetFence is a FrameGraph node that inserts a fence into the command stream. It can then be used in conjunction with <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html">QWaitFence</a> or by extracting the underlying handle.</p>
62399    /// <p>The handle property will be updated once the renderer has created the underlying fence resource. The handle will remain valid as long as it remains in the unsignaled state. Once it has reached the signaled state, it will be destroyed and a new handle will be created. That means that depending on how long it takes for the fence to be signaled, the same handle could be used over several frames.</p></div>
62400    #[inline(always)]
62401    #[cfg_attr(
62402        feature = "ritual_rustdoc_nightly",
62403        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62404    )]
62405    #[cfg(any(
62406        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62407        feature = "ritual_rustdoc"
62408    ))]
62409    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QSetFence> {
62410        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_QSetFence1() };
62411        ::qt_core::QBox::from_raw(ffi_result)
62412    }
62413
62414    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QSetFence::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
62415    #[inline(always)]
62416    #[cfg_attr(
62417        feature = "ritual_rustdoc_nightly",
62418        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62419    )]
62420    #[cfg(any(
62421        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62422        feature = "ritual_rustdoc"
62423    ))]
62424    pub unsafe fn qt_metacall(
62425        &self,
62426        arg1: ::qt_core::q_meta_object::Call,
62427        arg2: ::std::os::raw::c_int,
62428        arg3: *mut *mut ::std::ffi::c_void,
62429    ) -> ::std::os::raw::c_int {
62430        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_qt_metacall(
62431            self as *const crate::QSetFence as *mut crate::QSetFence,
62432            arg1,
62433            arg2,
62434            arg3,
62435        )
62436    }
62437
62438    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QSetFence::qt_metacast(const char* arg1)```</span>.
62439    #[inline(always)]
62440    #[cfg_attr(
62441        feature = "ritual_rustdoc_nightly",
62442        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62443    )]
62444    #[cfg(any(
62445        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62446        feature = "ritual_rustdoc"
62447    ))]
62448    pub unsafe fn qt_metacast(
62449        &self,
62450        arg1: *const ::std::os::raw::c_char,
62451    ) -> *mut ::std::ffi::c_void {
62452        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_qt_metacast(
62453            self as *const crate::QSetFence as *mut crate::QSetFence,
62454            arg1,
62455        )
62456    }
62457
62458    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
62459    #[inline(always)]
62460    #[cfg_attr(
62461        feature = "ritual_rustdoc_nightly",
62462        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62463    )]
62464    #[cfg(any(
62465        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62466        feature = "ritual_rustdoc"
62467    ))]
62468    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
62469        let ffi_result =
62470            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_staticMetaObject() };
62471        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
62472            .expect("attempted to construct a null Ref")
62473    }
62474
62475    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSetFence::tr(const char* s, const char* c, int n)```</span>.
62476    #[inline(always)]
62477    #[cfg_attr(
62478        feature = "ritual_rustdoc_nightly",
62479        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62480    )]
62481    #[cfg(any(
62482        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62483        feature = "ritual_rustdoc"
62484    ))]
62485    pub unsafe fn tr(
62486        s: *const ::std::os::raw::c_char,
62487        c: *const ::std::os::raw::c_char,
62488        n: ::std::os::raw::c_int,
62489    ) -> ::cpp_core::CppBox<::qt_core::QString> {
62490        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_tr(s, c, n) };
62491        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62492    }
62493
62494    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSetFence::trUtf8(const char* s, const char* c, int n)```</span>.
62495    #[inline(always)]
62496    #[cfg_attr(
62497        feature = "ritual_rustdoc_nightly",
62498        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62499    )]
62500    #[cfg(any(
62501        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62502        feature = "ritual_rustdoc"
62503    ))]
62504    pub unsafe fn tr_utf8(
62505        s: *const ::std::os::raw::c_char,
62506        c: *const ::std::os::raw::c_char,
62507        n: ::std::os::raw::c_int,
62508    ) -> ::cpp_core::CppBox<::qt_core::QString> {
62509        let ffi_result =
62510            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_trUtf8(s, c, n) };
62511        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62512    }
62513}
62514
62515/// <p>Depending on the rendering mode used by Qt 3D, the shared context will either be:</p>
62516///
62517/// C++ class: <span style='color: green;'>```Qt3DRender::QSharedGLTexture```</span>.
62518///
62519/// <a href="http://doc.qt.io/qt-5/qt3drender-qsharedgltexture.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Depending on the rendering mode used by Qt 3D, the shared context will either be:</p>
62520/// <ul>
62521/// <li>qt_gl_global_share_context when letting Qt 3D drive the rendering. When setting the attribute <a href="http://doc.qt.io/qt-5/qt.html#ApplicationAttribute-enum">Qt::AA_ShareOpenGLContexts</a> on the QApplication class, this will automatically make QOpenGLWidget instances have their context shared with qt_gl_global_share_context.</li>
62522/// <li>the shared context from the <a href="http://doc.qt.io/qt-5/qtquick-qmlmodule.html">QtQuick</a> scene. You might have to subclass <a href="http://doc.qt.io/qt-5/qwindow.html">QWindow</a> or use QtQuickRenderControl to have control over what that shared context is though as of 5.13 it is qt_gl_global_share_context.</li>
62523/// </ul>
62524/// <p>Any 3rd party engine that shares its context with the Qt 3D renderer can now provide texture ids that will be referenced by the Qt 3D texture.</p>
62525/// <p>You can omit specifying the texture properties, Qt 3D will try at runtime to determine what they are. If you know them, you can of course provide them, avoid additional work for Qt 3D.</p>
62526/// <p>Keep in mind that if you are using custom materials and shaders, you need to specify the correct sampler type to be used.</p></div>
62527#[repr(C)]
62528pub struct QSharedGLTexture {
62529    _unused: u8,
62530}
62531impl QSharedGLTexture {
62532    /// <p>The OpenGL texture id value that you want Qt3D to gain access to.</p>
62533    ///
62534    /// Returns a built-in Qt slot `Qt3DRender::QSharedGLTexture::setTextureId` that can be passed to `qt_core::Signal::connect`.
62535    ///
62536    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsharedgltexture.html#textureId-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The OpenGL texture id value that you want Qt3D to gain access to.</p>
62537    /// <p><b>Access functions:</b></p>
62538    /// <div class="table"><table class="alignedsummary">
62539    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>textureId</b></span>() const</td></tr>
62540    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTextureId</b></span>(int <i>id</i>)</td></tr>
62541    /// </tbody></table></div>
62542    /// <p><b>Notifier signal:</b></p>
62543    /// <div class="table"><table class="alignedsummary">
62544    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>textureIdChanged</b></span>(int <i>textureId</i>)</td></tr>
62545    /// </tbody></table></div></div>
62546    #[inline(always)]
62547    #[cfg_attr(
62548        feature = "ritual_rustdoc_nightly",
62549        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62550    )]
62551    #[cfg(any(
62552        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62553        feature = "ritual_rustdoc"
62554    ))]
62555    pub fn slot_set_texture_id(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
62556        unsafe {
62557            ::qt_core::Receiver::new(
62558                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
62559                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setTextureId(int)\0"),
62560            )
62561        }
62562    }
62563
62564    /// <p>The OpenGL texture id value that you want Qt3D to gain access to.</p>
62565    ///
62566    /// Returns a built-in Qt signal `Qt3DRender::QSharedGLTexture::textureIdChanged` that can be passed to `qt_core::Signal::connect`.
62567    ///
62568    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsharedgltexture.html#textureId-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The OpenGL texture id value that you want Qt3D to gain access to.</p>
62569    /// <p><b>Access functions:</b></p>
62570    /// <div class="table"><table class="alignedsummary">
62571    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>textureId</b></span>() const</td></tr>
62572    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTextureId</b></span>(int <i>id</i>)</td></tr>
62573    /// </tbody></table></div>
62574    /// <p><b>Notifier signal:</b></p>
62575    /// <div class="table"><table class="alignedsummary">
62576    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>textureIdChanged</b></span>(int <i>textureId</i>)</td></tr>
62577    /// </tbody></table></div></div>
62578    #[inline(always)]
62579    #[cfg_attr(
62580        feature = "ritual_rustdoc_nightly",
62581        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62582    )]
62583    #[cfg(any(
62584        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62585        feature = "ritual_rustdoc"
62586    ))]
62587    pub fn texture_id_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
62588        unsafe {
62589            ::qt_core::Signal::new(
62590                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
62591                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2textureIdChanged(int)\0"),
62592            )
62593        }
62594    }
62595
62596    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QSharedGLTexture::metaObject() const```</span>.
62597    #[inline(always)]
62598    #[cfg_attr(
62599        feature = "ritual_rustdoc_nightly",
62600        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62601    )]
62602    #[cfg(any(
62603        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62604        feature = "ritual_rustdoc"
62605    ))]
62606    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
62607        let ffi_result = {
62608            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_metaObject(
62609                self as *const crate::QSharedGLTexture,
62610            )
62611        };
62612        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
62613    }
62614
62615    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSharedGLTexture::QSharedGLTexture(Qt3DCore::QNode* parent = …)```</span>.
62616    #[inline(always)]
62617    #[cfg_attr(
62618        feature = "ritual_rustdoc_nightly",
62619        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62620    )]
62621    #[cfg(any(
62622        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62623        feature = "ritual_rustdoc"
62624    ))]
62625    pub unsafe fn new_1a(
62626        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
62627    ) -> ::qt_core::QBox<crate::QSharedGLTexture> {
62628        let ffi_result = {
62629            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_QSharedGLTexture(
62630                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
62631                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
62632            )
62633        };
62634        ::qt_core::QBox::from_raw(ffi_result)
62635    }
62636
62637    /// <p>Depending on the rendering mode used by Qt 3D, the shared context will either be:</p>
62638    ///
62639    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSharedGLTexture::QSharedGLTexture()```</span>.
62640    ///
62641    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsharedgltexture.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Depending on the rendering mode used by Qt 3D, the shared context will either be:</p>
62642    /// <ul>
62643    /// <li>qt_gl_global_share_context when letting Qt 3D drive the rendering. When setting the attribute <a href="http://doc.qt.io/qt-5/qt.html#ApplicationAttribute-enum">Qt::AA_ShareOpenGLContexts</a> on the QApplication class, this will automatically make QOpenGLWidget instances have their context shared with qt_gl_global_share_context.</li>
62644    /// <li>the shared context from the <a href="http://doc.qt.io/qt-5/qtquick-qmlmodule.html">QtQuick</a> scene. You might have to subclass <a href="http://doc.qt.io/qt-5/qwindow.html">QWindow</a> or use QtQuickRenderControl to have control over what that shared context is though as of 5.13 it is qt_gl_global_share_context.</li>
62645    /// </ul>
62646    /// <p>Any 3rd party engine that shares its context with the Qt 3D renderer can now provide texture ids that will be referenced by the Qt 3D texture.</p>
62647    /// <p>You can omit specifying the texture properties, Qt 3D will try at runtime to determine what they are. If you know them, you can of course provide them, avoid additional work for Qt 3D.</p>
62648    /// <p>Keep in mind that if you are using custom materials and shaders, you need to specify the correct sampler type to be used.</p></div>
62649    #[inline(always)]
62650    #[cfg_attr(
62651        feature = "ritual_rustdoc_nightly",
62652        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62653    )]
62654    #[cfg(any(
62655        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62656        feature = "ritual_rustdoc"
62657    ))]
62658    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QSharedGLTexture> {
62659        let ffi_result =
62660            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_QSharedGLTexture1() };
62661        ::qt_core::QBox::from_raw(ffi_result)
62662    }
62663
62664    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QSharedGLTexture::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
62665    #[inline(always)]
62666    #[cfg_attr(
62667        feature = "ritual_rustdoc_nightly",
62668        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62669    )]
62670    #[cfg(any(
62671        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62672        feature = "ritual_rustdoc"
62673    ))]
62674    pub unsafe fn qt_metacall(
62675        &self,
62676        arg1: ::qt_core::q_meta_object::Call,
62677        arg2: ::std::os::raw::c_int,
62678        arg3: *mut *mut ::std::ffi::c_void,
62679    ) -> ::std::os::raw::c_int {
62680        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_qt_metacall(
62681            self as *const crate::QSharedGLTexture as *mut crate::QSharedGLTexture,
62682            arg1,
62683            arg2,
62684            arg3,
62685        )
62686    }
62687
62688    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QSharedGLTexture::qt_metacast(const char* arg1)```</span>.
62689    #[inline(always)]
62690    #[cfg_attr(
62691        feature = "ritual_rustdoc_nightly",
62692        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62693    )]
62694    #[cfg(any(
62695        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62696        feature = "ritual_rustdoc"
62697    ))]
62698    pub unsafe fn qt_metacast(
62699        &self,
62700        arg1: *const ::std::os::raw::c_char,
62701    ) -> *mut ::std::ffi::c_void {
62702        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_qt_metacast(
62703            self as *const crate::QSharedGLTexture as *mut crate::QSharedGLTexture,
62704            arg1,
62705        )
62706    }
62707
62708    /// <p>The OpenGL texture id value that you want Qt3D to gain access to.</p>
62709    ///
62710    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QSharedGLTexture::setTextureId(int id)```</span>.
62711    ///
62712    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsharedgltexture.html#textureId-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The OpenGL texture id value that you want Qt3D to gain access to.</p>
62713    /// <p><b>Access functions:</b></p>
62714    /// <div class="table"><table class="alignedsummary">
62715    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>textureId</b></span>() const</td></tr>
62716    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTextureId</b></span>(int <i>id</i>)</td></tr>
62717    /// </tbody></table></div>
62718    /// <p><b>Notifier signal:</b></p>
62719    /// <div class="table"><table class="alignedsummary">
62720    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>textureIdChanged</b></span>(int <i>textureId</i>)</td></tr>
62721    /// </tbody></table></div></div>
62722    #[inline(always)]
62723    #[cfg_attr(
62724        feature = "ritual_rustdoc_nightly",
62725        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62726    )]
62727    #[cfg(any(
62728        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62729        feature = "ritual_rustdoc"
62730    ))]
62731    pub unsafe fn set_texture_id(&self, id: ::std::os::raw::c_int) {
62732        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_setTextureId(
62733            self as *const crate::QSharedGLTexture as *mut crate::QSharedGLTexture,
62734            id,
62735        )
62736    }
62737
62738    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
62739    #[inline(always)]
62740    #[cfg_attr(
62741        feature = "ritual_rustdoc_nightly",
62742        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62743    )]
62744    #[cfg(any(
62745        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62746        feature = "ritual_rustdoc"
62747    ))]
62748    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
62749        let ffi_result =
62750            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_staticMetaObject() };
62751        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
62752            .expect("attempted to construct a null Ref")
62753    }
62754
62755    /// <p>The OpenGL texture id value that you want Qt3D to gain access to.</p>
62756    ///
62757    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QSharedGLTexture::textureId() const```</span>.
62758    ///
62759    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsharedgltexture.html#textureId-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The OpenGL texture id value that you want Qt3D to gain access to.</p>
62760    /// <p><b>Access functions:</b></p>
62761    /// <div class="table"><table class="alignedsummary">
62762    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>textureId</b></span>() const</td></tr>
62763    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTextureId</b></span>(int <i>id</i>)</td></tr>
62764    /// </tbody></table></div>
62765    /// <p><b>Notifier signal:</b></p>
62766    /// <div class="table"><table class="alignedsummary">
62767    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>textureIdChanged</b></span>(int <i>textureId</i>)</td></tr>
62768    /// </tbody></table></div></div>
62769    #[inline(always)]
62770    #[cfg_attr(
62771        feature = "ritual_rustdoc_nightly",
62772        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62773    )]
62774    #[cfg(any(
62775        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62776        feature = "ritual_rustdoc"
62777    ))]
62778    pub unsafe fn texture_id(&self) -> ::std::os::raw::c_int {
62779        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_textureId(
62780            self as *const crate::QSharedGLTexture,
62781        )
62782    }
62783
62784    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSharedGLTexture::tr(const char* s, const char* c, int n)```</span>.
62785    #[inline(always)]
62786    #[cfg_attr(
62787        feature = "ritual_rustdoc_nightly",
62788        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62789    )]
62790    #[cfg(any(
62791        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62792        feature = "ritual_rustdoc"
62793    ))]
62794    pub unsafe fn tr(
62795        s: *const ::std::os::raw::c_char,
62796        c: *const ::std::os::raw::c_char,
62797        n: ::std::os::raw::c_int,
62798    ) -> ::cpp_core::CppBox<::qt_core::QString> {
62799        let ffi_result =
62800            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_tr(s, c, n) };
62801        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62802    }
62803
62804    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSharedGLTexture::trUtf8(const char* s, const char* c, int n)```</span>.
62805    #[inline(always)]
62806    #[cfg_attr(
62807        feature = "ritual_rustdoc_nightly",
62808        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62809    )]
62810    #[cfg(any(
62811        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62812        feature = "ritual_rustdoc"
62813    ))]
62814    pub unsafe fn tr_utf8(
62815        s: *const ::std::os::raw::c_char,
62816        c: *const ::std::os::raw::c_char,
62817        n: ::std::os::raw::c_int,
62818    ) -> ::cpp_core::CppBox<::qt_core::QString> {
62819        let ffi_result =
62820            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_trUtf8(s, c, n) };
62821        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
62822    }
62823}
62824
62825pub mod q_wait_fence {
62826    //! C++ type: <span style='color: green;'>```Qt3DRender::QWaitFence```</span>
62827
62828    /// C++ enum: <span style='color: green;'>```Qt3DRender::QWaitFence::HandleType```</span>.
62829    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
62830    #[repr(transparent)]
62831    pub struct HandleType(::std::os::raw::c_int);
62832
62833    impl From<::std::os::raw::c_int> for HandleType {
62834        fn from(value: ::std::os::raw::c_int) -> Self {
62835            HandleType(value)
62836        }
62837    }
62838
62839    impl From<HandleType> for ::std::os::raw::c_int {
62840        fn from(value: HandleType) -> Self {
62841            value.0
62842        }
62843    }
62844
62845    impl HandleType {
62846        pub fn to_int(&self) -> ::std::os::raw::c_int {
62847            self.0
62848        }
62849    }
62850
62851    impl HandleType {
62852        /// C++ enum variant: <span style='color: green;'>```NoHandle = 0```</span>
62853        #[allow(non_upper_case_globals)]
62854        pub const NoHandle: crate::q_wait_fence::HandleType = crate::q_wait_fence::HandleType(0);
62855        /// C++ enum variant: <span style='color: green;'>```OpenGLFenceId = 1```</span>
62856        #[allow(non_upper_case_globals)]
62857        pub const OpenGLFenceId: crate::q_wait_fence::HandleType =
62858            crate::q_wait_fence::HandleType(1);
62859    }
62860}
62861/// <p>Fence allow to synchronosize GPU and CPU workloads. GPU commands usually are non-blocking. When issued, commands are inserted in command buffers which will be read at a later time by the GPU. In some cases, you want to continue processing or issue specific command only when you are sure a command has been executed by the hardware. Fences are a way to do so. This is especially important when using 3rd party engines with Qt3D, Qt3D should only access shared resources when we know the other engine command are done modifying the resource.</p>
62862///
62863/// C++ class: <span style='color: green;'>```Qt3DRender::QWaitFence```</span>.
62864///
62865/// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Fence allow to synchronosize GPU and CPU workloads. GPU commands usually are non-blocking. When issued, commands are inserted in command buffers which will be read at a later time by the GPU. In some cases, you want to continue processing or issue specific command only when you are sure a command has been executed by the hardware. Fences are a way to do so. This is especially important when using 3rd party engines with Qt3D, Qt3D should only access shared resources when we know the other engine command are done modifying the resource.</p>
62866/// <p>QWaitFence is a FrameGraph node that will force to wait for it to become signaled before subsequent commands are inserted into the command stream. It can then be used in conjunction with <a href="http://doc.qt.io/qt-5/qt3drender-qsetfence.html">QSetFence</a> and contains properties to configure how long it should wait and whether it should block on the CPU side.</p>
62867/// <p><b>Note: </b>Qt 3D uploads GPU resources (Texture, Shaders, Buffers) before issuing draw calls.</p></div>
62868#[repr(C)]
62869pub struct QWaitFence {
62870    _unused: u8,
62871}
62872impl QWaitFence {
62873    /// <p>Specifies whether the CPU should be block while waiting for the fence to become signaled. This is false by default.</p>
62874    ///
62875    /// Returns a built-in Qt signal `Qt3DRender::QWaitFence::waitOnCPUChanged` that can be passed to `qt_core::Signal::connect`.
62876    ///
62877    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#waitOnCPU-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies whether the CPU should be block while waiting for the fence to become signaled. This is false by default.</p>
62878    /// <p><b>Access functions:</b></p>
62879    /// <div class="table"><table class="alignedsummary">
62880    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>waitOnCPU</b></span>() const</td></tr>
62881    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWaitOnCPU</b></span>(bool <i>waitOnCPU</i>)</td></tr>
62882    /// </tbody></table></div>
62883    /// <p><b>Notifier signal:</b></p>
62884    /// <div class="table"><table class="alignedsummary">
62885    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>waitOnCPUChanged</b></span>(bool <i>waitOnCPU</i>)</td></tr>
62886    /// </tbody></table></div></div>
62887    #[inline(always)]
62888    #[cfg_attr(
62889        feature = "ritual_rustdoc_nightly",
62890        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62891    )]
62892    #[cfg(any(
62893        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62894        feature = "ritual_rustdoc"
62895    ))]
62896    pub fn wait_on_c_p_u_changed(&self) -> ::qt_core::Signal<(bool,)> {
62897        unsafe {
62898            ::qt_core::Signal::new(
62899                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
62900                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2waitOnCPUChanged(bool)\0"),
62901            )
62902        }
62903    }
62904
62905    /// <p>Specifies the maximum amount of time in nanoseconds to wait for the fence to become signaled.</p>
62906    ///
62907    /// Returns a built-in Qt signal `Qt3DRender::QWaitFence::timeoutChanged` that can be passed to `qt_core::Signal::connect`.
62908    ///
62909    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#timeout-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the maximum amount of time in nanoseconds to wait for the fence to become signaled.</p>
62910    /// <p><b>Access functions:</b></p>
62911    /// <div class="table"><table class="alignedsummary">
62912    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> quint64 </td><td class="memItemRight bottomAlign"><span class="name"><b>timeout</b></span>() const</td></tr>
62913    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTimeout</b></span>(quint64 <i>timeout</i>)</td></tr>
62914    /// </tbody></table></div>
62915    /// <p><b>Notifier signal:</b></p>
62916    /// <div class="table"><table class="alignedsummary">
62917    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>timeoutChanged</b></span>(quint64 <i>timeoutChanged</i>)</td></tr>
62918    /// </tbody></table></div></div>
62919    #[inline(always)]
62920    #[cfg_attr(
62921        feature = "ritual_rustdoc_nightly",
62922        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62923    )]
62924    #[cfg(any(
62925        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62926        feature = "ritual_rustdoc"
62927    ))]
62928    pub fn timeout_changed(&self) -> ::qt_core::Signal<(u64,)> {
62929        unsafe {
62930            ::qt_core::Signal::new(
62931                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
62932                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2timeoutChanged(quint64)\0"),
62933            )
62934        }
62935    }
62936
62937    /// <p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
62938    ///
62939    /// Returns a built-in Qt signal `Qt3DRender::QWaitFence::handleTypeChanged` that can be passed to `qt_core::Signal::connect`.
62940    ///
62941    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#handleType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
62942    /// <p><b>Access functions:</b></p>
62943    /// <div class="table"><table class="alignedsummary">
62944    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QWaitFence::HandleType </td><td class="memItemRight bottomAlign"><span class="name"><b>handleType</b></span>() const</td></tr>
62945    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHandleType</b></span>(Qt3DRender::QWaitFence::HandleType <i>type</i>)</td></tr>
62946    /// </tbody></table></div>
62947    /// <p><b>Notifier signal:</b></p>
62948    /// <div class="table"><table class="alignedsummary">
62949    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleTypeChanged</b></span>(Qt3DRender::QWaitFence::HandleType <i>handleType</i>)</td></tr>
62950    /// </tbody></table></div></div>
62951    #[inline(always)]
62952    #[cfg_attr(
62953        feature = "ritual_rustdoc_nightly",
62954        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62955    )]
62956    #[cfg(any(
62957        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62958        feature = "ritual_rustdoc"
62959    ))]
62960    pub fn handle_type_changed(&self) -> ::qt_core::Signal<(crate::q_wait_fence::HandleType,)> {
62961        unsafe {
62962            ::qt_core::Signal::new(
62963                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
62964                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
62965                    b"2handleTypeChanged(Qt3DRender::QWaitFence::HandleType)\0",
62966                ),
62967            )
62968        }
62969    }
62970
62971    /// <p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
62972    ///
62973    /// Returns a built-in Qt signal `Qt3DRender::QWaitFence::handleChanged` that can be passed to `qt_core::Signal::connect`.
62974    ///
62975    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#handle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
62976    /// <p><b>Access functions:</b></p>
62977    /// <div class="table"><table class="alignedsummary">
62978    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>handle</b></span>() const</td></tr>
62979    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHandle</b></span>(QVariant <i>handle</i>)</td></tr>
62980    /// </tbody></table></div>
62981    /// <p><b>Notifier signal:</b></p>
62982    /// <div class="table"><table class="alignedsummary">
62983    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleChanged</b></span>(QVariant <i>handle</i>)</td></tr>
62984    /// </tbody></table></div></div>
62985    #[inline(always)]
62986    #[cfg_attr(
62987        feature = "ritual_rustdoc_nightly",
62988        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
62989    )]
62990    #[cfg(any(
62991        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
62992        feature = "ritual_rustdoc"
62993    ))]
62994    pub fn handle_changed(&self) -> ::qt_core::Signal<(*const ::qt_core::QVariant,)> {
62995        unsafe {
62996            ::qt_core::Signal::new(
62997                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
62998                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2handleChanged(QVariant)\0"),
62999            )
63000        }
63001    }
63002
63003    /// <p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
63004    ///
63005    /// Calls C++ function: <span style='color: green;'>```QVariant Qt3DRender::QWaitFence::handle() const```</span>.
63006    ///
63007    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#handle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
63008    /// <p><b>Access functions:</b></p>
63009    /// <div class="table"><table class="alignedsummary">
63010    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>handle</b></span>() const</td></tr>
63011    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHandle</b></span>(QVariant <i>handle</i>)</td></tr>
63012    /// </tbody></table></div>
63013    /// <p><b>Notifier signal:</b></p>
63014    /// <div class="table"><table class="alignedsummary">
63015    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleChanged</b></span>(QVariant <i>handle</i>)</td></tr>
63016    /// </tbody></table></div></div>
63017    #[inline(always)]
63018    #[cfg_attr(
63019        feature = "ritual_rustdoc_nightly",
63020        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63021    )]
63022    #[cfg(any(
63023        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63024        feature = "ritual_rustdoc"
63025    ))]
63026    pub unsafe fn handle(&self) -> ::cpp_core::CppBox<::qt_core::QVariant> {
63027        let ffi_result = {
63028            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_handle(
63029                self as *const crate::QWaitFence,
63030            )
63031        };
63032        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
63033    }
63034
63035    /// <p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
63036    ///
63037    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QWaitFence::HandleType Qt3DRender::QWaitFence::handleType() const```</span>.
63038    ///
63039    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#handleType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
63040    /// <p><b>Access functions:</b></p>
63041    /// <div class="table"><table class="alignedsummary">
63042    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QWaitFence::HandleType </td><td class="memItemRight bottomAlign"><span class="name"><b>handleType</b></span>() const</td></tr>
63043    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHandleType</b></span>(Qt3DRender::QWaitFence::HandleType <i>type</i>)</td></tr>
63044    /// </tbody></table></div>
63045    /// <p><b>Notifier signal:</b></p>
63046    /// <div class="table"><table class="alignedsummary">
63047    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleTypeChanged</b></span>(Qt3DRender::QWaitFence::HandleType <i>handleType</i>)</td></tr>
63048    /// </tbody></table></div></div>
63049    #[inline(always)]
63050    #[cfg_attr(
63051        feature = "ritual_rustdoc_nightly",
63052        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63053    )]
63054    #[cfg(any(
63055        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63056        feature = "ritual_rustdoc"
63057    ))]
63058    pub unsafe fn handle_type(&self) -> crate::q_wait_fence::HandleType {
63059        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_handleType(
63060            self as *const crate::QWaitFence,
63061        )
63062    }
63063
63064    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QWaitFence::metaObject() const```</span>.
63065    #[inline(always)]
63066    #[cfg_attr(
63067        feature = "ritual_rustdoc_nightly",
63068        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63069    )]
63070    #[cfg(any(
63071        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63072        feature = "ritual_rustdoc"
63073    ))]
63074    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
63075        let ffi_result = {
63076            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_metaObject(
63077                self as *const crate::QWaitFence,
63078            )
63079        };
63080        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
63081    }
63082
63083    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QWaitFence::QWaitFence(Qt3DCore::QNode* parent = …)```</span>.
63084    #[inline(always)]
63085    #[cfg_attr(
63086        feature = "ritual_rustdoc_nightly",
63087        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63088    )]
63089    #[cfg(any(
63090        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63091        feature = "ritual_rustdoc"
63092    ))]
63093    pub unsafe fn new_1a(
63094        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
63095    ) -> ::qt_core::QBox<crate::QWaitFence> {
63096        let ffi_result = {
63097            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_QWaitFence(
63098                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
63099                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
63100            )
63101        };
63102        ::qt_core::QBox::from_raw(ffi_result)
63103    }
63104
63105    /// <p>Fence allow to synchronosize GPU and CPU workloads. GPU commands usually are non-blocking. When issued, commands are inserted in command buffers which will be read at a later time by the GPU. In some cases, you want to continue processing or issue specific command only when you are sure a command has been executed by the hardware. Fences are a way to do so. This is especially important when using 3rd party engines with Qt3D, Qt3D should only access shared resources when we know the other engine command are done modifying the resource.</p>
63106    ///
63107    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QWaitFence::QWaitFence()```</span>.
63108    ///
63109    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Fence allow to synchronosize GPU and CPU workloads. GPU commands usually are non-blocking. When issued, commands are inserted in command buffers which will be read at a later time by the GPU. In some cases, you want to continue processing or issue specific command only when you are sure a command has been executed by the hardware. Fences are a way to do so. This is especially important when using 3rd party engines with Qt3D, Qt3D should only access shared resources when we know the other engine command are done modifying the resource.</p>
63110    /// <p>QWaitFence is a FrameGraph node that will force to wait for it to become signaled before subsequent commands are inserted into the command stream. It can then be used in conjunction with <a href="http://doc.qt.io/qt-5/qt3drender-qsetfence.html">QSetFence</a> and contains properties to configure how long it should wait and whether it should block on the CPU side.</p>
63111    /// <p><b>Note: </b>Qt 3D uploads GPU resources (Texture, Shaders, Buffers) before issuing draw calls.</p></div>
63112    #[inline(always)]
63113    #[cfg_attr(
63114        feature = "ritual_rustdoc_nightly",
63115        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63116    )]
63117    #[cfg(any(
63118        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63119        feature = "ritual_rustdoc"
63120    ))]
63121    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QWaitFence> {
63122        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_QWaitFence1() };
63123        ::qt_core::QBox::from_raw(ffi_result)
63124    }
63125
63126    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QWaitFence::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
63127    #[inline(always)]
63128    #[cfg_attr(
63129        feature = "ritual_rustdoc_nightly",
63130        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63131    )]
63132    #[cfg(any(
63133        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63134        feature = "ritual_rustdoc"
63135    ))]
63136    pub unsafe fn qt_metacall(
63137        &self,
63138        arg1: ::qt_core::q_meta_object::Call,
63139        arg2: ::std::os::raw::c_int,
63140        arg3: *mut *mut ::std::ffi::c_void,
63141    ) -> ::std::os::raw::c_int {
63142        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_qt_metacall(
63143            self as *const crate::QWaitFence as *mut crate::QWaitFence,
63144            arg1,
63145            arg2,
63146            arg3,
63147        )
63148    }
63149
63150    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QWaitFence::qt_metacast(const char* arg1)```</span>.
63151    #[inline(always)]
63152    #[cfg_attr(
63153        feature = "ritual_rustdoc_nightly",
63154        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63155    )]
63156    #[cfg(any(
63157        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63158        feature = "ritual_rustdoc"
63159    ))]
63160    pub unsafe fn qt_metacast(
63161        &self,
63162        arg1: *const ::std::os::raw::c_char,
63163    ) -> *mut ::std::ffi::c_void {
63164        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_qt_metacast(
63165            self as *const crate::QWaitFence as *mut crate::QWaitFence,
63166            arg1,
63167        )
63168    }
63169
63170    /// <p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
63171    ///
63172    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QWaitFence::setHandle(QVariant handle)```</span>.
63173    ///
63174    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#handle-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the underlying fence handle wrapped in a <a href="http://doc.qt.io/qt-5/qvariant.html">QVariant</a>.</p>
63175    /// <p><b>Access functions:</b></p>
63176    /// <div class="table"><table class="alignedsummary">
63177    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QVariant </td><td class="memItemRight bottomAlign"><span class="name"><b>handle</b></span>() const</td></tr>
63178    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHandle</b></span>(QVariant <i>handle</i>)</td></tr>
63179    /// </tbody></table></div>
63180    /// <p><b>Notifier signal:</b></p>
63181    /// <div class="table"><table class="alignedsummary">
63182    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleChanged</b></span>(QVariant <i>handle</i>)</td></tr>
63183    /// </tbody></table></div></div>
63184    #[inline(always)]
63185    #[cfg_attr(
63186        feature = "ritual_rustdoc_nightly",
63187        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63188    )]
63189    #[cfg(any(
63190        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63191        feature = "ritual_rustdoc"
63192    ))]
63193    pub unsafe fn set_handle(
63194        &self,
63195        handle: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
63196    ) {
63197        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_setHandle(
63198            self as *const crate::QWaitFence as *mut crate::QWaitFence,
63199            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(handle)
63200                .as_raw_ptr(),
63201        )
63202    }
63203
63204    /// <p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
63205    ///
63206    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QWaitFence::setHandleType(Qt3DRender::QWaitFence::HandleType type)```</span>.
63207    ///
63208    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#handleType-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the type of handle being used. Currently only OpenGL Fence ids are supported.</p>
63209    /// <p><b>Access functions:</b></p>
63210    /// <div class="table"><table class="alignedsummary">
63211    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QWaitFence::HandleType </td><td class="memItemRight bottomAlign"><span class="name"><b>handleType</b></span>() const</td></tr>
63212    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setHandleType</b></span>(Qt3DRender::QWaitFence::HandleType <i>type</i>)</td></tr>
63213    /// </tbody></table></div>
63214    /// <p><b>Notifier signal:</b></p>
63215    /// <div class="table"><table class="alignedsummary">
63216    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>handleTypeChanged</b></span>(Qt3DRender::QWaitFence::HandleType <i>handleType</i>)</td></tr>
63217    /// </tbody></table></div></div>
63218    #[inline(always)]
63219    #[cfg_attr(
63220        feature = "ritual_rustdoc_nightly",
63221        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63222    )]
63223    #[cfg(any(
63224        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63225        feature = "ritual_rustdoc"
63226    ))]
63227    pub unsafe fn set_handle_type(&self, type_: crate::q_wait_fence::HandleType) {
63228        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_setHandleType(
63229            self as *const crate::QWaitFence as *mut crate::QWaitFence,
63230            type_,
63231        )
63232    }
63233
63234    /// <p>Specifies the maximum amount of time in nanoseconds to wait for the fence to become signaled.</p>
63235    ///
63236    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QWaitFence::setTimeout(quint64 timeout)```</span>.
63237    ///
63238    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#timeout-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the maximum amount of time in nanoseconds to wait for the fence to become signaled.</p>
63239    /// <p><b>Access functions:</b></p>
63240    /// <div class="table"><table class="alignedsummary">
63241    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> quint64 </td><td class="memItemRight bottomAlign"><span class="name"><b>timeout</b></span>() const</td></tr>
63242    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTimeout</b></span>(quint64 <i>timeout</i>)</td></tr>
63243    /// </tbody></table></div>
63244    /// <p><b>Notifier signal:</b></p>
63245    /// <div class="table"><table class="alignedsummary">
63246    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>timeoutChanged</b></span>(quint64 <i>timeoutChanged</i>)</td></tr>
63247    /// </tbody></table></div></div>
63248    #[inline(always)]
63249    #[cfg_attr(
63250        feature = "ritual_rustdoc_nightly",
63251        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63252    )]
63253    #[cfg(any(
63254        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63255        feature = "ritual_rustdoc"
63256    ))]
63257    pub unsafe fn set_timeout(&self, timeout: u64) {
63258        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_setTimeout(
63259            self as *const crate::QWaitFence as *mut crate::QWaitFence,
63260            timeout,
63261        )
63262    }
63263
63264    /// <p>Specifies whether the CPU should be block while waiting for the fence to become signaled. This is false by default.</p>
63265    ///
63266    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QWaitFence::setWaitOnCPU(bool waitOnCPU)```</span>.
63267    ///
63268    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#waitOnCPU-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies whether the CPU should be block while waiting for the fence to become signaled. This is false by default.</p>
63269    /// <p><b>Access functions:</b></p>
63270    /// <div class="table"><table class="alignedsummary">
63271    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>waitOnCPU</b></span>() const</td></tr>
63272    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWaitOnCPU</b></span>(bool <i>waitOnCPU</i>)</td></tr>
63273    /// </tbody></table></div>
63274    /// <p><b>Notifier signal:</b></p>
63275    /// <div class="table"><table class="alignedsummary">
63276    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>waitOnCPUChanged</b></span>(bool <i>waitOnCPU</i>)</td></tr>
63277    /// </tbody></table></div></div>
63278    #[inline(always)]
63279    #[cfg_attr(
63280        feature = "ritual_rustdoc_nightly",
63281        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63282    )]
63283    #[cfg(any(
63284        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63285        feature = "ritual_rustdoc"
63286    ))]
63287    pub unsafe fn set_wait_on_c_p_u(&self, wait_on_c_p_u: bool) {
63288        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_setWaitOnCPU(
63289            self as *const crate::QWaitFence as *mut crate::QWaitFence,
63290            wait_on_c_p_u,
63291        )
63292    }
63293
63294    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
63295    #[inline(always)]
63296    #[cfg_attr(
63297        feature = "ritual_rustdoc_nightly",
63298        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63299    )]
63300    #[cfg(any(
63301        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63302        feature = "ritual_rustdoc"
63303    ))]
63304    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
63305        let ffi_result =
63306            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_staticMetaObject() };
63307        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
63308            .expect("attempted to construct a null Ref")
63309    }
63310
63311    /// <p>Specifies the maximum amount of time in nanoseconds to wait for the fence to become signaled.</p>
63312    ///
63313    /// Calls C++ function: <span style='color: green;'>```quint64 Qt3DRender::QWaitFence::timeout() const```</span>.
63314    ///
63315    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#timeout-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the maximum amount of time in nanoseconds to wait for the fence to become signaled.</p>
63316    /// <p><b>Access functions:</b></p>
63317    /// <div class="table"><table class="alignedsummary">
63318    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> quint64 </td><td class="memItemRight bottomAlign"><span class="name"><b>timeout</b></span>() const</td></tr>
63319    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setTimeout</b></span>(quint64 <i>timeout</i>)</td></tr>
63320    /// </tbody></table></div>
63321    /// <p><b>Notifier signal:</b></p>
63322    /// <div class="table"><table class="alignedsummary">
63323    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>timeoutChanged</b></span>(quint64 <i>timeoutChanged</i>)</td></tr>
63324    /// </tbody></table></div></div>
63325    #[inline(always)]
63326    #[cfg_attr(
63327        feature = "ritual_rustdoc_nightly",
63328        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63329    )]
63330    #[cfg(any(
63331        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63332        feature = "ritual_rustdoc"
63333    ))]
63334    pub unsafe fn timeout(&self) -> u64 {
63335        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_timeout(
63336            self as *const crate::QWaitFence,
63337        )
63338    }
63339
63340    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QWaitFence::tr(const char* s, const char* c, int n)```</span>.
63341    #[inline(always)]
63342    #[cfg_attr(
63343        feature = "ritual_rustdoc_nightly",
63344        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63345    )]
63346    #[cfg(any(
63347        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63348        feature = "ritual_rustdoc"
63349    ))]
63350    pub unsafe fn tr(
63351        s: *const ::std::os::raw::c_char,
63352        c: *const ::std::os::raw::c_char,
63353        n: ::std::os::raw::c_int,
63354    ) -> ::cpp_core::CppBox<::qt_core::QString> {
63355        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_tr(s, c, n) };
63356        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
63357    }
63358
63359    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QWaitFence::trUtf8(const char* s, const char* c, int n)```</span>.
63360    #[inline(always)]
63361    #[cfg_attr(
63362        feature = "ritual_rustdoc_nightly",
63363        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63364    )]
63365    #[cfg(any(
63366        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63367        feature = "ritual_rustdoc"
63368    ))]
63369    pub unsafe fn tr_utf8(
63370        s: *const ::std::os::raw::c_char,
63371        c: *const ::std::os::raw::c_char,
63372        n: ::std::os::raw::c_int,
63373    ) -> ::cpp_core::CppBox<::qt_core::QString> {
63374        let ffi_result =
63375            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_trUtf8(s, c, n) };
63376        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
63377    }
63378
63379    /// <p>Specifies whether the CPU should be block while waiting for the fence to become signaled. This is false by default.</p>
63380    ///
63381    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QWaitFence::waitOnCPU() const```</span>.
63382    ///
63383    /// <a href="http://doc.qt.io/qt-5/qt3drender-qwaitfence.html#waitOnCPU-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies whether the CPU should be block while waiting for the fence to become signaled. This is false by default.</p>
63384    /// <p><b>Access functions:</b></p>
63385    /// <div class="table"><table class="alignedsummary">
63386    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>waitOnCPU</b></span>() const</td></tr>
63387    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setWaitOnCPU</b></span>(bool <i>waitOnCPU</i>)</td></tr>
63388    /// </tbody></table></div>
63389    /// <p><b>Notifier signal:</b></p>
63390    /// <div class="table"><table class="alignedsummary">
63391    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>waitOnCPUChanged</b></span>(bool <i>waitOnCPU</i>)</td></tr>
63392    /// </tbody></table></div></div>
63393    #[inline(always)]
63394    #[cfg_attr(
63395        feature = "ritual_rustdoc_nightly",
63396        doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
63397    )]
63398    #[cfg(any(
63399        any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
63400        feature = "ritual_rustdoc"
63401    ))]
63402    pub unsafe fn wait_on_c_p_u(&self) -> bool {
63403        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_waitOnCPU(
63404            self as *const crate::QWaitFence,
63405        )
63406    }
63407}
63408
63409/// <p>By default, OpenGL writes scene depth information into the depth buffer in the range [0.0, 1.0] with 0.0 corresponding to the near clip plane and 1.0 to the far clip plane. QDepthRange allows mapping these values into a different range so parts of the scene are always rendered in front of or behind other parts. Valid values for near and far are between 0 and 1.</p>
63410///
63411/// C++ class: <span style='color: green;'>```Qt3DRender::QDepthRange```</span>.
63412///
63413/// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>By default, OpenGL writes scene depth information into the depth buffer in the range [0.0, 1.0] with 0.0 corresponding to the near clip plane and 1.0 to the far clip plane. QDepthRange allows mapping these values into a different range so parts of the scene are always rendered in front of or behind other parts. Valid values for near and far are between 0 and 1.</p></div>
63414#[repr(C)]
63415pub struct QDepthRange {
63416    _unused: u8,
63417}
63418impl QDepthRange {
63419    /// <p>The depth buffer value corresponding to the near clip plane. Valid values for are between 0 and 1.</p>
63420    ///
63421    /// Returns a built-in Qt slot `Qt3DRender::QDepthRange::setNearValue` that can be passed to `qt_core::Signal::connect`.
63422    ///
63423    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html#nearValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The depth buffer value corresponding to the near clip plane. Valid values for are between 0 and 1.</p>
63424    /// <p><b>Access functions:</b></p>
63425    /// <div class="table"><table class="alignedsummary">
63426    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> double </td><td class="memItemRight bottomAlign"><span class="name"><b>nearValue</b></span>() const</td></tr>
63427    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNearValue</b></span>(double <i>value</i>)</td></tr>
63428    /// </tbody></table></div>
63429    /// <p><b>Notifier signal:</b></p>
63430    /// <div class="table"><table class="alignedsummary">
63431    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nearValueChanged</b></span>(double <i>nearValue</i>)</td></tr>
63432    /// </tbody></table></div></div>
63433    #[inline(always)]
63434    #[cfg_attr(
63435        feature = "ritual_rustdoc_nightly",
63436        doc(cfg(cpp_lib_version = "5.14.0"))
63437    )]
63438    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63439    pub fn slot_set_near_value(&self) -> ::qt_core::Receiver<(::std::os::raw::c_double,)> {
63440        unsafe {
63441            ::qt_core::Receiver::new(
63442                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
63443                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setNearValue(double)\0"),
63444            )
63445        }
63446    }
63447
63448    /// <p>The depth buffer value corresponding to the far clip plane. Valid values for are between 0 and 1.</p>
63449    ///
63450    /// Returns a built-in Qt slot `Qt3DRender::QDepthRange::setFarValue` that can be passed to `qt_core::Signal::connect`.
63451    ///
63452    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html#farValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The depth buffer value corresponding to the far clip plane. Valid values for are between 0 and 1.</p>
63453    /// <p><b>Access functions:</b></p>
63454    /// <div class="table"><table class="alignedsummary">
63455    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> double </td><td class="memItemRight bottomAlign"><span class="name"><b>farValue</b></span>() const</td></tr>
63456    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFarValue</b></span>(double <i>value</i>)</td></tr>
63457    /// </tbody></table></div>
63458    /// <p><b>Notifier signal:</b></p>
63459    /// <div class="table"><table class="alignedsummary">
63460    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>farValueChanged</b></span>(double <i>farValue</i>)</td></tr>
63461    /// </tbody></table></div></div>
63462    #[inline(always)]
63463    #[cfg_attr(
63464        feature = "ritual_rustdoc_nightly",
63465        doc(cfg(cpp_lib_version = "5.14.0"))
63466    )]
63467    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63468    pub fn slot_set_far_value(&self) -> ::qt_core::Receiver<(::std::os::raw::c_double,)> {
63469        unsafe {
63470            ::qt_core::Receiver::new(
63471                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
63472                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setFarValue(double)\0"),
63473            )
63474        }
63475    }
63476
63477    /// <p>The depth buffer value corresponding to the near clip plane. Valid values for are between 0 and 1.</p>
63478    ///
63479    /// Returns a built-in Qt signal `Qt3DRender::QDepthRange::nearValueChanged` that can be passed to `qt_core::Signal::connect`.
63480    ///
63481    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html#nearValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The depth buffer value corresponding to the near clip plane. Valid values for are between 0 and 1.</p>
63482    /// <p><b>Access functions:</b></p>
63483    /// <div class="table"><table class="alignedsummary">
63484    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> double </td><td class="memItemRight bottomAlign"><span class="name"><b>nearValue</b></span>() const</td></tr>
63485    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNearValue</b></span>(double <i>value</i>)</td></tr>
63486    /// </tbody></table></div>
63487    /// <p><b>Notifier signal:</b></p>
63488    /// <div class="table"><table class="alignedsummary">
63489    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nearValueChanged</b></span>(double <i>nearValue</i>)</td></tr>
63490    /// </tbody></table></div></div>
63491    #[inline(always)]
63492    #[cfg_attr(
63493        feature = "ritual_rustdoc_nightly",
63494        doc(cfg(cpp_lib_version = "5.14.0"))
63495    )]
63496    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63497    pub fn near_value_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_double,)> {
63498        unsafe {
63499            ::qt_core::Signal::new(
63500                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
63501                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2nearValueChanged(double)\0"),
63502            )
63503        }
63504    }
63505
63506    /// <p>The depth buffer value corresponding to the far clip plane. Valid values for are between 0 and 1.</p>
63507    ///
63508    /// Returns a built-in Qt signal `Qt3DRender::QDepthRange::farValueChanged` that can be passed to `qt_core::Signal::connect`.
63509    ///
63510    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html#farValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The depth buffer value corresponding to the far clip plane. Valid values for are between 0 and 1.</p>
63511    /// <p><b>Access functions:</b></p>
63512    /// <div class="table"><table class="alignedsummary">
63513    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> double </td><td class="memItemRight bottomAlign"><span class="name"><b>farValue</b></span>() const</td></tr>
63514    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFarValue</b></span>(double <i>value</i>)</td></tr>
63515    /// </tbody></table></div>
63516    /// <p><b>Notifier signal:</b></p>
63517    /// <div class="table"><table class="alignedsummary">
63518    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>farValueChanged</b></span>(double <i>farValue</i>)</td></tr>
63519    /// </tbody></table></div></div>
63520    #[inline(always)]
63521    #[cfg_attr(
63522        feature = "ritual_rustdoc_nightly",
63523        doc(cfg(cpp_lib_version = "5.14.0"))
63524    )]
63525    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63526    pub fn far_value_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_double,)> {
63527        unsafe {
63528            ::qt_core::Signal::new(
63529                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
63530                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2farValueChanged(double)\0"),
63531            )
63532        }
63533    }
63534
63535    /// <p>The depth buffer value corresponding to the far clip plane. Valid values for are between 0 and 1.</p>
63536    ///
63537    /// Calls C++ function: <span style='color: green;'>```double Qt3DRender::QDepthRange::farValue() const```</span>.
63538    ///
63539    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html#farValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The depth buffer value corresponding to the far clip plane. Valid values for are between 0 and 1.</p>
63540    /// <p><b>Access functions:</b></p>
63541    /// <div class="table"><table class="alignedsummary">
63542    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> double </td><td class="memItemRight bottomAlign"><span class="name"><b>farValue</b></span>() const</td></tr>
63543    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFarValue</b></span>(double <i>value</i>)</td></tr>
63544    /// </tbody></table></div>
63545    /// <p><b>Notifier signal:</b></p>
63546    /// <div class="table"><table class="alignedsummary">
63547    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>farValueChanged</b></span>(double <i>farValue</i>)</td></tr>
63548    /// </tbody></table></div></div>
63549    #[inline(always)]
63550    #[cfg_attr(
63551        feature = "ritual_rustdoc_nightly",
63552        doc(cfg(cpp_lib_version = "5.14.0"))
63553    )]
63554    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63555    pub unsafe fn far_value(&self) -> ::std::os::raw::c_double {
63556        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_farValue(
63557            self as *const crate::QDepthRange,
63558        )
63559    }
63560
63561    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QDepthRange::metaObject() const```</span>.
63562    #[inline(always)]
63563    #[cfg_attr(
63564        feature = "ritual_rustdoc_nightly",
63565        doc(cfg(cpp_lib_version = "5.14.0"))
63566    )]
63567    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63568    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
63569        let ffi_result = {
63570            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_metaObject(
63571                self as *const crate::QDepthRange,
63572            )
63573        };
63574        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
63575    }
63576
63577    /// <p>The depth buffer value corresponding to the near clip plane. Valid values for are between 0 and 1.</p>
63578    ///
63579    /// Calls C++ function: <span style='color: green;'>```double Qt3DRender::QDepthRange::nearValue() const```</span>.
63580    ///
63581    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html#nearValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The depth buffer value corresponding to the near clip plane. Valid values for are between 0 and 1.</p>
63582    /// <p><b>Access functions:</b></p>
63583    /// <div class="table"><table class="alignedsummary">
63584    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> double </td><td class="memItemRight bottomAlign"><span class="name"><b>nearValue</b></span>() const</td></tr>
63585    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNearValue</b></span>(double <i>value</i>)</td></tr>
63586    /// </tbody></table></div>
63587    /// <p><b>Notifier signal:</b></p>
63588    /// <div class="table"><table class="alignedsummary">
63589    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nearValueChanged</b></span>(double <i>nearValue</i>)</td></tr>
63590    /// </tbody></table></div></div>
63591    #[inline(always)]
63592    #[cfg_attr(
63593        feature = "ritual_rustdoc_nightly",
63594        doc(cfg(cpp_lib_version = "5.14.0"))
63595    )]
63596    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63597    pub unsafe fn near_value(&self) -> ::std::os::raw::c_double {
63598        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_nearValue(
63599            self as *const crate::QDepthRange,
63600        )
63601    }
63602
63603    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDepthRange::QDepthRange(Qt3DCore::QNode* parent = …)```</span>.
63604    #[inline(always)]
63605    #[cfg_attr(
63606        feature = "ritual_rustdoc_nightly",
63607        doc(cfg(cpp_lib_version = "5.14.0"))
63608    )]
63609    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63610    pub unsafe fn new_1a(
63611        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
63612    ) -> ::qt_core::QBox<crate::QDepthRange> {
63613        let ffi_result = {
63614            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_QDepthRange(
63615                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
63616                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
63617            )
63618        };
63619        ::qt_core::QBox::from_raw(ffi_result)
63620    }
63621
63622    /// <p>By default, OpenGL writes scene depth information into the depth buffer in the range [0.0, 1.0] with 0.0 corresponding to the near clip plane and 1.0 to the far clip plane. QDepthRange allows mapping these values into a different range so parts of the scene are always rendered in front of or behind other parts. Valid values for near and far are between 0 and 1.</p>
63623    ///
63624    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QDepthRange::QDepthRange()```</span>.
63625    ///
63626    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>By default, OpenGL writes scene depth information into the depth buffer in the range [0.0, 1.0] with 0.0 corresponding to the near clip plane and 1.0 to the far clip plane. QDepthRange allows mapping these values into a different range so parts of the scene are always rendered in front of or behind other parts. Valid values for near and far are between 0 and 1.</p></div>
63627    #[inline(always)]
63628    #[cfg_attr(
63629        feature = "ritual_rustdoc_nightly",
63630        doc(cfg(cpp_lib_version = "5.14.0"))
63631    )]
63632    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63633    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QDepthRange> {
63634        let ffi_result =
63635            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_QDepthRange1() };
63636        ::qt_core::QBox::from_raw(ffi_result)
63637    }
63638
63639    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QDepthRange::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
63640    #[inline(always)]
63641    #[cfg_attr(
63642        feature = "ritual_rustdoc_nightly",
63643        doc(cfg(cpp_lib_version = "5.14.0"))
63644    )]
63645    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63646    pub unsafe fn qt_metacall(
63647        &self,
63648        arg1: ::qt_core::q_meta_object::Call,
63649        arg2: ::std::os::raw::c_int,
63650        arg3: *mut *mut ::std::ffi::c_void,
63651    ) -> ::std::os::raw::c_int {
63652        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_qt_metacall(
63653            self as *const crate::QDepthRange as *mut crate::QDepthRange,
63654            arg1,
63655            arg2,
63656            arg3,
63657        )
63658    }
63659
63660    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QDepthRange::qt_metacast(const char* arg1)```</span>.
63661    #[inline(always)]
63662    #[cfg_attr(
63663        feature = "ritual_rustdoc_nightly",
63664        doc(cfg(cpp_lib_version = "5.14.0"))
63665    )]
63666    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63667    pub unsafe fn qt_metacast(
63668        &self,
63669        arg1: *const ::std::os::raw::c_char,
63670    ) -> *mut ::std::ffi::c_void {
63671        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_qt_metacast(
63672            self as *const crate::QDepthRange as *mut crate::QDepthRange,
63673            arg1,
63674        )
63675    }
63676
63677    /// <p>The depth buffer value corresponding to the far clip plane. Valid values for are between 0 and 1.</p>
63678    ///
63679    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QDepthRange::setFarValue(double value)```</span>.
63680    ///
63681    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html#farValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The depth buffer value corresponding to the far clip plane. Valid values for are between 0 and 1.</p>
63682    /// <p><b>Access functions:</b></p>
63683    /// <div class="table"><table class="alignedsummary">
63684    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> double </td><td class="memItemRight bottomAlign"><span class="name"><b>farValue</b></span>() const</td></tr>
63685    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFarValue</b></span>(double <i>value</i>)</td></tr>
63686    /// </tbody></table></div>
63687    /// <p><b>Notifier signal:</b></p>
63688    /// <div class="table"><table class="alignedsummary">
63689    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>farValueChanged</b></span>(double <i>farValue</i>)</td></tr>
63690    /// </tbody></table></div></div>
63691    #[inline(always)]
63692    #[cfg_attr(
63693        feature = "ritual_rustdoc_nightly",
63694        doc(cfg(cpp_lib_version = "5.14.0"))
63695    )]
63696    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63697    pub unsafe fn set_far_value(&self, value: ::std::os::raw::c_double) {
63698        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_setFarValue(
63699            self as *const crate::QDepthRange as *mut crate::QDepthRange,
63700            value,
63701        )
63702    }
63703
63704    /// <p>The depth buffer value corresponding to the near clip plane. Valid values for are between 0 and 1.</p>
63705    ///
63706    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QDepthRange::setNearValue(double value)```</span>.
63707    ///
63708    /// <a href="http://doc.qt.io/qt-5/qt3drender-qdepthrange.html#nearValue-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The depth buffer value corresponding to the near clip plane. Valid values for are between 0 and 1.</p>
63709    /// <p><b>Access functions:</b></p>
63710    /// <div class="table"><table class="alignedsummary">
63711    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> double </td><td class="memItemRight bottomAlign"><span class="name"><b>nearValue</b></span>() const</td></tr>
63712    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setNearValue</b></span>(double <i>value</i>)</td></tr>
63713    /// </tbody></table></div>
63714    /// <p><b>Notifier signal:</b></p>
63715    /// <div class="table"><table class="alignedsummary">
63716    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>nearValueChanged</b></span>(double <i>nearValue</i>)</td></tr>
63717    /// </tbody></table></div></div>
63718    #[inline(always)]
63719    #[cfg_attr(
63720        feature = "ritual_rustdoc_nightly",
63721        doc(cfg(cpp_lib_version = "5.14.0"))
63722    )]
63723    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63724    pub unsafe fn set_near_value(&self, value: ::std::os::raw::c_double) {
63725        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_setNearValue(
63726            self as *const crate::QDepthRange as *mut crate::QDepthRange,
63727            value,
63728        )
63729    }
63730
63731    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
63732    #[inline(always)]
63733    #[cfg_attr(
63734        feature = "ritual_rustdoc_nightly",
63735        doc(cfg(cpp_lib_version = "5.14.0"))
63736    )]
63737    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63738    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
63739        let ffi_result =
63740            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_staticMetaObject() };
63741        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
63742            .expect("attempted to construct a null Ref")
63743    }
63744
63745    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDepthRange::tr(const char* s, const char* c, int n)```</span>.
63746    #[inline(always)]
63747    #[cfg_attr(
63748        feature = "ritual_rustdoc_nightly",
63749        doc(cfg(cpp_lib_version = "5.14.0"))
63750    )]
63751    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63752    pub unsafe fn tr(
63753        s: *const ::std::os::raw::c_char,
63754        c: *const ::std::os::raw::c_char,
63755        n: ::std::os::raw::c_int,
63756    ) -> ::cpp_core::CppBox<::qt_core::QString> {
63757        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_tr(s, c, n) };
63758        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
63759    }
63760
63761    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QDepthRange::trUtf8(const char* s, const char* c, int n)```</span>.
63762    #[inline(always)]
63763    #[cfg_attr(
63764        feature = "ritual_rustdoc_nightly",
63765        doc(cfg(cpp_lib_version = "5.14.0"))
63766    )]
63767    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63768    pub unsafe fn tr_utf8(
63769        s: *const ::std::os::raw::c_char,
63770        c: *const ::std::os::raw::c_char,
63771        n: ::std::os::raw::c_int,
63772    ) -> ::cpp_core::CppBox<::qt_core::QString> {
63773        let ffi_result =
63774            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_trUtf8(s, c, n) };
63775        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
63776    }
63777}
63778
63779/// <p>When disabled, a <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">Qt3DRender::QNoPicking</a> node won't prevent picking from being performed. Toggling the enabled property is therefore a way to make a <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">Qt3DRender::QNoPicking</a> active or inactive.</p>
63780///
63781/// C++ class: <span style='color: green;'>```Qt3DRender::QNoPicking```</span>.
63782///
63783/// <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>When disabled, a <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">Qt3DRender::QNoPicking</a> node won't prevent picking from being performed. Toggling the enabled property is therefore a way to make a <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">Qt3DRender::QNoPicking</a> active or inactive.</p>
63784/// <p>When using multiple subviewports in the FrameGraph, QNoPicking can be useful to prevent picking conflicts between overlapping viewports or non visual ones. It can also be used as an optimization to prevent unnecessary work for hidden viewports or for sections of the scenes which don't require any picking.</p>
63785/// <pre class="cpp">
63786///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span> <span class="operator">*</span>viewport <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span>();
63787///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a></span> <span class="operator">*</span>cameraSelector <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a></span>(viewport);
63788///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type">QNoPicking</span> <span class="operator">*</span>noPicking <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type">QNoPicking</span>(cameraSelector);
63789///
63790///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span> <span class="operator">*</span>clearBuffers <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span>(noPicking);
63791///   clearBuffers<span class="operator">-</span><span class="operator">&gt;</span>setBuffers(<span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span><span class="operator">::</span>ColorDepthBuffer);
63792///
63793///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span> <span class="operator">*</span>mainPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span>(cameraSelector);
63794///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
63795///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span> <span class="operator">*</span>previewPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span>(cameraSelector);
63796///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
63797///
63798/// </pre></div>
63799#[repr(C)]
63800pub struct QNoPicking {
63801    _unused: u8,
63802}
63803impl QNoPicking {
63804    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QNoPicking::metaObject() const```</span>.
63805    #[inline(always)]
63806    #[cfg_attr(
63807        feature = "ritual_rustdoc_nightly",
63808        doc(cfg(cpp_lib_version = "5.14.0"))
63809    )]
63810    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63811    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
63812        let ffi_result = {
63813            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoPicking_metaObject(
63814                self as *const crate::QNoPicking,
63815            )
63816        };
63817        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
63818    }
63819
63820    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QNoPicking::QNoPicking(Qt3DCore::QNode* parent = …)```</span>.
63821    #[inline(always)]
63822    #[cfg_attr(
63823        feature = "ritual_rustdoc_nightly",
63824        doc(cfg(cpp_lib_version = "5.14.0"))
63825    )]
63826    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63827    pub unsafe fn new_1a(
63828        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
63829    ) -> ::qt_core::QBox<crate::QNoPicking> {
63830        let ffi_result = {
63831            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoPicking_QNoPicking(
63832                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
63833                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
63834            )
63835        };
63836        ::qt_core::QBox::from_raw(ffi_result)
63837    }
63838
63839    /// <p>When disabled, a <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">Qt3DRender::QNoPicking</a> node won't prevent picking from being performed. Toggling the enabled property is therefore a way to make a <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">Qt3DRender::QNoPicking</a> active or inactive.</p>
63840    ///
63841    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QNoPicking::QNoPicking()```</span>.
63842    ///
63843    /// <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>When disabled, a <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">Qt3DRender::QNoPicking</a> node won't prevent picking from being performed. Toggling the enabled property is therefore a way to make a <a href="http://doc.qt.io/qt-5/qt3drender-qnopicking.html">Qt3DRender::QNoPicking</a> active or inactive.</p>
63844    /// <p>When using multiple subviewports in the FrameGraph, QNoPicking can be useful to prevent picking conflicts between overlapping viewports or non visual ones. It can also be used as an optimization to prevent unnecessary work for hidden viewports or for sections of the scenes which don't require any picking.</p>
63845    /// <pre class="cpp">
63846    ///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span> <span class="operator">*</span>viewport <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qviewport.html">QViewport</a></span>();
63847    ///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a></span> <span class="operator">*</span>cameraSelector <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qcameraselector.html">QCameraSelector</a></span>(viewport);
63848    ///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type">QNoPicking</span> <span class="operator">*</span>noPicking <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type">QNoPicking</span>(cameraSelector);
63849    ///
63850    ///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span> <span class="operator">*</span>clearBuffers <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span>(noPicking);
63851    ///   clearBuffers<span class="operator">-</span><span class="operator">&gt;</span>setBuffers(<span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qclearbuffers.html">QClearBuffers</a></span><span class="operator">::</span>ColorDepthBuffer);
63852    ///
63853    ///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span> <span class="operator">*</span>mainPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span>(cameraSelector);
63854    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
63855    ///   <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span> <span class="operator">*</span>previewPass <span class="operator">=</span> <span class="keyword">new</span> <span class="type">Qt3DRender</span><span class="operator">::</span><span class="type"><a href="http://doc.qt.io/qt-5/qt3drender-qrenderpassfilter.html">QRenderPassFilter</a></span>(cameraSelector);
63856    ///   <span class="operator">.</span><span class="operator">.</span><span class="operator">.</span><span class="operator">.</span>
63857    ///
63858    /// </pre></div>
63859    #[inline(always)]
63860    #[cfg_attr(
63861        feature = "ritual_rustdoc_nightly",
63862        doc(cfg(cpp_lib_version = "5.14.0"))
63863    )]
63864    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63865    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QNoPicking> {
63866        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoPicking_QNoPicking1() };
63867        ::qt_core::QBox::from_raw(ffi_result)
63868    }
63869
63870    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QNoPicking::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
63871    #[inline(always)]
63872    #[cfg_attr(
63873        feature = "ritual_rustdoc_nightly",
63874        doc(cfg(cpp_lib_version = "5.14.0"))
63875    )]
63876    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63877    pub unsafe fn qt_metacall(
63878        &self,
63879        arg1: ::qt_core::q_meta_object::Call,
63880        arg2: ::std::os::raw::c_int,
63881        arg3: *mut *mut ::std::ffi::c_void,
63882    ) -> ::std::os::raw::c_int {
63883        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoPicking_qt_metacall(
63884            self as *const crate::QNoPicking as *mut crate::QNoPicking,
63885            arg1,
63886            arg2,
63887            arg3,
63888        )
63889    }
63890
63891    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QNoPicking::qt_metacast(const char* arg1)```</span>.
63892    #[inline(always)]
63893    #[cfg_attr(
63894        feature = "ritual_rustdoc_nightly",
63895        doc(cfg(cpp_lib_version = "5.14.0"))
63896    )]
63897    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63898    pub unsafe fn qt_metacast(
63899        &self,
63900        arg1: *const ::std::os::raw::c_char,
63901    ) -> *mut ::std::ffi::c_void {
63902        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoPicking_qt_metacast(
63903            self as *const crate::QNoPicking as *mut crate::QNoPicking,
63904            arg1,
63905        )
63906    }
63907
63908    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
63909    #[inline(always)]
63910    #[cfg_attr(
63911        feature = "ritual_rustdoc_nightly",
63912        doc(cfg(cpp_lib_version = "5.14.0"))
63913    )]
63914    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63915    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
63916        let ffi_result =
63917            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoPicking_staticMetaObject() };
63918        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
63919            .expect("attempted to construct a null Ref")
63920    }
63921
63922    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QNoPicking::tr(const char* s, const char* c, int n)```</span>.
63923    #[inline(always)]
63924    #[cfg_attr(
63925        feature = "ritual_rustdoc_nightly",
63926        doc(cfg(cpp_lib_version = "5.14.0"))
63927    )]
63928    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63929    pub unsafe fn tr(
63930        s: *const ::std::os::raw::c_char,
63931        c: *const ::std::os::raw::c_char,
63932        n: ::std::os::raw::c_int,
63933    ) -> ::cpp_core::CppBox<::qt_core::QString> {
63934        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoPicking_tr(s, c, n) };
63935        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
63936    }
63937
63938    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QNoPicking::trUtf8(const char* s, const char* c, int n)```</span>.
63939    #[inline(always)]
63940    #[cfg_attr(
63941        feature = "ritual_rustdoc_nightly",
63942        doc(cfg(cpp_lib_version = "5.14.0"))
63943    )]
63944    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
63945    pub unsafe fn tr_utf8(
63946        s: *const ::std::os::raw::c_char,
63947        c: *const ::std::os::raw::c_char,
63948        n: ::std::os::raw::c_int,
63949    ) -> ::cpp_core::CppBox<::qt_core::QString> {
63950        let ffi_result =
63951            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoPicking_trUtf8(s, c, n) };
63952        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
63953    }
63954}
63955
63956pub mod q_raster_mode {
63957    //! C++ type: <span style='color: green;'>```Qt3DRender::QRasterMode```</span>
63958
63959    /// C++ enum: <span style='color: green;'>```Qt3DRender::QRasterMode::RasterMode```</span>.
63960    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
63961    #[repr(transparent)]
63962    pub struct RasterMode(::std::os::raw::c_int);
63963
63964    impl From<::std::os::raw::c_int> for RasterMode {
63965        fn from(value: ::std::os::raw::c_int) -> Self {
63966            RasterMode(value)
63967        }
63968    }
63969
63970    impl From<RasterMode> for ::std::os::raw::c_int {
63971        fn from(value: RasterMode) -> Self {
63972            value.0
63973        }
63974    }
63975
63976    impl RasterMode {
63977        pub fn to_int(&self) -> ::std::os::raw::c_int {
63978            self.0
63979        }
63980    }
63981
63982    impl RasterMode {
63983        /// C++ enum variant: <span style='color: green;'>```Points = 6912```</span>
63984        #[allow(non_upper_case_globals)]
63985        pub const Points: crate::q_raster_mode::RasterMode = crate::q_raster_mode::RasterMode(6912);
63986        /// C++ enum variant: <span style='color: green;'>```Lines = 6913```</span>
63987        #[allow(non_upper_case_globals)]
63988        pub const Lines: crate::q_raster_mode::RasterMode = crate::q_raster_mode::RasterMode(6913);
63989        /// C++ enum variant: <span style='color: green;'>```Fill = 6914```</span>
63990        #[allow(non_upper_case_globals)]
63991        pub const Fill: crate::q_raster_mode::RasterMode = crate::q_raster_mode::RasterMode(6914);
63992    }
63993
63994    /// C++ enum: <span style='color: green;'>```Qt3DRender::QRasterMode::FaceMode```</span>.
63995    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
63996    #[repr(transparent)]
63997    pub struct FaceMode(::std::os::raw::c_int);
63998
63999    impl From<::std::os::raw::c_int> for FaceMode {
64000        fn from(value: ::std::os::raw::c_int) -> Self {
64001            FaceMode(value)
64002        }
64003    }
64004
64005    impl From<FaceMode> for ::std::os::raw::c_int {
64006        fn from(value: FaceMode) -> Self {
64007            value.0
64008        }
64009    }
64010
64011    impl FaceMode {
64012        pub fn to_int(&self) -> ::std::os::raw::c_int {
64013            self.0
64014        }
64015    }
64016
64017    impl FaceMode {
64018        /// C++ enum variant: <span style='color: green;'>```Front = 1028```</span>
64019        #[allow(non_upper_case_globals)]
64020        pub const Front: crate::q_raster_mode::FaceMode = crate::q_raster_mode::FaceMode(1028);
64021        /// C++ enum variant: <span style='color: green;'>```Back = 1029```</span>
64022        #[allow(non_upper_case_globals)]
64023        pub const Back: crate::q_raster_mode::FaceMode = crate::q_raster_mode::FaceMode(1029);
64024        /// C++ enum variant: <span style='color: green;'>```FrontAndBack = 1032```</span>
64025        #[allow(non_upper_case_globals)]
64026        pub const FrontAndBack: crate::q_raster_mode::FaceMode =
64027            crate::q_raster_mode::FaceMode(1032);
64028    }
64029}
64030/// <p>The QRasterMode class is used to control the rasterization step of the primitives at render time. This can be used to choose whether we only want to show points, edges or fill a primitive.</p>
64031///
64032/// C++ class: <span style='color: green;'>```Qt3DRender::QRasterMode```</span>.
64033///
64034/// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The QRasterMode class is used to control the rasterization step of the primitives at render time. This can be used to choose whether we only want to show points, edges or fill a primitive.</p>
64035/// <p><b>Note: </b>This is not supported when rendering on OpenGL ES 2.0 platforms.</p></div>
64036#[repr(C)]
64037pub struct QRasterMode {
64038    _unused: u8,
64039}
64040impl QRasterMode {
64041    /// <p>Holds the raster mode to be used.</p>
64042    ///
64043    /// Returns a built-in Qt slot `Qt3DRender::QRasterMode::setRasterMode` that can be passed to `qt_core::Signal::connect`.
64044    ///
64045    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html#rasterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the raster mode to be used.</p>
64046    /// <p><b>Access functions:</b></p>
64047    /// <div class="table"><table class="alignedsummary">
64048    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRasterMode::RasterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>rasterMode</b></span>() const</td></tr>
64049    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRasterMode</b></span>(Qt3DRender::QRasterMode::RasterMode <i>rasterMode</i>)</td></tr>
64050    /// </tbody></table></div>
64051    /// <p><b>Notifier signal:</b></p>
64052    /// <div class="table"><table class="alignedsummary">
64053    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>rasterModeChanged</b></span>(Qt3DRender::QRasterMode::RasterMode <i>rasterMode</i>)</td></tr>
64054    /// </tbody></table></div></div>
64055    #[inline(always)]
64056    #[cfg_attr(
64057        feature = "ritual_rustdoc_nightly",
64058        doc(cfg(cpp_lib_version = "5.14.0"))
64059    )]
64060    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64061    pub fn slot_set_raster_mode(&self) -> ::qt_core::Receiver<(crate::q_raster_mode::RasterMode,)> {
64062        unsafe {
64063            ::qt_core::Receiver::new(
64064                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64065                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
64066                    b"1setRasterMode(Qt3DRender::QRasterMode::RasterMode)\0",
64067                ),
64068            )
64069        }
64070    }
64071
64072    /// <p>Holds the face mode to be used. Controls on which face the raster mode is to be applied.</p>
64073    ///
64074    /// Returns a built-in Qt slot `Qt3DRender::QRasterMode::setFaceMode` that can be passed to `qt_core::Signal::connect`.
64075    ///
64076    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html#faceMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the face mode to be used. Controls on which face the raster mode is to be applied.</p>
64077    /// <p><b>Access functions:</b></p>
64078    /// <div class="table"><table class="alignedsummary">
64079    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRasterMode::FaceMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceMode</b></span>() const</td></tr>
64080    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFaceMode</b></span>(Qt3DRender::QRasterMode::FaceMode <i>faceMode</i>)</td></tr>
64081    /// </tbody></table></div>
64082    /// <p><b>Notifier signal:</b></p>
64083    /// <div class="table"><table class="alignedsummary">
64084    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceModeChanged</b></span>(Qt3DRender::QRasterMode::FaceMode <i>faceMode</i>)</td></tr>
64085    /// </tbody></table></div></div>
64086    #[inline(always)]
64087    #[cfg_attr(
64088        feature = "ritual_rustdoc_nightly",
64089        doc(cfg(cpp_lib_version = "5.14.0"))
64090    )]
64091    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64092    pub fn slot_set_face_mode(&self) -> ::qt_core::Receiver<(crate::q_raster_mode::FaceMode,)> {
64093        unsafe {
64094            ::qt_core::Receiver::new(
64095                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64096                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
64097                    b"1setFaceMode(Qt3DRender::QRasterMode::FaceMode)\0",
64098                ),
64099            )
64100        }
64101    }
64102
64103    /// <p>Holds the raster mode to be used.</p>
64104    ///
64105    /// Returns a built-in Qt signal `Qt3DRender::QRasterMode::rasterModeChanged` that can be passed to `qt_core::Signal::connect`.
64106    ///
64107    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html#rasterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the raster mode to be used.</p>
64108    /// <p><b>Access functions:</b></p>
64109    /// <div class="table"><table class="alignedsummary">
64110    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRasterMode::RasterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>rasterMode</b></span>() const</td></tr>
64111    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRasterMode</b></span>(Qt3DRender::QRasterMode::RasterMode <i>rasterMode</i>)</td></tr>
64112    /// </tbody></table></div>
64113    /// <p><b>Notifier signal:</b></p>
64114    /// <div class="table"><table class="alignedsummary">
64115    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>rasterModeChanged</b></span>(Qt3DRender::QRasterMode::RasterMode <i>rasterMode</i>)</td></tr>
64116    /// </tbody></table></div></div>
64117    #[inline(always)]
64118    #[cfg_attr(
64119        feature = "ritual_rustdoc_nightly",
64120        doc(cfg(cpp_lib_version = "5.14.0"))
64121    )]
64122    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64123    pub fn raster_mode_changed(&self) -> ::qt_core::Signal<(crate::q_raster_mode::RasterMode,)> {
64124        unsafe {
64125            ::qt_core::Signal::new(
64126                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64127                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
64128                    b"2rasterModeChanged(Qt3DRender::QRasterMode::RasterMode)\0",
64129                ),
64130            )
64131        }
64132    }
64133
64134    /// <p>Holds the face mode to be used. Controls on which face the raster mode is to be applied.</p>
64135    ///
64136    /// Returns a built-in Qt signal `Qt3DRender::QRasterMode::faceModeChanged` that can be passed to `qt_core::Signal::connect`.
64137    ///
64138    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html#faceMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the face mode to be used. Controls on which face the raster mode is to be applied.</p>
64139    /// <p><b>Access functions:</b></p>
64140    /// <div class="table"><table class="alignedsummary">
64141    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRasterMode::FaceMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceMode</b></span>() const</td></tr>
64142    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFaceMode</b></span>(Qt3DRender::QRasterMode::FaceMode <i>faceMode</i>)</td></tr>
64143    /// </tbody></table></div>
64144    /// <p><b>Notifier signal:</b></p>
64145    /// <div class="table"><table class="alignedsummary">
64146    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceModeChanged</b></span>(Qt3DRender::QRasterMode::FaceMode <i>faceMode</i>)</td></tr>
64147    /// </tbody></table></div></div>
64148    #[inline(always)]
64149    #[cfg_attr(
64150        feature = "ritual_rustdoc_nightly",
64151        doc(cfg(cpp_lib_version = "5.14.0"))
64152    )]
64153    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64154    pub fn face_mode_changed(&self) -> ::qt_core::Signal<(crate::q_raster_mode::FaceMode,)> {
64155        unsafe {
64156            ::qt_core::Signal::new(
64157                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64158                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
64159                    b"2faceModeChanged(Qt3DRender::QRasterMode::FaceMode)\0",
64160                ),
64161            )
64162        }
64163    }
64164
64165    /// <p>Holds the face mode to be used. Controls on which face the raster mode is to be applied.</p>
64166    ///
64167    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRasterMode::FaceMode Qt3DRender::QRasterMode::faceMode() const```</span>.
64168    ///
64169    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html#faceMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the face mode to be used. Controls on which face the raster mode is to be applied.</p>
64170    /// <p><b>Access functions:</b></p>
64171    /// <div class="table"><table class="alignedsummary">
64172    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRasterMode::FaceMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceMode</b></span>() const</td></tr>
64173    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFaceMode</b></span>(Qt3DRender::QRasterMode::FaceMode <i>faceMode</i>)</td></tr>
64174    /// </tbody></table></div>
64175    /// <p><b>Notifier signal:</b></p>
64176    /// <div class="table"><table class="alignedsummary">
64177    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceModeChanged</b></span>(Qt3DRender::QRasterMode::FaceMode <i>faceMode</i>)</td></tr>
64178    /// </tbody></table></div></div>
64179    #[inline(always)]
64180    #[cfg_attr(
64181        feature = "ritual_rustdoc_nightly",
64182        doc(cfg(cpp_lib_version = "5.14.0"))
64183    )]
64184    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64185    pub unsafe fn face_mode(&self) -> crate::q_raster_mode::FaceMode {
64186        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_faceMode(
64187            self as *const crate::QRasterMode,
64188        )
64189    }
64190
64191    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QRasterMode::metaObject() const```</span>.
64192    #[inline(always)]
64193    #[cfg_attr(
64194        feature = "ritual_rustdoc_nightly",
64195        doc(cfg(cpp_lib_version = "5.14.0"))
64196    )]
64197    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64198    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
64199        let ffi_result = {
64200            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_metaObject(
64201                self as *const crate::QRasterMode,
64202            )
64203        };
64204        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
64205    }
64206
64207    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRasterMode::QRasterMode(Qt3DCore::QNode* parent = …)```</span>.
64208    #[inline(always)]
64209    #[cfg_attr(
64210        feature = "ritual_rustdoc_nightly",
64211        doc(cfg(cpp_lib_version = "5.14.0"))
64212    )]
64213    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64214    pub unsafe fn new_1a(
64215        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
64216    ) -> ::qt_core::QBox<crate::QRasterMode> {
64217        let ffi_result = {
64218            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_QRasterMode(
64219                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
64220                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
64221            )
64222        };
64223        ::qt_core::QBox::from_raw(ffi_result)
64224    }
64225
64226    /// <p>The QRasterMode class is used to control the rasterization step of the primitives at render time. This can be used to choose whether we only want to show points, edges or fill a primitive.</p>
64227    ///
64228    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QRasterMode::QRasterMode()```</span>.
64229    ///
64230    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The QRasterMode class is used to control the rasterization step of the primitives at render time. This can be used to choose whether we only want to show points, edges or fill a primitive.</p>
64231    /// <p><b>Note: </b>This is not supported when rendering on OpenGL ES 2.0 platforms.</p></div>
64232    #[inline(always)]
64233    #[cfg_attr(
64234        feature = "ritual_rustdoc_nightly",
64235        doc(cfg(cpp_lib_version = "5.14.0"))
64236    )]
64237    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64238    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QRasterMode> {
64239        let ffi_result =
64240            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_QRasterMode1() };
64241        ::qt_core::QBox::from_raw(ffi_result)
64242    }
64243
64244    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QRasterMode::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
64245    #[inline(always)]
64246    #[cfg_attr(
64247        feature = "ritual_rustdoc_nightly",
64248        doc(cfg(cpp_lib_version = "5.14.0"))
64249    )]
64250    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64251    pub unsafe fn qt_metacall(
64252        &self,
64253        arg1: ::qt_core::q_meta_object::Call,
64254        arg2: ::std::os::raw::c_int,
64255        arg3: *mut *mut ::std::ffi::c_void,
64256    ) -> ::std::os::raw::c_int {
64257        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_qt_metacall(
64258            self as *const crate::QRasterMode as *mut crate::QRasterMode,
64259            arg1,
64260            arg2,
64261            arg3,
64262        )
64263    }
64264
64265    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QRasterMode::qt_metacast(const char* arg1)```</span>.
64266    #[inline(always)]
64267    #[cfg_attr(
64268        feature = "ritual_rustdoc_nightly",
64269        doc(cfg(cpp_lib_version = "5.14.0"))
64270    )]
64271    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64272    pub unsafe fn qt_metacast(
64273        &self,
64274        arg1: *const ::std::os::raw::c_char,
64275    ) -> *mut ::std::ffi::c_void {
64276        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_qt_metacast(
64277            self as *const crate::QRasterMode as *mut crate::QRasterMode,
64278            arg1,
64279        )
64280    }
64281
64282    /// <p>Holds the raster mode to be used.</p>
64283    ///
64284    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRasterMode::RasterMode Qt3DRender::QRasterMode::rasterMode() const```</span>.
64285    ///
64286    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html#rasterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the raster mode to be used.</p>
64287    /// <p><b>Access functions:</b></p>
64288    /// <div class="table"><table class="alignedsummary">
64289    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRasterMode::RasterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>rasterMode</b></span>() const</td></tr>
64290    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRasterMode</b></span>(Qt3DRender::QRasterMode::RasterMode <i>rasterMode</i>)</td></tr>
64291    /// </tbody></table></div>
64292    /// <p><b>Notifier signal:</b></p>
64293    /// <div class="table"><table class="alignedsummary">
64294    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>rasterModeChanged</b></span>(Qt3DRender::QRasterMode::RasterMode <i>rasterMode</i>)</td></tr>
64295    /// </tbody></table></div></div>
64296    #[inline(always)]
64297    #[cfg_attr(
64298        feature = "ritual_rustdoc_nightly",
64299        doc(cfg(cpp_lib_version = "5.14.0"))
64300    )]
64301    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64302    pub unsafe fn raster_mode(&self) -> crate::q_raster_mode::RasterMode {
64303        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_rasterMode(
64304            self as *const crate::QRasterMode,
64305        )
64306    }
64307
64308    /// <p>Holds the face mode to be used. Controls on which face the raster mode is to be applied.</p>
64309    ///
64310    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRasterMode::setFaceMode(Qt3DRender::QRasterMode::FaceMode faceMode)```</span>.
64311    ///
64312    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html#faceMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the face mode to be used. Controls on which face the raster mode is to be applied.</p>
64313    /// <p><b>Access functions:</b></p>
64314    /// <div class="table"><table class="alignedsummary">
64315    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRasterMode::FaceMode </td><td class="memItemRight bottomAlign"><span class="name"><b>faceMode</b></span>() const</td></tr>
64316    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFaceMode</b></span>(Qt3DRender::QRasterMode::FaceMode <i>faceMode</i>)</td></tr>
64317    /// </tbody></table></div>
64318    /// <p><b>Notifier signal:</b></p>
64319    /// <div class="table"><table class="alignedsummary">
64320    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>faceModeChanged</b></span>(Qt3DRender::QRasterMode::FaceMode <i>faceMode</i>)</td></tr>
64321    /// </tbody></table></div></div>
64322    #[inline(always)]
64323    #[cfg_attr(
64324        feature = "ritual_rustdoc_nightly",
64325        doc(cfg(cpp_lib_version = "5.14.0"))
64326    )]
64327    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64328    pub unsafe fn set_face_mode(&self, face_mode: crate::q_raster_mode::FaceMode) {
64329        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_setFaceMode(
64330            self as *const crate::QRasterMode as *mut crate::QRasterMode,
64331            face_mode,
64332        )
64333    }
64334
64335    /// <p>Holds the raster mode to be used.</p>
64336    ///
64337    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QRasterMode::setRasterMode(Qt3DRender::QRasterMode::RasterMode rasterMode)```</span>.
64338    ///
64339    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrastermode.html#rasterMode-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds the raster mode to be used.</p>
64340    /// <p><b>Access functions:</b></p>
64341    /// <div class="table"><table class="alignedsummary">
64342    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QRasterMode::RasterMode </td><td class="memItemRight bottomAlign"><span class="name"><b>rasterMode</b></span>() const</td></tr>
64343    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setRasterMode</b></span>(Qt3DRender::QRasterMode::RasterMode <i>rasterMode</i>)</td></tr>
64344    /// </tbody></table></div>
64345    /// <p><b>Notifier signal:</b></p>
64346    /// <div class="table"><table class="alignedsummary">
64347    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>rasterModeChanged</b></span>(Qt3DRender::QRasterMode::RasterMode <i>rasterMode</i>)</td></tr>
64348    /// </tbody></table></div></div>
64349    #[inline(always)]
64350    #[cfg_attr(
64351        feature = "ritual_rustdoc_nightly",
64352        doc(cfg(cpp_lib_version = "5.14.0"))
64353    )]
64354    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64355    pub unsafe fn set_raster_mode(&self, raster_mode: crate::q_raster_mode::RasterMode) {
64356        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_setRasterMode(
64357            self as *const crate::QRasterMode as *mut crate::QRasterMode,
64358            raster_mode,
64359        )
64360    }
64361
64362    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
64363    #[inline(always)]
64364    #[cfg_attr(
64365        feature = "ritual_rustdoc_nightly",
64366        doc(cfg(cpp_lib_version = "5.14.0"))
64367    )]
64368    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64369    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
64370        let ffi_result =
64371            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_staticMetaObject() };
64372        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
64373            .expect("attempted to construct a null Ref")
64374    }
64375
64376    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRasterMode::tr(const char* s, const char* c, int n)```</span>.
64377    #[inline(always)]
64378    #[cfg_attr(
64379        feature = "ritual_rustdoc_nightly",
64380        doc(cfg(cpp_lib_version = "5.14.0"))
64381    )]
64382    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64383    pub unsafe fn tr(
64384        s: *const ::std::os::raw::c_char,
64385        c: *const ::std::os::raw::c_char,
64386        n: ::std::os::raw::c_int,
64387    ) -> ::cpp_core::CppBox<::qt_core::QString> {
64388        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_tr(s, c, n) };
64389        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
64390    }
64391
64392    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QRasterMode::trUtf8(const char* s, const char* c, int n)```</span>.
64393    #[inline(always)]
64394    #[cfg_attr(
64395        feature = "ritual_rustdoc_nightly",
64396        doc(cfg(cpp_lib_version = "5.14.0"))
64397    )]
64398    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64399    pub unsafe fn tr_utf8(
64400        s: *const ::std::os::raw::c_char,
64401        c: *const ::std::os::raw::c_char,
64402        n: ::std::os::raw::c_int,
64403    ) -> ::cpp_core::CppBox<::qt_core::QString> {
64404        let ffi_result =
64405            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_trUtf8(s, c, n) };
64406        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
64407    }
64408}
64409
64410pub mod q_shader_image {
64411    //! C++ type: <span style='color: green;'>```Qt3DRender::QShaderImage```</span>
64412
64413    /// C++ enum: <span style='color: green;'>```Qt3DRender::QShaderImage::Access```</span>.
64414    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
64415    #[repr(transparent)]
64416    pub struct Access(::std::os::raw::c_int);
64417
64418    impl From<::std::os::raw::c_int> for Access {
64419        fn from(value: ::std::os::raw::c_int) -> Self {
64420            Access(value)
64421        }
64422    }
64423
64424    impl From<Access> for ::std::os::raw::c_int {
64425        fn from(value: Access) -> Self {
64426            value.0
64427        }
64428    }
64429
64430    impl Access {
64431        pub fn to_int(&self) -> ::std::os::raw::c_int {
64432            self.0
64433        }
64434    }
64435
64436    impl Access {
64437        /// C++ enum variant: <span style='color: green;'>```ReadOnly = 0```</span>
64438        #[allow(non_upper_case_globals)]
64439        pub const ReadOnly: crate::q_shader_image::Access = crate::q_shader_image::Access(0);
64440        /// C++ enum variant: <span style='color: green;'>```WriteOnly = 1```</span>
64441        #[allow(non_upper_case_globals)]
64442        pub const WriteOnly: crate::q_shader_image::Access = crate::q_shader_image::Access(1);
64443        /// C++ enum variant: <span style='color: green;'>```ReadWrite = 2```</span>
64444        #[allow(non_upper_case_globals)]
64445        pub const ReadWrite: crate::q_shader_image::Access = crate::q_shader_image::Access(2);
64446    }
64447
64448    /// C++ enum: <span style='color: green;'>```Qt3DRender::QShaderImage::ImageFormat```</span>.
64449    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
64450    #[repr(transparent)]
64451    pub struct ImageFormat(::std::os::raw::c_int);
64452
64453    impl From<::std::os::raw::c_int> for ImageFormat {
64454        fn from(value: ::std::os::raw::c_int) -> Self {
64455            ImageFormat(value)
64456        }
64457    }
64458
64459    impl From<ImageFormat> for ::std::os::raw::c_int {
64460        fn from(value: ImageFormat) -> Self {
64461            value.0
64462        }
64463    }
64464
64465    impl ImageFormat {
64466        pub fn to_int(&self) -> ::std::os::raw::c_int {
64467            self.0
64468        }
64469    }
64470
64471    impl ImageFormat {
64472        /// C++ enum variant: <span style='color: green;'>```NoFormat = 0```</span>
64473        #[allow(non_upper_case_globals)]
64474        pub const NoFormat: crate::q_shader_image::ImageFormat =
64475            crate::q_shader_image::ImageFormat(0);
64476        /// C++ enum variant: <span style='color: green;'>```Automatic = 1```</span>
64477        #[allow(non_upper_case_globals)]
64478        pub const Automatic: crate::q_shader_image::ImageFormat =
64479            crate::q_shader_image::ImageFormat(1);
64480        /// C++ enum variant: <span style='color: green;'>```R8_UNorm = 33321```</span>
64481        #[allow(non_upper_case_globals)]
64482        pub const R8UNorm: crate::q_shader_image::ImageFormat =
64483            crate::q_shader_image::ImageFormat(33321);
64484        /// C++ enum variant: <span style='color: green;'>```RG8_UNorm = 33323```</span>
64485        #[allow(non_upper_case_globals)]
64486        pub const RG8UNorm: crate::q_shader_image::ImageFormat =
64487            crate::q_shader_image::ImageFormat(33323);
64488        /// C++ enum variant: <span style='color: green;'>```RGBA8_UNorm = 32856```</span>
64489        #[allow(non_upper_case_globals)]
64490        pub const RGBA8UNorm: crate::q_shader_image::ImageFormat =
64491            crate::q_shader_image::ImageFormat(32856);
64492        /// C++ enum variant: <span style='color: green;'>```R16_UNorm = 33322```</span>
64493        #[allow(non_upper_case_globals)]
64494        pub const R16UNorm: crate::q_shader_image::ImageFormat =
64495            crate::q_shader_image::ImageFormat(33322);
64496        /// C++ enum variant: <span style='color: green;'>```RG16_UNorm = 33324```</span>
64497        #[allow(non_upper_case_globals)]
64498        pub const RG16UNorm: crate::q_shader_image::ImageFormat =
64499            crate::q_shader_image::ImageFormat(33324);
64500        /// C++ enum variant: <span style='color: green;'>```RGBA16_UNorm = 32859```</span>
64501        #[allow(non_upper_case_globals)]
64502        pub const RGBA16UNorm: crate::q_shader_image::ImageFormat =
64503            crate::q_shader_image::ImageFormat(32859);
64504        /// C++ enum variant: <span style='color: green;'>```R8_SNorm = 36756```</span>
64505        #[allow(non_upper_case_globals)]
64506        pub const R8SNorm: crate::q_shader_image::ImageFormat =
64507            crate::q_shader_image::ImageFormat(36756);
64508        /// C++ enum variant: <span style='color: green;'>```RG8_SNorm = 36757```</span>
64509        #[allow(non_upper_case_globals)]
64510        pub const RG8SNorm: crate::q_shader_image::ImageFormat =
64511            crate::q_shader_image::ImageFormat(36757);
64512        /// C++ enum variant: <span style='color: green;'>```RGBA8_SNorm = 36759```</span>
64513        #[allow(non_upper_case_globals)]
64514        pub const RGBA8SNorm: crate::q_shader_image::ImageFormat =
64515            crate::q_shader_image::ImageFormat(36759);
64516        /// C++ enum variant: <span style='color: green;'>```R16_SNorm = 36760```</span>
64517        #[allow(non_upper_case_globals)]
64518        pub const R16SNorm: crate::q_shader_image::ImageFormat =
64519            crate::q_shader_image::ImageFormat(36760);
64520        /// C++ enum variant: <span style='color: green;'>```RG16_SNorm = 36761```</span>
64521        #[allow(non_upper_case_globals)]
64522        pub const RG16SNorm: crate::q_shader_image::ImageFormat =
64523            crate::q_shader_image::ImageFormat(36761);
64524        /// C++ enum variant: <span style='color: green;'>```RGBA16_SNorm = 36763```</span>
64525        #[allow(non_upper_case_globals)]
64526        pub const RGBA16SNorm: crate::q_shader_image::ImageFormat =
64527            crate::q_shader_image::ImageFormat(36763);
64528        /// C++ enum variant: <span style='color: green;'>```R8U = 33330```</span>
64529        #[allow(non_upper_case_globals)]
64530        pub const R8U: crate::q_shader_image::ImageFormat =
64531            crate::q_shader_image::ImageFormat(33330);
64532        /// C++ enum variant: <span style='color: green;'>```RG8U = 33336```</span>
64533        #[allow(non_upper_case_globals)]
64534        pub const RG8U: crate::q_shader_image::ImageFormat =
64535            crate::q_shader_image::ImageFormat(33336);
64536        /// C++ enum variant: <span style='color: green;'>```RGBA8U = 36220```</span>
64537        #[allow(non_upper_case_globals)]
64538        pub const RGBA8U: crate::q_shader_image::ImageFormat =
64539            crate::q_shader_image::ImageFormat(36220);
64540        /// C++ enum variant: <span style='color: green;'>```R16U = 33332```</span>
64541        #[allow(non_upper_case_globals)]
64542        pub const R16U: crate::q_shader_image::ImageFormat =
64543            crate::q_shader_image::ImageFormat(33332);
64544        /// C++ enum variant: <span style='color: green;'>```RG16U = 33338```</span>
64545        #[allow(non_upper_case_globals)]
64546        pub const RG16U: crate::q_shader_image::ImageFormat =
64547            crate::q_shader_image::ImageFormat(33338);
64548        /// C++ enum variant: <span style='color: green;'>```RGBA16U = 36214```</span>
64549        #[allow(non_upper_case_globals)]
64550        pub const RGBA16U: crate::q_shader_image::ImageFormat =
64551            crate::q_shader_image::ImageFormat(36214);
64552        /// C++ enum variant: <span style='color: green;'>```R32U = 33334```</span>
64553        #[allow(non_upper_case_globals)]
64554        pub const R32U: crate::q_shader_image::ImageFormat =
64555            crate::q_shader_image::ImageFormat(33334);
64556        /// C++ enum variant: <span style='color: green;'>```RG32U = 33340```</span>
64557        #[allow(non_upper_case_globals)]
64558        pub const RG32U: crate::q_shader_image::ImageFormat =
64559            crate::q_shader_image::ImageFormat(33340);
64560        /// C++ enum variant: <span style='color: green;'>```RGBA32U = 36208```</span>
64561        #[allow(non_upper_case_globals)]
64562        pub const RGBA32U: crate::q_shader_image::ImageFormat =
64563            crate::q_shader_image::ImageFormat(36208);
64564        /// C++ enum variant: <span style='color: green;'>```R8I = 33329```</span>
64565        #[allow(non_upper_case_globals)]
64566        pub const R8I: crate::q_shader_image::ImageFormat =
64567            crate::q_shader_image::ImageFormat(33329);
64568        /// C++ enum variant: <span style='color: green;'>```RG8I = 33335```</span>
64569        #[allow(non_upper_case_globals)]
64570        pub const RG8I: crate::q_shader_image::ImageFormat =
64571            crate::q_shader_image::ImageFormat(33335);
64572        /// C++ enum variant: <span style='color: green;'>```RGBA8I = 36238```</span>
64573        #[allow(non_upper_case_globals)]
64574        pub const RGBA8I: crate::q_shader_image::ImageFormat =
64575            crate::q_shader_image::ImageFormat(36238);
64576        /// C++ enum variant: <span style='color: green;'>```R16I = 33331```</span>
64577        #[allow(non_upper_case_globals)]
64578        pub const R16I: crate::q_shader_image::ImageFormat =
64579            crate::q_shader_image::ImageFormat(33331);
64580        /// C++ enum variant: <span style='color: green;'>```RG16I = 33337```</span>
64581        #[allow(non_upper_case_globals)]
64582        pub const RG16I: crate::q_shader_image::ImageFormat =
64583            crate::q_shader_image::ImageFormat(33337);
64584        /// C++ enum variant: <span style='color: green;'>```RGBA16I = 36232```</span>
64585        #[allow(non_upper_case_globals)]
64586        pub const RGBA16I: crate::q_shader_image::ImageFormat =
64587            crate::q_shader_image::ImageFormat(36232);
64588        /// C++ enum variant: <span style='color: green;'>```R32I = 33333```</span>
64589        #[allow(non_upper_case_globals)]
64590        pub const R32I: crate::q_shader_image::ImageFormat =
64591            crate::q_shader_image::ImageFormat(33333);
64592        /// C++ enum variant: <span style='color: green;'>```RG32I = 33339```</span>
64593        #[allow(non_upper_case_globals)]
64594        pub const RG32I: crate::q_shader_image::ImageFormat =
64595            crate::q_shader_image::ImageFormat(33339);
64596        /// C++ enum variant: <span style='color: green;'>```RGBA32I = 36226```</span>
64597        #[allow(non_upper_case_globals)]
64598        pub const RGBA32I: crate::q_shader_image::ImageFormat =
64599            crate::q_shader_image::ImageFormat(36226);
64600        /// C++ enum variant: <span style='color: green;'>```R16F = 33325```</span>
64601        #[allow(non_upper_case_globals)]
64602        pub const R16F: crate::q_shader_image::ImageFormat =
64603            crate::q_shader_image::ImageFormat(33325);
64604        /// C++ enum variant: <span style='color: green;'>```RG16F = 33327```</span>
64605        #[allow(non_upper_case_globals)]
64606        pub const RG16F: crate::q_shader_image::ImageFormat =
64607            crate::q_shader_image::ImageFormat(33327);
64608        /// C++ enum variant: <span style='color: green;'>```RGBA16F = 34842```</span>
64609        #[allow(non_upper_case_globals)]
64610        pub const RGBA16F: crate::q_shader_image::ImageFormat =
64611            crate::q_shader_image::ImageFormat(34842);
64612        /// C++ enum variant: <span style='color: green;'>```R32F = 33326```</span>
64613        #[allow(non_upper_case_globals)]
64614        pub const R32F: crate::q_shader_image::ImageFormat =
64615            crate::q_shader_image::ImageFormat(33326);
64616        /// C++ enum variant: <span style='color: green;'>```RG32F = 33328```</span>
64617        #[allow(non_upper_case_globals)]
64618        pub const RG32F: crate::q_shader_image::ImageFormat =
64619            crate::q_shader_image::ImageFormat(33328);
64620        /// C++ enum variant: <span style='color: green;'>```RGBA32F = 34836```</span>
64621        #[allow(non_upper_case_globals)]
64622        pub const RGBA32F: crate::q_shader_image::ImageFormat =
64623            crate::q_shader_image::ImageFormat(34836);
64624        /// C++ enum variant: <span style='color: green;'>```RG11B10F = 35898```</span>
64625        #[allow(non_upper_case_globals)]
64626        pub const RG11B10F: crate::q_shader_image::ImageFormat =
64627            crate::q_shader_image::ImageFormat(35898);
64628        /// C++ enum variant: <span style='color: green;'>```RGB10A2 = 32857```</span>
64629        #[allow(non_upper_case_globals)]
64630        pub const RGB10A2: crate::q_shader_image::ImageFormat =
64631            crate::q_shader_image::ImageFormat(32857);
64632        /// C++ enum variant: <span style='color: green;'>```RGB10A2U = 36975```</span>
64633        #[allow(non_upper_case_globals)]
64634        pub const RGB10A2U: crate::q_shader_image::ImageFormat =
64635            crate::q_shader_image::ImageFormat(36975);
64636    }
64637}
64638/// <p>To make the content of textures available for read and write operations in a shader, they need to exposed as QShaderImage. Textures can be composed of several mip levels, layers and faces. Additionally declaring a QShaderImage allows specifying which level, layer or face of the texture content we want to access.</p>
64639///
64640/// C++ class: <span style='color: green;'>```Qt3DRender::QShaderImage```</span>.
64641///
64642/// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>To make the content of textures available for read and write operations in a shader, they need to exposed as QShaderImage. Textures can be composed of several mip levels, layers and faces. Additionally declaring a QShaderImage allows specifying which level, layer or face of the texture content we want to access.</p>
64643/// <p>QShaderImage has to be assigned as a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a>'s value and reference a valid <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">Qt3DRender::QAbstractTexture</a> to work properly.</p>
64644/// <p>If the referenced texture is a one-dimensional array, two-dimensional array, three-dimensional, cube map, cube map array, or two-dimensional multisample array texture, it is possible to bind either the entire texture level or a single layer or face of the texture level. This can be controlled with the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layered-prop">layered</a> property.</p>
64645/// <p>Support for QShaderImage is only supported with OpenGL 4 and partially with OpenGL ES 3.1 and 3.2.</p>
64646/// <p>OpenGL 4 supports the following image types:</p>
64647/// <div class="table"><table class="generic">
64648///  <thead><tr class="qt-style"><th>GLSL Type</th><th>OpenGL Type Enum</th><th>Texture Type</th></tr></thead>
64649/// <tbody><tr valign="top" class="odd"><td>image1D</td><td>GL_IMAGE_1D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1d.html">QTexture1D</a></td></tr>
64650/// <tr valign="top" class="even"><td>image2D</td><td>GL_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
64651/// <tr valign="top" class="odd"><td>image3D</td><td>GL_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
64652/// <tr valign="top" class="even"><td>image2DRect</td><td>GL_IMAGE_2D_RECT</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturerectangle.html">QTextureRectangle</a></td></tr>
64653/// <tr valign="top" class="odd"><td>imageCube</td><td>GL_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
64654/// <tr valign="top" class="even"><td>imageBuffer</td><td>GL_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
64655/// <tr valign="top" class="odd"><td>image1DArray</td><td>GL_IMAGE_1D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1darray.html">QTexture1DArray</a></td></tr>
64656/// <tr valign="top" class="even"><td>image2DArray</td><td>GL_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
64657/// <tr valign="top" class="odd"><td>imageCubeArray</td><td>GL_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
64658/// <tr valign="top" class="even"><td>image2DMS</td><td>GL_IMAGE_2D_MULTISAMPLE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisample.html">QTexture2DMultisample</a></td></tr>
64659/// <tr valign="top" class="odd"><td>image2DMSArray</td><td>GL_IMAGE_2D_MULTISAMPLE_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisamplearray.html">QTexture2DMultisampleArray</a></td></tr>
64660/// <tr valign="top" class="even"><td>iimage1D</td><td>GL_INT_IMAGE_1D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1d.html">QTexture1D</a></td></tr>
64661/// <tr valign="top" class="odd"><td>iimage2D</td><td>GL_INT_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
64662/// <tr valign="top" class="even"><td>iimage3D</td><td>GL_INT_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
64663/// <tr valign="top" class="odd"><td>iimage2DRect</td><td>GL_INT_IMAGE_2D_RECT</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturerectangle.html">QTextureRectangle</a></td></tr>
64664/// <tr valign="top" class="even"><td>iimageCube</td><td>GL_INT_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
64665/// <tr valign="top" class="odd"><td>iimageBuffer</td><td>GL_INT_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
64666/// <tr valign="top" class="even"><td>iimage1DArray</td><td>GL_INT_IMAGE_1D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1darray.html">QTexture1DArray</a></td></tr>
64667/// <tr valign="top" class="odd"><td>iimage2DArray</td><td>GL_INT_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
64668/// <tr valign="top" class="even"><td>iimageCubeArray</td><td>GL_INT_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
64669/// <tr valign="top" class="odd"><td>iimage2DMS</td><td>GL_INT_IMAGE_2D_MULTISAMPLE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisample.html">QTexture2DMultisample</a></td></tr>
64670/// <tr valign="top" class="even"><td>iimage2DMSArray</td><td>GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisamplearray.html">QTexture2DMultisampleArray</a></td></tr>
64671/// <tr valign="top" class="odd"><td>uimage1D</td><td>GL_UNSIGNED_INT_IMAGE_1D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1d.html">QTexture1D</a></td></tr>
64672/// <tr valign="top" class="even"><td>uimage2D</td><td>GL_UNSIGNED_INT_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
64673/// <tr valign="top" class="odd"><td>uimage3D</td><td>GL_UNSIGNED_INT_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
64674/// <tr valign="top" class="even"><td>uimage2DRect</td><td>GL_UNSIGNED_INT_IMAGE_2D_RECT</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturerectangle.html">QTextureRectangle</a></td></tr>
64675/// <tr valign="top" class="odd"><td>uimageCube</td><td>GL_UNSIGNED_INT_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
64676/// <tr valign="top" class="even"><td>uimageBuffer</td><td>GL_UNSIGNED_INT_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
64677/// <tr valign="top" class="odd"><td>uimage1DArray</td><td>GL_UNSIGNED_INT_IMAGE_1D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1darray.html">QTexture1DArray</a></td></tr>
64678/// <tr valign="top" class="even"><td>uimage2DArray</td><td>GL_UNSIGNED_INT_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
64679/// <tr valign="top" class="odd"><td>uimageCubeArray</td><td>GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
64680/// <tr valign="top" class="even"><td>uimage2DMS</td><td>GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisample.html">QTexture2DMultisample</a></td></tr>
64681/// <tr valign="top" class="odd"><td>uimage2DMSArray</td><td>GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisamplearray.html">QTexture2DMultisampleArray</a></td></tr>
64682/// </tbody></table></div>
64683/// <p>OpenGL ES 3.1 supports the following image types:</p>
64684/// <div class="table"><table class="generic">
64685///  <thead><tr class="qt-style"><th>GLSL Type</th><th>OpenGL Type Enum</th><th>Texture Type</th></tr></thead>
64686/// <tbody><tr valign="top" class="odd"><td>image2D</td><td>GL_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
64687/// <tr valign="top" class="even"><td>image3D</td><td>GL_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
64688/// <tr valign="top" class="odd"><td>imageCube</td><td>GL_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
64689/// <tr valign="top" class="even"><td>image2DArray</td><td>GL_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
64690/// <tr valign="top" class="odd"><td>iimage2D</td><td>GL_INT_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
64691/// <tr valign="top" class="even"><td>iimage3D</td><td>GL_INT_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
64692/// <tr valign="top" class="odd"><td>iimageCube</td><td>GL_INT_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
64693/// <tr valign="top" class="even"><td>iimage2DArray</td><td>GL_INT_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
64694/// <tr valign="top" class="odd"><td>uimage2D</td><td>GL_UNSIGNED_INT_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
64695/// <tr valign="top" class="even"><td>uimage3D</td><td>GL_UNSIGNED_INT_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
64696/// <tr valign="top" class="odd"><td>uimageCube</td><td>GL_UNSIGNED_INT_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
64697/// <tr valign="top" class="even"><td>uimage2DArray</td><td>GL_UNSIGNED_INT_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
64698/// </tbody></table></div>
64699/// <p>OpenGL ES 3.2 supports all of the OpenGL ES 3.1 image types as well as the following:</p>
64700/// <div class="table"><table class="generic">
64701///  <thead><tr class="qt-style"><th>GLSL Type</th><th>OpenGL Type Enum</th><th>Texture Type</th></tr></thead>
64702/// <tbody><tr valign="top" class="odd"><td>imageBuffer</td><td>GL_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
64703/// <tr valign="top" class="even"><td>imageCubeArray</td><td>GL_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
64704/// <tr valign="top" class="odd"><td>iimageBuffer</td><td>GL_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
64705/// <tr valign="top" class="even"><td>iimageCubeArray</td><td>GL_INT_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
64706/// <tr valign="top" class="odd"><td>uimageBuffer</td><td>GL_UNSIGNED_INT_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
64707/// <tr valign="top" class="even"><td>uimageCubeArray</td><td>GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
64708/// </tbody></table></div>
64709/// <p>Expected use would look like:</p>
64710/// <pre class="cpp plain">
64711///   Qt3DRender::QTexture2D *tex2D = new Qt3DRender::QTexture2D();
64712///   ...
64713///   Qt3DRender::QMaterial *material = new Qt3DRender::QMaterial();
64714///   ...
64715///   Qt3DRender::QParameter *imageParameter = new Qt3DRender::QParameter();
64716///   Qt3DRender::QShaderImage *shaderImage = new Qt3DRender::QShaderImage();
64717///
64718///   shaderImage-&gt;setTexture(tex2D);
64719///
64720///   imageParameter-&gt;setName("imageUniformName");
64721///   imageParameter-&gt;setValue(QVariant::fromValue(shaderImage));
64722///
64723///   material-&gt;addParameter(imageParamenter);
64724///
64725/// </pre></div>
64726#[repr(C)]
64727pub struct QShaderImage {
64728    _unused: u8,
64729}
64730impl QShaderImage {
64731    /// Returns a built-in Qt slot `Qt3DRender::QShaderImage::setTexture` that can be passed to `qt_core::Signal::connect`.
64732    #[inline(always)]
64733    #[cfg_attr(
64734        feature = "ritual_rustdoc_nightly",
64735        doc(cfg(cpp_lib_version = "5.14.0"))
64736    )]
64737    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64738    pub fn slot_set_texture(&self) -> ::qt_core::Receiver<(*mut crate::QAbstractTexture,)> {
64739        unsafe {
64740            ::qt_core::Receiver::new(
64741                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64742                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
64743                    b"1setTexture(Qt3DRender::QAbstractTexture *)\0",
64744                ),
64745            )
64746        }
64747    }
64748
64749    /// <p>*</p>
64750    ///
64751    /// Returns a built-in Qt slot `Qt3DRender::QShaderImage::setLayered` that can be passed to `qt_core::Signal::connect`.
64752    ///
64753    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layered-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>*</p>
64754    /// <p>If set to true, if the referenced texture is a one-dimensional array, two-dimensional array, three-dimensional, cube map, cube map array, or two-dimensional multisample array texture, the entire level will be bound for all layers. If set to false, only the single layer specified by the <i>layer</i> property will be bound.</p>
64755    /// <p><b>Access functions:</b></p>
64756    /// <div class="table"><table class="alignedsummary">
64757    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>layered</b></span>() const</td></tr>
64758    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayered</b></span>(bool <i>layered</i>)</td></tr>
64759    /// </tbody></table></div>
64760    /// <p><b>Notifier signal:</b></p>
64761    /// <div class="table"><table class="alignedsummary">
64762    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layeredChanged</b></span>(bool <i>layered</i>)</td></tr>
64763    /// </tbody></table></div></div>
64764    #[inline(always)]
64765    #[cfg_attr(
64766        feature = "ritual_rustdoc_nightly",
64767        doc(cfg(cpp_lib_version = "5.14.0"))
64768    )]
64769    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64770    pub fn slot_set_layered(&self) -> ::qt_core::Receiver<(bool,)> {
64771        unsafe {
64772            ::qt_core::Receiver::new(
64773                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64774                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLayered(bool)\0"),
64775            )
64776        }
64777    }
64778
64779    /// <p>Holds which mipLevel out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>.</p>
64780    ///
64781    /// Returns a built-in Qt slot `Qt3DRender::QShaderImage::setMipLevel` that can be passed to `qt_core::Signal::connect`.
64782    ///
64783    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds which mipLevel out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>.</p>
64784    /// <p><b>Access functions:</b></p>
64785    /// <div class="table"><table class="alignedsummary">
64786    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
64787    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMipLevel</b></span>(int <i>mipLevel</i>)</td></tr>
64788    /// </tbody></table></div>
64789    /// <p><b>Notifier signal:</b></p>
64790    /// <div class="table"><table class="alignedsummary">
64791    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
64792    /// </tbody></table></div></div>
64793    #[inline(always)]
64794    #[cfg_attr(
64795        feature = "ritual_rustdoc_nightly",
64796        doc(cfg(cpp_lib_version = "5.14.0"))
64797    )]
64798    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64799    pub fn slot_set_mip_level(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
64800        unsafe {
64801            ::qt_core::Receiver::new(
64802                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64803                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setMipLevel(int)\0"),
64804            )
64805        }
64806    }
64807
64808    /// <p>Holds which layer out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>. This property does nothing if <i>layered</i> is set to true or if the reference texture's type isn't compatible with layers.</p>
64809    ///
64810    /// Returns a built-in Qt slot `Qt3DRender::QShaderImage::setLayer` that can be passed to `qt_core::Signal::connect`.
64811    ///
64812    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds which layer out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>. This property does nothing if <i>layered</i> is set to true or if the reference texture's type isn't compatible with layers.</p>
64813    /// <p><b>Note: </b>When the referenced texture is of type cube map or cube map array and <i>ĺayered</i> is set to false, the face and layer are retrieved in the following manner:</p><pre class="cpp plain">
64814    ///   cubeMapLayer = layer / 6
64815    ///   cubeMapFace = layer - (cubeMapLayer * 6)
64816    ///
64817    /// </pre>
64818    /// <p><b>Access functions:</b></p>
64819    /// <div class="table"><table class="alignedsummary">
64820    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
64821    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayer</b></span>(int <i>layer</i>)</td></tr>
64822    /// </tbody></table></div>
64823    /// <p><b>Notifier signal:</b></p>
64824    /// <div class="table"><table class="alignedsummary">
64825    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
64826    /// </tbody></table></div></div>
64827    #[inline(always)]
64828    #[cfg_attr(
64829        feature = "ritual_rustdoc_nightly",
64830        doc(cfg(cpp_lib_version = "5.14.0"))
64831    )]
64832    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64833    pub fn slot_set_layer(&self) -> ::qt_core::Receiver<(::std::os::raw::c_int,)> {
64834        unsafe {
64835            ::qt_core::Receiver::new(
64836                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64837                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1setLayer(int)\0"),
64838            )
64839        }
64840    }
64841
64842    /// <p>Specifies the type of access we want to allow from our shader instances to the image. If a shader tries to write or read from an image that has incompatible access, the behavior is undefined.</p>
64843    ///
64844    /// Returns a built-in Qt slot `Qt3DRender::QShaderImage::setAccess` that can be passed to `qt_core::Signal::connect`.
64845    ///
64846    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#access-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the type of access we want to allow from our shader instances to the image. If a shader tries to write or read from an image that has incompatible access, the behavior is undefined.</p>
64847    /// <p><b>Access functions:</b></p>
64848    /// <div class="table"><table class="alignedsummary">
64849    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderImage::Access </td><td class="memItemRight bottomAlign"><span class="name"><b>access</b></span>() const</td></tr>
64850    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAccess</b></span>(Qt3DRender::QShaderImage::Access <i>access</i>)</td></tr>
64851    /// </tbody></table></div>
64852    /// <p><b>Notifier signal:</b></p>
64853    /// <div class="table"><table class="alignedsummary">
64854    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>accessChanged</b></span>(Qt3DRender::QShaderImage::Access <i>access</i>)</td></tr>
64855    /// </tbody></table></div></div>
64856    #[inline(always)]
64857    #[cfg_attr(
64858        feature = "ritual_rustdoc_nightly",
64859        doc(cfg(cpp_lib_version = "5.14.0"))
64860    )]
64861    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64862    pub fn slot_set_access(&self) -> ::qt_core::Receiver<(crate::q_shader_image::Access,)> {
64863        unsafe {
64864            ::qt_core::Receiver::new(
64865                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64866                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
64867                    b"1setAccess(Qt3DRender::QShaderImage::Access)\0",
64868                ),
64869            )
64870        }
64871    }
64872
64873    /// <p>Specifies the image format, which is essentially important when storing values in the Image from a shader.</p>
64874    ///
64875    /// Returns a built-in Qt slot `Qt3DRender::QShaderImage::setFormat` that can be passed to `qt_core::Signal::connect`.
64876    ///
64877    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#format-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the image format, which is essentially important when storing values in the Image from a shader.</p>
64878    /// <p>The format doesn't have to be the same as the referenced texture's format. It however has to be compatible (matching in size but not necessarily by class type). For instance a texture of format R32F (size 32bits, class 1x32) could be used with an image of format RGBA8I (size 32bits, class 4x8). Table 8.27 of the <a href="https://www.khronos.org/registry/OpenGL/specs/gl/glspec45.core.pdf">OpenGL specifications</a> shows the size and class for all supported Image formats.</p>
64879    /// <p>By default Qt3D will try to set the image format to match that of the referenced texture.</p>
64880    /// <p><b>Access functions:</b></p>
64881    /// <div class="table"><table class="alignedsummary">
64882    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderImage::ImageFormat </td><td class="memItemRight bottomAlign"><span class="name"><b>format</b></span>() const</td></tr>
64883    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFormat</b></span>(Qt3DRender::QShaderImage::ImageFormat <i>format</i>)</td></tr>
64884    /// </tbody></table></div>
64885    /// <p><b>Notifier signal:</b></p>
64886    /// <div class="table"><table class="alignedsummary">
64887    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>formatChanged</b></span>(Qt3DRender::QShaderImage::ImageFormat <i>format</i>)</td></tr>
64888    /// </tbody></table></div></div>
64889    #[inline(always)]
64890    #[cfg_attr(
64891        feature = "ritual_rustdoc_nightly",
64892        doc(cfg(cpp_lib_version = "5.14.0"))
64893    )]
64894    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64895    pub fn slot_set_format(&self) -> ::qt_core::Receiver<(crate::q_shader_image::ImageFormat,)> {
64896        unsafe {
64897            ::qt_core::Receiver::new(
64898                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64899                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
64900                    b"1setFormat(Qt3DRender::QShaderImage::ImageFormat)\0",
64901                ),
64902            )
64903        }
64904    }
64905
64906    /// Returns a built-in Qt signal `Qt3DRender::QShaderImage::textureChanged` that can be passed to `qt_core::Signal::connect`.
64907    #[inline(always)]
64908    #[cfg_attr(
64909        feature = "ritual_rustdoc_nightly",
64910        doc(cfg(cpp_lib_version = "5.14.0"))
64911    )]
64912    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64913    pub fn texture_changed(&self) -> ::qt_core::Signal<(*mut crate::QAbstractTexture,)> {
64914        unsafe {
64915            ::qt_core::Signal::new(
64916                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64917                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
64918                    b"2textureChanged(Qt3DRender::QAbstractTexture *)\0",
64919                ),
64920            )
64921        }
64922    }
64923
64924    /// <p>*</p>
64925    ///
64926    /// Returns a built-in Qt signal `Qt3DRender::QShaderImage::layeredChanged` that can be passed to `qt_core::Signal::connect`.
64927    ///
64928    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layered-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>*</p>
64929    /// <p>If set to true, if the referenced texture is a one-dimensional array, two-dimensional array, three-dimensional, cube map, cube map array, or two-dimensional multisample array texture, the entire level will be bound for all layers. If set to false, only the single layer specified by the <i>layer</i> property will be bound.</p>
64930    /// <p><b>Access functions:</b></p>
64931    /// <div class="table"><table class="alignedsummary">
64932    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>layered</b></span>() const</td></tr>
64933    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayered</b></span>(bool <i>layered</i>)</td></tr>
64934    /// </tbody></table></div>
64935    /// <p><b>Notifier signal:</b></p>
64936    /// <div class="table"><table class="alignedsummary">
64937    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layeredChanged</b></span>(bool <i>layered</i>)</td></tr>
64938    /// </tbody></table></div></div>
64939    #[inline(always)]
64940    #[cfg_attr(
64941        feature = "ritual_rustdoc_nightly",
64942        doc(cfg(cpp_lib_version = "5.14.0"))
64943    )]
64944    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64945    pub fn layered_changed(&self) -> ::qt_core::Signal<(bool,)> {
64946        unsafe {
64947            ::qt_core::Signal::new(
64948                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64949                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2layeredChanged(bool)\0"),
64950            )
64951        }
64952    }
64953
64954    /// <p>Holds which mipLevel out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>.</p>
64955    ///
64956    /// Returns a built-in Qt signal `Qt3DRender::QShaderImage::mipLevelChanged` that can be passed to `qt_core::Signal::connect`.
64957    ///
64958    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds which mipLevel out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>.</p>
64959    /// <p><b>Access functions:</b></p>
64960    /// <div class="table"><table class="alignedsummary">
64961    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
64962    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMipLevel</b></span>(int <i>mipLevel</i>)</td></tr>
64963    /// </tbody></table></div>
64964    /// <p><b>Notifier signal:</b></p>
64965    /// <div class="table"><table class="alignedsummary">
64966    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
64967    /// </tbody></table></div></div>
64968    #[inline(always)]
64969    #[cfg_attr(
64970        feature = "ritual_rustdoc_nightly",
64971        doc(cfg(cpp_lib_version = "5.14.0"))
64972    )]
64973    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
64974    pub fn mip_level_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
64975        unsafe {
64976            ::qt_core::Signal::new(
64977                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
64978                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2mipLevelChanged(int)\0"),
64979            )
64980        }
64981    }
64982
64983    /// <p>Holds which layer out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>. This property does nothing if <i>layered</i> is set to true or if the reference texture's type isn't compatible with layers.</p>
64984    ///
64985    /// Returns a built-in Qt signal `Qt3DRender::QShaderImage::layerChanged` that can be passed to `qt_core::Signal::connect`.
64986    ///
64987    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds which layer out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>. This property does nothing if <i>layered</i> is set to true or if the reference texture's type isn't compatible with layers.</p>
64988    /// <p><b>Note: </b>When the referenced texture is of type cube map or cube map array and <i>ĺayered</i> is set to false, the face and layer are retrieved in the following manner:</p><pre class="cpp plain">
64989    ///   cubeMapLayer = layer / 6
64990    ///   cubeMapFace = layer - (cubeMapLayer * 6)
64991    ///
64992    /// </pre>
64993    /// <p><b>Access functions:</b></p>
64994    /// <div class="table"><table class="alignedsummary">
64995    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
64996    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayer</b></span>(int <i>layer</i>)</td></tr>
64997    /// </tbody></table></div>
64998    /// <p><b>Notifier signal:</b></p>
64999    /// <div class="table"><table class="alignedsummary">
65000    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
65001    /// </tbody></table></div></div>
65002    #[inline(always)]
65003    #[cfg_attr(
65004        feature = "ritual_rustdoc_nightly",
65005        doc(cfg(cpp_lib_version = "5.14.0"))
65006    )]
65007    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65008    pub fn layer_changed(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
65009        unsafe {
65010            ::qt_core::Signal::new(
65011                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
65012                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2layerChanged(int)\0"),
65013            )
65014        }
65015    }
65016
65017    /// <p>Specifies the type of access we want to allow from our shader instances to the image. If a shader tries to write or read from an image that has incompatible access, the behavior is undefined.</p>
65018    ///
65019    /// Returns a built-in Qt signal `Qt3DRender::QShaderImage::accessChanged` that can be passed to `qt_core::Signal::connect`.
65020    ///
65021    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#access-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the type of access we want to allow from our shader instances to the image. If a shader tries to write or read from an image that has incompatible access, the behavior is undefined.</p>
65022    /// <p><b>Access functions:</b></p>
65023    /// <div class="table"><table class="alignedsummary">
65024    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderImage::Access </td><td class="memItemRight bottomAlign"><span class="name"><b>access</b></span>() const</td></tr>
65025    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAccess</b></span>(Qt3DRender::QShaderImage::Access <i>access</i>)</td></tr>
65026    /// </tbody></table></div>
65027    /// <p><b>Notifier signal:</b></p>
65028    /// <div class="table"><table class="alignedsummary">
65029    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>accessChanged</b></span>(Qt3DRender::QShaderImage::Access <i>access</i>)</td></tr>
65030    /// </tbody></table></div></div>
65031    #[inline(always)]
65032    #[cfg_attr(
65033        feature = "ritual_rustdoc_nightly",
65034        doc(cfg(cpp_lib_version = "5.14.0"))
65035    )]
65036    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65037    pub fn access_changed(&self) -> ::qt_core::Signal<(crate::q_shader_image::Access,)> {
65038        unsafe {
65039            ::qt_core::Signal::new(
65040                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
65041                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
65042                    b"2accessChanged(Qt3DRender::QShaderImage::Access)\0",
65043                ),
65044            )
65045        }
65046    }
65047
65048    /// <p>Specifies the image format, which is essentially important when storing values in the Image from a shader.</p>
65049    ///
65050    /// Returns a built-in Qt signal `Qt3DRender::QShaderImage::formatChanged` that can be passed to `qt_core::Signal::connect`.
65051    ///
65052    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#format-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the image format, which is essentially important when storing values in the Image from a shader.</p>
65053    /// <p>The format doesn't have to be the same as the referenced texture's format. It however has to be compatible (matching in size but not necessarily by class type). For instance a texture of format R32F (size 32bits, class 1x32) could be used with an image of format RGBA8I (size 32bits, class 4x8). Table 8.27 of the <a href="https://www.khronos.org/registry/OpenGL/specs/gl/glspec45.core.pdf">OpenGL specifications</a> shows the size and class for all supported Image formats.</p>
65054    /// <p>By default Qt3D will try to set the image format to match that of the referenced texture.</p>
65055    /// <p><b>Access functions:</b></p>
65056    /// <div class="table"><table class="alignedsummary">
65057    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderImage::ImageFormat </td><td class="memItemRight bottomAlign"><span class="name"><b>format</b></span>() const</td></tr>
65058    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFormat</b></span>(Qt3DRender::QShaderImage::ImageFormat <i>format</i>)</td></tr>
65059    /// </tbody></table></div>
65060    /// <p><b>Notifier signal:</b></p>
65061    /// <div class="table"><table class="alignedsummary">
65062    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>formatChanged</b></span>(Qt3DRender::QShaderImage::ImageFormat <i>format</i>)</td></tr>
65063    /// </tbody></table></div></div>
65064    #[inline(always)]
65065    #[cfg_attr(
65066        feature = "ritual_rustdoc_nightly",
65067        doc(cfg(cpp_lib_version = "5.14.0"))
65068    )]
65069    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65070    pub fn format_changed(&self) -> ::qt_core::Signal<(crate::q_shader_image::ImageFormat,)> {
65071        unsafe {
65072            ::qt_core::Signal::new(
65073                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
65074                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
65075                    b"2formatChanged(Qt3DRender::QShaderImage::ImageFormat)\0",
65076                ),
65077            )
65078        }
65079    }
65080
65081    /// <p>Specifies the type of access we want to allow from our shader instances to the image. If a shader tries to write or read from an image that has incompatible access, the behavior is undefined.</p>
65082    ///
65083    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderImage::Access Qt3DRender::QShaderImage::access() const```</span>.
65084    ///
65085    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#access-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the type of access we want to allow from our shader instances to the image. If a shader tries to write or read from an image that has incompatible access, the behavior is undefined.</p>
65086    /// <p><b>Access functions:</b></p>
65087    /// <div class="table"><table class="alignedsummary">
65088    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderImage::Access </td><td class="memItemRight bottomAlign"><span class="name"><b>access</b></span>() const</td></tr>
65089    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAccess</b></span>(Qt3DRender::QShaderImage::Access <i>access</i>)</td></tr>
65090    /// </tbody></table></div>
65091    /// <p><b>Notifier signal:</b></p>
65092    /// <div class="table"><table class="alignedsummary">
65093    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>accessChanged</b></span>(Qt3DRender::QShaderImage::Access <i>access</i>)</td></tr>
65094    /// </tbody></table></div></div>
65095    #[inline(always)]
65096    #[cfg_attr(
65097        feature = "ritual_rustdoc_nightly",
65098        doc(cfg(cpp_lib_version = "5.14.0"))
65099    )]
65100    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65101    pub unsafe fn access(&self) -> crate::q_shader_image::Access {
65102        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_access(
65103            self as *const crate::QShaderImage,
65104        )
65105    }
65106
65107    /// <p>Specifies the image format, which is essentially important when storing values in the Image from a shader.</p>
65108    ///
65109    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderImage::ImageFormat Qt3DRender::QShaderImage::format() const```</span>.
65110    ///
65111    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#format-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the image format, which is essentially important when storing values in the Image from a shader.</p>
65112    /// <p>The format doesn't have to be the same as the referenced texture's format. It however has to be compatible (matching in size but not necessarily by class type). For instance a texture of format R32F (size 32bits, class 1x32) could be used with an image of format RGBA8I (size 32bits, class 4x8). Table 8.27 of the <a href="https://www.khronos.org/registry/OpenGL/specs/gl/glspec45.core.pdf">OpenGL specifications</a> shows the size and class for all supported Image formats.</p>
65113    /// <p>By default Qt3D will try to set the image format to match that of the referenced texture.</p>
65114    /// <p><b>Access functions:</b></p>
65115    /// <div class="table"><table class="alignedsummary">
65116    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderImage::ImageFormat </td><td class="memItemRight bottomAlign"><span class="name"><b>format</b></span>() const</td></tr>
65117    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFormat</b></span>(Qt3DRender::QShaderImage::ImageFormat <i>format</i>)</td></tr>
65118    /// </tbody></table></div>
65119    /// <p><b>Notifier signal:</b></p>
65120    /// <div class="table"><table class="alignedsummary">
65121    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>formatChanged</b></span>(Qt3DRender::QShaderImage::ImageFormat <i>format</i>)</td></tr>
65122    /// </tbody></table></div></div>
65123    #[inline(always)]
65124    #[cfg_attr(
65125        feature = "ritual_rustdoc_nightly",
65126        doc(cfg(cpp_lib_version = "5.14.0"))
65127    )]
65128    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65129    pub unsafe fn format(&self) -> crate::q_shader_image::ImageFormat {
65130        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_format(
65131            self as *const crate::QShaderImage,
65132        )
65133    }
65134
65135    /// <p>Holds which layer out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>. This property does nothing if <i>layered</i> is set to true or if the reference texture's type isn't compatible with layers.</p>
65136    ///
65137    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QShaderImage::layer() const```</span>.
65138    ///
65139    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds which layer out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>. This property does nothing if <i>layered</i> is set to true or if the reference texture's type isn't compatible with layers.</p>
65140    /// <p><b>Note: </b>When the referenced texture is of type cube map or cube map array and <i>ĺayered</i> is set to false, the face and layer are retrieved in the following manner:</p><pre class="cpp plain">
65141    ///   cubeMapLayer = layer / 6
65142    ///   cubeMapFace = layer - (cubeMapLayer * 6)
65143    ///
65144    /// </pre>
65145    /// <p><b>Access functions:</b></p>
65146    /// <div class="table"><table class="alignedsummary">
65147    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
65148    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayer</b></span>(int <i>layer</i>)</td></tr>
65149    /// </tbody></table></div>
65150    /// <p><b>Notifier signal:</b></p>
65151    /// <div class="table"><table class="alignedsummary">
65152    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
65153    /// </tbody></table></div></div>
65154    #[inline(always)]
65155    #[cfg_attr(
65156        feature = "ritual_rustdoc_nightly",
65157        doc(cfg(cpp_lib_version = "5.14.0"))
65158    )]
65159    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65160    pub unsafe fn layer(&self) -> ::std::os::raw::c_int {
65161        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_layer(
65162            self as *const crate::QShaderImage,
65163        )
65164    }
65165
65166    /// <p>*</p>
65167    ///
65168    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QShaderImage::layered() const```</span>.
65169    ///
65170    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layered-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>*</p>
65171    /// <p>If set to true, if the referenced texture is a one-dimensional array, two-dimensional array, three-dimensional, cube map, cube map array, or two-dimensional multisample array texture, the entire level will be bound for all layers. If set to false, only the single layer specified by the <i>layer</i> property will be bound.</p>
65172    /// <p><b>Access functions:</b></p>
65173    /// <div class="table"><table class="alignedsummary">
65174    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>layered</b></span>() const</td></tr>
65175    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayered</b></span>(bool <i>layered</i>)</td></tr>
65176    /// </tbody></table></div>
65177    /// <p><b>Notifier signal:</b></p>
65178    /// <div class="table"><table class="alignedsummary">
65179    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layeredChanged</b></span>(bool <i>layered</i>)</td></tr>
65180    /// </tbody></table></div></div>
65181    #[inline(always)]
65182    #[cfg_attr(
65183        feature = "ritual_rustdoc_nightly",
65184        doc(cfg(cpp_lib_version = "5.14.0"))
65185    )]
65186    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65187    pub unsafe fn layered(&self) -> bool {
65188        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_layered(
65189            self as *const crate::QShaderImage,
65190        )
65191    }
65192
65193    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QShaderImage::metaObject() const```</span>.
65194    #[inline(always)]
65195    #[cfg_attr(
65196        feature = "ritual_rustdoc_nightly",
65197        doc(cfg(cpp_lib_version = "5.14.0"))
65198    )]
65199    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65200    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
65201        let ffi_result = {
65202            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_metaObject(
65203                self as *const crate::QShaderImage,
65204            )
65205        };
65206        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
65207    }
65208
65209    /// <p>Holds which mipLevel out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>.</p>
65210    ///
65211    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QShaderImage::mipLevel() const```</span>.
65212    ///
65213    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds which mipLevel out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>.</p>
65214    /// <p><b>Access functions:</b></p>
65215    /// <div class="table"><table class="alignedsummary">
65216    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
65217    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMipLevel</b></span>(int <i>mipLevel</i>)</td></tr>
65218    /// </tbody></table></div>
65219    /// <p><b>Notifier signal:</b></p>
65220    /// <div class="table"><table class="alignedsummary">
65221    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
65222    /// </tbody></table></div></div>
65223    #[inline(always)]
65224    #[cfg_attr(
65225        feature = "ritual_rustdoc_nightly",
65226        doc(cfg(cpp_lib_version = "5.14.0"))
65227    )]
65228    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65229    pub unsafe fn mip_level(&self) -> ::std::os::raw::c_int {
65230        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_mipLevel(
65231            self as *const crate::QShaderImage,
65232        )
65233    }
65234
65235    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QShaderImage::QShaderImage(Qt3DCore::QNode* parent = …)```</span>.
65236    #[inline(always)]
65237    #[cfg_attr(
65238        feature = "ritual_rustdoc_nightly",
65239        doc(cfg(cpp_lib_version = "5.14.0"))
65240    )]
65241    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65242    pub unsafe fn new_1a(
65243        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
65244    ) -> ::qt_core::QBox<crate::QShaderImage> {
65245        let ffi_result = {
65246            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_QShaderImage(
65247                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
65248                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
65249            )
65250        };
65251        ::qt_core::QBox::from_raw(ffi_result)
65252    }
65253
65254    /// <p>To make the content of textures available for read and write operations in a shader, they need to exposed as QShaderImage. Textures can be composed of several mip levels, layers and faces. Additionally declaring a QShaderImage allows specifying which level, layer or face of the texture content we want to access.</p>
65255    ///
65256    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QShaderImage::QShaderImage()```</span>.
65257    ///
65258    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>To make the content of textures available for read and write operations in a shader, they need to exposed as QShaderImage. Textures can be composed of several mip levels, layers and faces. Additionally declaring a QShaderImage allows specifying which level, layer or face of the texture content we want to access.</p>
65259    /// <p>QShaderImage has to be assigned as a <a href="http://doc.qt.io/qt-5/qt3drender-qparameter.html">QParameter</a>'s value and reference a valid <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttexture.html">Qt3DRender::QAbstractTexture</a> to work properly.</p>
65260    /// <p>If the referenced texture is a one-dimensional array, two-dimensional array, three-dimensional, cube map, cube map array, or two-dimensional multisample array texture, it is possible to bind either the entire texture level or a single layer or face of the texture level. This can be controlled with the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layered-prop">layered</a> property.</p>
65261    /// <p>Support for QShaderImage is only supported with OpenGL 4 and partially with OpenGL ES 3.1 and 3.2.</p>
65262    /// <p>OpenGL 4 supports the following image types:</p>
65263    /// <div class="table"><table class="generic">
65264    ///  <thead><tr class="qt-style"><th>GLSL Type</th><th>OpenGL Type Enum</th><th>Texture Type</th></tr></thead>
65265    /// <tbody><tr valign="top" class="odd"><td>image1D</td><td>GL_IMAGE_1D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1d.html">QTexture1D</a></td></tr>
65266    /// <tr valign="top" class="even"><td>image2D</td><td>GL_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
65267    /// <tr valign="top" class="odd"><td>image3D</td><td>GL_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
65268    /// <tr valign="top" class="even"><td>image2DRect</td><td>GL_IMAGE_2D_RECT</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturerectangle.html">QTextureRectangle</a></td></tr>
65269    /// <tr valign="top" class="odd"><td>imageCube</td><td>GL_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
65270    /// <tr valign="top" class="even"><td>imageBuffer</td><td>GL_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
65271    /// <tr valign="top" class="odd"><td>image1DArray</td><td>GL_IMAGE_1D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1darray.html">QTexture1DArray</a></td></tr>
65272    /// <tr valign="top" class="even"><td>image2DArray</td><td>GL_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
65273    /// <tr valign="top" class="odd"><td>imageCubeArray</td><td>GL_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
65274    /// <tr valign="top" class="even"><td>image2DMS</td><td>GL_IMAGE_2D_MULTISAMPLE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisample.html">QTexture2DMultisample</a></td></tr>
65275    /// <tr valign="top" class="odd"><td>image2DMSArray</td><td>GL_IMAGE_2D_MULTISAMPLE_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisamplearray.html">QTexture2DMultisampleArray</a></td></tr>
65276    /// <tr valign="top" class="even"><td>iimage1D</td><td>GL_INT_IMAGE_1D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1d.html">QTexture1D</a></td></tr>
65277    /// <tr valign="top" class="odd"><td>iimage2D</td><td>GL_INT_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
65278    /// <tr valign="top" class="even"><td>iimage3D</td><td>GL_INT_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
65279    /// <tr valign="top" class="odd"><td>iimage2DRect</td><td>GL_INT_IMAGE_2D_RECT</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturerectangle.html">QTextureRectangle</a></td></tr>
65280    /// <tr valign="top" class="even"><td>iimageCube</td><td>GL_INT_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
65281    /// <tr valign="top" class="odd"><td>iimageBuffer</td><td>GL_INT_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
65282    /// <tr valign="top" class="even"><td>iimage1DArray</td><td>GL_INT_IMAGE_1D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1darray.html">QTexture1DArray</a></td></tr>
65283    /// <tr valign="top" class="odd"><td>iimage2DArray</td><td>GL_INT_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
65284    /// <tr valign="top" class="even"><td>iimageCubeArray</td><td>GL_INT_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
65285    /// <tr valign="top" class="odd"><td>iimage2DMS</td><td>GL_INT_IMAGE_2D_MULTISAMPLE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisample.html">QTexture2DMultisample</a></td></tr>
65286    /// <tr valign="top" class="even"><td>iimage2DMSArray</td><td>GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisamplearray.html">QTexture2DMultisampleArray</a></td></tr>
65287    /// <tr valign="top" class="odd"><td>uimage1D</td><td>GL_UNSIGNED_INT_IMAGE_1D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1d.html">QTexture1D</a></td></tr>
65288    /// <tr valign="top" class="even"><td>uimage2D</td><td>GL_UNSIGNED_INT_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
65289    /// <tr valign="top" class="odd"><td>uimage3D</td><td>GL_UNSIGNED_INT_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
65290    /// <tr valign="top" class="even"><td>uimage2DRect</td><td>GL_UNSIGNED_INT_IMAGE_2D_RECT</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturerectangle.html">QTextureRectangle</a></td></tr>
65291    /// <tr valign="top" class="odd"><td>uimageCube</td><td>GL_UNSIGNED_INT_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
65292    /// <tr valign="top" class="even"><td>uimageBuffer</td><td>GL_UNSIGNED_INT_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
65293    /// <tr valign="top" class="odd"><td>uimage1DArray</td><td>GL_UNSIGNED_INT_IMAGE_1D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture1darray.html">QTexture1DArray</a></td></tr>
65294    /// <tr valign="top" class="even"><td>uimage2DArray</td><td>GL_UNSIGNED_INT_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
65295    /// <tr valign="top" class="odd"><td>uimageCubeArray</td><td>GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
65296    /// <tr valign="top" class="even"><td>uimage2DMS</td><td>GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisample.html">QTexture2DMultisample</a></td></tr>
65297    /// <tr valign="top" class="odd"><td>uimage2DMSArray</td><td>GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2dmultisamplearray.html">QTexture2DMultisampleArray</a></td></tr>
65298    /// </tbody></table></div>
65299    /// <p>OpenGL ES 3.1 supports the following image types:</p>
65300    /// <div class="table"><table class="generic">
65301    ///  <thead><tr class="qt-style"><th>GLSL Type</th><th>OpenGL Type Enum</th><th>Texture Type</th></tr></thead>
65302    /// <tbody><tr valign="top" class="odd"><td>image2D</td><td>GL_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
65303    /// <tr valign="top" class="even"><td>image3D</td><td>GL_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
65304    /// <tr valign="top" class="odd"><td>imageCube</td><td>GL_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
65305    /// <tr valign="top" class="even"><td>image2DArray</td><td>GL_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
65306    /// <tr valign="top" class="odd"><td>iimage2D</td><td>GL_INT_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
65307    /// <tr valign="top" class="even"><td>iimage3D</td><td>GL_INT_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
65308    /// <tr valign="top" class="odd"><td>iimageCube</td><td>GL_INT_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
65309    /// <tr valign="top" class="even"><td>iimage2DArray</td><td>GL_INT_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
65310    /// <tr valign="top" class="odd"><td>uimage2D</td><td>GL_UNSIGNED_INT_IMAGE_2D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2d.html">QTexture2D</a></td></tr>
65311    /// <tr valign="top" class="even"><td>uimage3D</td><td>GL_UNSIGNED_INT_IMAGE_3D</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture3d.html">QTexture3D</a></td></tr>
65312    /// <tr valign="top" class="odd"><td>uimageCube</td><td>GL_UNSIGNED_INT_IMAGE_CUBE</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemap.html">QTextureCubeMap</a></td></tr>
65313    /// <tr valign="top" class="even"><td>uimage2DArray</td><td>GL_UNSIGNED_INT_IMAGE_2D_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexture2darray.html">QTexture2DArray</a></td></tr>
65314    /// </tbody></table></div>
65315    /// <p>OpenGL ES 3.2 supports all of the OpenGL ES 3.1 image types as well as the following:</p>
65316    /// <div class="table"><table class="generic">
65317    ///  <thead><tr class="qt-style"><th>GLSL Type</th><th>OpenGL Type Enum</th><th>Texture Type</th></tr></thead>
65318    /// <tbody><tr valign="top" class="odd"><td>imageBuffer</td><td>GL_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
65319    /// <tr valign="top" class="even"><td>imageCubeArray</td><td>GL_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
65320    /// <tr valign="top" class="odd"><td>iimageBuffer</td><td>GL_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
65321    /// <tr valign="top" class="even"><td>iimageCubeArray</td><td>GL_INT_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
65322    /// <tr valign="top" class="odd"><td>uimageBuffer</td><td>GL_UNSIGNED_INT_IMAGE_BUFFER</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturebuffer.html">QTextureBuffer</a></td></tr>
65323    /// <tr valign="top" class="even"><td>uimageCubeArray</td><td>GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY</td><td><a href="http://doc.qt.io/qt-5/qt3drender-qtexturecubemaparray.html">QTextureCubeMapArray</a></td></tr>
65324    /// </tbody></table></div>
65325    /// <p>Expected use would look like:</p>
65326    /// <pre class="cpp plain">
65327    ///   Qt3DRender::QTexture2D *tex2D = new Qt3DRender::QTexture2D();
65328    ///   ...
65329    ///   Qt3DRender::QMaterial *material = new Qt3DRender::QMaterial();
65330    ///   ...
65331    ///   Qt3DRender::QParameter *imageParameter = new Qt3DRender::QParameter();
65332    ///   Qt3DRender::QShaderImage *shaderImage = new Qt3DRender::QShaderImage();
65333    ///
65334    ///   shaderImage-&gt;setTexture(tex2D);
65335    ///
65336    ///   imageParameter-&gt;setName("imageUniformName");
65337    ///   imageParameter-&gt;setValue(QVariant::fromValue(shaderImage));
65338    ///
65339    ///   material-&gt;addParameter(imageParamenter);
65340    ///
65341    /// </pre></div>
65342    #[inline(always)]
65343    #[cfg_attr(
65344        feature = "ritual_rustdoc_nightly",
65345        doc(cfg(cpp_lib_version = "5.14.0"))
65346    )]
65347    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65348    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QShaderImage> {
65349        let ffi_result =
65350            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_QShaderImage1() };
65351        ::qt_core::QBox::from_raw(ffi_result)
65352    }
65353
65354    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QShaderImage::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
65355    #[inline(always)]
65356    #[cfg_attr(
65357        feature = "ritual_rustdoc_nightly",
65358        doc(cfg(cpp_lib_version = "5.14.0"))
65359    )]
65360    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65361    pub unsafe fn qt_metacall(
65362        &self,
65363        arg1: ::qt_core::q_meta_object::Call,
65364        arg2: ::std::os::raw::c_int,
65365        arg3: *mut *mut ::std::ffi::c_void,
65366    ) -> ::std::os::raw::c_int {
65367        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_qt_metacall(
65368            self as *const crate::QShaderImage as *mut crate::QShaderImage,
65369            arg1,
65370            arg2,
65371            arg3,
65372        )
65373    }
65374
65375    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QShaderImage::qt_metacast(const char* arg1)```</span>.
65376    #[inline(always)]
65377    #[cfg_attr(
65378        feature = "ritual_rustdoc_nightly",
65379        doc(cfg(cpp_lib_version = "5.14.0"))
65380    )]
65381    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65382    pub unsafe fn qt_metacast(
65383        &self,
65384        arg1: *const ::std::os::raw::c_char,
65385    ) -> *mut ::std::ffi::c_void {
65386        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_qt_metacast(
65387            self as *const crate::QShaderImage as *mut crate::QShaderImage,
65388            arg1,
65389        )
65390    }
65391
65392    /// <p>Specifies the type of access we want to allow from our shader instances to the image. If a shader tries to write or read from an image that has incompatible access, the behavior is undefined.</p>
65393    ///
65394    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderImage::setAccess(Qt3DRender::QShaderImage::Access access)```</span>.
65395    ///
65396    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#access-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the type of access we want to allow from our shader instances to the image. If a shader tries to write or read from an image that has incompatible access, the behavior is undefined.</p>
65397    /// <p><b>Access functions:</b></p>
65398    /// <div class="table"><table class="alignedsummary">
65399    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderImage::Access </td><td class="memItemRight bottomAlign"><span class="name"><b>access</b></span>() const</td></tr>
65400    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setAccess</b></span>(Qt3DRender::QShaderImage::Access <i>access</i>)</td></tr>
65401    /// </tbody></table></div>
65402    /// <p><b>Notifier signal:</b></p>
65403    /// <div class="table"><table class="alignedsummary">
65404    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>accessChanged</b></span>(Qt3DRender::QShaderImage::Access <i>access</i>)</td></tr>
65405    /// </tbody></table></div></div>
65406    #[inline(always)]
65407    #[cfg_attr(
65408        feature = "ritual_rustdoc_nightly",
65409        doc(cfg(cpp_lib_version = "5.14.0"))
65410    )]
65411    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65412    pub unsafe fn set_access(&self, access: crate::q_shader_image::Access) {
65413        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_setAccess(
65414            self as *const crate::QShaderImage as *mut crate::QShaderImage,
65415            access,
65416        )
65417    }
65418
65419    /// <p>Specifies the image format, which is essentially important when storing values in the Image from a shader.</p>
65420    ///
65421    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderImage::setFormat(Qt3DRender::QShaderImage::ImageFormat format)```</span>.
65422    ///
65423    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#format-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Specifies the image format, which is essentially important when storing values in the Image from a shader.</p>
65424    /// <p>The format doesn't have to be the same as the referenced texture's format. It however has to be compatible (matching in size but not necessarily by class type). For instance a texture of format R32F (size 32bits, class 1x32) could be used with an image of format RGBA8I (size 32bits, class 4x8). Table 8.27 of the <a href="https://www.khronos.org/registry/OpenGL/specs/gl/glspec45.core.pdf">OpenGL specifications</a> shows the size and class for all supported Image formats.</p>
65425    /// <p>By default Qt3D will try to set the image format to match that of the referenced texture.</p>
65426    /// <p><b>Access functions:</b></p>
65427    /// <div class="table"><table class="alignedsummary">
65428    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QShaderImage::ImageFormat </td><td class="memItemRight bottomAlign"><span class="name"><b>format</b></span>() const</td></tr>
65429    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setFormat</b></span>(Qt3DRender::QShaderImage::ImageFormat <i>format</i>)</td></tr>
65430    /// </tbody></table></div>
65431    /// <p><b>Notifier signal:</b></p>
65432    /// <div class="table"><table class="alignedsummary">
65433    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>formatChanged</b></span>(Qt3DRender::QShaderImage::ImageFormat <i>format</i>)</td></tr>
65434    /// </tbody></table></div></div>
65435    #[inline(always)]
65436    #[cfg_attr(
65437        feature = "ritual_rustdoc_nightly",
65438        doc(cfg(cpp_lib_version = "5.14.0"))
65439    )]
65440    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65441    pub unsafe fn set_format(&self, format: crate::q_shader_image::ImageFormat) {
65442        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_setFormat(
65443            self as *const crate::QShaderImage as *mut crate::QShaderImage,
65444            format,
65445        )
65446    }
65447
65448    /// <p>Holds which layer out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>. This property does nothing if <i>layered</i> is set to true or if the reference texture's type isn't compatible with layers.</p>
65449    ///
65450    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderImage::setLayer(int layer)```</span>.
65451    ///
65452    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layer-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds which layer out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>. This property does nothing if <i>layered</i> is set to true or if the reference texture's type isn't compatible with layers.</p>
65453    /// <p><b>Note: </b>When the referenced texture is of type cube map or cube map array and <i>ĺayered</i> is set to false, the face and layer are retrieved in the following manner:</p><pre class="cpp plain">
65454    ///   cubeMapLayer = layer / 6
65455    ///   cubeMapFace = layer - (cubeMapLayer * 6)
65456    ///
65457    /// </pre>
65458    /// <p><b>Access functions:</b></p>
65459    /// <div class="table"><table class="alignedsummary">
65460    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>layer</b></span>() const</td></tr>
65461    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayer</b></span>(int <i>layer</i>)</td></tr>
65462    /// </tbody></table></div>
65463    /// <p><b>Notifier signal:</b></p>
65464    /// <div class="table"><table class="alignedsummary">
65465    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layerChanged</b></span>(int <i>layer</i>)</td></tr>
65466    /// </tbody></table></div></div>
65467    #[inline(always)]
65468    #[cfg_attr(
65469        feature = "ritual_rustdoc_nightly",
65470        doc(cfg(cpp_lib_version = "5.14.0"))
65471    )]
65472    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65473    pub unsafe fn set_layer(&self, layer: ::std::os::raw::c_int) {
65474        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_setLayer(
65475            self as *const crate::QShaderImage as *mut crate::QShaderImage,
65476            layer,
65477        )
65478    }
65479
65480    /// <p>*</p>
65481    ///
65482    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderImage::setLayered(bool layered)```</span>.
65483    ///
65484    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#layered-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>*</p>
65485    /// <p>If set to true, if the referenced texture is a one-dimensional array, two-dimensional array, three-dimensional, cube map, cube map array, or two-dimensional multisample array texture, the entire level will be bound for all layers. If set to false, only the single layer specified by the <i>layer</i> property will be bound.</p>
65486    /// <p><b>Access functions:</b></p>
65487    /// <div class="table"><table class="alignedsummary">
65488    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> bool </td><td class="memItemRight bottomAlign"><span class="name"><b>layered</b></span>() const</td></tr>
65489    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setLayered</b></span>(bool <i>layered</i>)</td></tr>
65490    /// </tbody></table></div>
65491    /// <p><b>Notifier signal:</b></p>
65492    /// <div class="table"><table class="alignedsummary">
65493    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>layeredChanged</b></span>(bool <i>layered</i>)</td></tr>
65494    /// </tbody></table></div></div>
65495    #[inline(always)]
65496    #[cfg_attr(
65497        feature = "ritual_rustdoc_nightly",
65498        doc(cfg(cpp_lib_version = "5.14.0"))
65499    )]
65500    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65501    pub unsafe fn set_layered(&self, layered: bool) {
65502        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_setLayered(
65503            self as *const crate::QShaderImage as *mut crate::QShaderImage,
65504            layered,
65505        )
65506    }
65507
65508    /// <p>Holds which mipLevel out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>.</p>
65509    ///
65510    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderImage::setMipLevel(int mipLevel)```</span>.
65511    ///
65512    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html#mipLevel-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Holds which mipLevel out of the referenced texture should be used for the <a href="http://doc.qt.io/qt-5/qt3drender-qshaderimage.html">QShaderImage</a>.</p>
65513    /// <p><b>Access functions:</b></p>
65514    /// <div class="table"><table class="alignedsummary">
65515    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> int </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevel</b></span>() const</td></tr>
65516    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setMipLevel</b></span>(int <i>mipLevel</i>)</td></tr>
65517    /// </tbody></table></div>
65518    /// <p><b>Notifier signal:</b></p>
65519    /// <div class="table"><table class="alignedsummary">
65520    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>mipLevelChanged</b></span>(int <i>mipLevel</i>)</td></tr>
65521    /// </tbody></table></div></div>
65522    #[inline(always)]
65523    #[cfg_attr(
65524        feature = "ritual_rustdoc_nightly",
65525        doc(cfg(cpp_lib_version = "5.14.0"))
65526    )]
65527    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65528    pub unsafe fn set_mip_level(&self, mip_level: ::std::os::raw::c_int) {
65529        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_setMipLevel(
65530            self as *const crate::QShaderImage as *mut crate::QShaderImage,
65531            mip_level,
65532        )
65533    }
65534
65535    /// Calls C++ function: <span style='color: green;'>```[slot] void Qt3DRender::QShaderImage::setTexture(Qt3DRender::QAbstractTexture* texture)```</span>.
65536    #[inline(always)]
65537    #[cfg_attr(
65538        feature = "ritual_rustdoc_nightly",
65539        doc(cfg(cpp_lib_version = "5.14.0"))
65540    )]
65541    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65542    pub unsafe fn set_texture(
65543        &self,
65544        texture: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTexture>>,
65545    ) {
65546        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_setTexture(
65547            self as *const crate::QShaderImage as *mut crate::QShaderImage,
65548            ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTexture>>::cast_into(texture)
65549                .as_raw_ptr() as *mut crate::QAbstractTexture,
65550        )
65551    }
65552
65553    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
65554    #[inline(always)]
65555    #[cfg_attr(
65556        feature = "ritual_rustdoc_nightly",
65557        doc(cfg(cpp_lib_version = "5.14.0"))
65558    )]
65559    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65560    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
65561        let ffi_result =
65562            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_staticMetaObject() };
65563        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
65564            .expect("attempted to construct a null Ref")
65565    }
65566
65567    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* Qt3DRender::QShaderImage::texture() const```</span>.
65568    #[inline(always)]
65569    #[cfg_attr(
65570        feature = "ritual_rustdoc_nightly",
65571        doc(cfg(cpp_lib_version = "5.14.0"))
65572    )]
65573    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65574    pub unsafe fn texture(&self) -> ::qt_core::QPtr<crate::QAbstractTexture> {
65575        let ffi_result = {
65576            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_texture(
65577                self as *const crate::QShaderImage,
65578            )
65579        };
65580        ::qt_core::QPtr::from_raw(ffi_result)
65581    }
65582
65583    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QShaderImage::tr(const char* s, const char* c, int n)```</span>.
65584    #[inline(always)]
65585    #[cfg_attr(
65586        feature = "ritual_rustdoc_nightly",
65587        doc(cfg(cpp_lib_version = "5.14.0"))
65588    )]
65589    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65590    pub unsafe fn tr(
65591        s: *const ::std::os::raw::c_char,
65592        c: *const ::std::os::raw::c_char,
65593        n: ::std::os::raw::c_int,
65594    ) -> ::cpp_core::CppBox<::qt_core::QString> {
65595        let ffi_result = { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_tr(s, c, n) };
65596        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
65597    }
65598
65599    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QShaderImage::trUtf8(const char* s, const char* c, int n)```</span>.
65600    #[inline(always)]
65601    #[cfg_attr(
65602        feature = "ritual_rustdoc_nightly",
65603        doc(cfg(cpp_lib_version = "5.14.0"))
65604    )]
65605    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65606    pub unsafe fn tr_utf8(
65607        s: *const ::std::os::raw::c_char,
65608        c: *const ::std::os::raw::c_char,
65609        n: ::std::os::raw::c_int,
65610    ) -> ::cpp_core::CppBox<::qt_core::QString> {
65611        let ffi_result =
65612            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_trUtf8(s, c, n) };
65613        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
65614    }
65615}
65616
65617pub mod q_subtree_enabler {
65618    //! C++ type: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler```</span>
65619
65620    /// C++ enum: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler::Enablement```</span>.
65621    #[derive(Debug, Clone, Copy, PartialEq, Eq)]
65622    #[repr(transparent)]
65623    pub struct Enablement(::std::os::raw::c_int);
65624
65625    impl From<::std::os::raw::c_int> for Enablement {
65626        fn from(value: ::std::os::raw::c_int) -> Self {
65627            Enablement(value)
65628        }
65629    }
65630
65631    impl From<Enablement> for ::std::os::raw::c_int {
65632        fn from(value: Enablement) -> Self {
65633            value.0
65634        }
65635    }
65636
65637    impl Enablement {
65638        pub fn to_int(&self) -> ::std::os::raw::c_int {
65639            self.0
65640        }
65641    }
65642
65643    impl Enablement {
65644        /// C++ enum variant: <span style='color: green;'>```Persistent = 0```</span>
65645        #[allow(non_upper_case_globals)]
65646        pub const Persistent: crate::q_subtree_enabler::Enablement =
65647            crate::q_subtree_enabler::Enablement(0);
65648        /// C++ enum variant: <span style='color: green;'>```SingleShot = 1```</span>
65649        #[allow(non_upper_case_globals)]
65650        pub const SingleShot: crate::q_subtree_enabler::Enablement =
65651            crate::q_subtree_enabler::Enablement(1);
65652    }
65653}
65654/// <p>While QFrameGraphNodes can be individually enabled and disabled via the <code>enabled</code> property, this can become tedious when an entire path needs to be turned on or off. QSubtreeEnabler is a convenience node that makes this use case trivial, allowing all of its children to be controlled by a single switch.</p>
65655///
65656/// C++ class: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler```</span>.
65657///
65658/// <a href="http://doc.qt.io/qt-5/qt3drender-qsubtreeenabler.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>While QFrameGraphNodes can be individually enabled and disabled via the <code>enabled</code> property, this can become tedious when an entire path needs to be turned on or off. QSubtreeEnabler is a convenience node that makes this use case trivial, allowing all of its children to be controlled by a single switch.</p>
65659/// <p>QSubtreeEnabler is enabled by default.</p></div>
65660#[repr(C)]
65661pub struct QSubtreeEnabler {
65662    _unused: u8,
65663}
65664impl QSubtreeEnabler {
65665    /// <p>Controls whether subtree enablement is persistent or transient.</p>
65666    ///
65667    /// Returns a built-in Qt signal `Qt3DRender::QSubtreeEnabler::enablementChanged` that can be passed to `qt_core::Signal::connect`.
65668    ///
65669    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsubtreeenabler.html#enablement-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Controls whether subtree enablement is persistent or transient.</p>
65670    /// <p><b>Access functions:</b></p>
65671    /// <div class="table"><table class="alignedsummary">
65672    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QSubtreeEnabler::Enablement </td><td class="memItemRight bottomAlign"><span class="name"><b>enablement</b></span>() const</td></tr>
65673    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEnablement</b></span>(Qt3DRender::QSubtreeEnabler::Enablement <i>enablement</i>)</td></tr>
65674    /// </tbody></table></div>
65675    /// <p><b>Notifier signal:</b></p>
65676    /// <div class="table"><table class="alignedsummary">
65677    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>enablementChanged</b></span>(Qt3DRender::QSubtreeEnabler::Enablement <i>enablement</i>)</td></tr>
65678    /// </tbody></table></div></div>
65679    #[inline(always)]
65680    #[cfg_attr(
65681        feature = "ritual_rustdoc_nightly",
65682        doc(cfg(cpp_lib_version = "5.14.0"))
65683    )]
65684    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65685    pub fn enablement_changed(&self) -> ::qt_core::Signal<(crate::q_subtree_enabler::Enablement,)> {
65686        unsafe {
65687            ::qt_core::Signal::new(
65688                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
65689                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
65690                    b"2enablementChanged(Qt3DRender::QSubtreeEnabler::Enablement)\0",
65691                ),
65692            )
65693        }
65694    }
65695
65696    /// <p>Controls whether subtree enablement is persistent or transient.</p>
65697    ///
65698    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler::Enablement Qt3DRender::QSubtreeEnabler::enablement() const```</span>.
65699    ///
65700    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsubtreeenabler.html#enablement-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Controls whether subtree enablement is persistent or transient.</p>
65701    /// <p><b>Access functions:</b></p>
65702    /// <div class="table"><table class="alignedsummary">
65703    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QSubtreeEnabler::Enablement </td><td class="memItemRight bottomAlign"><span class="name"><b>enablement</b></span>() const</td></tr>
65704    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEnablement</b></span>(Qt3DRender::QSubtreeEnabler::Enablement <i>enablement</i>)</td></tr>
65705    /// </tbody></table></div>
65706    /// <p><b>Notifier signal:</b></p>
65707    /// <div class="table"><table class="alignedsummary">
65708    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>enablementChanged</b></span>(Qt3DRender::QSubtreeEnabler::Enablement <i>enablement</i>)</td></tr>
65709    /// </tbody></table></div></div>
65710    #[inline(always)]
65711    #[cfg_attr(
65712        feature = "ritual_rustdoc_nightly",
65713        doc(cfg(cpp_lib_version = "5.14.0"))
65714    )]
65715    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65716    pub unsafe fn enablement(&self) -> crate::q_subtree_enabler::Enablement {
65717        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_enablement(
65718            self as *const crate::QSubtreeEnabler,
65719        )
65720    }
65721
65722    /// Calls C++ function: <span style='color: green;'>```virtual const QMetaObject* Qt3DRender::QSubtreeEnabler::metaObject() const```</span>.
65723    #[inline(always)]
65724    #[cfg_attr(
65725        feature = "ritual_rustdoc_nightly",
65726        doc(cfg(cpp_lib_version = "5.14.0"))
65727    )]
65728    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65729    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
65730        let ffi_result = {
65731            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_metaObject(
65732                self as *const crate::QSubtreeEnabler,
65733            )
65734        };
65735        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
65736    }
65737
65738    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSubtreeEnabler::QSubtreeEnabler(Qt3DCore::QNode* parent = …)```</span>.
65739    #[inline(always)]
65740    #[cfg_attr(
65741        feature = "ritual_rustdoc_nightly",
65742        doc(cfg(cpp_lib_version = "5.14.0"))
65743    )]
65744    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65745    pub unsafe fn new_1a(
65746        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_3d_core::QNode>>,
65747    ) -> ::qt_core::QBox<crate::QSubtreeEnabler> {
65748        let ffi_result = {
65749            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_QSubtreeEnabler(
65750                ::cpp_core::CastInto::<::cpp_core::Ptr<::qt_3d_core::QNode>>::cast_into(parent)
65751                    .as_raw_ptr() as *mut ::qt_3d_core::QNode,
65752            )
65753        };
65754        ::qt_core::QBox::from_raw(ffi_result)
65755    }
65756
65757    /// <p>While QFrameGraphNodes can be individually enabled and disabled via the <code>enabled</code> property, this can become tedious when an entire path needs to be turned on or off. QSubtreeEnabler is a convenience node that makes this use case trivial, allowing all of its children to be controlled by a single switch.</p>
65758    ///
65759    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QSubtreeEnabler::QSubtreeEnabler()```</span>.
65760    ///
65761    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsubtreeenabler.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>While QFrameGraphNodes can be individually enabled and disabled via the <code>enabled</code> property, this can become tedious when an entire path needs to be turned on or off. QSubtreeEnabler is a convenience node that makes this use case trivial, allowing all of its children to be controlled by a single switch.</p>
65762    /// <p>QSubtreeEnabler is enabled by default.</p></div>
65763    #[inline(always)]
65764    #[cfg_attr(
65765        feature = "ritual_rustdoc_nightly",
65766        doc(cfg(cpp_lib_version = "5.14.0"))
65767    )]
65768    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65769    pub unsafe fn new_0a() -> ::qt_core::QBox<crate::QSubtreeEnabler> {
65770        let ffi_result =
65771            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_QSubtreeEnabler1() };
65772        ::qt_core::QBox::from_raw(ffi_result)
65773    }
65774
65775    /// Calls C++ function: <span style='color: green;'>```virtual int Qt3DRender::QSubtreeEnabler::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3)```</span>.
65776    #[inline(always)]
65777    #[cfg_attr(
65778        feature = "ritual_rustdoc_nightly",
65779        doc(cfg(cpp_lib_version = "5.14.0"))
65780    )]
65781    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65782    pub unsafe fn qt_metacall(
65783        &self,
65784        arg1: ::qt_core::q_meta_object::Call,
65785        arg2: ::std::os::raw::c_int,
65786        arg3: *mut *mut ::std::ffi::c_void,
65787    ) -> ::std::os::raw::c_int {
65788        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_qt_metacall(
65789            self as *const crate::QSubtreeEnabler as *mut crate::QSubtreeEnabler,
65790            arg1,
65791            arg2,
65792            arg3,
65793        )
65794    }
65795
65796    /// Calls C++ function: <span style='color: green;'>```virtual void* Qt3DRender::QSubtreeEnabler::qt_metacast(const char* arg1)```</span>.
65797    #[inline(always)]
65798    #[cfg_attr(
65799        feature = "ritual_rustdoc_nightly",
65800        doc(cfg(cpp_lib_version = "5.14.0"))
65801    )]
65802    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65803    pub unsafe fn qt_metacast(
65804        &self,
65805        arg1: *const ::std::os::raw::c_char,
65806    ) -> *mut ::std::ffi::c_void {
65807        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_qt_metacast(
65808            self as *const crate::QSubtreeEnabler as *mut crate::QSubtreeEnabler,
65809            arg1,
65810        )
65811    }
65812
65813    /// <p>Requests that the subtree be enabled.</p>
65814    ///
65815    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QSubtreeEnabler::requestUpdate()```</span>.
65816    ///
65817    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsubtreeenabler.html#requestUpdate">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Requests that the subtree be enabled.</p>
65818    /// <p>A convenience method intended to be used with <code>SingleShot</code> enablement.</p>
65819    /// <p><b>Note: </b>This function can be invoked via the meta-object system and from QML. See <a href="http://doc.qt.io/qt-5/qobject.html#Q_INVOKABLE">Q_INVOKABLE</a>.</p></div>
65820    #[inline(always)]
65821    #[cfg_attr(
65822        feature = "ritual_rustdoc_nightly",
65823        doc(cfg(cpp_lib_version = "5.14.0"))
65824    )]
65825    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65826    pub unsafe fn request_update(&self) {
65827        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_requestUpdate(
65828            self as *const crate::QSubtreeEnabler as *mut crate::QSubtreeEnabler,
65829        )
65830    }
65831
65832    /// <p>Controls whether subtree enablement is persistent or transient.</p>
65833    ///
65834    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QSubtreeEnabler::setEnablement(Qt3DRender::QSubtreeEnabler::Enablement enablement)```</span>.
65835    ///
65836    /// <a href="http://doc.qt.io/qt-5/qt3drender-qsubtreeenabler.html#enablement-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Controls whether subtree enablement is persistent or transient.</p>
65837    /// <p><b>Access functions:</b></p>
65838    /// <div class="table"><table class="alignedsummary">
65839    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> Qt3DRender::QSubtreeEnabler::Enablement </td><td class="memItemRight bottomAlign"><span class="name"><b>enablement</b></span>() const</td></tr>
65840    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>setEnablement</b></span>(Qt3DRender::QSubtreeEnabler::Enablement <i>enablement</i>)</td></tr>
65841    /// </tbody></table></div>
65842    /// <p><b>Notifier signal:</b></p>
65843    /// <div class="table"><table class="alignedsummary">
65844    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>enablementChanged</b></span>(Qt3DRender::QSubtreeEnabler::Enablement <i>enablement</i>)</td></tr>
65845    /// </tbody></table></div></div>
65846    #[inline(always)]
65847    #[cfg_attr(
65848        feature = "ritual_rustdoc_nightly",
65849        doc(cfg(cpp_lib_version = "5.14.0"))
65850    )]
65851    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65852    pub unsafe fn set_enablement(&self, enablement: crate::q_subtree_enabler::Enablement) {
65853        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_setEnablement(
65854            self as *const crate::QSubtreeEnabler as *mut crate::QSubtreeEnabler,
65855            enablement,
65856        )
65857    }
65858
65859    /// Returns a reference to the <span style='color: green;'>```staticMetaObject```</span> field.
65860    #[inline(always)]
65861    #[cfg_attr(
65862        feature = "ritual_rustdoc_nightly",
65863        doc(cfg(cpp_lib_version = "5.14.0"))
65864    )]
65865    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65866    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
65867        let ffi_result =
65868            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_staticMetaObject() };
65869        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
65870            .expect("attempted to construct a null Ref")
65871    }
65872
65873    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSubtreeEnabler::tr(const char* s, const char* c, int n)```</span>.
65874    #[inline(always)]
65875    #[cfg_attr(
65876        feature = "ritual_rustdoc_nightly",
65877        doc(cfg(cpp_lib_version = "5.14.0"))
65878    )]
65879    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65880    pub unsafe fn tr(
65881        s: *const ::std::os::raw::c_char,
65882        c: *const ::std::os::raw::c_char,
65883        n: ::std::os::raw::c_int,
65884    ) -> ::cpp_core::CppBox<::qt_core::QString> {
65885        let ffi_result =
65886            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_tr(s, c, n) };
65887        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
65888    }
65889
65890    /// Calls C++ function: <span style='color: green;'>```static QString Qt3DRender::QSubtreeEnabler::trUtf8(const char* s, const char* c, int n)```</span>.
65891    #[inline(always)]
65892    #[cfg_attr(
65893        feature = "ritual_rustdoc_nightly",
65894        doc(cfg(cpp_lib_version = "5.14.0"))
65895    )]
65896    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65897    pub unsafe fn tr_utf8(
65898        s: *const ::std::os::raw::c_char,
65899        c: *const ::std::os::raw::c_char,
65900        n: ::std::os::raw::c_int,
65901    ) -> ::cpp_core::CppBox<::qt_core::QString> {
65902        let ffi_result =
65903            { crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_trUtf8(s, c, n) };
65904        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
65905    }
65906}
65907
65908/// <p>The actual data content is contained in a <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html#QTextureImageDataPtr-typedef">QTextureImageDataPtr</a> member. Additional members allow to specify the x, y, z offset of the content update as well as the eventual layer, mipLevel and face.</p>
65909///
65910/// C++ class: <span style='color: green;'>```Qt3DRender::QTextureDataUpdate```</span>.
65911///
65912/// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturedataupdate.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>The actual data content is contained in a <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html#QTextureImageDataPtr-typedef">QTextureImageDataPtr</a> member. Additional members allow to specify the x, y, z offset of the content update as well as the eventual layer, mipLevel and face.</p></div>
65913#[repr(C)]
65914pub struct QTextureDataUpdate {
65915    _unused: u8,
65916}
65917impl QTextureDataUpdate {
65918    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureDataUpdate& Qt3DRender::QTextureDataUpdate::operator=(const Qt3DRender::QTextureDataUpdate& other)```</span>.
65919    #[inline(always)]
65920    #[cfg_attr(
65921        feature = "ritual_rustdoc_nightly",
65922        doc(cfg(cpp_lib_version = "5.14.0"))
65923    )]
65924    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65925    pub unsafe fn copy_from(
65926        &self,
65927        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureDataUpdate>>,
65928    ) -> ::cpp_core::Ref<crate::QTextureDataUpdate> {
65929        let ffi_result = {
65930            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_operator_(
65931                self as *const crate::QTextureDataUpdate as *mut crate::QTextureDataUpdate,
65932                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureDataUpdate>>::cast_into(
65933                    other,
65934                )
65935                .as_raw_ptr(),
65936            )
65937        };
65938        ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
65939    }
65940
65941    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture::CubeMapFace Qt3DRender::QTextureDataUpdate::face() const```</span>.
65942    #[inline(always)]
65943    #[cfg_attr(
65944        feature = "ritual_rustdoc_nightly",
65945        doc(cfg(cpp_lib_version = "5.14.0"))
65946    )]
65947    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65948    pub unsafe fn face(&self) -> crate::q_abstract_texture::CubeMapFace {
65949        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_face(
65950            self as *const crate::QTextureDataUpdate,
65951        )
65952    }
65953
65954    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureDataUpdate::layer() const```</span>.
65955    #[inline(always)]
65956    #[cfg_attr(
65957        feature = "ritual_rustdoc_nightly",
65958        doc(cfg(cpp_lib_version = "5.14.0"))
65959    )]
65960    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65961    pub unsafe fn layer(&self) -> ::std::os::raw::c_int {
65962        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_layer(
65963            self as *const crate::QTextureDataUpdate,
65964        )
65965    }
65966
65967    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureDataUpdate::mipLevel() const```</span>.
65968    #[inline(always)]
65969    #[cfg_attr(
65970        feature = "ritual_rustdoc_nightly",
65971        doc(cfg(cpp_lib_version = "5.14.0"))
65972    )]
65973    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65974    pub unsafe fn mip_level(&self) -> ::std::os::raw::c_int {
65975        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_mipLevel(
65976            self as *const crate::QTextureDataUpdate,
65977        )
65978    }
65979
65980    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureDataUpdate::QTextureDataUpdate()```</span>.
65981    #[inline(always)]
65982    #[cfg_attr(
65983        feature = "ritual_rustdoc_nightly",
65984        doc(cfg(cpp_lib_version = "5.14.0"))
65985    )]
65986    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
65987    pub unsafe fn new() -> ::cpp_core::CppBox<crate::QTextureDataUpdate> {
65988        let ffi_result = {
65989            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_QTextureDataUpdate()
65990        };
65991        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
65992    }
65993
65994    /// Calls C++ function: <span style='color: green;'>```[constructor] void Qt3DRender::QTextureDataUpdate::QTextureDataUpdate(const Qt3DRender::QTextureDataUpdate& other)```</span>.
65995    #[inline(always)]
65996    #[cfg_attr(
65997        feature = "ritual_rustdoc_nightly",
65998        doc(cfg(cpp_lib_version = "5.14.0"))
65999    )]
66000    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66001    pub unsafe fn new_copy(
66002        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureDataUpdate>>,
66003    ) -> ::cpp_core::CppBox<crate::QTextureDataUpdate> {
66004        let ffi_result = {
66005            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_QTextureDataUpdate1(
66006                ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureDataUpdate>>::cast_into(
66007                    other,
66008                )
66009                .as_raw_ptr(),
66010            )
66011        };
66012        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66013    }
66014
66015    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureDataUpdate::setFace(Qt3DRender::QAbstractTexture::CubeMapFace face)```</span>.
66016    #[inline(always)]
66017    #[cfg_attr(
66018        feature = "ritual_rustdoc_nightly",
66019        doc(cfg(cpp_lib_version = "5.14.0"))
66020    )]
66021    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66022    pub unsafe fn set_face(&self, face: crate::q_abstract_texture::CubeMapFace) {
66023        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_setFace(
66024            self as *const crate::QTextureDataUpdate as *mut crate::QTextureDataUpdate,
66025            face,
66026        )
66027    }
66028
66029    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureDataUpdate::setLayer(int layer)```</span>.
66030    #[inline(always)]
66031    #[cfg_attr(
66032        feature = "ritual_rustdoc_nightly",
66033        doc(cfg(cpp_lib_version = "5.14.0"))
66034    )]
66035    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66036    pub unsafe fn set_layer(&self, layer: ::std::os::raw::c_int) {
66037        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_setLayer(
66038            self as *const crate::QTextureDataUpdate as *mut crate::QTextureDataUpdate,
66039            layer,
66040        )
66041    }
66042
66043    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureDataUpdate::setMipLevel(int mipLevel)```</span>.
66044    #[inline(always)]
66045    #[cfg_attr(
66046        feature = "ritual_rustdoc_nightly",
66047        doc(cfg(cpp_lib_version = "5.14.0"))
66048    )]
66049    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66050    pub unsafe fn set_mip_level(&self, mip_level: ::std::os::raw::c_int) {
66051        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_setMipLevel(
66052            self as *const crate::QTextureDataUpdate as *mut crate::QTextureDataUpdate,
66053            mip_level,
66054        )
66055    }
66056
66057    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureDataUpdate::setX(int x)```</span>.
66058    #[inline(always)]
66059    #[cfg_attr(
66060        feature = "ritual_rustdoc_nightly",
66061        doc(cfg(cpp_lib_version = "5.14.0"))
66062    )]
66063    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66064    pub unsafe fn set_x(&self, x: ::std::os::raw::c_int) {
66065        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_setX(
66066            self as *const crate::QTextureDataUpdate as *mut crate::QTextureDataUpdate,
66067            x,
66068        )
66069    }
66070
66071    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureDataUpdate::setY(int y)```</span>.
66072    #[inline(always)]
66073    #[cfg_attr(
66074        feature = "ritual_rustdoc_nightly",
66075        doc(cfg(cpp_lib_version = "5.14.0"))
66076    )]
66077    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66078    pub unsafe fn set_y(&self, y: ::std::os::raw::c_int) {
66079        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_setY(
66080            self as *const crate::QTextureDataUpdate as *mut crate::QTextureDataUpdate,
66081            y,
66082        )
66083    }
66084
66085    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureDataUpdate::setZ(int z)```</span>.
66086    #[inline(always)]
66087    #[cfg_attr(
66088        feature = "ritual_rustdoc_nightly",
66089        doc(cfg(cpp_lib_version = "5.14.0"))
66090    )]
66091    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66092    pub unsafe fn set_z(&self, z: ::std::os::raw::c_int) {
66093        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_setZ(
66094            self as *const crate::QTextureDataUpdate as *mut crate::QTextureDataUpdate,
66095            z,
66096        )
66097    }
66098
66099    /// Calls C++ function: <span style='color: green;'>```void Qt3DRender::QTextureDataUpdate::swap(Qt3DRender::QTextureDataUpdate& other)```</span>.
66100    #[inline(always)]
66101    #[cfg_attr(
66102        feature = "ritual_rustdoc_nightly",
66103        doc(cfg(cpp_lib_version = "5.14.0"))
66104    )]
66105    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66106    pub unsafe fn swap(
66107        &self,
66108        other: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureDataUpdate>>,
66109    ) {
66110        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_swap(
66111            self as *const crate::QTextureDataUpdate as *mut crate::QTextureDataUpdate,
66112            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureDataUpdate>>::cast_into(other)
66113                .as_raw_ptr() as *mut crate::QTextureDataUpdate,
66114        )
66115    }
66116
66117    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureDataUpdate::x() const```</span>.
66118    #[inline(always)]
66119    #[cfg_attr(
66120        feature = "ritual_rustdoc_nightly",
66121        doc(cfg(cpp_lib_version = "5.14.0"))
66122    )]
66123    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66124    pub unsafe fn x(&self) -> ::std::os::raw::c_int {
66125        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_x(
66126            self as *const crate::QTextureDataUpdate,
66127        )
66128    }
66129
66130    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureDataUpdate::y() const```</span>.
66131    #[inline(always)]
66132    #[cfg_attr(
66133        feature = "ritual_rustdoc_nightly",
66134        doc(cfg(cpp_lib_version = "5.14.0"))
66135    )]
66136    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66137    pub unsafe fn y(&self) -> ::std::os::raw::c_int {
66138        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_y(
66139            self as *const crate::QTextureDataUpdate,
66140        )
66141    }
66142
66143    /// Calls C++ function: <span style='color: green;'>```int Qt3DRender::QTextureDataUpdate::z() const```</span>.
66144    #[inline(always)]
66145    #[cfg_attr(
66146        feature = "ritual_rustdoc_nightly",
66147        doc(cfg(cpp_lib_version = "5.14.0"))
66148    )]
66149    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
66150    pub unsafe fn z(&self) -> ::std::os::raw::c_int {
66151        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_z(
66152            self as *const crate::QTextureDataUpdate,
66153        )
66154    }
66155}
66156
66157impl ::qt_core::AsReceiver for crate::SignalOfCubeMapFace {
66158    type Arguments = (crate::q_abstract_texture::CubeMapFace,);
66159    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
66160        unsafe {
66161            ::qt_core::Receiver::new(
66162                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66163                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66164                    b"2emit_(Qt3DRender::QAbstractTexture::CubeMapFace)\0",
66165                ),
66166            )
66167        }
66168    }
66169}
66170
66171impl crate::SignalOfCubeMapFace {
66172    /// Connects this signal to another signal or slot.
66173    ///
66174    /// This is a shortcut for `self.signal().connect(receiver)`.
66175
66176    pub unsafe fn connect_with_type<R>(
66177        &self,
66178        connection_type: ::qt_core::ConnectionType,
66179        receiver: R,
66180    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66181    where
66182        R: ::qt_core::AsReceiver,
66183        (crate::q_abstract_texture::CubeMapFace,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66184    {
66185        self.signal().connect_with_type(connection_type, receiver)
66186    }
66187
66188    /// Connects this signal to another signal or slot, using auto connection type.
66189    ///
66190    /// This is a shortcut for `self.signal().connect(receiver)`.
66191
66192    pub unsafe fn connect<R>(
66193        &self,
66194        receiver: R,
66195    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66196    where
66197        R: ::qt_core::AsReceiver,
66198        (crate::q_abstract_texture::CubeMapFace,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66199    {
66200        self.signal().connect(receiver)
66201    }
66202}
66203
66204/// Emits a Qt signal with arguments `crate::q_abstract_texture::CubeMapFace`.
66205///
66206/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::CubeMapFace```</span>).
66207///
66208/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
66209#[repr(C)]
66210pub struct SignalOfCubeMapFace {
66211    _unused: u8,
66212}
66213impl SignalOfCubeMapFace {
66214    /// Returns a `Signal` object representing the signal.
66215    ///
66216    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
66217    #[inline(always)]
66218    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::CubeMapFace,)> {
66219        unsafe {
66220            ::qt_core::Signal::new(
66221                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66222                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66223                    b"2emit_(Qt3DRender::QAbstractTexture::CubeMapFace)\0",
66224                ),
66225            )
66226        }
66227    }
66228
66229    /// Emits the signal.
66230    #[inline(always)]
66231    pub unsafe fn emit(&self, arg0: crate::q_abstract_texture::CubeMapFace) {
66232        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_emit_(self as *const crate::SignalOfCubeMapFace as *mut crate::SignalOfCubeMapFace, arg0)
66233    }
66234
66235    #[inline(always)]
66236    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
66237        let ffi_result = {
66238            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_metaObject(self as *const crate::SignalOfCubeMapFace)
66239        };
66240        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66241    }
66242
66243    /// Creates a new object.
66244    #[inline(always)]
66245    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfCubeMapFace> {
66246        let ffi_result = {
66247            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace()
66248        };
66249        ::qt_core::QBox::from_raw(ffi_result)
66250    }
66251
66252    #[inline(always)]
66253    pub unsafe fn qt_metacall(
66254        &self,
66255        arg1: ::qt_core::q_meta_object::Call,
66256        arg2: ::std::os::raw::c_int,
66257        arg3: *mut *mut ::std::ffi::c_void,
66258    ) -> ::std::os::raw::c_int {
66259        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_qt_metacall(self as *const crate::SignalOfCubeMapFace as *mut crate::SignalOfCubeMapFace, arg1, arg2, arg3)
66260    }
66261
66262    #[inline(always)]
66263    pub unsafe fn qt_metacast(
66264        &self,
66265        arg1: *const ::std::os::raw::c_char,
66266    ) -> *mut ::std::ffi::c_void {
66267        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_qt_metacast(self as *const crate::SignalOfCubeMapFace as *mut crate::SignalOfCubeMapFace, arg1)
66268    }
66269
66270    #[inline(always)]
66271    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
66272        let ffi_result = {
66273            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_staticMetaObject()
66274        };
66275        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66276            .expect("attempted to construct a null Ref")
66277    }
66278
66279    #[inline(always)]
66280    pub unsafe fn tr(
66281        s: *const ::std::os::raw::c_char,
66282        c: *const ::std::os::raw::c_char,
66283        n: ::std::os::raw::c_int,
66284    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66285        let ffi_result = {
66286            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_tr(s, c, n)
66287        };
66288        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66289    }
66290
66291    #[inline(always)]
66292    pub unsafe fn tr_utf8(
66293        s: *const ::std::os::raw::c_char,
66294        c: *const ::std::os::raw::c_char,
66295        n: ::std::os::raw::c_int,
66296    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66297        let ffi_result = {
66298            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_trUtf8(s, c, n)
66299        };
66300        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66301    }
66302}
66303
66304impl ::qt_core::AsReceiver for crate::SignalOfQPickEvent {
66305    type Arguments = (*mut crate::QPickEvent,);
66306    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
66307        unsafe {
66308            ::qt_core::Receiver::new(
66309                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66310                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66311                    b"2emit_(Qt3DRender::QPickEvent *)\0",
66312                ),
66313            )
66314        }
66315    }
66316}
66317
66318impl crate::SignalOfQPickEvent {
66319    /// Connects this signal to another signal or slot.
66320    ///
66321    /// This is a shortcut for `self.signal().connect(receiver)`.
66322
66323    pub unsafe fn connect_with_type<R>(
66324        &self,
66325        connection_type: ::qt_core::ConnectionType,
66326        receiver: R,
66327    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66328    where
66329        R: ::qt_core::AsReceiver,
66330        (*mut crate::QPickEvent,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66331    {
66332        self.signal().connect_with_type(connection_type, receiver)
66333    }
66334
66335    /// Connects this signal to another signal or slot, using auto connection type.
66336    ///
66337    /// This is a shortcut for `self.signal().connect(receiver)`.
66338
66339    pub unsafe fn connect<R>(
66340        &self,
66341        receiver: R,
66342    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66343    where
66344        R: ::qt_core::AsReceiver,
66345        (*mut crate::QPickEvent,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66346    {
66347        self.signal().connect(receiver)
66348    }
66349}
66350
66351/// Emits a Qt signal with arguments `*mut crate::QPickEvent`.
66352///
66353/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPickEvent*```</span>).
66354///
66355/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
66356#[repr(C)]
66357pub struct SignalOfQPickEvent {
66358    _unused: u8,
66359}
66360impl SignalOfQPickEvent {
66361    /// Returns a `Signal` object representing the signal.
66362    ///
66363    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
66364    #[inline(always)]
66365    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QPickEvent,)> {
66366        unsafe {
66367            ::qt_core::Signal::new(
66368                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66369                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66370                    b"2emit_(Qt3DRender::QPickEvent *)\0",
66371                ),
66372            )
66373        }
66374    }
66375
66376    /// Emits the signal.
66377    #[inline(always)]
66378    pub unsafe fn emit(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QPickEvent>>) {
66379        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_emit_(self as *const crate::SignalOfQPickEvent as *mut crate::SignalOfQPickEvent, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QPickEvent>>::cast_into(arg0).as_raw_ptr() as *mut crate::QPickEvent)
66380    }
66381
66382    #[inline(always)]
66383    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
66384        let ffi_result = {
66385            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_metaObject(self as *const crate::SignalOfQPickEvent)
66386        };
66387        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66388    }
66389
66390    /// Creates a new object.
66391    #[inline(always)]
66392    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQPickEvent> {
66393        let ffi_result = {
66394            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr()
66395        };
66396        ::qt_core::QBox::from_raw(ffi_result)
66397    }
66398
66399    #[inline(always)]
66400    pub unsafe fn qt_metacall(
66401        &self,
66402        arg1: ::qt_core::q_meta_object::Call,
66403        arg2: ::std::os::raw::c_int,
66404        arg3: *mut *mut ::std::ffi::c_void,
66405    ) -> ::std::os::raw::c_int {
66406        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_qt_metacall(self as *const crate::SignalOfQPickEvent as *mut crate::SignalOfQPickEvent, arg1, arg2, arg3)
66407    }
66408
66409    #[inline(always)]
66410    pub unsafe fn qt_metacast(
66411        &self,
66412        arg1: *const ::std::os::raw::c_char,
66413    ) -> *mut ::std::ffi::c_void {
66414        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_qt_metacast(self as *const crate::SignalOfQPickEvent as *mut crate::SignalOfQPickEvent, arg1)
66415    }
66416
66417    #[inline(always)]
66418    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
66419        let ffi_result = {
66420            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_staticMetaObject()
66421        };
66422        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66423            .expect("attempted to construct a null Ref")
66424    }
66425
66426    #[inline(always)]
66427    pub unsafe fn tr(
66428        s: *const ::std::os::raw::c_char,
66429        c: *const ::std::os::raw::c_char,
66430        n: ::std::os::raw::c_int,
66431    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66432        let ffi_result = {
66433            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_tr(s, c, n)
66434        };
66435        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66436    }
66437
66438    #[inline(always)]
66439    pub unsafe fn tr_utf8(
66440        s: *const ::std::os::raw::c_char,
66441        c: *const ::std::os::raw::c_char,
66442        n: ::std::os::raw::c_int,
66443    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66444        let ffi_result = {
66445            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_trUtf8(s, c, n)
66446        };
66447        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66448    }
66449}
66450
66451impl ::qt_core::AsReceiver for crate::SignalOfUsageType {
66452    type Arguments = (crate::q_buffer::UsageType,);
66453    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
66454        unsafe {
66455            ::qt_core::Receiver::new(
66456                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66457                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66458                    b"2emit_(Qt3DRender::QBuffer::UsageType)\0",
66459                ),
66460            )
66461        }
66462    }
66463}
66464
66465impl crate::SignalOfUsageType {
66466    /// Connects this signal to another signal or slot.
66467    ///
66468    /// This is a shortcut for `self.signal().connect(receiver)`.
66469
66470    pub unsafe fn connect_with_type<R>(
66471        &self,
66472        connection_type: ::qt_core::ConnectionType,
66473        receiver: R,
66474    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66475    where
66476        R: ::qt_core::AsReceiver,
66477        (crate::q_buffer::UsageType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66478    {
66479        self.signal().connect_with_type(connection_type, receiver)
66480    }
66481
66482    /// Connects this signal to another signal or slot, using auto connection type.
66483    ///
66484    /// This is a shortcut for `self.signal().connect(receiver)`.
66485
66486    pub unsafe fn connect<R>(
66487        &self,
66488        receiver: R,
66489    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66490    where
66491        R: ::qt_core::AsReceiver,
66492        (crate::q_buffer::UsageType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66493    {
66494        self.signal().connect(receiver)
66495    }
66496}
66497
66498/// Emits a Qt signal with arguments `crate::q_buffer::UsageType`.
66499///
66500/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBuffer::UsageType```</span>).
66501///
66502/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
66503#[repr(C)]
66504pub struct SignalOfUsageType {
66505    _unused: u8,
66506}
66507impl SignalOfUsageType {
66508    /// Returns a `Signal` object representing the signal.
66509    ///
66510    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
66511    #[inline(always)]
66512    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_buffer::UsageType,)> {
66513        unsafe {
66514            ::qt_core::Signal::new(
66515                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66516                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66517                    b"2emit_(Qt3DRender::QBuffer::UsageType)\0",
66518                ),
66519            )
66520        }
66521    }
66522
66523    /// Emits the signal.
66524    #[inline(always)]
66525    pub unsafe fn emit(&self, arg0: crate::q_buffer::UsageType) {
66526        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_emit_(self as *const crate::SignalOfUsageType as *mut crate::SignalOfUsageType, arg0)
66527    }
66528
66529    #[inline(always)]
66530    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
66531        let ffi_result = {
66532            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_metaObject(self as *const crate::SignalOfUsageType)
66533        };
66534        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66535    }
66536
66537    /// Creates a new object.
66538    #[inline(always)]
66539    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfUsageType> {
66540        let ffi_result = {
66541            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType()
66542        };
66543        ::qt_core::QBox::from_raw(ffi_result)
66544    }
66545
66546    #[inline(always)]
66547    pub unsafe fn qt_metacall(
66548        &self,
66549        arg1: ::qt_core::q_meta_object::Call,
66550        arg2: ::std::os::raw::c_int,
66551        arg3: *mut *mut ::std::ffi::c_void,
66552    ) -> ::std::os::raw::c_int {
66553        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_qt_metacall(self as *const crate::SignalOfUsageType as *mut crate::SignalOfUsageType, arg1, arg2, arg3)
66554    }
66555
66556    #[inline(always)]
66557    pub unsafe fn qt_metacast(
66558        &self,
66559        arg1: *const ::std::os::raw::c_char,
66560    ) -> *mut ::std::ffi::c_void {
66561        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_qt_metacast(self as *const crate::SignalOfUsageType as *mut crate::SignalOfUsageType, arg1)
66562    }
66563
66564    #[inline(always)]
66565    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
66566        let ffi_result = {
66567            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_staticMetaObject()
66568        };
66569        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66570            .expect("attempted to construct a null Ref")
66571    }
66572
66573    #[inline(always)]
66574    pub unsafe fn tr(
66575        s: *const ::std::os::raw::c_char,
66576        c: *const ::std::os::raw::c_char,
66577        n: ::std::os::raw::c_int,
66578    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66579        let ffi_result = {
66580            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_tr(s, c, n)
66581        };
66582        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66583    }
66584
66585    #[inline(always)]
66586    pub unsafe fn tr_utf8(
66587        s: *const ::std::os::raw::c_char,
66588        c: *const ::std::os::raw::c_char,
66589        n: ::std::os::raw::c_int,
66590    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66591        let ffi_result = {
66592            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_trUtf8(s, c, n)
66593        };
66594        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66595    }
66596}
66597
66598impl ::qt_core::AsReceiver for crate::SignalOfQAttribute {
66599    type Arguments = (*mut crate::QAttribute,);
66600    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
66601        unsafe {
66602            ::qt_core::Receiver::new(
66603                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66604                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66605                    b"2emit_(Qt3DRender::QAttribute *)\0",
66606                ),
66607            )
66608        }
66609    }
66610}
66611
66612impl crate::SignalOfQAttribute {
66613    /// Connects this signal to another signal or slot.
66614    ///
66615    /// This is a shortcut for `self.signal().connect(receiver)`.
66616
66617    pub unsafe fn connect_with_type<R>(
66618        &self,
66619        connection_type: ::qt_core::ConnectionType,
66620        receiver: R,
66621    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66622    where
66623        R: ::qt_core::AsReceiver,
66624        (*mut crate::QAttribute,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66625    {
66626        self.signal().connect_with_type(connection_type, receiver)
66627    }
66628
66629    /// Connects this signal to another signal or slot, using auto connection type.
66630    ///
66631    /// This is a shortcut for `self.signal().connect(receiver)`.
66632
66633    pub unsafe fn connect<R>(
66634        &self,
66635        receiver: R,
66636    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66637    where
66638        R: ::qt_core::AsReceiver,
66639        (*mut crate::QAttribute,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66640    {
66641        self.signal().connect(receiver)
66642    }
66643}
66644
66645/// Emits a Qt signal with arguments `*mut crate::QAttribute`.
66646///
66647/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAttribute*```</span>).
66648///
66649/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
66650#[repr(C)]
66651pub struct SignalOfQAttribute {
66652    _unused: u8,
66653}
66654impl SignalOfQAttribute {
66655    /// Returns a `Signal` object representing the signal.
66656    ///
66657    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
66658    #[inline(always)]
66659    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QAttribute,)> {
66660        unsafe {
66661            ::qt_core::Signal::new(
66662                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66663                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66664                    b"2emit_(Qt3DRender::QAttribute *)\0",
66665                ),
66666            )
66667        }
66668    }
66669
66670    /// Emits the signal.
66671    #[inline(always)]
66672    pub unsafe fn emit(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAttribute>>) {
66673        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_emit_(self as *const crate::SignalOfQAttribute as *mut crate::SignalOfQAttribute, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAttribute>>::cast_into(arg0).as_raw_ptr() as *mut crate::QAttribute)
66674    }
66675
66676    #[inline(always)]
66677    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
66678        let ffi_result = {
66679            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_metaObject(self as *const crate::SignalOfQAttribute)
66680        };
66681        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66682    }
66683
66684    /// Creates a new object.
66685    #[inline(always)]
66686    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQAttribute> {
66687        let ffi_result = {
66688            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr()
66689        };
66690        ::qt_core::QBox::from_raw(ffi_result)
66691    }
66692
66693    #[inline(always)]
66694    pub unsafe fn qt_metacall(
66695        &self,
66696        arg1: ::qt_core::q_meta_object::Call,
66697        arg2: ::std::os::raw::c_int,
66698        arg3: *mut *mut ::std::ffi::c_void,
66699    ) -> ::std::os::raw::c_int {
66700        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_qt_metacall(self as *const crate::SignalOfQAttribute as *mut crate::SignalOfQAttribute, arg1, arg2, arg3)
66701    }
66702
66703    #[inline(always)]
66704    pub unsafe fn qt_metacast(
66705        &self,
66706        arg1: *const ::std::os::raw::c_char,
66707    ) -> *mut ::std::ffi::c_void {
66708        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_qt_metacast(self as *const crate::SignalOfQAttribute as *mut crate::SignalOfQAttribute, arg1)
66709    }
66710
66711    #[inline(always)]
66712    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
66713        let ffi_result = {
66714            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_staticMetaObject()
66715        };
66716        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66717            .expect("attempted to construct a null Ref")
66718    }
66719
66720    #[inline(always)]
66721    pub unsafe fn tr(
66722        s: *const ::std::os::raw::c_char,
66723        c: *const ::std::os::raw::c_char,
66724        n: ::std::os::raw::c_int,
66725    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66726        let ffi_result = {
66727            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_tr(s, c, n)
66728        };
66729        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66730    }
66731
66732    #[inline(always)]
66733    pub unsafe fn tr_utf8(
66734        s: *const ::std::os::raw::c_char,
66735        c: *const ::std::os::raw::c_char,
66736        n: ::std::os::raw::c_int,
66737    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66738        let ffi_result = {
66739            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_trUtf8(s, c, n)
66740        };
66741        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66742    }
66743}
66744
66745impl ::qt_core::AsReceiver for crate::SignalOfQByteArray {
66746    type Arguments = (*const ::qt_core::QByteArray,);
66747    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
66748        unsafe {
66749            ::qt_core::Receiver::new(
66750                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66751                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QByteArray const &)\0"),
66752            )
66753        }
66754    }
66755}
66756
66757impl crate::SignalOfQByteArray {
66758    /// Connects this signal to another signal or slot.
66759    ///
66760    /// This is a shortcut for `self.signal().connect(receiver)`.
66761
66762    pub unsafe fn connect_with_type<R>(
66763        &self,
66764        connection_type: ::qt_core::ConnectionType,
66765        receiver: R,
66766    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66767    where
66768        R: ::qt_core::AsReceiver,
66769        (*const ::qt_core::QByteArray,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66770    {
66771        self.signal().connect_with_type(connection_type, receiver)
66772    }
66773
66774    /// Connects this signal to another signal or slot, using auto connection type.
66775    ///
66776    /// This is a shortcut for `self.signal().connect(receiver)`.
66777
66778    pub unsafe fn connect<R>(
66779        &self,
66780        receiver: R,
66781    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66782    where
66783        R: ::qt_core::AsReceiver,
66784        (*const ::qt_core::QByteArray,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66785    {
66786        self.signal().connect(receiver)
66787    }
66788}
66789
66790/// Emits a Qt signal with arguments `*const ::qt_core::QByteArray`.
66791///
66792/// Corresponding C++ argument types: (<span style='color: green;'>```const QByteArray&```</span>).
66793///
66794/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
66795#[repr(C)]
66796pub struct SignalOfQByteArray {
66797    _unused: u8,
66798}
66799impl SignalOfQByteArray {
66800    /// Returns a `Signal` object representing the signal.
66801    ///
66802    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
66803    #[inline(always)]
66804    pub fn signal(&self) -> ::qt_core::Signal<(*const ::qt_core::QByteArray,)> {
66805        unsafe {
66806            ::qt_core::Signal::new(
66807                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66808                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QByteArray const &)\0"),
66809            )
66810        }
66811    }
66812
66813    /// Emits the signal.
66814    #[inline(always)]
66815    pub unsafe fn emit(
66816        &self,
66817        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
66818    ) {
66819        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_emit_(self as *const crate::SignalOfQByteArray as *mut crate::SignalOfQByteArray, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(arg0).as_raw_ptr())
66820    }
66821
66822    #[inline(always)]
66823    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
66824        let ffi_result = {
66825            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_metaObject(self as *const crate::SignalOfQByteArray)
66826        };
66827        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66828    }
66829
66830    /// Creates a new object.
66831    #[inline(always)]
66832    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQByteArray> {
66833        let ffi_result = {
66834            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref()
66835        };
66836        ::qt_core::QBox::from_raw(ffi_result)
66837    }
66838
66839    #[inline(always)]
66840    pub unsafe fn qt_metacall(
66841        &self,
66842        arg1: ::qt_core::q_meta_object::Call,
66843        arg2: ::std::os::raw::c_int,
66844        arg3: *mut *mut ::std::ffi::c_void,
66845    ) -> ::std::os::raw::c_int {
66846        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_qt_metacall(self as *const crate::SignalOfQByteArray as *mut crate::SignalOfQByteArray, arg1, arg2, arg3)
66847    }
66848
66849    #[inline(always)]
66850    pub unsafe fn qt_metacast(
66851        &self,
66852        arg1: *const ::std::os::raw::c_char,
66853    ) -> *mut ::std::ffi::c_void {
66854        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_qt_metacast(self as *const crate::SignalOfQByteArray as *mut crate::SignalOfQByteArray, arg1)
66855    }
66856
66857    #[inline(always)]
66858    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
66859        let ffi_result = {
66860            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_staticMetaObject()
66861        };
66862        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66863            .expect("attempted to construct a null Ref")
66864    }
66865
66866    #[inline(always)]
66867    pub unsafe fn tr(
66868        s: *const ::std::os::raw::c_char,
66869        c: *const ::std::os::raw::c_char,
66870        n: ::std::os::raw::c_int,
66871    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66872        let ffi_result = {
66873            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_tr(s, c, n)
66874        };
66875        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66876    }
66877
66878    #[inline(always)]
66879    pub unsafe fn tr_utf8(
66880        s: *const ::std::os::raw::c_char,
66881        c: *const ::std::os::raw::c_char,
66882        n: ::std::os::raw::c_int,
66883    ) -> ::cpp_core::CppBox<::qt_core::QString> {
66884        let ffi_result = {
66885            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_trUtf8(s, c, n)
66886        };
66887        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
66888    }
66889}
66890
66891impl ::qt_core::AsReceiver for crate::SignalOfCullingMode {
66892    type Arguments = (crate::q_cull_face::CullingMode,);
66893    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
66894        unsafe {
66895            ::qt_core::Receiver::new(
66896                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66897                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66898                    b"2emit_(Qt3DRender::QCullFace::CullingMode)\0",
66899                ),
66900            )
66901        }
66902    }
66903}
66904
66905impl crate::SignalOfCullingMode {
66906    /// Connects this signal to another signal or slot.
66907    ///
66908    /// This is a shortcut for `self.signal().connect(receiver)`.
66909
66910    pub unsafe fn connect_with_type<R>(
66911        &self,
66912        connection_type: ::qt_core::ConnectionType,
66913        receiver: R,
66914    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66915    where
66916        R: ::qt_core::AsReceiver,
66917        (crate::q_cull_face::CullingMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66918    {
66919        self.signal().connect_with_type(connection_type, receiver)
66920    }
66921
66922    /// Connects this signal to another signal or slot, using auto connection type.
66923    ///
66924    /// This is a shortcut for `self.signal().connect(receiver)`.
66925
66926    pub unsafe fn connect<R>(
66927        &self,
66928        receiver: R,
66929    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
66930    where
66931        R: ::qt_core::AsReceiver,
66932        (crate::q_cull_face::CullingMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
66933    {
66934        self.signal().connect(receiver)
66935    }
66936}
66937
66938/// Emits a Qt signal with arguments `crate::q_cull_face::CullingMode`.
66939///
66940/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QCullFace::CullingMode```</span>).
66941///
66942/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
66943#[repr(C)]
66944pub struct SignalOfCullingMode {
66945    _unused: u8,
66946}
66947impl SignalOfCullingMode {
66948    /// Returns a `Signal` object representing the signal.
66949    ///
66950    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
66951    #[inline(always)]
66952    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_cull_face::CullingMode,)> {
66953        unsafe {
66954            ::qt_core::Signal::new(
66955                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
66956                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
66957                    b"2emit_(Qt3DRender::QCullFace::CullingMode)\0",
66958                ),
66959            )
66960        }
66961    }
66962
66963    /// Emits the signal.
66964    #[inline(always)]
66965    pub unsafe fn emit(&self, arg0: crate::q_cull_face::CullingMode) {
66966        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_emit_(self as *const crate::SignalOfCullingMode as *mut crate::SignalOfCullingMode, arg0)
66967    }
66968
66969    #[inline(always)]
66970    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
66971        let ffi_result = {
66972            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_metaObject(self as *const crate::SignalOfCullingMode)
66973        };
66974        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
66975    }
66976
66977    /// Creates a new object.
66978    #[inline(always)]
66979    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfCullingMode> {
66980        let ffi_result = {
66981            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode()
66982        };
66983        ::qt_core::QBox::from_raw(ffi_result)
66984    }
66985
66986    #[inline(always)]
66987    pub unsafe fn qt_metacall(
66988        &self,
66989        arg1: ::qt_core::q_meta_object::Call,
66990        arg2: ::std::os::raw::c_int,
66991        arg3: *mut *mut ::std::ffi::c_void,
66992    ) -> ::std::os::raw::c_int {
66993        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_qt_metacall(self as *const crate::SignalOfCullingMode as *mut crate::SignalOfCullingMode, arg1, arg2, arg3)
66994    }
66995
66996    #[inline(always)]
66997    pub unsafe fn qt_metacast(
66998        &self,
66999        arg1: *const ::std::os::raw::c_char,
67000    ) -> *mut ::std::ffi::c_void {
67001        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_qt_metacast(self as *const crate::SignalOfCullingMode as *mut crate::SignalOfCullingMode, arg1)
67002    }
67003
67004    #[inline(always)]
67005    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
67006        let ffi_result = {
67007            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_staticMetaObject()
67008        };
67009        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67010            .expect("attempted to construct a null Ref")
67011    }
67012
67013    #[inline(always)]
67014    pub unsafe fn tr(
67015        s: *const ::std::os::raw::c_char,
67016        c: *const ::std::os::raw::c_char,
67017        n: ::std::os::raw::c_int,
67018    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67019        let ffi_result = {
67020            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_tr(s, c, n)
67021        };
67022        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67023    }
67024
67025    #[inline(always)]
67026    pub unsafe fn tr_utf8(
67027        s: *const ::std::os::raw::c_char,
67028        c: *const ::std::os::raw::c_char,
67029        n: ::std::os::raw::c_int,
67030    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67031        let ffi_result = {
67032            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_trUtf8(s, c, n)
67033        };
67034        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67035    }
67036}
67037
67038impl ::qt_core::AsReceiver for crate::SignalOfAlphaFunction {
67039    type Arguments = (crate::q_alpha_test::AlphaFunction,);
67040    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
67041        unsafe {
67042            ::qt_core::Receiver::new(
67043                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67044                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67045                    b"2emit_(Qt3DRender::QAlphaTest::AlphaFunction)\0",
67046                ),
67047            )
67048        }
67049    }
67050}
67051
67052impl crate::SignalOfAlphaFunction {
67053    /// Connects this signal to another signal or slot.
67054    ///
67055    /// This is a shortcut for `self.signal().connect(receiver)`.
67056
67057    pub unsafe fn connect_with_type<R>(
67058        &self,
67059        connection_type: ::qt_core::ConnectionType,
67060        receiver: R,
67061    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67062    where
67063        R: ::qt_core::AsReceiver,
67064        (crate::q_alpha_test::AlphaFunction,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67065    {
67066        self.signal().connect_with_type(connection_type, receiver)
67067    }
67068
67069    /// Connects this signal to another signal or slot, using auto connection type.
67070    ///
67071    /// This is a shortcut for `self.signal().connect(receiver)`.
67072
67073    pub unsafe fn connect<R>(
67074        &self,
67075        receiver: R,
67076    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67077    where
67078        R: ::qt_core::AsReceiver,
67079        (crate::q_alpha_test::AlphaFunction,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67080    {
67081        self.signal().connect(receiver)
67082    }
67083}
67084
67085/// Emits a Qt signal with arguments `crate::q_alpha_test::AlphaFunction`.
67086///
67087/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAlphaTest::AlphaFunction```</span>).
67088///
67089/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
67090#[repr(C)]
67091pub struct SignalOfAlphaFunction {
67092    _unused: u8,
67093}
67094impl SignalOfAlphaFunction {
67095    /// Returns a `Signal` object representing the signal.
67096    ///
67097    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
67098    #[inline(always)]
67099    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_alpha_test::AlphaFunction,)> {
67100        unsafe {
67101            ::qt_core::Signal::new(
67102                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67103                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67104                    b"2emit_(Qt3DRender::QAlphaTest::AlphaFunction)\0",
67105                ),
67106            )
67107        }
67108    }
67109
67110    /// Emits the signal.
67111    #[inline(always)]
67112    pub unsafe fn emit(&self, arg0: crate::q_alpha_test::AlphaFunction) {
67113        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_emit_(self as *const crate::SignalOfAlphaFunction as *mut crate::SignalOfAlphaFunction, arg0)
67114    }
67115
67116    #[inline(always)]
67117    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
67118        let ffi_result = {
67119            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_metaObject(self as *const crate::SignalOfAlphaFunction)
67120        };
67121        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67122    }
67123
67124    /// Creates a new object.
67125    #[inline(always)]
67126    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfAlphaFunction> {
67127        let ffi_result = {
67128            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction()
67129        };
67130        ::qt_core::QBox::from_raw(ffi_result)
67131    }
67132
67133    #[inline(always)]
67134    pub unsafe fn qt_metacall(
67135        &self,
67136        arg1: ::qt_core::q_meta_object::Call,
67137        arg2: ::std::os::raw::c_int,
67138        arg3: *mut *mut ::std::ffi::c_void,
67139    ) -> ::std::os::raw::c_int {
67140        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_qt_metacall(self as *const crate::SignalOfAlphaFunction as *mut crate::SignalOfAlphaFunction, arg1, arg2, arg3)
67141    }
67142
67143    #[inline(always)]
67144    pub unsafe fn qt_metacast(
67145        &self,
67146        arg1: *const ::std::os::raw::c_char,
67147    ) -> *mut ::std::ffi::c_void {
67148        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_qt_metacast(self as *const crate::SignalOfAlphaFunction as *mut crate::SignalOfAlphaFunction, arg1)
67149    }
67150
67151    #[inline(always)]
67152    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
67153        let ffi_result = {
67154            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_staticMetaObject()
67155        };
67156        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67157            .expect("attempted to construct a null Ref")
67158    }
67159
67160    #[inline(always)]
67161    pub unsafe fn tr(
67162        s: *const ::std::os::raw::c_char,
67163        c: *const ::std::os::raw::c_char,
67164        n: ::std::os::raw::c_int,
67165    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67166        let ffi_result = {
67167            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_tr(s, c, n)
67168        };
67169        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67170    }
67171
67172    #[inline(always)]
67173    pub unsafe fn tr_utf8(
67174        s: *const ::std::os::raw::c_char,
67175        c: *const ::std::os::raw::c_char,
67176        n: ::std::os::raw::c_int,
67177    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67178        let ffi_result = {
67179            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_trUtf8(s, c, n)
67180        };
67181        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67182    }
67183}
67184
67185impl ::qt_core::AsReceiver for crate::SignalOfQStringList {
67186    type Arguments = (*const ::qt_core::QStringList,);
67187    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
67188        unsafe {
67189            ::qt_core::Receiver::new(
67190                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67191                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QStringList const &)\0"),
67192            )
67193        }
67194    }
67195}
67196
67197impl crate::SignalOfQStringList {
67198    /// Connects this signal to another signal or slot.
67199    ///
67200    /// This is a shortcut for `self.signal().connect(receiver)`.
67201
67202    pub unsafe fn connect_with_type<R>(
67203        &self,
67204        connection_type: ::qt_core::ConnectionType,
67205        receiver: R,
67206    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67207    where
67208        R: ::qt_core::AsReceiver,
67209        (*const ::qt_core::QStringList,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67210    {
67211        self.signal().connect_with_type(connection_type, receiver)
67212    }
67213
67214    /// Connects this signal to another signal or slot, using auto connection type.
67215    ///
67216    /// This is a shortcut for `self.signal().connect(receiver)`.
67217
67218    pub unsafe fn connect<R>(
67219        &self,
67220        receiver: R,
67221    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67222    where
67223        R: ::qt_core::AsReceiver,
67224        (*const ::qt_core::QStringList,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67225    {
67226        self.signal().connect(receiver)
67227    }
67228}
67229
67230/// Emits a Qt signal with arguments `*const ::qt_core::QStringList`.
67231///
67232/// Corresponding C++ argument types: (<span style='color: green;'>```const QStringList&```</span>).
67233///
67234/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
67235#[repr(C)]
67236pub struct SignalOfQStringList {
67237    _unused: u8,
67238}
67239impl SignalOfQStringList {
67240    /// Returns a `Signal` object representing the signal.
67241    ///
67242    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
67243    #[inline(always)]
67244    pub fn signal(&self) -> ::qt_core::Signal<(*const ::qt_core::QStringList,)> {
67245        unsafe {
67246            ::qt_core::Signal::new(
67247                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67248                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QStringList const &)\0"),
67249            )
67250        }
67251    }
67252
67253    /// Emits the signal.
67254    #[inline(always)]
67255    pub unsafe fn emit(
67256        &self,
67257        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QStringList>>,
67258    ) {
67259        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_emit_(self as *const crate::SignalOfQStringList as *mut crate::SignalOfQStringList, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QStringList>>::cast_into(arg0).as_raw_ptr())
67260    }
67261
67262    #[inline(always)]
67263    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
67264        let ffi_result = {
67265            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_metaObject(self as *const crate::SignalOfQStringList)
67266        };
67267        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67268    }
67269
67270    /// Creates a new object.
67271    #[inline(always)]
67272    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQStringList> {
67273        let ffi_result = {
67274            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref()
67275        };
67276        ::qt_core::QBox::from_raw(ffi_result)
67277    }
67278
67279    #[inline(always)]
67280    pub unsafe fn qt_metacall(
67281        &self,
67282        arg1: ::qt_core::q_meta_object::Call,
67283        arg2: ::std::os::raw::c_int,
67284        arg3: *mut *mut ::std::ffi::c_void,
67285    ) -> ::std::os::raw::c_int {
67286        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_qt_metacall(self as *const crate::SignalOfQStringList as *mut crate::SignalOfQStringList, arg1, arg2, arg3)
67287    }
67288
67289    #[inline(always)]
67290    pub unsafe fn qt_metacast(
67291        &self,
67292        arg1: *const ::std::os::raw::c_char,
67293    ) -> *mut ::std::ffi::c_void {
67294        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_qt_metacast(self as *const crate::SignalOfQStringList as *mut crate::SignalOfQStringList, arg1)
67295    }
67296
67297    #[inline(always)]
67298    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
67299        let ffi_result = {
67300            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_staticMetaObject()
67301        };
67302        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67303            .expect("attempted to construct a null Ref")
67304    }
67305
67306    #[inline(always)]
67307    pub unsafe fn tr(
67308        s: *const ::std::os::raw::c_char,
67309        c: *const ::std::os::raw::c_char,
67310        n: ::std::os::raw::c_int,
67311    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67312        let ffi_result = {
67313            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_tr(s, c, n)
67314        };
67315        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67316    }
67317
67318    #[inline(always)]
67319    pub unsafe fn tr_utf8(
67320        s: *const ::std::os::raw::c_char,
67321        c: *const ::std::os::raw::c_char,
67322        n: ::std::os::raw::c_int,
67323    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67324        let ffi_result = {
67325            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_trUtf8(s, c, n)
67326        };
67327        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67328    }
67329}
67330
67331impl ::qt_core::AsReceiver for crate::SignalOfStencilFaceMode {
67332    type Arguments = (crate::q_stencil_test_arguments::StencilFaceMode,);
67333    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
67334        unsafe {
67335            ::qt_core::Receiver::new(
67336                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67337                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67338                    b"2emit_(Qt3DRender::QStencilTestArguments::StencilFaceMode)\0",
67339                ),
67340            )
67341        }
67342    }
67343}
67344
67345impl crate::SignalOfStencilFaceMode {
67346    /// Connects this signal to another signal or slot.
67347    ///
67348    /// This is a shortcut for `self.signal().connect(receiver)`.
67349
67350    pub unsafe fn connect_with_type<R>(
67351        &self,
67352        connection_type: ::qt_core::ConnectionType,
67353        receiver: R,
67354    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67355    where
67356        R: ::qt_core::AsReceiver,
67357        (crate::q_stencil_test_arguments::StencilFaceMode,):
67358            ::qt_core::ArgumentsCompatible<R::Arguments>,
67359    {
67360        self.signal().connect_with_type(connection_type, receiver)
67361    }
67362
67363    /// Connects this signal to another signal or slot, using auto connection type.
67364    ///
67365    /// This is a shortcut for `self.signal().connect(receiver)`.
67366
67367    pub unsafe fn connect<R>(
67368        &self,
67369        receiver: R,
67370    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67371    where
67372        R: ::qt_core::AsReceiver,
67373        (crate::q_stencil_test_arguments::StencilFaceMode,):
67374            ::qt_core::ArgumentsCompatible<R::Arguments>,
67375    {
67376        self.signal().connect(receiver)
67377    }
67378}
67379
67380/// Emits a Qt signal with arguments `crate::q_stencil_test_arguments::StencilFaceMode`.
67381///
67382/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QStencilTestArguments::StencilFaceMode```</span>).
67383///
67384/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
67385#[repr(C)]
67386pub struct SignalOfStencilFaceMode {
67387    _unused: u8,
67388}
67389impl SignalOfStencilFaceMode {
67390    /// Returns a `Signal` object representing the signal.
67391    ///
67392    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
67393    #[inline(always)]
67394    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_stencil_test_arguments::StencilFaceMode,)> {
67395        unsafe {
67396            ::qt_core::Signal::new(
67397                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67398                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67399                    b"2emit_(Qt3DRender::QStencilTestArguments::StencilFaceMode)\0",
67400                ),
67401            )
67402        }
67403    }
67404
67405    /// Emits the signal.
67406    #[inline(always)]
67407    pub unsafe fn emit(&self, arg0: crate::q_stencil_test_arguments::StencilFaceMode) {
67408        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_emit_(self as *const crate::SignalOfStencilFaceMode as *mut crate::SignalOfStencilFaceMode, arg0)
67409    }
67410
67411    #[inline(always)]
67412    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
67413        let ffi_result = {
67414            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_metaObject(self as *const crate::SignalOfStencilFaceMode)
67415        };
67416        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67417    }
67418
67419    /// Creates a new object.
67420    #[inline(always)]
67421    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfStencilFaceMode> {
67422        let ffi_result = {
67423            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode()
67424        };
67425        ::qt_core::QBox::from_raw(ffi_result)
67426    }
67427
67428    #[inline(always)]
67429    pub unsafe fn qt_metacall(
67430        &self,
67431        arg1: ::qt_core::q_meta_object::Call,
67432        arg2: ::std::os::raw::c_int,
67433        arg3: *mut *mut ::std::ffi::c_void,
67434    ) -> ::std::os::raw::c_int {
67435        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_qt_metacall(self as *const crate::SignalOfStencilFaceMode as *mut crate::SignalOfStencilFaceMode, arg1, arg2, arg3)
67436    }
67437
67438    #[inline(always)]
67439    pub unsafe fn qt_metacast(
67440        &self,
67441        arg1: *const ::std::os::raw::c_char,
67442    ) -> *mut ::std::ffi::c_void {
67443        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_qt_metacast(self as *const crate::SignalOfStencilFaceMode as *mut crate::SignalOfStencilFaceMode, arg1)
67444    }
67445
67446    #[inline(always)]
67447    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
67448        let ffi_result = {
67449            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_staticMetaObject()
67450        };
67451        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67452            .expect("attempted to construct a null Ref")
67453    }
67454
67455    #[inline(always)]
67456    pub unsafe fn tr(
67457        s: *const ::std::os::raw::c_char,
67458        c: *const ::std::os::raw::c_char,
67459        n: ::std::os::raw::c_int,
67460    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67461        let ffi_result = {
67462            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_tr(s, c, n)
67463        };
67464        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67465    }
67466
67467    #[inline(always)]
67468    pub unsafe fn tr_utf8(
67469        s: *const ::std::os::raw::c_char,
67470        c: *const ::std::os::raw::c_char,
67471        n: ::std::os::raw::c_int,
67472    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67473        let ffi_result = {
67474            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_trUtf8(s, c, n)
67475        };
67476        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67477    }
67478}
67479
67480#[cfg_attr(
67481    feature = "ritual_rustdoc_nightly",
67482    doc(cfg(cpp_lib_version = "5.14.0"))
67483)]
67484#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67485
67486impl ::qt_core::AsReceiver for crate::SignalOfAccess {
67487    type Arguments = (crate::q_shader_image::Access,);
67488    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
67489        unsafe {
67490            ::qt_core::Receiver::new(
67491                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67492                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67493                    b"2emit_(Qt3DRender::QShaderImage::Access)\0",
67494                ),
67495            )
67496        }
67497    }
67498}
67499
67500impl crate::SignalOfAccess {
67501    /// Connects this signal to another signal or slot.
67502    ///
67503    /// This is a shortcut for `self.signal().connect(receiver)`.
67504    #[cfg_attr(
67505        feature = "ritual_rustdoc_nightly",
67506        doc(cfg(cpp_lib_version = "5.14.0"))
67507    )]
67508    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67509
67510    pub unsafe fn connect_with_type<R>(
67511        &self,
67512        connection_type: ::qt_core::ConnectionType,
67513        receiver: R,
67514    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67515    where
67516        R: ::qt_core::AsReceiver,
67517        (crate::q_shader_image::Access,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67518    {
67519        self.signal().connect_with_type(connection_type, receiver)
67520    }
67521
67522    /// Connects this signal to another signal or slot, using auto connection type.
67523    ///
67524    /// This is a shortcut for `self.signal().connect(receiver)`.
67525    #[cfg_attr(
67526        feature = "ritual_rustdoc_nightly",
67527        doc(cfg(cpp_lib_version = "5.14.0"))
67528    )]
67529    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67530
67531    pub unsafe fn connect<R>(
67532        &self,
67533        receiver: R,
67534    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67535    where
67536        R: ::qt_core::AsReceiver,
67537        (crate::q_shader_image::Access,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67538    {
67539        self.signal().connect(receiver)
67540    }
67541}
67542
67543/// Emits a Qt signal with arguments `crate::q_shader_image::Access`.
67544///
67545/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QShaderImage::Access```</span>).
67546///
67547/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
67548#[repr(C)]
67549pub struct SignalOfAccess {
67550    _unused: u8,
67551}
67552impl SignalOfAccess {
67553    /// Returns a `Signal` object representing the signal.
67554    ///
67555    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
67556    #[inline(always)]
67557    #[cfg_attr(
67558        feature = "ritual_rustdoc_nightly",
67559        doc(cfg(cpp_lib_version = "5.14.0"))
67560    )]
67561    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67562    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_shader_image::Access,)> {
67563        unsafe {
67564            ::qt_core::Signal::new(
67565                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67566                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67567                    b"2emit_(Qt3DRender::QShaderImage::Access)\0",
67568                ),
67569            )
67570        }
67571    }
67572
67573    /// Emits the signal.
67574    #[inline(always)]
67575    #[cfg_attr(
67576        feature = "ritual_rustdoc_nightly",
67577        doc(cfg(cpp_lib_version = "5.14.0"))
67578    )]
67579    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67580    pub unsafe fn emit(&self, arg0: crate::q_shader_image::Access) {
67581        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_emit_(self as *const crate::SignalOfAccess as *mut crate::SignalOfAccess, arg0)
67582    }
67583
67584    #[inline(always)]
67585    #[cfg_attr(
67586        feature = "ritual_rustdoc_nightly",
67587        doc(cfg(cpp_lib_version = "5.14.0"))
67588    )]
67589    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67590    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
67591        let ffi_result = {
67592            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_metaObject(self as *const crate::SignalOfAccess)
67593        };
67594        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67595    }
67596
67597    /// Creates a new object.
67598    #[inline(always)]
67599    #[cfg_attr(
67600        feature = "ritual_rustdoc_nightly",
67601        doc(cfg(cpp_lib_version = "5.14.0"))
67602    )]
67603    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67604    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfAccess> {
67605        let ffi_result = {
67606            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access()
67607        };
67608        ::qt_core::QBox::from_raw(ffi_result)
67609    }
67610
67611    #[inline(always)]
67612    #[cfg_attr(
67613        feature = "ritual_rustdoc_nightly",
67614        doc(cfg(cpp_lib_version = "5.14.0"))
67615    )]
67616    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67617    pub unsafe fn qt_metacall(
67618        &self,
67619        arg1: ::qt_core::q_meta_object::Call,
67620        arg2: ::std::os::raw::c_int,
67621        arg3: *mut *mut ::std::ffi::c_void,
67622    ) -> ::std::os::raw::c_int {
67623        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_qt_metacall(self as *const crate::SignalOfAccess as *mut crate::SignalOfAccess, arg1, arg2, arg3)
67624    }
67625
67626    #[inline(always)]
67627    #[cfg_attr(
67628        feature = "ritual_rustdoc_nightly",
67629        doc(cfg(cpp_lib_version = "5.14.0"))
67630    )]
67631    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67632    pub unsafe fn qt_metacast(
67633        &self,
67634        arg1: *const ::std::os::raw::c_char,
67635    ) -> *mut ::std::ffi::c_void {
67636        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_qt_metacast(self as *const crate::SignalOfAccess as *mut crate::SignalOfAccess, arg1)
67637    }
67638
67639    #[inline(always)]
67640    #[cfg_attr(
67641        feature = "ritual_rustdoc_nightly",
67642        doc(cfg(cpp_lib_version = "5.14.0"))
67643    )]
67644    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67645    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
67646        let ffi_result = {
67647            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_staticMetaObject()
67648        };
67649        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67650            .expect("attempted to construct a null Ref")
67651    }
67652
67653    #[inline(always)]
67654    #[cfg_attr(
67655        feature = "ritual_rustdoc_nightly",
67656        doc(cfg(cpp_lib_version = "5.14.0"))
67657    )]
67658    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67659    pub unsafe fn tr(
67660        s: *const ::std::os::raw::c_char,
67661        c: *const ::std::os::raw::c_char,
67662        n: ::std::os::raw::c_int,
67663    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67664        let ffi_result = {
67665            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_tr(s, c, n)
67666        };
67667        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67668    }
67669
67670    #[inline(always)]
67671    #[cfg_attr(
67672        feature = "ritual_rustdoc_nightly",
67673        doc(cfg(cpp_lib_version = "5.14.0"))
67674    )]
67675    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67676    pub unsafe fn tr_utf8(
67677        s: *const ::std::os::raw::c_char,
67678        c: *const ::std::os::raw::c_char,
67679        n: ::std::os::raw::c_int,
67680    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67681        let ffi_result = {
67682            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_trUtf8(s, c, n)
67683        };
67684        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67685    }
67686}
67687
67688#[cfg_attr(
67689    feature = "ritual_rustdoc_nightly",
67690    doc(cfg(cpp_lib_version = "5.14.0"))
67691)]
67692#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67693
67694impl ::qt_core::AsReceiver for crate::SignalOfEnablement {
67695    type Arguments = (crate::q_subtree_enabler::Enablement,);
67696    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
67697        unsafe {
67698            ::qt_core::Receiver::new(
67699                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67700                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67701                    b"2emit_(Qt3DRender::QSubtreeEnabler::Enablement)\0",
67702                ),
67703            )
67704        }
67705    }
67706}
67707
67708impl crate::SignalOfEnablement {
67709    /// Connects this signal to another signal or slot.
67710    ///
67711    /// This is a shortcut for `self.signal().connect(receiver)`.
67712    #[cfg_attr(
67713        feature = "ritual_rustdoc_nightly",
67714        doc(cfg(cpp_lib_version = "5.14.0"))
67715    )]
67716    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67717
67718    pub unsafe fn connect_with_type<R>(
67719        &self,
67720        connection_type: ::qt_core::ConnectionType,
67721        receiver: R,
67722    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67723    where
67724        R: ::qt_core::AsReceiver,
67725        (crate::q_subtree_enabler::Enablement,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67726    {
67727        self.signal().connect_with_type(connection_type, receiver)
67728    }
67729
67730    /// Connects this signal to another signal or slot, using auto connection type.
67731    ///
67732    /// This is a shortcut for `self.signal().connect(receiver)`.
67733    #[cfg_attr(
67734        feature = "ritual_rustdoc_nightly",
67735        doc(cfg(cpp_lib_version = "5.14.0"))
67736    )]
67737    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67738
67739    pub unsafe fn connect<R>(
67740        &self,
67741        receiver: R,
67742    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67743    where
67744        R: ::qt_core::AsReceiver,
67745        (crate::q_subtree_enabler::Enablement,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67746    {
67747        self.signal().connect(receiver)
67748    }
67749}
67750
67751/// Emits a Qt signal with arguments `crate::q_subtree_enabler::Enablement`.
67752///
67753/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QSubtreeEnabler::Enablement```</span>).
67754///
67755/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
67756#[repr(C)]
67757pub struct SignalOfEnablement {
67758    _unused: u8,
67759}
67760impl SignalOfEnablement {
67761    /// Returns a `Signal` object representing the signal.
67762    ///
67763    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
67764    #[inline(always)]
67765    #[cfg_attr(
67766        feature = "ritual_rustdoc_nightly",
67767        doc(cfg(cpp_lib_version = "5.14.0"))
67768    )]
67769    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67770    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_subtree_enabler::Enablement,)> {
67771        unsafe {
67772            ::qt_core::Signal::new(
67773                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67774                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67775                    b"2emit_(Qt3DRender::QSubtreeEnabler::Enablement)\0",
67776                ),
67777            )
67778        }
67779    }
67780
67781    /// Emits the signal.
67782    #[inline(always)]
67783    #[cfg_attr(
67784        feature = "ritual_rustdoc_nightly",
67785        doc(cfg(cpp_lib_version = "5.14.0"))
67786    )]
67787    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67788    pub unsafe fn emit(&self, arg0: crate::q_subtree_enabler::Enablement) {
67789        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_emit_(self as *const crate::SignalOfEnablement as *mut crate::SignalOfEnablement, arg0)
67790    }
67791
67792    #[inline(always)]
67793    #[cfg_attr(
67794        feature = "ritual_rustdoc_nightly",
67795        doc(cfg(cpp_lib_version = "5.14.0"))
67796    )]
67797    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67798    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
67799        let ffi_result = {
67800            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_metaObject(self as *const crate::SignalOfEnablement)
67801        };
67802        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67803    }
67804
67805    /// Creates a new object.
67806    #[inline(always)]
67807    #[cfg_attr(
67808        feature = "ritual_rustdoc_nightly",
67809        doc(cfg(cpp_lib_version = "5.14.0"))
67810    )]
67811    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67812    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfEnablement> {
67813        let ffi_result = {
67814            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement()
67815        };
67816        ::qt_core::QBox::from_raw(ffi_result)
67817    }
67818
67819    #[inline(always)]
67820    #[cfg_attr(
67821        feature = "ritual_rustdoc_nightly",
67822        doc(cfg(cpp_lib_version = "5.14.0"))
67823    )]
67824    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67825    pub unsafe fn qt_metacall(
67826        &self,
67827        arg1: ::qt_core::q_meta_object::Call,
67828        arg2: ::std::os::raw::c_int,
67829        arg3: *mut *mut ::std::ffi::c_void,
67830    ) -> ::std::os::raw::c_int {
67831        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_qt_metacall(self as *const crate::SignalOfEnablement as *mut crate::SignalOfEnablement, arg1, arg2, arg3)
67832    }
67833
67834    #[inline(always)]
67835    #[cfg_attr(
67836        feature = "ritual_rustdoc_nightly",
67837        doc(cfg(cpp_lib_version = "5.14.0"))
67838    )]
67839    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67840    pub unsafe fn qt_metacast(
67841        &self,
67842        arg1: *const ::std::os::raw::c_char,
67843    ) -> *mut ::std::ffi::c_void {
67844        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_qt_metacast(self as *const crate::SignalOfEnablement as *mut crate::SignalOfEnablement, arg1)
67845    }
67846
67847    #[inline(always)]
67848    #[cfg_attr(
67849        feature = "ritual_rustdoc_nightly",
67850        doc(cfg(cpp_lib_version = "5.14.0"))
67851    )]
67852    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67853    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
67854        let ffi_result = {
67855            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_staticMetaObject()
67856        };
67857        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67858            .expect("attempted to construct a null Ref")
67859    }
67860
67861    #[inline(always)]
67862    #[cfg_attr(
67863        feature = "ritual_rustdoc_nightly",
67864        doc(cfg(cpp_lib_version = "5.14.0"))
67865    )]
67866    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67867    pub unsafe fn tr(
67868        s: *const ::std::os::raw::c_char,
67869        c: *const ::std::os::raw::c_char,
67870        n: ::std::os::raw::c_int,
67871    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67872        let ffi_result = {
67873            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_tr(s, c, n)
67874        };
67875        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67876    }
67877
67878    #[inline(always)]
67879    #[cfg_attr(
67880        feature = "ritual_rustdoc_nightly",
67881        doc(cfg(cpp_lib_version = "5.14.0"))
67882    )]
67883    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
67884    pub unsafe fn tr_utf8(
67885        s: *const ::std::os::raw::c_char,
67886        c: *const ::std::os::raw::c_char,
67887        n: ::std::os::raw::c_int,
67888    ) -> ::cpp_core::CppBox<::qt_core::QString> {
67889        let ffi_result = {
67890            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_trUtf8(s, c, n)
67891        };
67892        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
67893    }
67894}
67895
67896impl ::qt_core::AsReceiver for crate::SignalOfQGeometry {
67897    type Arguments = (*mut crate::QGeometry,);
67898    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
67899        unsafe {
67900            ::qt_core::Receiver::new(
67901                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67902                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67903                    b"2emit_(Qt3DRender::QGeometry *)\0",
67904                ),
67905            )
67906        }
67907    }
67908}
67909
67910impl crate::SignalOfQGeometry {
67911    /// Connects this signal to another signal or slot.
67912    ///
67913    /// This is a shortcut for `self.signal().connect(receiver)`.
67914
67915    pub unsafe fn connect_with_type<R>(
67916        &self,
67917        connection_type: ::qt_core::ConnectionType,
67918        receiver: R,
67919    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67920    where
67921        R: ::qt_core::AsReceiver,
67922        (*mut crate::QGeometry,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67923    {
67924        self.signal().connect_with_type(connection_type, receiver)
67925    }
67926
67927    /// Connects this signal to another signal or slot, using auto connection type.
67928    ///
67929    /// This is a shortcut for `self.signal().connect(receiver)`.
67930
67931    pub unsafe fn connect<R>(
67932        &self,
67933        receiver: R,
67934    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
67935    where
67936        R: ::qt_core::AsReceiver,
67937        (*mut crate::QGeometry,): ::qt_core::ArgumentsCompatible<R::Arguments>,
67938    {
67939        self.signal().connect(receiver)
67940    }
67941}
67942
67943/// Emits a Qt signal with arguments `*mut crate::QGeometry`.
67944///
67945/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QGeometry*```</span>).
67946///
67947/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
67948#[repr(C)]
67949pub struct SignalOfQGeometry {
67950    _unused: u8,
67951}
67952impl SignalOfQGeometry {
67953    /// Returns a `Signal` object representing the signal.
67954    ///
67955    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
67956    #[inline(always)]
67957    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QGeometry,)> {
67958        unsafe {
67959            ::qt_core::Signal::new(
67960                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
67961                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
67962                    b"2emit_(Qt3DRender::QGeometry *)\0",
67963                ),
67964            )
67965        }
67966    }
67967
67968    /// Emits the signal.
67969    #[inline(always)]
67970    pub unsafe fn emit(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QGeometry>>) {
67971        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_emit_(self as *const crate::SignalOfQGeometry as *mut crate::SignalOfQGeometry, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QGeometry>>::cast_into(arg0).as_raw_ptr() as *mut crate::QGeometry)
67972    }
67973
67974    #[inline(always)]
67975    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
67976        let ffi_result = {
67977            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_metaObject(self as *const crate::SignalOfQGeometry)
67978        };
67979        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
67980    }
67981
67982    /// Creates a new object.
67983    #[inline(always)]
67984    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQGeometry> {
67985        let ffi_result = {
67986            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr()
67987        };
67988        ::qt_core::QBox::from_raw(ffi_result)
67989    }
67990
67991    #[inline(always)]
67992    pub unsafe fn qt_metacall(
67993        &self,
67994        arg1: ::qt_core::q_meta_object::Call,
67995        arg2: ::std::os::raw::c_int,
67996        arg3: *mut *mut ::std::ffi::c_void,
67997    ) -> ::std::os::raw::c_int {
67998        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_qt_metacall(self as *const crate::SignalOfQGeometry as *mut crate::SignalOfQGeometry, arg1, arg2, arg3)
67999    }
68000
68001    #[inline(always)]
68002    pub unsafe fn qt_metacast(
68003        &self,
68004        arg1: *const ::std::os::raw::c_char,
68005    ) -> *mut ::std::ffi::c_void {
68006        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_qt_metacast(self as *const crate::SignalOfQGeometry as *mut crate::SignalOfQGeometry, arg1)
68007    }
68008
68009    #[inline(always)]
68010    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
68011        let ffi_result = {
68012            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_staticMetaObject()
68013        };
68014        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68015            .expect("attempted to construct a null Ref")
68016    }
68017
68018    #[inline(always)]
68019    pub unsafe fn tr(
68020        s: *const ::std::os::raw::c_char,
68021        c: *const ::std::os::raw::c_char,
68022        n: ::std::os::raw::c_int,
68023    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68024        let ffi_result = {
68025            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_tr(s, c, n)
68026        };
68027        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68028    }
68029
68030    #[inline(always)]
68031    pub unsafe fn tr_utf8(
68032        s: *const ::std::os::raw::c_char,
68033        c: *const ::std::os::raw::c_char,
68034        n: ::std::os::raw::c_int,
68035    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68036        let ffi_result = {
68037            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_trUtf8(s, c, n)
68038        };
68039        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68040    }
68041}
68042
68043impl ::qt_core::AsReceiver for crate::SignalOfRenderPolicy {
68044    type Arguments = (crate::q_render_settings::RenderPolicy,);
68045    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
68046        unsafe {
68047            ::qt_core::Receiver::new(
68048                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68049                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
68050                    b"2emit_(Qt3DRender::QRenderSettings::RenderPolicy)\0",
68051                ),
68052            )
68053        }
68054    }
68055}
68056
68057impl crate::SignalOfRenderPolicy {
68058    /// Connects this signal to another signal or slot.
68059    ///
68060    /// This is a shortcut for `self.signal().connect(receiver)`.
68061
68062    pub unsafe fn connect_with_type<R>(
68063        &self,
68064        connection_type: ::qt_core::ConnectionType,
68065        receiver: R,
68066    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68067    where
68068        R: ::qt_core::AsReceiver,
68069        (crate::q_render_settings::RenderPolicy,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68070    {
68071        self.signal().connect_with_type(connection_type, receiver)
68072    }
68073
68074    /// Connects this signal to another signal or slot, using auto connection type.
68075    ///
68076    /// This is a shortcut for `self.signal().connect(receiver)`.
68077
68078    pub unsafe fn connect<R>(
68079        &self,
68080        receiver: R,
68081    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68082    where
68083        R: ::qt_core::AsReceiver,
68084        (crate::q_render_settings::RenderPolicy,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68085    {
68086        self.signal().connect(receiver)
68087    }
68088}
68089
68090/// Emits a Qt signal with arguments `crate::q_render_settings::RenderPolicy`.
68091///
68092/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRenderSettings::RenderPolicy```</span>).
68093///
68094/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
68095#[repr(C)]
68096pub struct SignalOfRenderPolicy {
68097    _unused: u8,
68098}
68099impl SignalOfRenderPolicy {
68100    /// Returns a `Signal` object representing the signal.
68101    ///
68102    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
68103    #[inline(always)]
68104    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_render_settings::RenderPolicy,)> {
68105        unsafe {
68106            ::qt_core::Signal::new(
68107                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68108                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
68109                    b"2emit_(Qt3DRender::QRenderSettings::RenderPolicy)\0",
68110                ),
68111            )
68112        }
68113    }
68114
68115    /// Emits the signal.
68116    #[inline(always)]
68117    pub unsafe fn emit(&self, arg0: crate::q_render_settings::RenderPolicy) {
68118        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_emit_(self as *const crate::SignalOfRenderPolicy as *mut crate::SignalOfRenderPolicy, arg0)
68119    }
68120
68121    #[inline(always)]
68122    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
68123        let ffi_result = {
68124            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_metaObject(self as *const crate::SignalOfRenderPolicy)
68125        };
68126        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68127    }
68128
68129    /// Creates a new object.
68130    #[inline(always)]
68131    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfRenderPolicy> {
68132        let ffi_result = {
68133            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy()
68134        };
68135        ::qt_core::QBox::from_raw(ffi_result)
68136    }
68137
68138    #[inline(always)]
68139    pub unsafe fn qt_metacall(
68140        &self,
68141        arg1: ::qt_core::q_meta_object::Call,
68142        arg2: ::std::os::raw::c_int,
68143        arg3: *mut *mut ::std::ffi::c_void,
68144    ) -> ::std::os::raw::c_int {
68145        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_qt_metacall(self as *const crate::SignalOfRenderPolicy as *mut crate::SignalOfRenderPolicy, arg1, arg2, arg3)
68146    }
68147
68148    #[inline(always)]
68149    pub unsafe fn qt_metacast(
68150        &self,
68151        arg1: *const ::std::os::raw::c_char,
68152    ) -> *mut ::std::ffi::c_void {
68153        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_qt_metacast(self as *const crate::SignalOfRenderPolicy as *mut crate::SignalOfRenderPolicy, arg1)
68154    }
68155
68156    #[inline(always)]
68157    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
68158        let ffi_result = {
68159            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_staticMetaObject()
68160        };
68161        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68162            .expect("attempted to construct a null Ref")
68163    }
68164
68165    #[inline(always)]
68166    pub unsafe fn tr(
68167        s: *const ::std::os::raw::c_char,
68168        c: *const ::std::os::raw::c_char,
68169        n: ::std::os::raw::c_int,
68170    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68171        let ffi_result = {
68172            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_tr(s, c, n)
68173        };
68174        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68175    }
68176
68177    #[inline(always)]
68178    pub unsafe fn tr_utf8(
68179        s: *const ::std::os::raw::c_char,
68180        c: *const ::std::os::raw::c_char,
68181        n: ::std::os::raw::c_int,
68182    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68183        let ffi_result = {
68184            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_trUtf8(s, c, n)
68185        };
68186        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68187    }
68188}
68189
68190impl ::qt_core::AsReceiver for crate::SignalOfQVectorOfDouble {
68191    type Arguments = (*const ::qt_gui::QVectorOfDouble,);
68192    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
68193        unsafe {
68194            ::qt_core::Receiver::new(
68195                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68196                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
68197                    b"2emit_(QVector< double > const &)\0",
68198                ),
68199            )
68200        }
68201    }
68202}
68203
68204impl crate::SignalOfQVectorOfDouble {
68205    /// Connects this signal to another signal or slot.
68206    ///
68207    /// This is a shortcut for `self.signal().connect(receiver)`.
68208
68209    pub unsafe fn connect_with_type<R>(
68210        &self,
68211        connection_type: ::qt_core::ConnectionType,
68212        receiver: R,
68213    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68214    where
68215        R: ::qt_core::AsReceiver,
68216        (*const ::qt_gui::QVectorOfDouble,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68217    {
68218        self.signal().connect_with_type(connection_type, receiver)
68219    }
68220
68221    /// Connects this signal to another signal or slot, using auto connection type.
68222    ///
68223    /// This is a shortcut for `self.signal().connect(receiver)`.
68224
68225    pub unsafe fn connect<R>(
68226        &self,
68227        receiver: R,
68228    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68229    where
68230        R: ::qt_core::AsReceiver,
68231        (*const ::qt_gui::QVectorOfDouble,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68232    {
68233        self.signal().connect(receiver)
68234    }
68235}
68236
68237/// Emits a Qt signal with arguments `*const ::qt_gui::QVectorOfDouble`.
68238///
68239/// Corresponding C++ argument types: (<span style='color: green;'>```const QVector<double>&```</span>).
68240///
68241/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
68242#[repr(C)]
68243pub struct SignalOfQVectorOfDouble {
68244    _unused: u8,
68245}
68246impl SignalOfQVectorOfDouble {
68247    /// Returns a `Signal` object representing the signal.
68248    ///
68249    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
68250    #[inline(always)]
68251    pub fn signal(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVectorOfDouble,)> {
68252        unsafe {
68253            ::qt_core::Signal::new(
68254                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68255                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
68256                    b"2emit_(QVector< double > const &)\0",
68257                ),
68258            )
68259        }
68260    }
68261
68262    /// Emits the signal.
68263    #[inline(always)]
68264    pub unsafe fn emit(
68265        &self,
68266        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVectorOfDouble>>,
68267    ) {
68268        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_emit_(self as *const crate::SignalOfQVectorOfDouble as *mut crate::SignalOfQVectorOfDouble, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVectorOfDouble>>::cast_into(arg0).as_raw_ptr())
68269    }
68270
68271    #[inline(always)]
68272    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
68273        let ffi_result = {
68274            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_metaObject(self as *const crate::SignalOfQVectorOfDouble)
68275        };
68276        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68277    }
68278
68279    /// Creates a new object.
68280    #[inline(always)]
68281    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQVectorOfDouble> {
68282        let ffi_result = {
68283            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref()
68284        };
68285        ::qt_core::QBox::from_raw(ffi_result)
68286    }
68287
68288    #[inline(always)]
68289    pub unsafe fn qt_metacall(
68290        &self,
68291        arg1: ::qt_core::q_meta_object::Call,
68292        arg2: ::std::os::raw::c_int,
68293        arg3: *mut *mut ::std::ffi::c_void,
68294    ) -> ::std::os::raw::c_int {
68295        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_qt_metacall(self as *const crate::SignalOfQVectorOfDouble as *mut crate::SignalOfQVectorOfDouble, arg1, arg2, arg3)
68296    }
68297
68298    #[inline(always)]
68299    pub unsafe fn qt_metacast(
68300        &self,
68301        arg1: *const ::std::os::raw::c_char,
68302    ) -> *mut ::std::ffi::c_void {
68303        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_qt_metacast(self as *const crate::SignalOfQVectorOfDouble as *mut crate::SignalOfQVectorOfDouble, arg1)
68304    }
68305
68306    #[inline(always)]
68307    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
68308        let ffi_result = {
68309            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_staticMetaObject()
68310        };
68311        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68312            .expect("attempted to construct a null Ref")
68313    }
68314
68315    #[inline(always)]
68316    pub unsafe fn tr(
68317        s: *const ::std::os::raw::c_char,
68318        c: *const ::std::os::raw::c_char,
68319        n: ::std::os::raw::c_int,
68320    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68321        let ffi_result = {
68322            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_tr(s, c, n)
68323        };
68324        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68325    }
68326
68327    #[inline(always)]
68328    pub unsafe fn tr_utf8(
68329        s: *const ::std::os::raw::c_char,
68330        c: *const ::std::os::raw::c_char,
68331        n: ::std::os::raw::c_int,
68332    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68333        let ffi_result = {
68334            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_trUtf8(s, c, n)
68335        };
68336        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68337    }
68338}
68339
68340impl ::qt_core::AsReceiver for crate::SignalOfQEffect {
68341    type Arguments = (*mut crate::QEffect,);
68342    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
68343        unsafe {
68344            ::qt_core::Receiver::new(
68345                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68346                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(Qt3DRender::QEffect *)\0"),
68347            )
68348        }
68349    }
68350}
68351
68352impl crate::SignalOfQEffect {
68353    /// Connects this signal to another signal or slot.
68354    ///
68355    /// This is a shortcut for `self.signal().connect(receiver)`.
68356
68357    pub unsafe fn connect_with_type<R>(
68358        &self,
68359        connection_type: ::qt_core::ConnectionType,
68360        receiver: R,
68361    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68362    where
68363        R: ::qt_core::AsReceiver,
68364        (*mut crate::QEffect,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68365    {
68366        self.signal().connect_with_type(connection_type, receiver)
68367    }
68368
68369    /// Connects this signal to another signal or slot, using auto connection type.
68370    ///
68371    /// This is a shortcut for `self.signal().connect(receiver)`.
68372
68373    pub unsafe fn connect<R>(
68374        &self,
68375        receiver: R,
68376    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68377    where
68378        R: ::qt_core::AsReceiver,
68379        (*mut crate::QEffect,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68380    {
68381        self.signal().connect(receiver)
68382    }
68383}
68384
68385/// Emits a Qt signal with arguments `*mut crate::QEffect`.
68386///
68387/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QEffect*```</span>).
68388///
68389/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
68390#[repr(C)]
68391pub struct SignalOfQEffect {
68392    _unused: u8,
68393}
68394impl SignalOfQEffect {
68395    /// Returns a `Signal` object representing the signal.
68396    ///
68397    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
68398    #[inline(always)]
68399    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QEffect,)> {
68400        unsafe {
68401            ::qt_core::Signal::new(
68402                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68403                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(Qt3DRender::QEffect *)\0"),
68404            )
68405        }
68406    }
68407
68408    /// Emits the signal.
68409    #[inline(always)]
68410    pub unsafe fn emit(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QEffect>>) {
68411        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_emit_(self as *const crate::SignalOfQEffect as *mut crate::SignalOfQEffect, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QEffect>>::cast_into(arg0).as_raw_ptr() as *mut crate::QEffect)
68412    }
68413
68414    #[inline(always)]
68415    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
68416        let ffi_result = {
68417            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_metaObject(self as *const crate::SignalOfQEffect)
68418        };
68419        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68420    }
68421
68422    /// Creates a new object.
68423    #[inline(always)]
68424    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQEffect> {
68425        let ffi_result = {
68426            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr()
68427        };
68428        ::qt_core::QBox::from_raw(ffi_result)
68429    }
68430
68431    #[inline(always)]
68432    pub unsafe fn qt_metacall(
68433        &self,
68434        arg1: ::qt_core::q_meta_object::Call,
68435        arg2: ::std::os::raw::c_int,
68436        arg3: *mut *mut ::std::ffi::c_void,
68437    ) -> ::std::os::raw::c_int {
68438        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_qt_metacall(self as *const crate::SignalOfQEffect as *mut crate::SignalOfQEffect, arg1, arg2, arg3)
68439    }
68440
68441    #[inline(always)]
68442    pub unsafe fn qt_metacast(
68443        &self,
68444        arg1: *const ::std::os::raw::c_char,
68445    ) -> *mut ::std::ffi::c_void {
68446        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_qt_metacast(self as *const crate::SignalOfQEffect as *mut crate::SignalOfQEffect, arg1)
68447    }
68448
68449    #[inline(always)]
68450    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
68451        let ffi_result = {
68452            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_staticMetaObject()
68453        };
68454        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68455            .expect("attempted to construct a null Ref")
68456    }
68457
68458    #[inline(always)]
68459    pub unsafe fn tr(
68460        s: *const ::std::os::raw::c_char,
68461        c: *const ::std::os::raw::c_char,
68462        n: ::std::os::raw::c_int,
68463    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68464        let ffi_result = {
68465            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_tr(s, c, n)
68466        };
68467        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68468    }
68469
68470    #[inline(always)]
68471    pub unsafe fn tr_utf8(
68472        s: *const ::std::os::raw::c_char,
68473        c: *const ::std::os::raw::c_char,
68474        n: ::std::os::raw::c_int,
68475    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68476        let ffi_result = {
68477            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_trUtf8(s, c, n)
68478        };
68479        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68480    }
68481}
68482
68483impl ::qt_core::AsReceiver for crate::SignalOfComparisonFunction {
68484    type Arguments = (crate::q_abstract_texture::ComparisonFunction,);
68485    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
68486        unsafe {
68487            ::qt_core::Receiver::new(
68488                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68489                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
68490                    b"2emit_(Qt3DRender::QAbstractTexture::ComparisonFunction)\0",
68491                ),
68492            )
68493        }
68494    }
68495}
68496
68497impl crate::SignalOfComparisonFunction {
68498    /// Connects this signal to another signal or slot.
68499    ///
68500    /// This is a shortcut for `self.signal().connect(receiver)`.
68501
68502    pub unsafe fn connect_with_type<R>(
68503        &self,
68504        connection_type: ::qt_core::ConnectionType,
68505        receiver: R,
68506    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68507    where
68508        R: ::qt_core::AsReceiver,
68509        (crate::q_abstract_texture::ComparisonFunction,):
68510            ::qt_core::ArgumentsCompatible<R::Arguments>,
68511    {
68512        self.signal().connect_with_type(connection_type, receiver)
68513    }
68514
68515    /// Connects this signal to another signal or slot, using auto connection type.
68516    ///
68517    /// This is a shortcut for `self.signal().connect(receiver)`.
68518
68519    pub unsafe fn connect<R>(
68520        &self,
68521        receiver: R,
68522    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68523    where
68524        R: ::qt_core::AsReceiver,
68525        (crate::q_abstract_texture::ComparisonFunction,):
68526            ::qt_core::ArgumentsCompatible<R::Arguments>,
68527    {
68528        self.signal().connect(receiver)
68529    }
68530}
68531
68532/// Emits a Qt signal with arguments `crate::q_abstract_texture::ComparisonFunction`.
68533///
68534/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonFunction```</span>).
68535///
68536/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
68537#[repr(C)]
68538pub struct SignalOfComparisonFunction {
68539    _unused: u8,
68540}
68541impl SignalOfComparisonFunction {
68542    /// Returns a `Signal` object representing the signal.
68543    ///
68544    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
68545    #[inline(always)]
68546    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::ComparisonFunction,)> {
68547        unsafe {
68548            ::qt_core::Signal::new(
68549                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68550                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
68551                    b"2emit_(Qt3DRender::QAbstractTexture::ComparisonFunction)\0",
68552                ),
68553            )
68554        }
68555    }
68556
68557    /// Emits the signal.
68558    #[inline(always)]
68559    pub unsafe fn emit(&self, arg0: crate::q_abstract_texture::ComparisonFunction) {
68560        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_emit_(self as *const crate::SignalOfComparisonFunction as *mut crate::SignalOfComparisonFunction, arg0)
68561    }
68562
68563    #[inline(always)]
68564    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
68565        let ffi_result = {
68566            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_metaObject(self as *const crate::SignalOfComparisonFunction)
68567        };
68568        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68569    }
68570
68571    /// Creates a new object.
68572    #[inline(always)]
68573    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfComparisonFunction> {
68574        let ffi_result = {
68575            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction()
68576        };
68577        ::qt_core::QBox::from_raw(ffi_result)
68578    }
68579
68580    #[inline(always)]
68581    pub unsafe fn qt_metacall(
68582        &self,
68583        arg1: ::qt_core::q_meta_object::Call,
68584        arg2: ::std::os::raw::c_int,
68585        arg3: *mut *mut ::std::ffi::c_void,
68586    ) -> ::std::os::raw::c_int {
68587        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_qt_metacall(self as *const crate::SignalOfComparisonFunction as *mut crate::SignalOfComparisonFunction, arg1, arg2, arg3)
68588    }
68589
68590    #[inline(always)]
68591    pub unsafe fn qt_metacast(
68592        &self,
68593        arg1: *const ::std::os::raw::c_char,
68594    ) -> *mut ::std::ffi::c_void {
68595        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_qt_metacast(self as *const crate::SignalOfComparisonFunction as *mut crate::SignalOfComparisonFunction, arg1)
68596    }
68597
68598    #[inline(always)]
68599    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
68600        let ffi_result = {
68601            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_staticMetaObject()
68602        };
68603        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68604            .expect("attempted to construct a null Ref")
68605    }
68606
68607    #[inline(always)]
68608    pub unsafe fn tr(
68609        s: *const ::std::os::raw::c_char,
68610        c: *const ::std::os::raw::c_char,
68611        n: ::std::os::raw::c_int,
68612    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68613        let ffi_result = {
68614            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_tr(s, c, n)
68615        };
68616        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68617    }
68618
68619    #[inline(always)]
68620    pub unsafe fn tr_utf8(
68621        s: *const ::std::os::raw::c_char,
68622        c: *const ::std::os::raw::c_char,
68623        n: ::std::os::raw::c_int,
68624    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68625        let ffi_result = {
68626            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_trUtf8(s, c, n)
68627        };
68628        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68629    }
68630}
68631
68632impl ::qt_core::AsReceiver for crate::SignalOfQCamera {
68633    type Arguments = (*mut crate::QCamera,);
68634    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
68635        unsafe {
68636            ::qt_core::Receiver::new(
68637                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68638                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(Qt3DRender::QCamera *)\0"),
68639            )
68640        }
68641    }
68642}
68643
68644impl crate::SignalOfQCamera {
68645    /// Connects this signal to another signal or slot.
68646    ///
68647    /// This is a shortcut for `self.signal().connect(receiver)`.
68648
68649    pub unsafe fn connect_with_type<R>(
68650        &self,
68651        connection_type: ::qt_core::ConnectionType,
68652        receiver: R,
68653    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68654    where
68655        R: ::qt_core::AsReceiver,
68656        (*mut crate::QCamera,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68657    {
68658        self.signal().connect_with_type(connection_type, receiver)
68659    }
68660
68661    /// Connects this signal to another signal or slot, using auto connection type.
68662    ///
68663    /// This is a shortcut for `self.signal().connect(receiver)`.
68664
68665    pub unsafe fn connect<R>(
68666        &self,
68667        receiver: R,
68668    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68669    where
68670        R: ::qt_core::AsReceiver,
68671        (*mut crate::QCamera,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68672    {
68673        self.signal().connect(receiver)
68674    }
68675}
68676
68677/// Emits a Qt signal with arguments `*mut crate::QCamera`.
68678///
68679/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QCamera*```</span>).
68680///
68681/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
68682#[repr(C)]
68683pub struct SignalOfQCamera {
68684    _unused: u8,
68685}
68686impl SignalOfQCamera {
68687    /// Returns a `Signal` object representing the signal.
68688    ///
68689    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
68690    #[inline(always)]
68691    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QCamera,)> {
68692        unsafe {
68693            ::qt_core::Signal::new(
68694                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68695                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(Qt3DRender::QCamera *)\0"),
68696            )
68697        }
68698    }
68699
68700    /// Emits the signal.
68701    #[inline(always)]
68702    pub unsafe fn emit(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QCamera>>) {
68703        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_emit_(self as *const crate::SignalOfQCamera as *mut crate::SignalOfQCamera, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QCamera>>::cast_into(arg0).as_raw_ptr() as *mut crate::QCamera)
68704    }
68705
68706    #[inline(always)]
68707    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
68708        let ffi_result = {
68709            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_metaObject(self as *const crate::SignalOfQCamera)
68710        };
68711        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68712    }
68713
68714    /// Creates a new object.
68715    #[inline(always)]
68716    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQCamera> {
68717        let ffi_result = {
68718            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr()
68719        };
68720        ::qt_core::QBox::from_raw(ffi_result)
68721    }
68722
68723    #[inline(always)]
68724    pub unsafe fn qt_metacall(
68725        &self,
68726        arg1: ::qt_core::q_meta_object::Call,
68727        arg2: ::std::os::raw::c_int,
68728        arg3: *mut *mut ::std::ffi::c_void,
68729    ) -> ::std::os::raw::c_int {
68730        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_qt_metacall(self as *const crate::SignalOfQCamera as *mut crate::SignalOfQCamera, arg1, arg2, arg3)
68731    }
68732
68733    #[inline(always)]
68734    pub unsafe fn qt_metacast(
68735        &self,
68736        arg1: *const ::std::os::raw::c_char,
68737    ) -> *mut ::std::ffi::c_void {
68738        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_qt_metacast(self as *const crate::SignalOfQCamera as *mut crate::SignalOfQCamera, arg1)
68739    }
68740
68741    #[inline(always)]
68742    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
68743        let ffi_result = {
68744            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_staticMetaObject()
68745        };
68746        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68747            .expect("attempted to construct a null Ref")
68748    }
68749
68750    #[inline(always)]
68751    pub unsafe fn tr(
68752        s: *const ::std::os::raw::c_char,
68753        c: *const ::std::os::raw::c_char,
68754        n: ::std::os::raw::c_int,
68755    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68756        let ffi_result = {
68757            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_tr(s, c, n)
68758        };
68759        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68760    }
68761
68762    #[inline(always)]
68763    pub unsafe fn tr_utf8(
68764        s: *const ::std::os::raw::c_char,
68765        c: *const ::std::os::raw::c_char,
68766        n: ::std::os::raw::c_int,
68767    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68768        let ffi_result = {
68769            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_trUtf8(s, c, n)
68770        };
68771        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68772    }
68773}
68774
68775impl ::qt_core::AsReceiver for crate::SignalOfProjectionType {
68776    type Arguments = (crate::q_camera_lens::ProjectionType,);
68777    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
68778        unsafe {
68779            ::qt_core::Receiver::new(
68780                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68781                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
68782                    b"2emit_(Qt3DRender::QCameraLens::ProjectionType)\0",
68783                ),
68784            )
68785        }
68786    }
68787}
68788
68789impl crate::SignalOfProjectionType {
68790    /// Connects this signal to another signal or slot.
68791    ///
68792    /// This is a shortcut for `self.signal().connect(receiver)`.
68793
68794    pub unsafe fn connect_with_type<R>(
68795        &self,
68796        connection_type: ::qt_core::ConnectionType,
68797        receiver: R,
68798    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68799    where
68800        R: ::qt_core::AsReceiver,
68801        (crate::q_camera_lens::ProjectionType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68802    {
68803        self.signal().connect_with_type(connection_type, receiver)
68804    }
68805
68806    /// Connects this signal to another signal or slot, using auto connection type.
68807    ///
68808    /// This is a shortcut for `self.signal().connect(receiver)`.
68809
68810    pub unsafe fn connect<R>(
68811        &self,
68812        receiver: R,
68813    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68814    where
68815        R: ::qt_core::AsReceiver,
68816        (crate::q_camera_lens::ProjectionType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68817    {
68818        self.signal().connect(receiver)
68819    }
68820}
68821
68822/// Emits a Qt signal with arguments `crate::q_camera_lens::ProjectionType`.
68823///
68824/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QCameraLens::ProjectionType```</span>).
68825///
68826/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
68827#[repr(C)]
68828pub struct SignalOfProjectionType {
68829    _unused: u8,
68830}
68831impl SignalOfProjectionType {
68832    /// Returns a `Signal` object representing the signal.
68833    ///
68834    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
68835    #[inline(always)]
68836    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_camera_lens::ProjectionType,)> {
68837        unsafe {
68838            ::qt_core::Signal::new(
68839                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68840                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
68841                    b"2emit_(Qt3DRender::QCameraLens::ProjectionType)\0",
68842                ),
68843            )
68844        }
68845    }
68846
68847    /// Emits the signal.
68848    #[inline(always)]
68849    pub unsafe fn emit(&self, arg0: crate::q_camera_lens::ProjectionType) {
68850        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_emit_(self as *const crate::SignalOfProjectionType as *mut crate::SignalOfProjectionType, arg0)
68851    }
68852
68853    #[inline(always)]
68854    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
68855        let ffi_result = {
68856            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_metaObject(self as *const crate::SignalOfProjectionType)
68857        };
68858        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68859    }
68860
68861    /// Creates a new object.
68862    #[inline(always)]
68863    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfProjectionType> {
68864        let ffi_result = {
68865            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType()
68866        };
68867        ::qt_core::QBox::from_raw(ffi_result)
68868    }
68869
68870    #[inline(always)]
68871    pub unsafe fn qt_metacall(
68872        &self,
68873        arg1: ::qt_core::q_meta_object::Call,
68874        arg2: ::std::os::raw::c_int,
68875        arg3: *mut *mut ::std::ffi::c_void,
68876    ) -> ::std::os::raw::c_int {
68877        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_qt_metacall(self as *const crate::SignalOfProjectionType as *mut crate::SignalOfProjectionType, arg1, arg2, arg3)
68878    }
68879
68880    #[inline(always)]
68881    pub unsafe fn qt_metacast(
68882        &self,
68883        arg1: *const ::std::os::raw::c_char,
68884    ) -> *mut ::std::ffi::c_void {
68885        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_qt_metacast(self as *const crate::SignalOfProjectionType as *mut crate::SignalOfProjectionType, arg1)
68886    }
68887
68888    #[inline(always)]
68889    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
68890        let ffi_result = {
68891            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_staticMetaObject()
68892        };
68893        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
68894            .expect("attempted to construct a null Ref")
68895    }
68896
68897    #[inline(always)]
68898    pub unsafe fn tr(
68899        s: *const ::std::os::raw::c_char,
68900        c: *const ::std::os::raw::c_char,
68901        n: ::std::os::raw::c_int,
68902    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68903        let ffi_result = {
68904            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_tr(s, c, n)
68905        };
68906        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68907    }
68908
68909    #[inline(always)]
68910    pub unsafe fn tr_utf8(
68911        s: *const ::std::os::raw::c_char,
68912        c: *const ::std::os::raw::c_char,
68913        n: ::std::os::raw::c_int,
68914    ) -> ::cpp_core::CppBox<::qt_core::QString> {
68915        let ffi_result = {
68916            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_trUtf8(s, c, n)
68917        };
68918        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
68919    }
68920}
68921
68922impl ::qt_core::AsReceiver for crate::SignalOfQColor {
68923    type Arguments = (*const ::qt_gui::QColor,);
68924    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
68925        unsafe {
68926            ::qt_core::Receiver::new(
68927                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68928                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QColor const &)\0"),
68929            )
68930        }
68931    }
68932}
68933
68934impl crate::SignalOfQColor {
68935    /// Connects this signal to another signal or slot.
68936    ///
68937    /// This is a shortcut for `self.signal().connect(receiver)`.
68938
68939    pub unsafe fn connect_with_type<R>(
68940        &self,
68941        connection_type: ::qt_core::ConnectionType,
68942        receiver: R,
68943    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68944    where
68945        R: ::qt_core::AsReceiver,
68946        (*const ::qt_gui::QColor,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68947    {
68948        self.signal().connect_with_type(connection_type, receiver)
68949    }
68950
68951    /// Connects this signal to another signal or slot, using auto connection type.
68952    ///
68953    /// This is a shortcut for `self.signal().connect(receiver)`.
68954
68955    pub unsafe fn connect<R>(
68956        &self,
68957        receiver: R,
68958    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
68959    where
68960        R: ::qt_core::AsReceiver,
68961        (*const ::qt_gui::QColor,): ::qt_core::ArgumentsCompatible<R::Arguments>,
68962    {
68963        self.signal().connect(receiver)
68964    }
68965}
68966
68967/// Emits a Qt signal with arguments `*const ::qt_gui::QColor`.
68968///
68969/// Corresponding C++ argument types: (<span style='color: green;'>```const QColor&```</span>).
68970///
68971/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
68972#[repr(C)]
68973pub struct SignalOfQColor {
68974    _unused: u8,
68975}
68976impl SignalOfQColor {
68977    /// Returns a `Signal` object representing the signal.
68978    ///
68979    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
68980    #[inline(always)]
68981    pub fn signal(&self) -> ::qt_core::Signal<(*const ::qt_gui::QColor,)> {
68982        unsafe {
68983            ::qt_core::Signal::new(
68984                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
68985                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QColor const &)\0"),
68986            )
68987        }
68988    }
68989
68990    /// Emits the signal.
68991    #[inline(always)]
68992    pub unsafe fn emit(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QColor>>) {
68993        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_emit_(self as *const crate::SignalOfQColor as *mut crate::SignalOfQColor, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QColor>>::cast_into(arg0).as_raw_ptr())
68994    }
68995
68996    #[inline(always)]
68997    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
68998        let ffi_result = {
68999            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_metaObject(self as *const crate::SignalOfQColor)
69000        };
69001        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69002    }
69003
69004    /// Creates a new object.
69005    #[inline(always)]
69006    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQColor> {
69007        let ffi_result = {
69008            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref()
69009        };
69010        ::qt_core::QBox::from_raw(ffi_result)
69011    }
69012
69013    #[inline(always)]
69014    pub unsafe fn qt_metacall(
69015        &self,
69016        arg1: ::qt_core::q_meta_object::Call,
69017        arg2: ::std::os::raw::c_int,
69018        arg3: *mut *mut ::std::ffi::c_void,
69019    ) -> ::std::os::raw::c_int {
69020        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_qt_metacall(self as *const crate::SignalOfQColor as *mut crate::SignalOfQColor, arg1, arg2, arg3)
69021    }
69022
69023    #[inline(always)]
69024    pub unsafe fn qt_metacast(
69025        &self,
69026        arg1: *const ::std::os::raw::c_char,
69027    ) -> *mut ::std::ffi::c_void {
69028        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_qt_metacast(self as *const crate::SignalOfQColor as *mut crate::SignalOfQColor, arg1)
69029    }
69030
69031    #[inline(always)]
69032    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
69033        let ffi_result = {
69034            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_staticMetaObject()
69035        };
69036        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69037            .expect("attempted to construct a null Ref")
69038    }
69039
69040    #[inline(always)]
69041    pub unsafe fn tr(
69042        s: *const ::std::os::raw::c_char,
69043        c: *const ::std::os::raw::c_char,
69044        n: ::std::os::raw::c_int,
69045    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69046        let ffi_result = {
69047            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_tr(s, c, n)
69048        };
69049        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69050    }
69051
69052    #[inline(always)]
69053    pub unsafe fn tr_utf8(
69054        s: *const ::std::os::raw::c_char,
69055        c: *const ::std::os::raw::c_char,
69056        n: ::std::os::raw::c_int,
69057    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69058        let ffi_result = {
69059            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_trUtf8(s, c, n)
69060        };
69061        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69062    }
69063}
69064
69065impl ::qt_core::AsReceiver for crate::SignalOfVertexBaseType {
69066    type Arguments = (crate::q_attribute::VertexBaseType,);
69067    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
69068        unsafe {
69069            ::qt_core::Receiver::new(
69070                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69071                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69072                    b"2emit_(Qt3DRender::QAttribute::VertexBaseType)\0",
69073                ),
69074            )
69075        }
69076    }
69077}
69078
69079impl crate::SignalOfVertexBaseType {
69080    /// Connects this signal to another signal or slot.
69081    ///
69082    /// This is a shortcut for `self.signal().connect(receiver)`.
69083
69084    pub unsafe fn connect_with_type<R>(
69085        &self,
69086        connection_type: ::qt_core::ConnectionType,
69087        receiver: R,
69088    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69089    where
69090        R: ::qt_core::AsReceiver,
69091        (crate::q_attribute::VertexBaseType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69092    {
69093        self.signal().connect_with_type(connection_type, receiver)
69094    }
69095
69096    /// Connects this signal to another signal or slot, using auto connection type.
69097    ///
69098    /// This is a shortcut for `self.signal().connect(receiver)`.
69099
69100    pub unsafe fn connect<R>(
69101        &self,
69102        receiver: R,
69103    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69104    where
69105        R: ::qt_core::AsReceiver,
69106        (crate::q_attribute::VertexBaseType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69107    {
69108        self.signal().connect(receiver)
69109    }
69110}
69111
69112/// Emits a Qt signal with arguments `crate::q_attribute::VertexBaseType`.
69113///
69114/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAttribute::VertexBaseType```</span>).
69115///
69116/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
69117#[repr(C)]
69118pub struct SignalOfVertexBaseType {
69119    _unused: u8,
69120}
69121impl SignalOfVertexBaseType {
69122    /// Returns a `Signal` object representing the signal.
69123    ///
69124    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
69125    #[inline(always)]
69126    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_attribute::VertexBaseType,)> {
69127        unsafe {
69128            ::qt_core::Signal::new(
69129                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69130                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69131                    b"2emit_(Qt3DRender::QAttribute::VertexBaseType)\0",
69132                ),
69133            )
69134        }
69135    }
69136
69137    /// Emits the signal.
69138    #[inline(always)]
69139    pub unsafe fn emit(&self, arg0: crate::q_attribute::VertexBaseType) {
69140        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_emit_(self as *const crate::SignalOfVertexBaseType as *mut crate::SignalOfVertexBaseType, arg0)
69141    }
69142
69143    #[inline(always)]
69144    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
69145        let ffi_result = {
69146            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_metaObject(self as *const crate::SignalOfVertexBaseType)
69147        };
69148        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69149    }
69150
69151    /// Creates a new object.
69152    #[inline(always)]
69153    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfVertexBaseType> {
69154        let ffi_result = {
69155            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType()
69156        };
69157        ::qt_core::QBox::from_raw(ffi_result)
69158    }
69159
69160    #[inline(always)]
69161    pub unsafe fn qt_metacall(
69162        &self,
69163        arg1: ::qt_core::q_meta_object::Call,
69164        arg2: ::std::os::raw::c_int,
69165        arg3: *mut *mut ::std::ffi::c_void,
69166    ) -> ::std::os::raw::c_int {
69167        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_qt_metacall(self as *const crate::SignalOfVertexBaseType as *mut crate::SignalOfVertexBaseType, arg1, arg2, arg3)
69168    }
69169
69170    #[inline(always)]
69171    pub unsafe fn qt_metacast(
69172        &self,
69173        arg1: *const ::std::os::raw::c_char,
69174    ) -> *mut ::std::ffi::c_void {
69175        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_qt_metacast(self as *const crate::SignalOfVertexBaseType as *mut crate::SignalOfVertexBaseType, arg1)
69176    }
69177
69178    #[inline(always)]
69179    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
69180        let ffi_result = {
69181            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_staticMetaObject()
69182        };
69183        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69184            .expect("attempted to construct a null Ref")
69185    }
69186
69187    #[inline(always)]
69188    pub unsafe fn tr(
69189        s: *const ::std::os::raw::c_char,
69190        c: *const ::std::os::raw::c_char,
69191        n: ::std::os::raw::c_int,
69192    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69193        let ffi_result = {
69194            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_tr(s, c, n)
69195        };
69196        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69197    }
69198
69199    #[inline(always)]
69200    pub unsafe fn tr_utf8(
69201        s: *const ::std::os::raw::c_char,
69202        c: *const ::std::os::raw::c_char,
69203        n: ::std::os::raw::c_int,
69204    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69205        let ffi_result = {
69206            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_trUtf8(s, c, n)
69207        };
69208        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69209    }
69210}
69211
69212impl ::qt_core::AsReceiver for crate::SignalOfFaceMode {
69213    type Arguments = (crate::q_stencil_operation_arguments::FaceMode,);
69214    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
69215        unsafe {
69216            ::qt_core::Receiver::new(
69217                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69218                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69219                    b"2emit_(Qt3DRender::QStencilOperationArguments::FaceMode)\0",
69220                ),
69221            )
69222        }
69223    }
69224}
69225
69226impl crate::SignalOfFaceMode {
69227    /// Connects this signal to another signal or slot.
69228    ///
69229    /// This is a shortcut for `self.signal().connect(receiver)`.
69230
69231    pub unsafe fn connect_with_type<R>(
69232        &self,
69233        connection_type: ::qt_core::ConnectionType,
69234        receiver: R,
69235    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69236    where
69237        R: ::qt_core::AsReceiver,
69238        (crate::q_stencil_operation_arguments::FaceMode,):
69239            ::qt_core::ArgumentsCompatible<R::Arguments>,
69240    {
69241        self.signal().connect_with_type(connection_type, receiver)
69242    }
69243
69244    /// Connects this signal to another signal or slot, using auto connection type.
69245    ///
69246    /// This is a shortcut for `self.signal().connect(receiver)`.
69247
69248    pub unsafe fn connect<R>(
69249        &self,
69250        receiver: R,
69251    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69252    where
69253        R: ::qt_core::AsReceiver,
69254        (crate::q_stencil_operation_arguments::FaceMode,):
69255            ::qt_core::ArgumentsCompatible<R::Arguments>,
69256    {
69257        self.signal().connect(receiver)
69258    }
69259}
69260
69261/// Emits a Qt signal with arguments `crate::q_stencil_operation_arguments::FaceMode`.
69262///
69263/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QStencilOperationArguments::FaceMode```</span>).
69264///
69265/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
69266#[repr(C)]
69267pub struct SignalOfFaceMode {
69268    _unused: u8,
69269}
69270impl SignalOfFaceMode {
69271    /// Returns a `Signal` object representing the signal.
69272    ///
69273    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
69274    #[inline(always)]
69275    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_stencil_operation_arguments::FaceMode,)> {
69276        unsafe {
69277            ::qt_core::Signal::new(
69278                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69279                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69280                    b"2emit_(Qt3DRender::QStencilOperationArguments::FaceMode)\0",
69281                ),
69282            )
69283        }
69284    }
69285
69286    /// Emits the signal.
69287    #[inline(always)]
69288    pub unsafe fn emit(&self, arg0: crate::q_stencil_operation_arguments::FaceMode) {
69289        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_emit_(self as *const crate::SignalOfFaceMode as *mut crate::SignalOfFaceMode, arg0)
69290    }
69291
69292    #[inline(always)]
69293    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
69294        let ffi_result = {
69295            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_metaObject(self as *const crate::SignalOfFaceMode)
69296        };
69297        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69298    }
69299
69300    /// Creates a new object.
69301    #[inline(always)]
69302    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfFaceMode> {
69303        let ffi_result = {
69304            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode()
69305        };
69306        ::qt_core::QBox::from_raw(ffi_result)
69307    }
69308
69309    #[inline(always)]
69310    pub unsafe fn qt_metacall(
69311        &self,
69312        arg1: ::qt_core::q_meta_object::Call,
69313        arg2: ::std::os::raw::c_int,
69314        arg3: *mut *mut ::std::ffi::c_void,
69315    ) -> ::std::os::raw::c_int {
69316        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_qt_metacall(self as *const crate::SignalOfFaceMode as *mut crate::SignalOfFaceMode, arg1, arg2, arg3)
69317    }
69318
69319    #[inline(always)]
69320    pub unsafe fn qt_metacast(
69321        &self,
69322        arg1: *const ::std::os::raw::c_char,
69323    ) -> *mut ::std::ffi::c_void {
69324        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_qt_metacast(self as *const crate::SignalOfFaceMode as *mut crate::SignalOfFaceMode, arg1)
69325    }
69326
69327    #[inline(always)]
69328    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
69329        let ffi_result = {
69330            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_staticMetaObject()
69331        };
69332        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69333            .expect("attempted to construct a null Ref")
69334    }
69335
69336    #[inline(always)]
69337    pub unsafe fn tr(
69338        s: *const ::std::os::raw::c_char,
69339        c: *const ::std::os::raw::c_char,
69340        n: ::std::os::raw::c_int,
69341    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69342        let ffi_result = {
69343            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_tr(s, c, n)
69344        };
69345        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69346    }
69347
69348    #[inline(always)]
69349    pub unsafe fn tr_utf8(
69350        s: *const ::std::os::raw::c_char,
69351        c: *const ::std::os::raw::c_char,
69352        n: ::std::os::raw::c_int,
69353    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69354        let ffi_result = {
69355            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_trUtf8(s, c, n)
69356        };
69357        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69358    }
69359}
69360
69361impl ::qt_core::AsReceiver for crate::SignalOfWrapMode {
69362    type Arguments = (crate::q_texture_wrap_mode::WrapMode,);
69363    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
69364        unsafe {
69365            ::qt_core::Receiver::new(
69366                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69367                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69368                    b"2emit_(Qt3DRender::QTextureWrapMode::WrapMode)\0",
69369                ),
69370            )
69371        }
69372    }
69373}
69374
69375impl crate::SignalOfWrapMode {
69376    /// Connects this signal to another signal or slot.
69377    ///
69378    /// This is a shortcut for `self.signal().connect(receiver)`.
69379
69380    pub unsafe fn connect_with_type<R>(
69381        &self,
69382        connection_type: ::qt_core::ConnectionType,
69383        receiver: R,
69384    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69385    where
69386        R: ::qt_core::AsReceiver,
69387        (crate::q_texture_wrap_mode::WrapMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69388    {
69389        self.signal().connect_with_type(connection_type, receiver)
69390    }
69391
69392    /// Connects this signal to another signal or slot, using auto connection type.
69393    ///
69394    /// This is a shortcut for `self.signal().connect(receiver)`.
69395
69396    pub unsafe fn connect<R>(
69397        &self,
69398        receiver: R,
69399    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69400    where
69401        R: ::qt_core::AsReceiver,
69402        (crate::q_texture_wrap_mode::WrapMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69403    {
69404        self.signal().connect(receiver)
69405    }
69406}
69407
69408/// Emits a Qt signal with arguments `crate::q_texture_wrap_mode::WrapMode`.
69409///
69410/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QTextureWrapMode::WrapMode```</span>).
69411///
69412/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
69413#[repr(C)]
69414pub struct SignalOfWrapMode {
69415    _unused: u8,
69416}
69417impl SignalOfWrapMode {
69418    /// Returns a `Signal` object representing the signal.
69419    ///
69420    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
69421    #[inline(always)]
69422    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_texture_wrap_mode::WrapMode,)> {
69423        unsafe {
69424            ::qt_core::Signal::new(
69425                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69426                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69427                    b"2emit_(Qt3DRender::QTextureWrapMode::WrapMode)\0",
69428                ),
69429            )
69430        }
69431    }
69432
69433    /// Emits the signal.
69434    #[inline(always)]
69435    pub unsafe fn emit(&self, arg0: crate::q_texture_wrap_mode::WrapMode) {
69436        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_emit_(self as *const crate::SignalOfWrapMode as *mut crate::SignalOfWrapMode, arg0)
69437    }
69438
69439    #[inline(always)]
69440    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
69441        let ffi_result = {
69442            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_metaObject(self as *const crate::SignalOfWrapMode)
69443        };
69444        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69445    }
69446
69447    /// Creates a new object.
69448    #[inline(always)]
69449    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfWrapMode> {
69450        let ffi_result = {
69451            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode()
69452        };
69453        ::qt_core::QBox::from_raw(ffi_result)
69454    }
69455
69456    #[inline(always)]
69457    pub unsafe fn qt_metacall(
69458        &self,
69459        arg1: ::qt_core::q_meta_object::Call,
69460        arg2: ::std::os::raw::c_int,
69461        arg3: *mut *mut ::std::ffi::c_void,
69462    ) -> ::std::os::raw::c_int {
69463        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_qt_metacall(self as *const crate::SignalOfWrapMode as *mut crate::SignalOfWrapMode, arg1, arg2, arg3)
69464    }
69465
69466    #[inline(always)]
69467    pub unsafe fn qt_metacast(
69468        &self,
69469        arg1: *const ::std::os::raw::c_char,
69470    ) -> *mut ::std::ffi::c_void {
69471        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_qt_metacast(self as *const crate::SignalOfWrapMode as *mut crate::SignalOfWrapMode, arg1)
69472    }
69473
69474    #[inline(always)]
69475    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
69476        let ffi_result = {
69477            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_staticMetaObject()
69478        };
69479        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69480            .expect("attempted to construct a null Ref")
69481    }
69482
69483    #[inline(always)]
69484    pub unsafe fn tr(
69485        s: *const ::std::os::raw::c_char,
69486        c: *const ::std::os::raw::c_char,
69487        n: ::std::os::raw::c_int,
69488    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69489        let ffi_result = {
69490            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_tr(s, c, n)
69491        };
69492        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69493    }
69494
69495    #[inline(always)]
69496    pub unsafe fn tr_utf8(
69497        s: *const ::std::os::raw::c_char,
69498        c: *const ::std::os::raw::c_char,
69499        n: ::std::os::raw::c_int,
69500    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69501        let ffi_result = {
69502            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_trUtf8(s, c, n)
69503        };
69504        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69505    }
69506}
69507
69508impl ::qt_core::AsReceiver for crate::SignalOfBlending {
69509    type Arguments = (crate::q_blend_equation_arguments::Blending,);
69510    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
69511        unsafe {
69512            ::qt_core::Receiver::new(
69513                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69514                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69515                    b"2emit_(Qt3DRender::QBlendEquationArguments::Blending)\0",
69516                ),
69517            )
69518        }
69519    }
69520}
69521
69522impl crate::SignalOfBlending {
69523    /// Connects this signal to another signal or slot.
69524    ///
69525    /// This is a shortcut for `self.signal().connect(receiver)`.
69526
69527    pub unsafe fn connect_with_type<R>(
69528        &self,
69529        connection_type: ::qt_core::ConnectionType,
69530        receiver: R,
69531    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69532    where
69533        R: ::qt_core::AsReceiver,
69534        (crate::q_blend_equation_arguments::Blending,):
69535            ::qt_core::ArgumentsCompatible<R::Arguments>,
69536    {
69537        self.signal().connect_with_type(connection_type, receiver)
69538    }
69539
69540    /// Connects this signal to another signal or slot, using auto connection type.
69541    ///
69542    /// This is a shortcut for `self.signal().connect(receiver)`.
69543
69544    pub unsafe fn connect<R>(
69545        &self,
69546        receiver: R,
69547    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69548    where
69549        R: ::qt_core::AsReceiver,
69550        (crate::q_blend_equation_arguments::Blending,):
69551            ::qt_core::ArgumentsCompatible<R::Arguments>,
69552    {
69553        self.signal().connect(receiver)
69554    }
69555}
69556
69557/// Emits a Qt signal with arguments `crate::q_blend_equation_arguments::Blending`.
69558///
69559/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBlendEquationArguments::Blending```</span>).
69560///
69561/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
69562#[repr(C)]
69563pub struct SignalOfBlending {
69564    _unused: u8,
69565}
69566impl SignalOfBlending {
69567    /// Returns a `Signal` object representing the signal.
69568    ///
69569    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
69570    #[inline(always)]
69571    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_blend_equation_arguments::Blending,)> {
69572        unsafe {
69573            ::qt_core::Signal::new(
69574                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69575                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69576                    b"2emit_(Qt3DRender::QBlendEquationArguments::Blending)\0",
69577                ),
69578            )
69579        }
69580    }
69581
69582    /// Emits the signal.
69583    #[inline(always)]
69584    pub unsafe fn emit(&self, arg0: crate::q_blend_equation_arguments::Blending) {
69585        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_emit_(self as *const crate::SignalOfBlending as *mut crate::SignalOfBlending, arg0)
69586    }
69587
69588    #[inline(always)]
69589    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
69590        let ffi_result = {
69591            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_metaObject(self as *const crate::SignalOfBlending)
69592        };
69593        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69594    }
69595
69596    /// Creates a new object.
69597    #[inline(always)]
69598    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfBlending> {
69599        let ffi_result = {
69600            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending()
69601        };
69602        ::qt_core::QBox::from_raw(ffi_result)
69603    }
69604
69605    #[inline(always)]
69606    pub unsafe fn qt_metacall(
69607        &self,
69608        arg1: ::qt_core::q_meta_object::Call,
69609        arg2: ::std::os::raw::c_int,
69610        arg3: *mut *mut ::std::ffi::c_void,
69611    ) -> ::std::os::raw::c_int {
69612        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_qt_metacall(self as *const crate::SignalOfBlending as *mut crate::SignalOfBlending, arg1, arg2, arg3)
69613    }
69614
69615    #[inline(always)]
69616    pub unsafe fn qt_metacast(
69617        &self,
69618        arg1: *const ::std::os::raw::c_char,
69619    ) -> *mut ::std::ffi::c_void {
69620        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_qt_metacast(self as *const crate::SignalOfBlending as *mut crate::SignalOfBlending, arg1)
69621    }
69622
69623    #[inline(always)]
69624    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
69625        let ffi_result = {
69626            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_staticMetaObject()
69627        };
69628        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69629            .expect("attempted to construct a null Ref")
69630    }
69631
69632    #[inline(always)]
69633    pub unsafe fn tr(
69634        s: *const ::std::os::raw::c_char,
69635        c: *const ::std::os::raw::c_char,
69636        n: ::std::os::raw::c_int,
69637    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69638        let ffi_result = {
69639            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_tr(s, c, n)
69640        };
69641        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69642    }
69643
69644    #[inline(always)]
69645    pub unsafe fn tr_utf8(
69646        s: *const ::std::os::raw::c_char,
69647        c: *const ::std::os::raw::c_char,
69648        n: ::std::os::raw::c_int,
69649    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69650        let ffi_result = {
69651            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_trUtf8(s, c, n)
69652        };
69653        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69654    }
69655}
69656
69657impl ::qt_core::AsReceiver for crate::SignalOfQRenderTargetOutput {
69658    type Arguments = (*mut crate::QRenderTargetOutput,);
69659    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
69660        unsafe {
69661            ::qt_core::Receiver::new(
69662                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69663                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69664                    b"2emit_(Qt3DRender::QRenderTargetOutput *)\0",
69665                ),
69666            )
69667        }
69668    }
69669}
69670
69671impl crate::SignalOfQRenderTargetOutput {
69672    /// Connects this signal to another signal or slot.
69673    ///
69674    /// This is a shortcut for `self.signal().connect(receiver)`.
69675
69676    pub unsafe fn connect_with_type<R>(
69677        &self,
69678        connection_type: ::qt_core::ConnectionType,
69679        receiver: R,
69680    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69681    where
69682        R: ::qt_core::AsReceiver,
69683        (*mut crate::QRenderTargetOutput,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69684    {
69685        self.signal().connect_with_type(connection_type, receiver)
69686    }
69687
69688    /// Connects this signal to another signal or slot, using auto connection type.
69689    ///
69690    /// This is a shortcut for `self.signal().connect(receiver)`.
69691
69692    pub unsafe fn connect<R>(
69693        &self,
69694        receiver: R,
69695    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69696    where
69697        R: ::qt_core::AsReceiver,
69698        (*mut crate::QRenderTargetOutput,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69699    {
69700        self.signal().connect(receiver)
69701    }
69702}
69703
69704/// Emits a Qt signal with arguments `*mut crate::QRenderTargetOutput`.
69705///
69706/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRenderTargetOutput*```</span>).
69707///
69708/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
69709#[repr(C)]
69710pub struct SignalOfQRenderTargetOutput {
69711    _unused: u8,
69712}
69713impl SignalOfQRenderTargetOutput {
69714    /// Returns a `Signal` object representing the signal.
69715    ///
69716    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
69717    #[inline(always)]
69718    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QRenderTargetOutput,)> {
69719        unsafe {
69720            ::qt_core::Signal::new(
69721                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69722                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69723                    b"2emit_(Qt3DRender::QRenderTargetOutput *)\0",
69724                ),
69725            )
69726        }
69727    }
69728
69729    /// Emits the signal.
69730    #[inline(always)]
69731    pub unsafe fn emit(
69732        &self,
69733        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTargetOutput>>,
69734    ) {
69735        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_emit_(self as *const crate::SignalOfQRenderTargetOutput as *mut crate::SignalOfQRenderTargetOutput, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTargetOutput>>::cast_into(arg0).as_raw_ptr() as *mut crate::QRenderTargetOutput)
69736    }
69737
69738    #[inline(always)]
69739    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
69740        let ffi_result = {
69741            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_metaObject(self as *const crate::SignalOfQRenderTargetOutput)
69742        };
69743        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69744    }
69745
69746    /// Creates a new object.
69747    #[inline(always)]
69748    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQRenderTargetOutput> {
69749        let ffi_result = {
69750            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr()
69751        };
69752        ::qt_core::QBox::from_raw(ffi_result)
69753    }
69754
69755    #[inline(always)]
69756    pub unsafe fn qt_metacall(
69757        &self,
69758        arg1: ::qt_core::q_meta_object::Call,
69759        arg2: ::std::os::raw::c_int,
69760        arg3: *mut *mut ::std::ffi::c_void,
69761    ) -> ::std::os::raw::c_int {
69762        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_qt_metacall(self as *const crate::SignalOfQRenderTargetOutput as *mut crate::SignalOfQRenderTargetOutput, arg1, arg2, arg3)
69763    }
69764
69765    #[inline(always)]
69766    pub unsafe fn qt_metacast(
69767        &self,
69768        arg1: *const ::std::os::raw::c_char,
69769    ) -> *mut ::std::ffi::c_void {
69770        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_qt_metacast(self as *const crate::SignalOfQRenderTargetOutput as *mut crate::SignalOfQRenderTargetOutput, arg1)
69771    }
69772
69773    #[inline(always)]
69774    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
69775        let ffi_result = {
69776            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_staticMetaObject()
69777        };
69778        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69779            .expect("attempted to construct a null Ref")
69780    }
69781
69782    #[inline(always)]
69783    pub unsafe fn tr(
69784        s: *const ::std::os::raw::c_char,
69785        c: *const ::std::os::raw::c_char,
69786        n: ::std::os::raw::c_int,
69787    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69788        let ffi_result = {
69789            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_tr(s, c, n)
69790        };
69791        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69792    }
69793
69794    #[inline(always)]
69795    pub unsafe fn tr_utf8(
69796        s: *const ::std::os::raw::c_char,
69797        c: *const ::std::os::raw::c_char,
69798        n: ::std::os::raw::c_int,
69799    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69800        let ffi_result = {
69801            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_trUtf8(s, c, n)
69802        };
69803        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69804    }
69805}
69806
69807impl ::qt_core::AsReceiver for crate::SignalOfAccessType {
69808    type Arguments = (crate::q_buffer::AccessType,);
69809    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
69810        unsafe {
69811            ::qt_core::Receiver::new(
69812                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69813                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69814                    b"2emit_(Qt3DRender::QBuffer::AccessType)\0",
69815                ),
69816            )
69817        }
69818    }
69819}
69820
69821impl crate::SignalOfAccessType {
69822    /// Connects this signal to another signal or slot.
69823    ///
69824    /// This is a shortcut for `self.signal().connect(receiver)`.
69825
69826    pub unsafe fn connect_with_type<R>(
69827        &self,
69828        connection_type: ::qt_core::ConnectionType,
69829        receiver: R,
69830    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69831    where
69832        R: ::qt_core::AsReceiver,
69833        (crate::q_buffer::AccessType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69834    {
69835        self.signal().connect_with_type(connection_type, receiver)
69836    }
69837
69838    /// Connects this signal to another signal or slot, using auto connection type.
69839    ///
69840    /// This is a shortcut for `self.signal().connect(receiver)`.
69841
69842    pub unsafe fn connect<R>(
69843        &self,
69844        receiver: R,
69845    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69846    where
69847        R: ::qt_core::AsReceiver,
69848        (crate::q_buffer::AccessType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69849    {
69850        self.signal().connect(receiver)
69851    }
69852}
69853
69854/// Emits a Qt signal with arguments `crate::q_buffer::AccessType`.
69855///
69856/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBuffer::AccessType```</span>).
69857///
69858/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
69859#[repr(C)]
69860pub struct SignalOfAccessType {
69861    _unused: u8,
69862}
69863impl SignalOfAccessType {
69864    /// Returns a `Signal` object representing the signal.
69865    ///
69866    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
69867    #[inline(always)]
69868    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_buffer::AccessType,)> {
69869        unsafe {
69870            ::qt_core::Signal::new(
69871                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69872                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69873                    b"2emit_(Qt3DRender::QBuffer::AccessType)\0",
69874                ),
69875            )
69876        }
69877    }
69878
69879    /// Emits the signal.
69880    #[inline(always)]
69881    pub unsafe fn emit(&self, arg0: crate::q_buffer::AccessType) {
69882        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_emit_(self as *const crate::SignalOfAccessType as *mut crate::SignalOfAccessType, arg0)
69883    }
69884
69885    #[inline(always)]
69886    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
69887        let ffi_result = {
69888            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_metaObject(self as *const crate::SignalOfAccessType)
69889        };
69890        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69891    }
69892
69893    /// Creates a new object.
69894    #[inline(always)]
69895    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfAccessType> {
69896        let ffi_result = {
69897            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType()
69898        };
69899        ::qt_core::QBox::from_raw(ffi_result)
69900    }
69901
69902    #[inline(always)]
69903    pub unsafe fn qt_metacall(
69904        &self,
69905        arg1: ::qt_core::q_meta_object::Call,
69906        arg2: ::std::os::raw::c_int,
69907        arg3: *mut *mut ::std::ffi::c_void,
69908    ) -> ::std::os::raw::c_int {
69909        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_qt_metacall(self as *const crate::SignalOfAccessType as *mut crate::SignalOfAccessType, arg1, arg2, arg3)
69910    }
69911
69912    #[inline(always)]
69913    pub unsafe fn qt_metacast(
69914        &self,
69915        arg1: *const ::std::os::raw::c_char,
69916    ) -> *mut ::std::ffi::c_void {
69917        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_qt_metacast(self as *const crate::SignalOfAccessType as *mut crate::SignalOfAccessType, arg1)
69918    }
69919
69920    #[inline(always)]
69921    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
69922        let ffi_result = {
69923            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_staticMetaObject()
69924        };
69925        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
69926            .expect("attempted to construct a null Ref")
69927    }
69928
69929    #[inline(always)]
69930    pub unsafe fn tr(
69931        s: *const ::std::os::raw::c_char,
69932        c: *const ::std::os::raw::c_char,
69933        n: ::std::os::raw::c_int,
69934    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69935        let ffi_result = {
69936            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_tr(s, c, n)
69937        };
69938        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69939    }
69940
69941    #[inline(always)]
69942    pub unsafe fn tr_utf8(
69943        s: *const ::std::os::raw::c_char,
69944        c: *const ::std::os::raw::c_char,
69945        n: ::std::os::raw::c_int,
69946    ) -> ::cpp_core::CppBox<::qt_core::QString> {
69947        let ffi_result = {
69948            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_trUtf8(s, c, n)
69949        };
69950        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
69951    }
69952}
69953
69954impl ::qt_core::AsReceiver for crate::SignalOfPrimitiveType {
69955    type Arguments = (crate::q_geometry_renderer::PrimitiveType,);
69956    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
69957        unsafe {
69958            ::qt_core::Receiver::new(
69959                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
69960                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
69961                    b"2emit_(Qt3DRender::QGeometryRenderer::PrimitiveType)\0",
69962                ),
69963            )
69964        }
69965    }
69966}
69967
69968impl crate::SignalOfPrimitiveType {
69969    /// Connects this signal to another signal or slot.
69970    ///
69971    /// This is a shortcut for `self.signal().connect(receiver)`.
69972
69973    pub unsafe fn connect_with_type<R>(
69974        &self,
69975        connection_type: ::qt_core::ConnectionType,
69976        receiver: R,
69977    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69978    where
69979        R: ::qt_core::AsReceiver,
69980        (crate::q_geometry_renderer::PrimitiveType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69981    {
69982        self.signal().connect_with_type(connection_type, receiver)
69983    }
69984
69985    /// Connects this signal to another signal or slot, using auto connection type.
69986    ///
69987    /// This is a shortcut for `self.signal().connect(receiver)`.
69988
69989    pub unsafe fn connect<R>(
69990        &self,
69991        receiver: R,
69992    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
69993    where
69994        R: ::qt_core::AsReceiver,
69995        (crate::q_geometry_renderer::PrimitiveType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
69996    {
69997        self.signal().connect(receiver)
69998    }
69999}
70000
70001/// Emits a Qt signal with arguments `crate::q_geometry_renderer::PrimitiveType`.
70002///
70003/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QGeometryRenderer::PrimitiveType```</span>).
70004///
70005/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
70006#[repr(C)]
70007pub struct SignalOfPrimitiveType {
70008    _unused: u8,
70009}
70010impl SignalOfPrimitiveType {
70011    /// Returns a `Signal` object representing the signal.
70012    ///
70013    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
70014    #[inline(always)]
70015    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_geometry_renderer::PrimitiveType,)> {
70016        unsafe {
70017            ::qt_core::Signal::new(
70018                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70019                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
70020                    b"2emit_(Qt3DRender::QGeometryRenderer::PrimitiveType)\0",
70021                ),
70022            )
70023        }
70024    }
70025
70026    /// Emits the signal.
70027    #[inline(always)]
70028    pub unsafe fn emit(&self, arg0: crate::q_geometry_renderer::PrimitiveType) {
70029        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_emit_(self as *const crate::SignalOfPrimitiveType as *mut crate::SignalOfPrimitiveType, arg0)
70030    }
70031
70032    #[inline(always)]
70033    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
70034        let ffi_result = {
70035            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_metaObject(self as *const crate::SignalOfPrimitiveType)
70036        };
70037        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70038    }
70039
70040    /// Creates a new object.
70041    #[inline(always)]
70042    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfPrimitiveType> {
70043        let ffi_result = {
70044            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType()
70045        };
70046        ::qt_core::QBox::from_raw(ffi_result)
70047    }
70048
70049    #[inline(always)]
70050    pub unsafe fn qt_metacall(
70051        &self,
70052        arg1: ::qt_core::q_meta_object::Call,
70053        arg2: ::std::os::raw::c_int,
70054        arg3: *mut *mut ::std::ffi::c_void,
70055    ) -> ::std::os::raw::c_int {
70056        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_qt_metacall(self as *const crate::SignalOfPrimitiveType as *mut crate::SignalOfPrimitiveType, arg1, arg2, arg3)
70057    }
70058
70059    #[inline(always)]
70060    pub unsafe fn qt_metacast(
70061        &self,
70062        arg1: *const ::std::os::raw::c_char,
70063    ) -> *mut ::std::ffi::c_void {
70064        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_qt_metacast(self as *const crate::SignalOfPrimitiveType as *mut crate::SignalOfPrimitiveType, arg1)
70065    }
70066
70067    #[inline(always)]
70068    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
70069        let ffi_result = {
70070            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_staticMetaObject()
70071        };
70072        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70073            .expect("attempted to construct a null Ref")
70074    }
70075
70076    #[inline(always)]
70077    pub unsafe fn tr(
70078        s: *const ::std::os::raw::c_char,
70079        c: *const ::std::os::raw::c_char,
70080        n: ::std::os::raw::c_int,
70081    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70082        let ffi_result = {
70083            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_tr(s, c, n)
70084        };
70085        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70086    }
70087
70088    #[inline(always)]
70089    pub unsafe fn tr_utf8(
70090        s: *const ::std::os::raw::c_char,
70091        c: *const ::std::os::raw::c_char,
70092        n: ::std::os::raw::c_int,
70093    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70094        let ffi_result = {
70095            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_trUtf8(s, c, n)
70096        };
70097        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70098    }
70099}
70100
70101impl ::qt_core::AsReceiver for crate::SignalOfQLevelOfDetailBoundingSphere {
70102    type Arguments = (*const crate::QLevelOfDetailBoundingSphere,);
70103    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
70104        unsafe {
70105            ::qt_core::Receiver::new(
70106                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70107                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
70108                    b"2emit_(Qt3DRender::QLevelOfDetailBoundingSphere const &)\0",
70109                ),
70110            )
70111        }
70112    }
70113}
70114
70115impl crate::SignalOfQLevelOfDetailBoundingSphere {
70116    /// Connects this signal to another signal or slot.
70117    ///
70118    /// This is a shortcut for `self.signal().connect(receiver)`.
70119
70120    pub unsafe fn connect_with_type<R>(
70121        &self,
70122        connection_type: ::qt_core::ConnectionType,
70123        receiver: R,
70124    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70125    where
70126        R: ::qt_core::AsReceiver,
70127        (*const crate::QLevelOfDetailBoundingSphere,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70128    {
70129        self.signal().connect_with_type(connection_type, receiver)
70130    }
70131
70132    /// Connects this signal to another signal or slot, using auto connection type.
70133    ///
70134    /// This is a shortcut for `self.signal().connect(receiver)`.
70135
70136    pub unsafe fn connect<R>(
70137        &self,
70138        receiver: R,
70139    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70140    where
70141        R: ::qt_core::AsReceiver,
70142        (*const crate::QLevelOfDetailBoundingSphere,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70143    {
70144        self.signal().connect(receiver)
70145    }
70146}
70147
70148/// Emits a Qt signal with arguments `*const crate::QLevelOfDetailBoundingSphere`.
70149///
70150/// Corresponding C++ argument types: (<span style='color: green;'>```const Qt3DRender::QLevelOfDetailBoundingSphere&```</span>).
70151///
70152/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
70153#[repr(C)]
70154pub struct SignalOfQLevelOfDetailBoundingSphere {
70155    _unused: u8,
70156}
70157impl SignalOfQLevelOfDetailBoundingSphere {
70158    /// Returns a `Signal` object representing the signal.
70159    ///
70160    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
70161    #[inline(always)]
70162    pub fn signal(&self) -> ::qt_core::Signal<(*const crate::QLevelOfDetailBoundingSphere,)> {
70163        unsafe {
70164            ::qt_core::Signal::new(
70165                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70166                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
70167                    b"2emit_(Qt3DRender::QLevelOfDetailBoundingSphere const &)\0",
70168                ),
70169            )
70170        }
70171    }
70172
70173    /// Emits the signal.
70174    #[inline(always)]
70175    pub unsafe fn emit(
70176        &self,
70177        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>,
70178    ) {
70179        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_emit_(self as *const crate::SignalOfQLevelOfDetailBoundingSphere as *mut crate::SignalOfQLevelOfDetailBoundingSphere, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>::cast_into(arg0).as_raw_ptr())
70180    }
70181
70182    #[inline(always)]
70183    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
70184        let ffi_result = {
70185            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_metaObject(self as *const crate::SignalOfQLevelOfDetailBoundingSphere)
70186        };
70187        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70188    }
70189
70190    /// Creates a new object.
70191    #[inline(always)]
70192    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQLevelOfDetailBoundingSphere> {
70193        let ffi_result = {
70194            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref()
70195        };
70196        ::qt_core::QBox::from_raw(ffi_result)
70197    }
70198
70199    #[inline(always)]
70200    pub unsafe fn qt_metacall(
70201        &self,
70202        arg1: ::qt_core::q_meta_object::Call,
70203        arg2: ::std::os::raw::c_int,
70204        arg3: *mut *mut ::std::ffi::c_void,
70205    ) -> ::std::os::raw::c_int {
70206        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_qt_metacall(self as *const crate::SignalOfQLevelOfDetailBoundingSphere as *mut crate::SignalOfQLevelOfDetailBoundingSphere, arg1, arg2, arg3)
70207    }
70208
70209    #[inline(always)]
70210    pub unsafe fn qt_metacast(
70211        &self,
70212        arg1: *const ::std::os::raw::c_char,
70213    ) -> *mut ::std::ffi::c_void {
70214        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_qt_metacast(self as *const crate::SignalOfQLevelOfDetailBoundingSphere as *mut crate::SignalOfQLevelOfDetailBoundingSphere, arg1)
70215    }
70216
70217    #[inline(always)]
70218    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
70219        let ffi_result = {
70220            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_staticMetaObject()
70221        };
70222        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70223            .expect("attempted to construct a null Ref")
70224    }
70225
70226    #[inline(always)]
70227    pub unsafe fn tr(
70228        s: *const ::std::os::raw::c_char,
70229        c: *const ::std::os::raw::c_char,
70230        n: ::std::os::raw::c_int,
70231    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70232        let ffi_result = {
70233            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_tr(s, c, n)
70234        };
70235        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70236    }
70237
70238    #[inline(always)]
70239    pub unsafe fn tr_utf8(
70240        s: *const ::std::os::raw::c_char,
70241        c: *const ::std::os::raw::c_char,
70242        n: ::std::os::raw::c_int,
70243    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70244        let ffi_result = {
70245            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_trUtf8(s, c, n)
70246        };
70247        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70248    }
70249}
70250
70251impl ::qt_core::AsReceiver for crate::SignalOfPickMethod {
70252    type Arguments = (crate::q_picking_settings::PickMethod,);
70253    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
70254        unsafe {
70255            ::qt_core::Receiver::new(
70256                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70257                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
70258                    b"2emit_(Qt3DRender::QPickingSettings::PickMethod)\0",
70259                ),
70260            )
70261        }
70262    }
70263}
70264
70265impl crate::SignalOfPickMethod {
70266    /// Connects this signal to another signal or slot.
70267    ///
70268    /// This is a shortcut for `self.signal().connect(receiver)`.
70269
70270    pub unsafe fn connect_with_type<R>(
70271        &self,
70272        connection_type: ::qt_core::ConnectionType,
70273        receiver: R,
70274    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70275    where
70276        R: ::qt_core::AsReceiver,
70277        (crate::q_picking_settings::PickMethod,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70278    {
70279        self.signal().connect_with_type(connection_type, receiver)
70280    }
70281
70282    /// Connects this signal to another signal or slot, using auto connection type.
70283    ///
70284    /// This is a shortcut for `self.signal().connect(receiver)`.
70285
70286    pub unsafe fn connect<R>(
70287        &self,
70288        receiver: R,
70289    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70290    where
70291        R: ::qt_core::AsReceiver,
70292        (crate::q_picking_settings::PickMethod,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70293    {
70294        self.signal().connect(receiver)
70295    }
70296}
70297
70298/// Emits a Qt signal with arguments `crate::q_picking_settings::PickMethod`.
70299///
70300/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPickingSettings::PickMethod```</span>).
70301///
70302/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
70303#[repr(C)]
70304pub struct SignalOfPickMethod {
70305    _unused: u8,
70306}
70307impl SignalOfPickMethod {
70308    /// Returns a `Signal` object representing the signal.
70309    ///
70310    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
70311    #[inline(always)]
70312    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_picking_settings::PickMethod,)> {
70313        unsafe {
70314            ::qt_core::Signal::new(
70315                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70316                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
70317                    b"2emit_(Qt3DRender::QPickingSettings::PickMethod)\0",
70318                ),
70319            )
70320        }
70321    }
70322
70323    /// Emits the signal.
70324    #[inline(always)]
70325    pub unsafe fn emit(&self, arg0: crate::q_picking_settings::PickMethod) {
70326        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_emit_(self as *const crate::SignalOfPickMethod as *mut crate::SignalOfPickMethod, arg0)
70327    }
70328
70329    #[inline(always)]
70330    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
70331        let ffi_result = {
70332            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_metaObject(self as *const crate::SignalOfPickMethod)
70333        };
70334        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70335    }
70336
70337    /// Creates a new object.
70338    #[inline(always)]
70339    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfPickMethod> {
70340        let ffi_result = {
70341            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod()
70342        };
70343        ::qt_core::QBox::from_raw(ffi_result)
70344    }
70345
70346    #[inline(always)]
70347    pub unsafe fn qt_metacall(
70348        &self,
70349        arg1: ::qt_core::q_meta_object::Call,
70350        arg2: ::std::os::raw::c_int,
70351        arg3: *mut *mut ::std::ffi::c_void,
70352    ) -> ::std::os::raw::c_int {
70353        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_qt_metacall(self as *const crate::SignalOfPickMethod as *mut crate::SignalOfPickMethod, arg1, arg2, arg3)
70354    }
70355
70356    #[inline(always)]
70357    pub unsafe fn qt_metacast(
70358        &self,
70359        arg1: *const ::std::os::raw::c_char,
70360    ) -> *mut ::std::ffi::c_void {
70361        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_qt_metacast(self as *const crate::SignalOfPickMethod as *mut crate::SignalOfPickMethod, arg1)
70362    }
70363
70364    #[inline(always)]
70365    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
70366        let ffi_result = {
70367            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_staticMetaObject()
70368        };
70369        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70370            .expect("attempted to construct a null Ref")
70371    }
70372
70373    #[inline(always)]
70374    pub unsafe fn tr(
70375        s: *const ::std::os::raw::c_char,
70376        c: *const ::std::os::raw::c_char,
70377        n: ::std::os::raw::c_int,
70378    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70379        let ffi_result = {
70380            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_tr(s, c, n)
70381        };
70382        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70383    }
70384
70385    #[inline(always)]
70386    pub unsafe fn tr_utf8(
70387        s: *const ::std::os::raw::c_char,
70388        c: *const ::std::os::raw::c_char,
70389        n: ::std::os::raw::c_int,
70390    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70391        let ffi_result = {
70392            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_trUtf8(s, c, n)
70393        };
70394        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70395    }
70396}
70397
70398impl ::qt_core::AsReceiver for crate::SignalOfSizeMode {
70399    type Arguments = (crate::q_point_size::SizeMode,);
70400    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
70401        unsafe {
70402            ::qt_core::Receiver::new(
70403                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70404                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
70405                    b"2emit_(Qt3DRender::QPointSize::SizeMode)\0",
70406                ),
70407            )
70408        }
70409    }
70410}
70411
70412impl crate::SignalOfSizeMode {
70413    /// Connects this signal to another signal or slot.
70414    ///
70415    /// This is a shortcut for `self.signal().connect(receiver)`.
70416
70417    pub unsafe fn connect_with_type<R>(
70418        &self,
70419        connection_type: ::qt_core::ConnectionType,
70420        receiver: R,
70421    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70422    where
70423        R: ::qt_core::AsReceiver,
70424        (crate::q_point_size::SizeMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70425    {
70426        self.signal().connect_with_type(connection_type, receiver)
70427    }
70428
70429    /// Connects this signal to another signal or slot, using auto connection type.
70430    ///
70431    /// This is a shortcut for `self.signal().connect(receiver)`.
70432
70433    pub unsafe fn connect<R>(
70434        &self,
70435        receiver: R,
70436    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70437    where
70438        R: ::qt_core::AsReceiver,
70439        (crate::q_point_size::SizeMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70440    {
70441        self.signal().connect(receiver)
70442    }
70443}
70444
70445/// Emits a Qt signal with arguments `crate::q_point_size::SizeMode`.
70446///
70447/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPointSize::SizeMode```</span>).
70448///
70449/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
70450#[repr(C)]
70451pub struct SignalOfSizeMode {
70452    _unused: u8,
70453}
70454impl SignalOfSizeMode {
70455    /// Returns a `Signal` object representing the signal.
70456    ///
70457    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
70458    #[inline(always)]
70459    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_point_size::SizeMode,)> {
70460        unsafe {
70461            ::qt_core::Signal::new(
70462                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70463                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
70464                    b"2emit_(Qt3DRender::QPointSize::SizeMode)\0",
70465                ),
70466            )
70467        }
70468    }
70469
70470    /// Emits the signal.
70471    #[inline(always)]
70472    pub unsafe fn emit(&self, arg0: crate::q_point_size::SizeMode) {
70473        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_emit_(self as *const crate::SignalOfSizeMode as *mut crate::SignalOfSizeMode, arg0)
70474    }
70475
70476    #[inline(always)]
70477    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
70478        let ffi_result = {
70479            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_metaObject(self as *const crate::SignalOfSizeMode)
70480        };
70481        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70482    }
70483
70484    /// Creates a new object.
70485    #[inline(always)]
70486    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfSizeMode> {
70487        let ffi_result = {
70488            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode()
70489        };
70490        ::qt_core::QBox::from_raw(ffi_result)
70491    }
70492
70493    #[inline(always)]
70494    pub unsafe fn qt_metacall(
70495        &self,
70496        arg1: ::qt_core::q_meta_object::Call,
70497        arg2: ::std::os::raw::c_int,
70498        arg3: *mut *mut ::std::ffi::c_void,
70499    ) -> ::std::os::raw::c_int {
70500        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_qt_metacall(self as *const crate::SignalOfSizeMode as *mut crate::SignalOfSizeMode, arg1, arg2, arg3)
70501    }
70502
70503    #[inline(always)]
70504    pub unsafe fn qt_metacast(
70505        &self,
70506        arg1: *const ::std::os::raw::c_char,
70507    ) -> *mut ::std::ffi::c_void {
70508        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_qt_metacast(self as *const crate::SignalOfSizeMode as *mut crate::SignalOfSizeMode, arg1)
70509    }
70510
70511    #[inline(always)]
70512    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
70513        let ffi_result = {
70514            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_staticMetaObject()
70515        };
70516        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70517            .expect("attempted to construct a null Ref")
70518    }
70519
70520    #[inline(always)]
70521    pub unsafe fn tr(
70522        s: *const ::std::os::raw::c_char,
70523        c: *const ::std::os::raw::c_char,
70524        n: ::std::os::raw::c_int,
70525    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70526        let ffi_result = {
70527            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_tr(s, c, n)
70528        };
70529        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70530    }
70531
70532    #[inline(always)]
70533    pub unsafe fn tr_utf8(
70534        s: *const ::std::os::raw::c_char,
70535        c: *const ::std::os::raw::c_char,
70536        n: ::std::os::raw::c_int,
70537    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70538        let ffi_result = {
70539            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_trUtf8(s, c, n)
70540        };
70541        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70542    }
70543}
70544
70545impl ::qt_core::AsReceiver for crate::SignalOfOperation {
70546    type Arguments = (crate::q_stencil_operation_arguments::Operation,);
70547    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
70548        unsafe {
70549            ::qt_core::Receiver::new(
70550                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70551                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
70552                    b"2emit_(Qt3DRender::QStencilOperationArguments::Operation)\0",
70553                ),
70554            )
70555        }
70556    }
70557}
70558
70559impl crate::SignalOfOperation {
70560    /// Connects this signal to another signal or slot.
70561    ///
70562    /// This is a shortcut for `self.signal().connect(receiver)`.
70563
70564    pub unsafe fn connect_with_type<R>(
70565        &self,
70566        connection_type: ::qt_core::ConnectionType,
70567        receiver: R,
70568    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70569    where
70570        R: ::qt_core::AsReceiver,
70571        (crate::q_stencil_operation_arguments::Operation,):
70572            ::qt_core::ArgumentsCompatible<R::Arguments>,
70573    {
70574        self.signal().connect_with_type(connection_type, receiver)
70575    }
70576
70577    /// Connects this signal to another signal or slot, using auto connection type.
70578    ///
70579    /// This is a shortcut for `self.signal().connect(receiver)`.
70580
70581    pub unsafe fn connect<R>(
70582        &self,
70583        receiver: R,
70584    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70585    where
70586        R: ::qt_core::AsReceiver,
70587        (crate::q_stencil_operation_arguments::Operation,):
70588            ::qt_core::ArgumentsCompatible<R::Arguments>,
70589    {
70590        self.signal().connect(receiver)
70591    }
70592}
70593
70594/// Emits a Qt signal with arguments `crate::q_stencil_operation_arguments::Operation`.
70595///
70596/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QStencilOperationArguments::Operation```</span>).
70597///
70598/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
70599#[repr(C)]
70600pub struct SignalOfOperation {
70601    _unused: u8,
70602}
70603impl SignalOfOperation {
70604    /// Returns a `Signal` object representing the signal.
70605    ///
70606    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
70607    #[inline(always)]
70608    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_stencil_operation_arguments::Operation,)> {
70609        unsafe {
70610            ::qt_core::Signal::new(
70611                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70612                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
70613                    b"2emit_(Qt3DRender::QStencilOperationArguments::Operation)\0",
70614                ),
70615            )
70616        }
70617    }
70618
70619    /// Emits the signal.
70620    #[inline(always)]
70621    pub unsafe fn emit(&self, arg0: crate::q_stencil_operation_arguments::Operation) {
70622        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_emit_(self as *const crate::SignalOfOperation as *mut crate::SignalOfOperation, arg0)
70623    }
70624
70625    #[inline(always)]
70626    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
70627        let ffi_result = {
70628            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_metaObject(self as *const crate::SignalOfOperation)
70629        };
70630        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70631    }
70632
70633    /// Creates a new object.
70634    #[inline(always)]
70635    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfOperation> {
70636        let ffi_result = {
70637            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation()
70638        };
70639        ::qt_core::QBox::from_raw(ffi_result)
70640    }
70641
70642    #[inline(always)]
70643    pub unsafe fn qt_metacall(
70644        &self,
70645        arg1: ::qt_core::q_meta_object::Call,
70646        arg2: ::std::os::raw::c_int,
70647        arg3: *mut *mut ::std::ffi::c_void,
70648    ) -> ::std::os::raw::c_int {
70649        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_qt_metacall(self as *const crate::SignalOfOperation as *mut crate::SignalOfOperation, arg1, arg2, arg3)
70650    }
70651
70652    #[inline(always)]
70653    pub unsafe fn qt_metacast(
70654        &self,
70655        arg1: *const ::std::os::raw::c_char,
70656    ) -> *mut ::std::ffi::c_void {
70657        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_qt_metacast(self as *const crate::SignalOfOperation as *mut crate::SignalOfOperation, arg1)
70658    }
70659
70660    #[inline(always)]
70661    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
70662        let ffi_result = {
70663            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_staticMetaObject()
70664        };
70665        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70666            .expect("attempted to construct a null Ref")
70667    }
70668
70669    #[inline(always)]
70670    pub unsafe fn tr(
70671        s: *const ::std::os::raw::c_char,
70672        c: *const ::std::os::raw::c_char,
70673        n: ::std::os::raw::c_int,
70674    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70675        let ffi_result = {
70676            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_tr(s, c, n)
70677        };
70678        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70679    }
70680
70681    #[inline(always)]
70682    pub unsafe fn tr_utf8(
70683        s: *const ::std::os::raw::c_char,
70684        c: *const ::std::os::raw::c_char,
70685        n: ::std::os::raw::c_int,
70686    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70687        let ffi_result = {
70688            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_trUtf8(s, c, n)
70689        };
70690        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70691    }
70692}
70693
70694impl ::qt_core::AsReceiver for crate::SignalOfQPoint {
70695    type Arguments = (*const ::qt_core::QPoint,);
70696    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
70697        unsafe {
70698            ::qt_core::Receiver::new(
70699                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70700                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QPoint const &)\0"),
70701            )
70702        }
70703    }
70704}
70705
70706impl crate::SignalOfQPoint {
70707    /// Connects this signal to another signal or slot.
70708    ///
70709    /// This is a shortcut for `self.signal().connect(receiver)`.
70710
70711    pub unsafe fn connect_with_type<R>(
70712        &self,
70713        connection_type: ::qt_core::ConnectionType,
70714        receiver: R,
70715    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70716    where
70717        R: ::qt_core::AsReceiver,
70718        (*const ::qt_core::QPoint,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70719    {
70720        self.signal().connect_with_type(connection_type, receiver)
70721    }
70722
70723    /// Connects this signal to another signal or slot, using auto connection type.
70724    ///
70725    /// This is a shortcut for `self.signal().connect(receiver)`.
70726
70727    pub unsafe fn connect<R>(
70728        &self,
70729        receiver: R,
70730    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70731    where
70732        R: ::qt_core::AsReceiver,
70733        (*const ::qt_core::QPoint,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70734    {
70735        self.signal().connect(receiver)
70736    }
70737}
70738
70739/// Emits a Qt signal with arguments `*const ::qt_core::QPoint`.
70740///
70741/// Corresponding C++ argument types: (<span style='color: green;'>```const QPoint&```</span>).
70742///
70743/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
70744#[repr(C)]
70745pub struct SignalOfQPoint {
70746    _unused: u8,
70747}
70748impl SignalOfQPoint {
70749    /// Returns a `Signal` object representing the signal.
70750    ///
70751    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
70752    #[inline(always)]
70753    pub fn signal(&self) -> ::qt_core::Signal<(*const ::qt_core::QPoint,)> {
70754        unsafe {
70755            ::qt_core::Signal::new(
70756                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70757                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QPoint const &)\0"),
70758            )
70759        }
70760    }
70761
70762    /// Emits the signal.
70763    #[inline(always)]
70764    pub unsafe fn emit(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPoint>>) {
70765        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_emit_(self as *const crate::SignalOfQPoint as *mut crate::SignalOfQPoint, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPoint>>::cast_into(arg0).as_raw_ptr())
70766    }
70767
70768    #[inline(always)]
70769    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
70770        let ffi_result = {
70771            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_metaObject(self as *const crate::SignalOfQPoint)
70772        };
70773        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70774    }
70775
70776    /// Creates a new object.
70777    #[inline(always)]
70778    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQPoint> {
70779        let ffi_result = {
70780            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref()
70781        };
70782        ::qt_core::QBox::from_raw(ffi_result)
70783    }
70784
70785    #[inline(always)]
70786    pub unsafe fn qt_metacall(
70787        &self,
70788        arg1: ::qt_core::q_meta_object::Call,
70789        arg2: ::std::os::raw::c_int,
70790        arg3: *mut *mut ::std::ffi::c_void,
70791    ) -> ::std::os::raw::c_int {
70792        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_qt_metacall(self as *const crate::SignalOfQPoint as *mut crate::SignalOfQPoint, arg1, arg2, arg3)
70793    }
70794
70795    #[inline(always)]
70796    pub unsafe fn qt_metacast(
70797        &self,
70798        arg1: *const ::std::os::raw::c_char,
70799    ) -> *mut ::std::ffi::c_void {
70800        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_qt_metacast(self as *const crate::SignalOfQPoint as *mut crate::SignalOfQPoint, arg1)
70801    }
70802
70803    #[inline(always)]
70804    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
70805        let ffi_result = {
70806            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_staticMetaObject()
70807        };
70808        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70809            .expect("attempted to construct a null Ref")
70810    }
70811
70812    #[inline(always)]
70813    pub unsafe fn tr(
70814        s: *const ::std::os::raw::c_char,
70815        c: *const ::std::os::raw::c_char,
70816        n: ::std::os::raw::c_int,
70817    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70818        let ffi_result = {
70819            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_tr(s, c, n)
70820        };
70821        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70822    }
70823
70824    #[inline(always)]
70825    pub unsafe fn tr_utf8(
70826        s: *const ::std::os::raw::c_char,
70827        c: *const ::std::os::raw::c_char,
70828        n: ::std::os::raw::c_int,
70829    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70830        let ffi_result = {
70831            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_trUtf8(s, c, n)
70832        };
70833        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70834    }
70835}
70836
70837impl ::qt_core::AsReceiver for crate::SignalOfQVariant {
70838    type Arguments = (*const ::qt_core::QVariant,);
70839    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
70840        unsafe {
70841            ::qt_core::Receiver::new(
70842                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70843                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QVariant)\0"),
70844            )
70845        }
70846    }
70847}
70848
70849impl crate::SignalOfQVariant {
70850    /// Connects this signal to another signal or slot.
70851    ///
70852    /// This is a shortcut for `self.signal().connect(receiver)`.
70853
70854    pub unsafe fn connect_with_type<R>(
70855        &self,
70856        connection_type: ::qt_core::ConnectionType,
70857        receiver: R,
70858    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70859    where
70860        R: ::qt_core::AsReceiver,
70861        (*const ::qt_core::QVariant,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70862    {
70863        self.signal().connect_with_type(connection_type, receiver)
70864    }
70865
70866    /// Connects this signal to another signal or slot, using auto connection type.
70867    ///
70868    /// This is a shortcut for `self.signal().connect(receiver)`.
70869
70870    pub unsafe fn connect<R>(
70871        &self,
70872        receiver: R,
70873    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
70874    where
70875        R: ::qt_core::AsReceiver,
70876        (*const ::qt_core::QVariant,): ::qt_core::ArgumentsCompatible<R::Arguments>,
70877    {
70878        self.signal().connect(receiver)
70879    }
70880}
70881
70882/// Emits a Qt signal with arguments `*const ::qt_core::QVariant`.
70883///
70884/// Corresponding C++ argument types: (<span style='color: green;'>```QVariant```</span>).
70885///
70886/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
70887#[repr(C)]
70888pub struct SignalOfQVariant {
70889    _unused: u8,
70890}
70891impl SignalOfQVariant {
70892    /// Returns a `Signal` object representing the signal.
70893    ///
70894    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
70895    #[inline(always)]
70896    pub fn signal(&self) -> ::qt_core::Signal<(*const ::qt_core::QVariant,)> {
70897        unsafe {
70898            ::qt_core::Signal::new(
70899                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
70900                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QVariant)\0"),
70901            )
70902        }
70903    }
70904
70905    /// Emits the signal.
70906    #[inline(always)]
70907    pub unsafe fn emit(
70908        &self,
70909        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
70910    ) {
70911        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_emit_(
70912            self as *const crate::SignalOfQVariant as *mut crate::SignalOfQVariant,
70913            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(arg0)
70914                .as_raw_ptr(),
70915        )
70916    }
70917
70918    #[inline(always)]
70919    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
70920        let ffi_result = {
70921            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_metaObject(self as *const crate::SignalOfQVariant)
70922        };
70923        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70924    }
70925
70926    /// Creates a new object.
70927    #[inline(always)]
70928    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQVariant> {
70929        let ffi_result = {
70930            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_ctr_qt_3d_render_ffi_signal_wrapper_QVariant()
70931        };
70932        ::qt_core::QBox::from_raw(ffi_result)
70933    }
70934
70935    #[inline(always)]
70936    pub unsafe fn qt_metacall(
70937        &self,
70938        arg1: ::qt_core::q_meta_object::Call,
70939        arg2: ::std::os::raw::c_int,
70940        arg3: *mut *mut ::std::ffi::c_void,
70941    ) -> ::std::os::raw::c_int {
70942        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_qt_metacall(
70943            self as *const crate::SignalOfQVariant as *mut crate::SignalOfQVariant,
70944            arg1,
70945            arg2,
70946            arg3,
70947        )
70948    }
70949
70950    #[inline(always)]
70951    pub unsafe fn qt_metacast(
70952        &self,
70953        arg1: *const ::std::os::raw::c_char,
70954    ) -> *mut ::std::ffi::c_void {
70955        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_qt_metacast(
70956            self as *const crate::SignalOfQVariant as *mut crate::SignalOfQVariant,
70957            arg1,
70958        )
70959    }
70960
70961    #[inline(always)]
70962    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
70963        let ffi_result = {
70964            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_staticMetaObject()
70965        };
70966        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
70967            .expect("attempted to construct a null Ref")
70968    }
70969
70970    #[inline(always)]
70971    pub unsafe fn tr(
70972        s: *const ::std::os::raw::c_char,
70973        c: *const ::std::os::raw::c_char,
70974        n: ::std::os::raw::c_int,
70975    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70976        let ffi_result = {
70977            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_tr(
70978                s, c, n,
70979            )
70980        };
70981        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70982    }
70983
70984    #[inline(always)]
70985    pub unsafe fn tr_utf8(
70986        s: *const ::std::os::raw::c_char,
70987        c: *const ::std::os::raw::c_char,
70988        n: ::std::os::raw::c_int,
70989    ) -> ::cpp_core::CppBox<::qt_core::QString> {
70990        let ffi_result = {
70991            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_trUtf8(
70992                s, c, n,
70993            )
70994        };
70995        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
70996    }
70997}
70998
70999impl ::qt_core::AsReceiver for crate::SignalOfQFlagsOperation {
71000    type Arguments = (::std::os::raw::c_int,);
71001    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
71002        unsafe {
71003            ::qt_core::Receiver::new(
71004                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71005                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
71006                    b"2emit_(QFlags< Qt3DRender::QMemoryBarrier::Operation >)\0",
71007                ),
71008            )
71009        }
71010    }
71011}
71012
71013impl crate::SignalOfQFlagsOperation {
71014    /// Connects this signal to another signal or slot.
71015    ///
71016    /// This is a shortcut for `self.signal().connect(receiver)`.
71017
71018    pub unsafe fn connect_with_type<R>(
71019        &self,
71020        connection_type: ::qt_core::ConnectionType,
71021        receiver: R,
71022    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71023    where
71024        R: ::qt_core::AsReceiver,
71025        (::std::os::raw::c_int,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71026    {
71027        self.signal().connect_with_type(connection_type, receiver)
71028    }
71029
71030    /// Connects this signal to another signal or slot, using auto connection type.
71031    ///
71032    /// This is a shortcut for `self.signal().connect(receiver)`.
71033
71034    pub unsafe fn connect<R>(
71035        &self,
71036        receiver: R,
71037    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71038    where
71039        R: ::qt_core::AsReceiver,
71040        (::std::os::raw::c_int,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71041    {
71042        self.signal().connect(receiver)
71043    }
71044}
71045
71046/// Emits a Qt signal with arguments `::std::os::raw::c_int`.
71047///
71048/// Corresponding C++ argument types: (<span style='color: green;'>```QFlags<Qt3DRender::QMemoryBarrier::Operation>```</span>).
71049///
71050/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
71051#[repr(C)]
71052pub struct SignalOfQFlagsOperation {
71053    _unused: u8,
71054}
71055impl SignalOfQFlagsOperation {
71056    /// Returns a `Signal` object representing the signal.
71057    ///
71058    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
71059    #[inline(always)]
71060    pub fn signal(&self) -> ::qt_core::Signal<(::std::os::raw::c_int,)> {
71061        unsafe {
71062            ::qt_core::Signal::new(
71063                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71064                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
71065                    b"2emit_(QFlags< Qt3DRender::QMemoryBarrier::Operation >)\0",
71066                ),
71067            )
71068        }
71069    }
71070
71071    /// Emits the signal.
71072    #[inline(always)]
71073    pub unsafe fn emit(&self, arg0: ::qt_core::QFlags<crate::q_memory_barrier::Operation>) {
71074        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_emit_(self as *const crate::SignalOfQFlagsOperation as *mut crate::SignalOfQFlagsOperation, arg0.to_int())
71075    }
71076
71077    #[inline(always)]
71078    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
71079        let ffi_result = {
71080            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_metaObject(self as *const crate::SignalOfQFlagsOperation)
71081        };
71082        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
71083    }
71084
71085    /// Creates a new object.
71086    #[inline(always)]
71087    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQFlagsOperation> {
71088        let ffi_result = {
71089            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation()
71090        };
71091        ::qt_core::QBox::from_raw(ffi_result)
71092    }
71093
71094    #[inline(always)]
71095    pub unsafe fn qt_metacall(
71096        &self,
71097        arg1: ::qt_core::q_meta_object::Call,
71098        arg2: ::std::os::raw::c_int,
71099        arg3: *mut *mut ::std::ffi::c_void,
71100    ) -> ::std::os::raw::c_int {
71101        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_qt_metacall(self as *const crate::SignalOfQFlagsOperation as *mut crate::SignalOfQFlagsOperation, arg1, arg2, arg3)
71102    }
71103
71104    #[inline(always)]
71105    pub unsafe fn qt_metacast(
71106        &self,
71107        arg1: *const ::std::os::raw::c_char,
71108    ) -> *mut ::std::ffi::c_void {
71109        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_qt_metacast(self as *const crate::SignalOfQFlagsOperation as *mut crate::SignalOfQFlagsOperation, arg1)
71110    }
71111
71112    #[inline(always)]
71113    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
71114        let ffi_result = {
71115            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_staticMetaObject()
71116        };
71117        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
71118            .expect("attempted to construct a null Ref")
71119    }
71120
71121    #[inline(always)]
71122    pub unsafe fn tr(
71123        s: *const ::std::os::raw::c_char,
71124        c: *const ::std::os::raw::c_char,
71125        n: ::std::os::raw::c_int,
71126    ) -> ::cpp_core::CppBox<::qt_core::QString> {
71127        let ffi_result = {
71128            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_tr(s, c, n)
71129        };
71130        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
71131    }
71132
71133    #[inline(always)]
71134    pub unsafe fn tr_utf8(
71135        s: *const ::std::os::raw::c_char,
71136        c: *const ::std::os::raw::c_char,
71137        n: ::std::os::raw::c_int,
71138    ) -> ::cpp_core::CppBox<::qt_core::QString> {
71139        let ffi_result = {
71140            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_trUtf8(s, c, n)
71141        };
71142        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
71143    }
71144}
71145
71146#[cfg_attr(
71147    feature = "ritual_rustdoc_nightly",
71148    doc(cfg(any(
71149        cpp_lib_version = "5.14.0",
71150        cpp_lib_version = "5.11.3",
71151        cpp_lib_version = "5.12.2",
71152        cpp_lib_version = "5.13.0"
71153    )))
71154)]
71155#[cfg(any(
71156    any(
71157        cpp_lib_version = "5.14.0",
71158        cpp_lib_version = "5.11.3",
71159        cpp_lib_version = "5.12.2",
71160        cpp_lib_version = "5.13.0"
71161    ),
71162    feature = "ritual_rustdoc"
71163))]
71164
71165impl ::qt_core::AsReceiver for crate::SignalOfRunMode {
71166    type Arguments = (crate::q_abstract_ray_caster::RunMode,);
71167    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
71168        unsafe {
71169            ::qt_core::Receiver::new(
71170                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71171                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
71172                    b"2emit_(Qt3DRender::QAbstractRayCaster::RunMode)\0",
71173                ),
71174            )
71175        }
71176    }
71177}
71178
71179impl crate::SignalOfRunMode {
71180    /// Connects this signal to another signal or slot.
71181    ///
71182    /// This is a shortcut for `self.signal().connect(receiver)`.
71183    #[cfg_attr(
71184        feature = "ritual_rustdoc_nightly",
71185        doc(cfg(any(
71186            cpp_lib_version = "5.14.0",
71187            cpp_lib_version = "5.11.3",
71188            cpp_lib_version = "5.12.2",
71189            cpp_lib_version = "5.13.0"
71190        )))
71191    )]
71192    #[cfg(any(
71193        any(
71194            cpp_lib_version = "5.14.0",
71195            cpp_lib_version = "5.11.3",
71196            cpp_lib_version = "5.12.2",
71197            cpp_lib_version = "5.13.0"
71198        ),
71199        feature = "ritual_rustdoc"
71200    ))]
71201
71202    pub unsafe fn connect_with_type<R>(
71203        &self,
71204        connection_type: ::qt_core::ConnectionType,
71205        receiver: R,
71206    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71207    where
71208        R: ::qt_core::AsReceiver,
71209        (crate::q_abstract_ray_caster::RunMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71210    {
71211        self.signal().connect_with_type(connection_type, receiver)
71212    }
71213
71214    /// Connects this signal to another signal or slot, using auto connection type.
71215    ///
71216    /// This is a shortcut for `self.signal().connect(receiver)`.
71217    #[cfg_attr(
71218        feature = "ritual_rustdoc_nightly",
71219        doc(cfg(any(
71220            cpp_lib_version = "5.14.0",
71221            cpp_lib_version = "5.11.3",
71222            cpp_lib_version = "5.12.2",
71223            cpp_lib_version = "5.13.0"
71224        )))
71225    )]
71226    #[cfg(any(
71227        any(
71228            cpp_lib_version = "5.14.0",
71229            cpp_lib_version = "5.11.3",
71230            cpp_lib_version = "5.12.2",
71231            cpp_lib_version = "5.13.0"
71232        ),
71233        feature = "ritual_rustdoc"
71234    ))]
71235
71236    pub unsafe fn connect<R>(
71237        &self,
71238        receiver: R,
71239    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71240    where
71241        R: ::qt_core::AsReceiver,
71242        (crate::q_abstract_ray_caster::RunMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71243    {
71244        self.signal().connect(receiver)
71245    }
71246}
71247
71248/// Emits a Qt signal with arguments `crate::q_abstract_ray_caster::RunMode`.
71249///
71250/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractRayCaster::RunMode```</span>).
71251///
71252/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
71253#[repr(C)]
71254pub struct SignalOfRunMode {
71255    _unused: u8,
71256}
71257impl SignalOfRunMode {
71258    /// Returns a `Signal` object representing the signal.
71259    ///
71260    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
71261    #[inline(always)]
71262    #[cfg_attr(
71263        feature = "ritual_rustdoc_nightly",
71264        doc(cfg(any(
71265            cpp_lib_version = "5.14.0",
71266            cpp_lib_version = "5.11.3",
71267            cpp_lib_version = "5.12.2",
71268            cpp_lib_version = "5.13.0"
71269        )))
71270    )]
71271    #[cfg(any(
71272        any(
71273            cpp_lib_version = "5.14.0",
71274            cpp_lib_version = "5.11.3",
71275            cpp_lib_version = "5.12.2",
71276            cpp_lib_version = "5.13.0"
71277        ),
71278        feature = "ritual_rustdoc"
71279    ))]
71280    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_abstract_ray_caster::RunMode,)> {
71281        unsafe {
71282            ::qt_core::Signal::new(
71283                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71284                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
71285                    b"2emit_(Qt3DRender::QAbstractRayCaster::RunMode)\0",
71286                ),
71287            )
71288        }
71289    }
71290
71291    /// Emits the signal.
71292    #[inline(always)]
71293    #[cfg_attr(
71294        feature = "ritual_rustdoc_nightly",
71295        doc(cfg(any(
71296            cpp_lib_version = "5.14.0",
71297            cpp_lib_version = "5.11.3",
71298            cpp_lib_version = "5.12.2",
71299            cpp_lib_version = "5.13.0"
71300        )))
71301    )]
71302    #[cfg(any(
71303        any(
71304            cpp_lib_version = "5.14.0",
71305            cpp_lib_version = "5.11.3",
71306            cpp_lib_version = "5.12.2",
71307            cpp_lib_version = "5.13.0"
71308        ),
71309        feature = "ritual_rustdoc"
71310    ))]
71311    pub unsafe fn emit(&self, arg0: crate::q_abstract_ray_caster::RunMode) {
71312        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_emit_(self as *const crate::SignalOfRunMode as *mut crate::SignalOfRunMode, arg0)
71313    }
71314
71315    #[inline(always)]
71316    #[cfg_attr(
71317        feature = "ritual_rustdoc_nightly",
71318        doc(cfg(any(
71319            cpp_lib_version = "5.14.0",
71320            cpp_lib_version = "5.11.3",
71321            cpp_lib_version = "5.12.2",
71322            cpp_lib_version = "5.13.0"
71323        )))
71324    )]
71325    #[cfg(any(
71326        any(
71327            cpp_lib_version = "5.14.0",
71328            cpp_lib_version = "5.11.3",
71329            cpp_lib_version = "5.12.2",
71330            cpp_lib_version = "5.13.0"
71331        ),
71332        feature = "ritual_rustdoc"
71333    ))]
71334    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
71335        let ffi_result = {
71336            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_metaObject(self as *const crate::SignalOfRunMode)
71337        };
71338        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
71339    }
71340
71341    /// Creates a new object.
71342    #[inline(always)]
71343    #[cfg_attr(
71344        feature = "ritual_rustdoc_nightly",
71345        doc(cfg(any(
71346            cpp_lib_version = "5.14.0",
71347            cpp_lib_version = "5.11.3",
71348            cpp_lib_version = "5.12.2",
71349            cpp_lib_version = "5.13.0"
71350        )))
71351    )]
71352    #[cfg(any(
71353        any(
71354            cpp_lib_version = "5.14.0",
71355            cpp_lib_version = "5.11.3",
71356            cpp_lib_version = "5.12.2",
71357            cpp_lib_version = "5.13.0"
71358        ),
71359        feature = "ritual_rustdoc"
71360    ))]
71361    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfRunMode> {
71362        let ffi_result = {
71363            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode()
71364        };
71365        ::qt_core::QBox::from_raw(ffi_result)
71366    }
71367
71368    #[inline(always)]
71369    #[cfg_attr(
71370        feature = "ritual_rustdoc_nightly",
71371        doc(cfg(any(
71372            cpp_lib_version = "5.14.0",
71373            cpp_lib_version = "5.11.3",
71374            cpp_lib_version = "5.12.2",
71375            cpp_lib_version = "5.13.0"
71376        )))
71377    )]
71378    #[cfg(any(
71379        any(
71380            cpp_lib_version = "5.14.0",
71381            cpp_lib_version = "5.11.3",
71382            cpp_lib_version = "5.12.2",
71383            cpp_lib_version = "5.13.0"
71384        ),
71385        feature = "ritual_rustdoc"
71386    ))]
71387    pub unsafe fn qt_metacall(
71388        &self,
71389        arg1: ::qt_core::q_meta_object::Call,
71390        arg2: ::std::os::raw::c_int,
71391        arg3: *mut *mut ::std::ffi::c_void,
71392    ) -> ::std::os::raw::c_int {
71393        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_qt_metacall(self as *const crate::SignalOfRunMode as *mut crate::SignalOfRunMode, arg1, arg2, arg3)
71394    }
71395
71396    #[inline(always)]
71397    #[cfg_attr(
71398        feature = "ritual_rustdoc_nightly",
71399        doc(cfg(any(
71400            cpp_lib_version = "5.14.0",
71401            cpp_lib_version = "5.11.3",
71402            cpp_lib_version = "5.12.2",
71403            cpp_lib_version = "5.13.0"
71404        )))
71405    )]
71406    #[cfg(any(
71407        any(
71408            cpp_lib_version = "5.14.0",
71409            cpp_lib_version = "5.11.3",
71410            cpp_lib_version = "5.12.2",
71411            cpp_lib_version = "5.13.0"
71412        ),
71413        feature = "ritual_rustdoc"
71414    ))]
71415    pub unsafe fn qt_metacast(
71416        &self,
71417        arg1: *const ::std::os::raw::c_char,
71418    ) -> *mut ::std::ffi::c_void {
71419        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_qt_metacast(self as *const crate::SignalOfRunMode as *mut crate::SignalOfRunMode, arg1)
71420    }
71421
71422    #[inline(always)]
71423    #[cfg_attr(
71424        feature = "ritual_rustdoc_nightly",
71425        doc(cfg(any(
71426            cpp_lib_version = "5.14.0",
71427            cpp_lib_version = "5.11.3",
71428            cpp_lib_version = "5.12.2",
71429            cpp_lib_version = "5.13.0"
71430        )))
71431    )]
71432    #[cfg(any(
71433        any(
71434            cpp_lib_version = "5.14.0",
71435            cpp_lib_version = "5.11.3",
71436            cpp_lib_version = "5.12.2",
71437            cpp_lib_version = "5.13.0"
71438        ),
71439        feature = "ritual_rustdoc"
71440    ))]
71441    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
71442        let ffi_result = {
71443            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_staticMetaObject()
71444        };
71445        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
71446            .expect("attempted to construct a null Ref")
71447    }
71448
71449    #[inline(always)]
71450    #[cfg_attr(
71451        feature = "ritual_rustdoc_nightly",
71452        doc(cfg(any(
71453            cpp_lib_version = "5.14.0",
71454            cpp_lib_version = "5.11.3",
71455            cpp_lib_version = "5.12.2",
71456            cpp_lib_version = "5.13.0"
71457        )))
71458    )]
71459    #[cfg(any(
71460        any(
71461            cpp_lib_version = "5.14.0",
71462            cpp_lib_version = "5.11.3",
71463            cpp_lib_version = "5.12.2",
71464            cpp_lib_version = "5.13.0"
71465        ),
71466        feature = "ritual_rustdoc"
71467    ))]
71468    pub unsafe fn tr(
71469        s: *const ::std::os::raw::c_char,
71470        c: *const ::std::os::raw::c_char,
71471        n: ::std::os::raw::c_int,
71472    ) -> ::cpp_core::CppBox<::qt_core::QString> {
71473        let ffi_result = {
71474            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_tr(s, c, n)
71475        };
71476        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
71477    }
71478
71479    #[inline(always)]
71480    #[cfg_attr(
71481        feature = "ritual_rustdoc_nightly",
71482        doc(cfg(any(
71483            cpp_lib_version = "5.14.0",
71484            cpp_lib_version = "5.11.3",
71485            cpp_lib_version = "5.12.2",
71486            cpp_lib_version = "5.13.0"
71487        )))
71488    )]
71489    #[cfg(any(
71490        any(
71491            cpp_lib_version = "5.14.0",
71492            cpp_lib_version = "5.11.3",
71493            cpp_lib_version = "5.12.2",
71494            cpp_lib_version = "5.13.0"
71495        ),
71496        feature = "ritual_rustdoc"
71497    ))]
71498    pub unsafe fn tr_utf8(
71499        s: *const ::std::os::raw::c_char,
71500        c: *const ::std::os::raw::c_char,
71501        n: ::std::os::raw::c_int,
71502    ) -> ::cpp_core::CppBox<::qt_core::QString> {
71503        let ffi_result = {
71504            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_trUtf8(s, c, n)
71505        };
71506        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
71507    }
71508}
71509
71510#[cfg_attr(
71511    feature = "ritual_rustdoc_nightly",
71512    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71513)]
71514#[cfg(any(
71515    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71516    feature = "ritual_rustdoc"
71517))]
71518
71519impl ::qt_core::AsReceiver for crate::SignalOfHandleType {
71520    type Arguments = (crate::q_set_fence::HandleType,);
71521    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
71522        unsafe {
71523            ::qt_core::Receiver::new(
71524                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71525                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
71526                    b"2emit_(Qt3DRender::QSetFence::HandleType)\0",
71527                ),
71528            )
71529        }
71530    }
71531}
71532
71533impl crate::SignalOfHandleType {
71534    /// Connects this signal to another signal or slot.
71535    ///
71536    /// This is a shortcut for `self.signal().connect(receiver)`.
71537    #[cfg_attr(
71538        feature = "ritual_rustdoc_nightly",
71539        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71540    )]
71541    #[cfg(any(
71542        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71543        feature = "ritual_rustdoc"
71544    ))]
71545
71546    pub unsafe fn connect_with_type<R>(
71547        &self,
71548        connection_type: ::qt_core::ConnectionType,
71549        receiver: R,
71550    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71551    where
71552        R: ::qt_core::AsReceiver,
71553        (crate::q_set_fence::HandleType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71554    {
71555        self.signal().connect_with_type(connection_type, receiver)
71556    }
71557
71558    /// Connects this signal to another signal or slot, using auto connection type.
71559    ///
71560    /// This is a shortcut for `self.signal().connect(receiver)`.
71561    #[cfg_attr(
71562        feature = "ritual_rustdoc_nightly",
71563        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71564    )]
71565    #[cfg(any(
71566        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71567        feature = "ritual_rustdoc"
71568    ))]
71569
71570    pub unsafe fn connect<R>(
71571        &self,
71572        receiver: R,
71573    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71574    where
71575        R: ::qt_core::AsReceiver,
71576        (crate::q_set_fence::HandleType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71577    {
71578        self.signal().connect(receiver)
71579    }
71580}
71581
71582/// Emits a Qt signal with arguments `crate::q_set_fence::HandleType`.
71583///
71584/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QSetFence::HandleType```</span>).
71585///
71586/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
71587#[repr(C)]
71588pub struct SignalOfHandleType {
71589    _unused: u8,
71590}
71591impl SignalOfHandleType {
71592    /// Returns a `Signal` object representing the signal.
71593    ///
71594    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
71595    #[inline(always)]
71596    #[cfg_attr(
71597        feature = "ritual_rustdoc_nightly",
71598        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71599    )]
71600    #[cfg(any(
71601        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71602        feature = "ritual_rustdoc"
71603    ))]
71604    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_set_fence::HandleType,)> {
71605        unsafe {
71606            ::qt_core::Signal::new(
71607                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71608                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
71609                    b"2emit_(Qt3DRender::QSetFence::HandleType)\0",
71610                ),
71611            )
71612        }
71613    }
71614
71615    /// Emits the signal.
71616    #[inline(always)]
71617    #[cfg_attr(
71618        feature = "ritual_rustdoc_nightly",
71619        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71620    )]
71621    #[cfg(any(
71622        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71623        feature = "ritual_rustdoc"
71624    ))]
71625    pub unsafe fn emit(&self, arg0: crate::q_set_fence::HandleType) {
71626        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_emit_(self as *const crate::SignalOfHandleType as *mut crate::SignalOfHandleType, arg0)
71627    }
71628
71629    #[inline(always)]
71630    #[cfg_attr(
71631        feature = "ritual_rustdoc_nightly",
71632        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71633    )]
71634    #[cfg(any(
71635        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71636        feature = "ritual_rustdoc"
71637    ))]
71638    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
71639        let ffi_result = {
71640            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_metaObject(self as *const crate::SignalOfHandleType)
71641        };
71642        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
71643    }
71644
71645    /// Creates a new object.
71646    #[inline(always)]
71647    #[cfg_attr(
71648        feature = "ritual_rustdoc_nightly",
71649        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71650    )]
71651    #[cfg(any(
71652        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71653        feature = "ritual_rustdoc"
71654    ))]
71655    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfHandleType> {
71656        let ffi_result = {
71657            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType()
71658        };
71659        ::qt_core::QBox::from_raw(ffi_result)
71660    }
71661
71662    #[inline(always)]
71663    #[cfg_attr(
71664        feature = "ritual_rustdoc_nightly",
71665        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71666    )]
71667    #[cfg(any(
71668        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71669        feature = "ritual_rustdoc"
71670    ))]
71671    pub unsafe fn qt_metacall(
71672        &self,
71673        arg1: ::qt_core::q_meta_object::Call,
71674        arg2: ::std::os::raw::c_int,
71675        arg3: *mut *mut ::std::ffi::c_void,
71676    ) -> ::std::os::raw::c_int {
71677        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_qt_metacall(self as *const crate::SignalOfHandleType as *mut crate::SignalOfHandleType, arg1, arg2, arg3)
71678    }
71679
71680    #[inline(always)]
71681    #[cfg_attr(
71682        feature = "ritual_rustdoc_nightly",
71683        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71684    )]
71685    #[cfg(any(
71686        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71687        feature = "ritual_rustdoc"
71688    ))]
71689    pub unsafe fn qt_metacast(
71690        &self,
71691        arg1: *const ::std::os::raw::c_char,
71692    ) -> *mut ::std::ffi::c_void {
71693        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_qt_metacast(self as *const crate::SignalOfHandleType as *mut crate::SignalOfHandleType, arg1)
71694    }
71695
71696    #[inline(always)]
71697    #[cfg_attr(
71698        feature = "ritual_rustdoc_nightly",
71699        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71700    )]
71701    #[cfg(any(
71702        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71703        feature = "ritual_rustdoc"
71704    ))]
71705    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
71706        let ffi_result = {
71707            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_staticMetaObject()
71708        };
71709        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
71710            .expect("attempted to construct a null Ref")
71711    }
71712
71713    #[inline(always)]
71714    #[cfg_attr(
71715        feature = "ritual_rustdoc_nightly",
71716        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71717    )]
71718    #[cfg(any(
71719        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71720        feature = "ritual_rustdoc"
71721    ))]
71722    pub unsafe fn tr(
71723        s: *const ::std::os::raw::c_char,
71724        c: *const ::std::os::raw::c_char,
71725        n: ::std::os::raw::c_int,
71726    ) -> ::cpp_core::CppBox<::qt_core::QString> {
71727        let ffi_result = {
71728            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_tr(s, c, n)
71729        };
71730        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
71731    }
71732
71733    #[inline(always)]
71734    #[cfg_attr(
71735        feature = "ritual_rustdoc_nightly",
71736        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
71737    )]
71738    #[cfg(any(
71739        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
71740        feature = "ritual_rustdoc"
71741    ))]
71742    pub unsafe fn tr_utf8(
71743        s: *const ::std::os::raw::c_char,
71744        c: *const ::std::os::raw::c_char,
71745        n: ::std::os::raw::c_int,
71746    ) -> ::cpp_core::CppBox<::qt_core::QString> {
71747        let ffi_result = {
71748            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_trUtf8(s, c, n)
71749        };
71750        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
71751    }
71752}
71753
71754impl ::qt_core::AsReceiver for crate::SignalOfU64 {
71755    type Arguments = (u64,);
71756    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
71757        unsafe {
71758            ::qt_core::Receiver::new(
71759                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71760                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(quint64)\0"),
71761            )
71762        }
71763    }
71764}
71765
71766impl crate::SignalOfU64 {
71767    /// Connects this signal to another signal or slot.
71768    ///
71769    /// This is a shortcut for `self.signal().connect(receiver)`.
71770
71771    pub unsafe fn connect_with_type<R>(
71772        &self,
71773        connection_type: ::qt_core::ConnectionType,
71774        receiver: R,
71775    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71776    where
71777        R: ::qt_core::AsReceiver,
71778        (u64,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71779    {
71780        self.signal().connect_with_type(connection_type, receiver)
71781    }
71782
71783    /// Connects this signal to another signal or slot, using auto connection type.
71784    ///
71785    /// This is a shortcut for `self.signal().connect(receiver)`.
71786
71787    pub unsafe fn connect<R>(
71788        &self,
71789        receiver: R,
71790    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71791    where
71792        R: ::qt_core::AsReceiver,
71793        (u64,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71794    {
71795        self.signal().connect(receiver)
71796    }
71797}
71798
71799/// Emits a Qt signal with arguments `u64`.
71800///
71801/// Corresponding C++ argument types: (<span style='color: green;'>```quint64```</span>).
71802///
71803/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
71804#[repr(C)]
71805pub struct SignalOfU64 {
71806    _unused: u8,
71807}
71808impl SignalOfU64 {
71809    /// Returns a `Signal` object representing the signal.
71810    ///
71811    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
71812    #[inline(always)]
71813    pub fn signal(&self) -> ::qt_core::Signal<(u64,)> {
71814        unsafe {
71815            ::qt_core::Signal::new(
71816                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71817                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(quint64)\0"),
71818            )
71819        }
71820    }
71821
71822    /// Emits the signal.
71823    #[inline(always)]
71824    pub unsafe fn emit(&self, arg0: u64) {
71825        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_quint64_emit_(
71826            self as *const crate::SignalOfU64 as *mut crate::SignalOfU64,
71827            arg0,
71828        )
71829    }
71830
71831    #[inline(always)]
71832    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
71833        let ffi_result = {
71834            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_quint64_metaObject(self as *const crate::SignalOfU64)
71835        };
71836        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
71837    }
71838
71839    /// Creates a new object.
71840    #[inline(always)]
71841    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfU64> {
71842        let ffi_result = {
71843            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_quint64_ctr_qt_3d_render_ffi_signal_wrapper_quint64()
71844        };
71845        ::qt_core::QBox::from_raw(ffi_result)
71846    }
71847
71848    #[inline(always)]
71849    pub unsafe fn qt_metacall(
71850        &self,
71851        arg1: ::qt_core::q_meta_object::Call,
71852        arg2: ::std::os::raw::c_int,
71853        arg3: *mut *mut ::std::ffi::c_void,
71854    ) -> ::std::os::raw::c_int {
71855        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_quint64_qt_metacall(
71856            self as *const crate::SignalOfU64 as *mut crate::SignalOfU64,
71857            arg1,
71858            arg2,
71859            arg3,
71860        )
71861    }
71862
71863    #[inline(always)]
71864    pub unsafe fn qt_metacast(
71865        &self,
71866        arg1: *const ::std::os::raw::c_char,
71867    ) -> *mut ::std::ffi::c_void {
71868        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_quint64_qt_metacast(
71869            self as *const crate::SignalOfU64 as *mut crate::SignalOfU64,
71870            arg1,
71871        )
71872    }
71873
71874    #[inline(always)]
71875    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
71876        let ffi_result = {
71877            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_quint64_staticMetaObject()
71878        };
71879        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
71880            .expect("attempted to construct a null Ref")
71881    }
71882
71883    #[inline(always)]
71884    pub unsafe fn tr(
71885        s: *const ::std::os::raw::c_char,
71886        c: *const ::std::os::raw::c_char,
71887        n: ::std::os::raw::c_int,
71888    ) -> ::cpp_core::CppBox<::qt_core::QString> {
71889        let ffi_result = {
71890            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_quint64_tr(
71891                s, c, n,
71892            )
71893        };
71894        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
71895    }
71896
71897    #[inline(always)]
71898    pub unsafe fn tr_utf8(
71899        s: *const ::std::os::raw::c_char,
71900        c: *const ::std::os::raw::c_char,
71901        n: ::std::os::raw::c_int,
71902    ) -> ::cpp_core::CppBox<::qt_core::QString> {
71903        let ffi_result = {
71904            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_quint64_trUtf8(
71905                s, c, n,
71906            )
71907        };
71908        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
71909    }
71910}
71911
71912impl ::qt_core::AsReceiver for crate::SignalOfQRenderTarget {
71913    type Arguments = (*mut crate::QRenderTarget,);
71914    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
71915        unsafe {
71916            ::qt_core::Receiver::new(
71917                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71918                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
71919                    b"2emit_(Qt3DRender::QRenderTarget *)\0",
71920                ),
71921            )
71922        }
71923    }
71924}
71925
71926impl crate::SignalOfQRenderTarget {
71927    /// Connects this signal to another signal or slot.
71928    ///
71929    /// This is a shortcut for `self.signal().connect(receiver)`.
71930
71931    pub unsafe fn connect_with_type<R>(
71932        &self,
71933        connection_type: ::qt_core::ConnectionType,
71934        receiver: R,
71935    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71936    where
71937        R: ::qt_core::AsReceiver,
71938        (*mut crate::QRenderTarget,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71939    {
71940        self.signal().connect_with_type(connection_type, receiver)
71941    }
71942
71943    /// Connects this signal to another signal or slot, using auto connection type.
71944    ///
71945    /// This is a shortcut for `self.signal().connect(receiver)`.
71946
71947    pub unsafe fn connect<R>(
71948        &self,
71949        receiver: R,
71950    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
71951    where
71952        R: ::qt_core::AsReceiver,
71953        (*mut crate::QRenderTarget,): ::qt_core::ArgumentsCompatible<R::Arguments>,
71954    {
71955        self.signal().connect(receiver)
71956    }
71957}
71958
71959/// Emits a Qt signal with arguments `*mut crate::QRenderTarget`.
71960///
71961/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRenderTarget*```</span>).
71962///
71963/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
71964#[repr(C)]
71965pub struct SignalOfQRenderTarget {
71966    _unused: u8,
71967}
71968impl SignalOfQRenderTarget {
71969    /// Returns a `Signal` object representing the signal.
71970    ///
71971    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
71972    #[inline(always)]
71973    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QRenderTarget,)> {
71974        unsafe {
71975            ::qt_core::Signal::new(
71976                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
71977                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
71978                    b"2emit_(Qt3DRender::QRenderTarget *)\0",
71979                ),
71980            )
71981        }
71982    }
71983
71984    /// Emits the signal.
71985    #[inline(always)]
71986    pub unsafe fn emit(
71987        &self,
71988        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTarget>>,
71989    ) {
71990        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_emit_(self as *const crate::SignalOfQRenderTarget as *mut crate::SignalOfQRenderTarget, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTarget>>::cast_into(arg0).as_raw_ptr() as *mut crate::QRenderTarget)
71991    }
71992
71993    #[inline(always)]
71994    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
71995        let ffi_result = {
71996            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_metaObject(self as *const crate::SignalOfQRenderTarget)
71997        };
71998        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
71999    }
72000
72001    /// Creates a new object.
72002    #[inline(always)]
72003    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQRenderTarget> {
72004        let ffi_result = {
72005            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr()
72006        };
72007        ::qt_core::QBox::from_raw(ffi_result)
72008    }
72009
72010    #[inline(always)]
72011    pub unsafe fn qt_metacall(
72012        &self,
72013        arg1: ::qt_core::q_meta_object::Call,
72014        arg2: ::std::os::raw::c_int,
72015        arg3: *mut *mut ::std::ffi::c_void,
72016    ) -> ::std::os::raw::c_int {
72017        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_qt_metacall(self as *const crate::SignalOfQRenderTarget as *mut crate::SignalOfQRenderTarget, arg1, arg2, arg3)
72018    }
72019
72020    #[inline(always)]
72021    pub unsafe fn qt_metacast(
72022        &self,
72023        arg1: *const ::std::os::raw::c_char,
72024    ) -> *mut ::std::ffi::c_void {
72025        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_qt_metacast(self as *const crate::SignalOfQRenderTarget as *mut crate::SignalOfQRenderTarget, arg1)
72026    }
72027
72028    #[inline(always)]
72029    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
72030        let ffi_result = {
72031            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_staticMetaObject()
72032        };
72033        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72034            .expect("attempted to construct a null Ref")
72035    }
72036
72037    #[inline(always)]
72038    pub unsafe fn tr(
72039        s: *const ::std::os::raw::c_char,
72040        c: *const ::std::os::raw::c_char,
72041        n: ::std::os::raw::c_int,
72042    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72043        let ffi_result = {
72044            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_tr(s, c, n)
72045        };
72046        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72047    }
72048
72049    #[inline(always)]
72050    pub unsafe fn tr_utf8(
72051        s: *const ::std::os::raw::c_char,
72052        c: *const ::std::os::raw::c_char,
72053        n: ::std::os::raw::c_int,
72054    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72055        let ffi_result = {
72056            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_trUtf8(s, c, n)
72057        };
72058        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72059    }
72060}
72061
72062impl ::qt_core::AsReceiver for crate::SignalOfStatus {
72063    type Arguments = (crate::q_shader_program::Status,);
72064    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
72065        unsafe {
72066            ::qt_core::Receiver::new(
72067                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72068                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72069                    b"2emit_(Qt3DRender::QShaderProgram::Status)\0",
72070                ),
72071            )
72072        }
72073    }
72074}
72075
72076impl crate::SignalOfStatus {
72077    /// Connects this signal to another signal or slot.
72078    ///
72079    /// This is a shortcut for `self.signal().connect(receiver)`.
72080
72081    pub unsafe fn connect_with_type<R>(
72082        &self,
72083        connection_type: ::qt_core::ConnectionType,
72084        receiver: R,
72085    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72086    where
72087        R: ::qt_core::AsReceiver,
72088        (crate::q_shader_program::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72089    {
72090        self.signal().connect_with_type(connection_type, receiver)
72091    }
72092
72093    /// Connects this signal to another signal or slot, using auto connection type.
72094    ///
72095    /// This is a shortcut for `self.signal().connect(receiver)`.
72096
72097    pub unsafe fn connect<R>(
72098        &self,
72099        receiver: R,
72100    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72101    where
72102        R: ::qt_core::AsReceiver,
72103        (crate::q_shader_program::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72104    {
72105        self.signal().connect(receiver)
72106    }
72107}
72108
72109/// Emits a Qt signal with arguments `crate::q_shader_program::Status`.
72110///
72111/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QShaderProgram::Status```</span>).
72112///
72113/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
72114#[repr(C)]
72115pub struct SignalOfStatus {
72116    _unused: u8,
72117}
72118impl SignalOfStatus {
72119    /// Returns a `Signal` object representing the signal.
72120    ///
72121    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
72122    #[inline(always)]
72123    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_shader_program::Status,)> {
72124        unsafe {
72125            ::qt_core::Signal::new(
72126                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72127                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72128                    b"2emit_(Qt3DRender::QShaderProgram::Status)\0",
72129                ),
72130            )
72131        }
72132    }
72133
72134    /// Emits the signal.
72135    #[inline(always)]
72136    pub unsafe fn emit(&self, arg0: crate::q_shader_program::Status) {
72137        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_emit_(self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus, arg0)
72138    }
72139
72140    #[inline(always)]
72141    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
72142        let ffi_result = {
72143            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_metaObject(self as *const crate::SignalOfStatus)
72144        };
72145        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72146    }
72147
72148    /// Creates a new object.
72149    #[inline(always)]
72150    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfStatus> {
72151        let ffi_result = {
72152            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status()
72153        };
72154        ::qt_core::QBox::from_raw(ffi_result)
72155    }
72156
72157    #[inline(always)]
72158    pub unsafe fn qt_metacall(
72159        &self,
72160        arg1: ::qt_core::q_meta_object::Call,
72161        arg2: ::std::os::raw::c_int,
72162        arg3: *mut *mut ::std::ffi::c_void,
72163    ) -> ::std::os::raw::c_int {
72164        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_qt_metacall(self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus, arg1, arg2, arg3)
72165    }
72166
72167    #[inline(always)]
72168    pub unsafe fn qt_metacast(
72169        &self,
72170        arg1: *const ::std::os::raw::c_char,
72171    ) -> *mut ::std::ffi::c_void {
72172        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_qt_metacast(self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus, arg1)
72173    }
72174
72175    #[inline(always)]
72176    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
72177        let ffi_result = {
72178            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_staticMetaObject()
72179        };
72180        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72181            .expect("attempted to construct a null Ref")
72182    }
72183
72184    #[inline(always)]
72185    pub unsafe fn tr(
72186        s: *const ::std::os::raw::c_char,
72187        c: *const ::std::os::raw::c_char,
72188        n: ::std::os::raw::c_int,
72189    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72190        let ffi_result = {
72191            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_tr(s, c, n)
72192        };
72193        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72194    }
72195
72196    #[inline(always)]
72197    pub unsafe fn tr_utf8(
72198        s: *const ::std::os::raw::c_char,
72199        c: *const ::std::os::raw::c_char,
72200        n: ::std::os::raw::c_int,
72201    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72202        let ffi_result = {
72203            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_trUtf8(s, c, n)
72204        };
72205        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72206    }
72207}
72208
72209impl ::qt_core::AsReceiver for crate::SignalOfBufferType {
72210    type Arguments = (crate::q_buffer::BufferType,);
72211    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
72212        unsafe {
72213            ::qt_core::Receiver::new(
72214                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72215                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72216                    b"2emit_(Qt3DRender::QBuffer::BufferType)\0",
72217                ),
72218            )
72219        }
72220    }
72221}
72222
72223impl crate::SignalOfBufferType {
72224    /// Connects this signal to another signal or slot.
72225    ///
72226    /// This is a shortcut for `self.signal().connect(receiver)`.
72227
72228    pub unsafe fn connect_with_type<R>(
72229        &self,
72230        connection_type: ::qt_core::ConnectionType,
72231        receiver: R,
72232    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72233    where
72234        R: ::qt_core::AsReceiver,
72235        (crate::q_buffer::BufferType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72236    {
72237        self.signal().connect_with_type(connection_type, receiver)
72238    }
72239
72240    /// Connects this signal to another signal or slot, using auto connection type.
72241    ///
72242    /// This is a shortcut for `self.signal().connect(receiver)`.
72243
72244    pub unsafe fn connect<R>(
72245        &self,
72246        receiver: R,
72247    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72248    where
72249        R: ::qt_core::AsReceiver,
72250        (crate::q_buffer::BufferType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72251    {
72252        self.signal().connect(receiver)
72253    }
72254}
72255
72256/// Emits a Qt signal with arguments `crate::q_buffer::BufferType`.
72257///
72258/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBuffer::BufferType```</span>).
72259///
72260/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
72261#[repr(C)]
72262pub struct SignalOfBufferType {
72263    _unused: u8,
72264}
72265impl SignalOfBufferType {
72266    /// Returns a `Signal` object representing the signal.
72267    ///
72268    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
72269    #[inline(always)]
72270    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_buffer::BufferType,)> {
72271        unsafe {
72272            ::qt_core::Signal::new(
72273                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72274                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72275                    b"2emit_(Qt3DRender::QBuffer::BufferType)\0",
72276                ),
72277            )
72278        }
72279    }
72280
72281    /// Emits the signal.
72282    #[inline(always)]
72283    pub unsafe fn emit(&self, arg0: crate::q_buffer::BufferType) {
72284        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_emit_(self as *const crate::SignalOfBufferType as *mut crate::SignalOfBufferType, arg0)
72285    }
72286
72287    #[inline(always)]
72288    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
72289        let ffi_result = {
72290            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_metaObject(self as *const crate::SignalOfBufferType)
72291        };
72292        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72293    }
72294
72295    /// Creates a new object.
72296    #[inline(always)]
72297    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfBufferType> {
72298        let ffi_result = {
72299            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType()
72300        };
72301        ::qt_core::QBox::from_raw(ffi_result)
72302    }
72303
72304    #[inline(always)]
72305    pub unsafe fn qt_metacall(
72306        &self,
72307        arg1: ::qt_core::q_meta_object::Call,
72308        arg2: ::std::os::raw::c_int,
72309        arg3: *mut *mut ::std::ffi::c_void,
72310    ) -> ::std::os::raw::c_int {
72311        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_qt_metacall(self as *const crate::SignalOfBufferType as *mut crate::SignalOfBufferType, arg1, arg2, arg3)
72312    }
72313
72314    #[inline(always)]
72315    pub unsafe fn qt_metacast(
72316        &self,
72317        arg1: *const ::std::os::raw::c_char,
72318    ) -> *mut ::std::ffi::c_void {
72319        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_qt_metacast(self as *const crate::SignalOfBufferType as *mut crate::SignalOfBufferType, arg1)
72320    }
72321
72322    #[inline(always)]
72323    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
72324        let ffi_result = {
72325            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_staticMetaObject()
72326        };
72327        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72328            .expect("attempted to construct a null Ref")
72329    }
72330
72331    #[inline(always)]
72332    pub unsafe fn tr(
72333        s: *const ::std::os::raw::c_char,
72334        c: *const ::std::os::raw::c_char,
72335        n: ::std::os::raw::c_int,
72336    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72337        let ffi_result = {
72338            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_tr(s, c, n)
72339        };
72340        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72341    }
72342
72343    #[inline(always)]
72344    pub unsafe fn tr_utf8(
72345        s: *const ::std::os::raw::c_char,
72346        c: *const ::std::os::raw::c_char,
72347        n: ::std::os::raw::c_int,
72348    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72349        let ffi_result = {
72350            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_trUtf8(s, c, n)
72351        };
72352        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72353    }
72354}
72355
72356impl ::qt_core::AsReceiver for crate::SignalOfAttributeType {
72357    type Arguments = (crate::q_attribute::AttributeType,);
72358    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
72359        unsafe {
72360            ::qt_core::Receiver::new(
72361                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72362                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72363                    b"2emit_(Qt3DRender::QAttribute::AttributeType)\0",
72364                ),
72365            )
72366        }
72367    }
72368}
72369
72370impl crate::SignalOfAttributeType {
72371    /// Connects this signal to another signal or slot.
72372    ///
72373    /// This is a shortcut for `self.signal().connect(receiver)`.
72374
72375    pub unsafe fn connect_with_type<R>(
72376        &self,
72377        connection_type: ::qt_core::ConnectionType,
72378        receiver: R,
72379    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72380    where
72381        R: ::qt_core::AsReceiver,
72382        (crate::q_attribute::AttributeType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72383    {
72384        self.signal().connect_with_type(connection_type, receiver)
72385    }
72386
72387    /// Connects this signal to another signal or slot, using auto connection type.
72388    ///
72389    /// This is a shortcut for `self.signal().connect(receiver)`.
72390
72391    pub unsafe fn connect<R>(
72392        &self,
72393        receiver: R,
72394    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72395    where
72396        R: ::qt_core::AsReceiver,
72397        (crate::q_attribute::AttributeType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72398    {
72399        self.signal().connect(receiver)
72400    }
72401}
72402
72403/// Emits a Qt signal with arguments `crate::q_attribute::AttributeType`.
72404///
72405/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAttribute::AttributeType```</span>).
72406///
72407/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
72408#[repr(C)]
72409pub struct SignalOfAttributeType {
72410    _unused: u8,
72411}
72412impl SignalOfAttributeType {
72413    /// Returns a `Signal` object representing the signal.
72414    ///
72415    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
72416    #[inline(always)]
72417    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_attribute::AttributeType,)> {
72418        unsafe {
72419            ::qt_core::Signal::new(
72420                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72421                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72422                    b"2emit_(Qt3DRender::QAttribute::AttributeType)\0",
72423                ),
72424            )
72425        }
72426    }
72427
72428    /// Emits the signal.
72429    #[inline(always)]
72430    pub unsafe fn emit(&self, arg0: crate::q_attribute::AttributeType) {
72431        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_emit_(self as *const crate::SignalOfAttributeType as *mut crate::SignalOfAttributeType, arg0)
72432    }
72433
72434    #[inline(always)]
72435    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
72436        let ffi_result = {
72437            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_metaObject(self as *const crate::SignalOfAttributeType)
72438        };
72439        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72440    }
72441
72442    /// Creates a new object.
72443    #[inline(always)]
72444    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfAttributeType> {
72445        let ffi_result = {
72446            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType()
72447        };
72448        ::qt_core::QBox::from_raw(ffi_result)
72449    }
72450
72451    #[inline(always)]
72452    pub unsafe fn qt_metacall(
72453        &self,
72454        arg1: ::qt_core::q_meta_object::Call,
72455        arg2: ::std::os::raw::c_int,
72456        arg3: *mut *mut ::std::ffi::c_void,
72457    ) -> ::std::os::raw::c_int {
72458        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_qt_metacall(self as *const crate::SignalOfAttributeType as *mut crate::SignalOfAttributeType, arg1, arg2, arg3)
72459    }
72460
72461    #[inline(always)]
72462    pub unsafe fn qt_metacast(
72463        &self,
72464        arg1: *const ::std::os::raw::c_char,
72465    ) -> *mut ::std::ffi::c_void {
72466        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_qt_metacast(self as *const crate::SignalOfAttributeType as *mut crate::SignalOfAttributeType, arg1)
72467    }
72468
72469    #[inline(always)]
72470    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
72471        let ffi_result = {
72472            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_staticMetaObject()
72473        };
72474        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72475            .expect("attempted to construct a null Ref")
72476    }
72477
72478    #[inline(always)]
72479    pub unsafe fn tr(
72480        s: *const ::std::os::raw::c_char,
72481        c: *const ::std::os::raw::c_char,
72482        n: ::std::os::raw::c_int,
72483    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72484        let ffi_result = {
72485            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_tr(s, c, n)
72486        };
72487        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72488    }
72489
72490    #[inline(always)]
72491    pub unsafe fn tr_utf8(
72492        s: *const ::std::os::raw::c_char,
72493        c: *const ::std::os::raw::c_char,
72494        n: ::std::os::raw::c_int,
72495    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72496        let ffi_result = {
72497            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_trUtf8(s, c, n)
72498        };
72499        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72500    }
72501}
72502
72503impl ::qt_core::AsReceiver for crate::SignalOfQVectorOfInt {
72504    type Arguments = (*const ::qt_core::QVectorOfInt,);
72505    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
72506        unsafe {
72507            ::qt_core::Receiver::new(
72508                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72509                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72510                    b"2emit_(QVector< int > const &)\0",
72511                ),
72512            )
72513        }
72514    }
72515}
72516
72517impl crate::SignalOfQVectorOfInt {
72518    /// Connects this signal to another signal or slot.
72519    ///
72520    /// This is a shortcut for `self.signal().connect(receiver)`.
72521
72522    pub unsafe fn connect_with_type<R>(
72523        &self,
72524        connection_type: ::qt_core::ConnectionType,
72525        receiver: R,
72526    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72527    where
72528        R: ::qt_core::AsReceiver,
72529        (*const ::qt_core::QVectorOfInt,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72530    {
72531        self.signal().connect_with_type(connection_type, receiver)
72532    }
72533
72534    /// Connects this signal to another signal or slot, using auto connection type.
72535    ///
72536    /// This is a shortcut for `self.signal().connect(receiver)`.
72537
72538    pub unsafe fn connect<R>(
72539        &self,
72540        receiver: R,
72541    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72542    where
72543        R: ::qt_core::AsReceiver,
72544        (*const ::qt_core::QVectorOfInt,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72545    {
72546        self.signal().connect(receiver)
72547    }
72548}
72549
72550/// Emits a Qt signal with arguments `*const ::qt_core::QVectorOfInt`.
72551///
72552/// Corresponding C++ argument types: (<span style='color: green;'>```const QVector<int>&```</span>).
72553///
72554/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
72555#[repr(C)]
72556pub struct SignalOfQVectorOfInt {
72557    _unused: u8,
72558}
72559impl SignalOfQVectorOfInt {
72560    /// Returns a `Signal` object representing the signal.
72561    ///
72562    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
72563    #[inline(always)]
72564    pub fn signal(&self) -> ::qt_core::Signal<(*const ::qt_core::QVectorOfInt,)> {
72565        unsafe {
72566            ::qt_core::Signal::new(
72567                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72568                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72569                    b"2emit_(QVector< int > const &)\0",
72570                ),
72571            )
72572        }
72573    }
72574
72575    /// Emits the signal.
72576    #[inline(always)]
72577    pub unsafe fn emit(
72578        &self,
72579        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVectorOfInt>>,
72580    ) {
72581        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_emit_(self as *const crate::SignalOfQVectorOfInt as *mut crate::SignalOfQVectorOfInt, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVectorOfInt>>::cast_into(arg0).as_raw_ptr())
72582    }
72583
72584    #[inline(always)]
72585    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
72586        let ffi_result = {
72587            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_metaObject(self as *const crate::SignalOfQVectorOfInt)
72588        };
72589        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72590    }
72591
72592    /// Creates a new object.
72593    #[inline(always)]
72594    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQVectorOfInt> {
72595        let ffi_result = {
72596            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref()
72597        };
72598        ::qt_core::QBox::from_raw(ffi_result)
72599    }
72600
72601    #[inline(always)]
72602    pub unsafe fn qt_metacall(
72603        &self,
72604        arg1: ::qt_core::q_meta_object::Call,
72605        arg2: ::std::os::raw::c_int,
72606        arg3: *mut *mut ::std::ffi::c_void,
72607    ) -> ::std::os::raw::c_int {
72608        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_qt_metacall(self as *const crate::SignalOfQVectorOfInt as *mut crate::SignalOfQVectorOfInt, arg1, arg2, arg3)
72609    }
72610
72611    #[inline(always)]
72612    pub unsafe fn qt_metacast(
72613        &self,
72614        arg1: *const ::std::os::raw::c_char,
72615    ) -> *mut ::std::ffi::c_void {
72616        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_qt_metacast(self as *const crate::SignalOfQVectorOfInt as *mut crate::SignalOfQVectorOfInt, arg1)
72617    }
72618
72619    #[inline(always)]
72620    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
72621        let ffi_result = {
72622            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_staticMetaObject()
72623        };
72624        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72625            .expect("attempted to construct a null Ref")
72626    }
72627
72628    #[inline(always)]
72629    pub unsafe fn tr(
72630        s: *const ::std::os::raw::c_char,
72631        c: *const ::std::os::raw::c_char,
72632        n: ::std::os::raw::c_int,
72633    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72634        let ffi_result = {
72635            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_tr(s, c, n)
72636        };
72637        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72638    }
72639
72640    #[inline(always)]
72641    pub unsafe fn tr_utf8(
72642        s: *const ::std::os::raw::c_char,
72643        c: *const ::std::os::raw::c_char,
72644        n: ::std::os::raw::c_int,
72645    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72646        let ffi_result = {
72647            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_trUtf8(s, c, n)
72648        };
72649        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72650    }
72651}
72652
72653impl ::qt_core::AsReceiver for crate::SignalOfQFrameGraphNode {
72654    type Arguments = (*mut crate::QFrameGraphNode,);
72655    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
72656        unsafe {
72657            ::qt_core::Receiver::new(
72658                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72659                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72660                    b"2emit_(Qt3DRender::QFrameGraphNode *)\0",
72661                ),
72662            )
72663        }
72664    }
72665}
72666
72667impl crate::SignalOfQFrameGraphNode {
72668    /// Connects this signal to another signal or slot.
72669    ///
72670    /// This is a shortcut for `self.signal().connect(receiver)`.
72671
72672    pub unsafe fn connect_with_type<R>(
72673        &self,
72674        connection_type: ::qt_core::ConnectionType,
72675        receiver: R,
72676    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72677    where
72678        R: ::qt_core::AsReceiver,
72679        (*mut crate::QFrameGraphNode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72680    {
72681        self.signal().connect_with_type(connection_type, receiver)
72682    }
72683
72684    /// Connects this signal to another signal or slot, using auto connection type.
72685    ///
72686    /// This is a shortcut for `self.signal().connect(receiver)`.
72687
72688    pub unsafe fn connect<R>(
72689        &self,
72690        receiver: R,
72691    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72692    where
72693        R: ::qt_core::AsReceiver,
72694        (*mut crate::QFrameGraphNode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72695    {
72696        self.signal().connect(receiver)
72697    }
72698}
72699
72700/// Emits a Qt signal with arguments `*mut crate::QFrameGraphNode`.
72701///
72702/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QFrameGraphNode*```</span>).
72703///
72704/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
72705#[repr(C)]
72706pub struct SignalOfQFrameGraphNode {
72707    _unused: u8,
72708}
72709impl SignalOfQFrameGraphNode {
72710    /// Returns a `Signal` object representing the signal.
72711    ///
72712    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
72713    #[inline(always)]
72714    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QFrameGraphNode,)> {
72715        unsafe {
72716            ::qt_core::Signal::new(
72717                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72718                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72719                    b"2emit_(Qt3DRender::QFrameGraphNode *)\0",
72720                ),
72721            )
72722        }
72723    }
72724
72725    /// Emits the signal.
72726    #[inline(always)]
72727    pub unsafe fn emit(
72728        &self,
72729        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFrameGraphNode>>,
72730    ) {
72731        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_emit_(self as *const crate::SignalOfQFrameGraphNode as *mut crate::SignalOfQFrameGraphNode, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFrameGraphNode>>::cast_into(arg0).as_raw_ptr() as *mut crate::QFrameGraphNode)
72732    }
72733
72734    #[inline(always)]
72735    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
72736        let ffi_result = {
72737            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_metaObject(self as *const crate::SignalOfQFrameGraphNode)
72738        };
72739        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72740    }
72741
72742    /// Creates a new object.
72743    #[inline(always)]
72744    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQFrameGraphNode> {
72745        let ffi_result = {
72746            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr()
72747        };
72748        ::qt_core::QBox::from_raw(ffi_result)
72749    }
72750
72751    #[inline(always)]
72752    pub unsafe fn qt_metacall(
72753        &self,
72754        arg1: ::qt_core::q_meta_object::Call,
72755        arg2: ::std::os::raw::c_int,
72756        arg3: *mut *mut ::std::ffi::c_void,
72757    ) -> ::std::os::raw::c_int {
72758        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_qt_metacall(self as *const crate::SignalOfQFrameGraphNode as *mut crate::SignalOfQFrameGraphNode, arg1, arg2, arg3)
72759    }
72760
72761    #[inline(always)]
72762    pub unsafe fn qt_metacast(
72763        &self,
72764        arg1: *const ::std::os::raw::c_char,
72765    ) -> *mut ::std::ffi::c_void {
72766        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_qt_metacast(self as *const crate::SignalOfQFrameGraphNode as *mut crate::SignalOfQFrameGraphNode, arg1)
72767    }
72768
72769    #[inline(always)]
72770    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
72771        let ffi_result = {
72772            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_staticMetaObject()
72773        };
72774        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72775            .expect("attempted to construct a null Ref")
72776    }
72777
72778    #[inline(always)]
72779    pub unsafe fn tr(
72780        s: *const ::std::os::raw::c_char,
72781        c: *const ::std::os::raw::c_char,
72782        n: ::std::os::raw::c_int,
72783    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72784        let ffi_result = {
72785            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_tr(s, c, n)
72786        };
72787        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72788    }
72789
72790    #[inline(always)]
72791    pub unsafe fn tr_utf8(
72792        s: *const ::std::os::raw::c_char,
72793        c: *const ::std::os::raw::c_char,
72794        n: ::std::os::raw::c_int,
72795    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72796        let ffi_result = {
72797            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_trUtf8(s, c, n)
72798        };
72799        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72800    }
72801}
72802
72803impl ::qt_core::AsReceiver for crate::SignalOfStatus2 {
72804    type Arguments = (crate::q_texture_image::Status,);
72805    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
72806        unsafe {
72807            ::qt_core::Receiver::new(
72808                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72809                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72810                    b"2emit_(Qt3DRender::QTextureImage::Status)\0",
72811                ),
72812            )
72813        }
72814    }
72815}
72816
72817impl crate::SignalOfStatus2 {
72818    /// Connects this signal to another signal or slot.
72819    ///
72820    /// This is a shortcut for `self.signal().connect(receiver)`.
72821
72822    pub unsafe fn connect_with_type<R>(
72823        &self,
72824        connection_type: ::qt_core::ConnectionType,
72825        receiver: R,
72826    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72827    where
72828        R: ::qt_core::AsReceiver,
72829        (crate::q_texture_image::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72830    {
72831        self.signal().connect_with_type(connection_type, receiver)
72832    }
72833
72834    /// Connects this signal to another signal or slot, using auto connection type.
72835    ///
72836    /// This is a shortcut for `self.signal().connect(receiver)`.
72837
72838    pub unsafe fn connect<R>(
72839        &self,
72840        receiver: R,
72841    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
72842    where
72843        R: ::qt_core::AsReceiver,
72844        (crate::q_texture_image::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
72845    {
72846        self.signal().connect(receiver)
72847    }
72848}
72849
72850/// Emits a Qt signal with arguments `crate::q_texture_image::Status`.
72851///
72852/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QTextureImage::Status```</span>).
72853///
72854/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
72855#[repr(C)]
72856pub struct SignalOfStatus2 {
72857    _unused: u8,
72858}
72859impl SignalOfStatus2 {
72860    /// Returns a `Signal` object representing the signal.
72861    ///
72862    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
72863    #[inline(always)]
72864    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_texture_image::Status,)> {
72865        unsafe {
72866            ::qt_core::Signal::new(
72867                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72868                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72869                    b"2emit_(Qt3DRender::QTextureImage::Status)\0",
72870                ),
72871            )
72872        }
72873    }
72874
72875    /// Emits the signal.
72876    #[inline(always)]
72877    pub unsafe fn emit(&self, arg0: crate::q_texture_image::Status) {
72878        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_emit_(self as *const crate::SignalOfStatus2 as *mut crate::SignalOfStatus2, arg0)
72879    }
72880
72881    #[inline(always)]
72882    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
72883        let ffi_result = {
72884            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_metaObject(self as *const crate::SignalOfStatus2)
72885        };
72886        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72887    }
72888
72889    /// Creates a new object.
72890    #[inline(always)]
72891    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfStatus2> {
72892        let ffi_result = {
72893            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status()
72894        };
72895        ::qt_core::QBox::from_raw(ffi_result)
72896    }
72897
72898    #[inline(always)]
72899    pub unsafe fn qt_metacall(
72900        &self,
72901        arg1: ::qt_core::q_meta_object::Call,
72902        arg2: ::std::os::raw::c_int,
72903        arg3: *mut *mut ::std::ffi::c_void,
72904    ) -> ::std::os::raw::c_int {
72905        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_qt_metacall(self as *const crate::SignalOfStatus2 as *mut crate::SignalOfStatus2, arg1, arg2, arg3)
72906    }
72907
72908    #[inline(always)]
72909    pub unsafe fn qt_metacast(
72910        &self,
72911        arg1: *const ::std::os::raw::c_char,
72912    ) -> *mut ::std::ffi::c_void {
72913        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_qt_metacast(self as *const crate::SignalOfStatus2 as *mut crate::SignalOfStatus2, arg1)
72914    }
72915
72916    #[inline(always)]
72917    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
72918        let ffi_result = {
72919            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_staticMetaObject()
72920        };
72921        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
72922            .expect("attempted to construct a null Ref")
72923    }
72924
72925    #[inline(always)]
72926    pub unsafe fn tr(
72927        s: *const ::std::os::raw::c_char,
72928        c: *const ::std::os::raw::c_char,
72929        n: ::std::os::raw::c_int,
72930    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72931        let ffi_result = {
72932            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_tr(s, c, n)
72933        };
72934        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72935    }
72936
72937    #[inline(always)]
72938    pub unsafe fn tr_utf8(
72939        s: *const ::std::os::raw::c_char,
72940        c: *const ::std::os::raw::c_char,
72941        n: ::std::os::raw::c_int,
72942    ) -> ::cpp_core::CppBox<::qt_core::QString> {
72943        let ffi_result = {
72944            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_trUtf8(s, c, n)
72945        };
72946        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
72947    }
72948}
72949
72950#[cfg_attr(
72951    feature = "ritual_rustdoc_nightly",
72952    doc(cfg(any(
72953        cpp_lib_version = "5.14.0",
72954        cpp_lib_version = "5.11.3",
72955        cpp_lib_version = "5.12.2",
72956        cpp_lib_version = "5.13.0"
72957    )))
72958)]
72959#[cfg(any(
72960    any(
72961        cpp_lib_version = "5.14.0",
72962        cpp_lib_version = "5.11.3",
72963        cpp_lib_version = "5.12.2",
72964        cpp_lib_version = "5.13.0"
72965    ),
72966    feature = "ritual_rustdoc"
72967))]
72968
72969impl ::qt_core::AsReceiver for crate::SignalOfQVectorOfQRayCasterHit {
72970    type Arguments = (*const crate::QVectorOfQRayCasterHit,);
72971    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
72972        unsafe {
72973            ::qt_core::Receiver::new(
72974                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
72975                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
72976                    b"2emit_(QVector< Qt3DRender::QRayCasterHit > const &)\0",
72977                ),
72978            )
72979        }
72980    }
72981}
72982
72983impl crate::SignalOfQVectorOfQRayCasterHit {
72984    /// Connects this signal to another signal or slot.
72985    ///
72986    /// This is a shortcut for `self.signal().connect(receiver)`.
72987    #[cfg_attr(
72988        feature = "ritual_rustdoc_nightly",
72989        doc(cfg(any(
72990            cpp_lib_version = "5.14.0",
72991            cpp_lib_version = "5.11.3",
72992            cpp_lib_version = "5.12.2",
72993            cpp_lib_version = "5.13.0"
72994        )))
72995    )]
72996    #[cfg(any(
72997        any(
72998            cpp_lib_version = "5.14.0",
72999            cpp_lib_version = "5.11.3",
73000            cpp_lib_version = "5.12.2",
73001            cpp_lib_version = "5.13.0"
73002        ),
73003        feature = "ritual_rustdoc"
73004    ))]
73005
73006    pub unsafe fn connect_with_type<R>(
73007        &self,
73008        connection_type: ::qt_core::ConnectionType,
73009        receiver: R,
73010    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73011    where
73012        R: ::qt_core::AsReceiver,
73013        (*const crate::QVectorOfQRayCasterHit,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73014    {
73015        self.signal().connect_with_type(connection_type, receiver)
73016    }
73017
73018    /// Connects this signal to another signal or slot, using auto connection type.
73019    ///
73020    /// This is a shortcut for `self.signal().connect(receiver)`.
73021    #[cfg_attr(
73022        feature = "ritual_rustdoc_nightly",
73023        doc(cfg(any(
73024            cpp_lib_version = "5.14.0",
73025            cpp_lib_version = "5.11.3",
73026            cpp_lib_version = "5.12.2",
73027            cpp_lib_version = "5.13.0"
73028        )))
73029    )]
73030    #[cfg(any(
73031        any(
73032            cpp_lib_version = "5.14.0",
73033            cpp_lib_version = "5.11.3",
73034            cpp_lib_version = "5.12.2",
73035            cpp_lib_version = "5.13.0"
73036        ),
73037        feature = "ritual_rustdoc"
73038    ))]
73039
73040    pub unsafe fn connect<R>(
73041        &self,
73042        receiver: R,
73043    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73044    where
73045        R: ::qt_core::AsReceiver,
73046        (*const crate::QVectorOfQRayCasterHit,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73047    {
73048        self.signal().connect(receiver)
73049    }
73050}
73051
73052/// Emits a Qt signal with arguments `*const crate::QVectorOfQRayCasterHit`.
73053///
73054/// Corresponding C++ argument types: (<span style='color: green;'>```const QVector<Qt3DRender::QRayCasterHit>&```</span>).
73055///
73056/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
73057#[repr(C)]
73058pub struct SignalOfQVectorOfQRayCasterHit {
73059    _unused: u8,
73060}
73061impl SignalOfQVectorOfQRayCasterHit {
73062    /// Returns a `Signal` object representing the signal.
73063    ///
73064    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
73065    #[inline(always)]
73066    #[cfg_attr(
73067        feature = "ritual_rustdoc_nightly",
73068        doc(cfg(any(
73069            cpp_lib_version = "5.14.0",
73070            cpp_lib_version = "5.11.3",
73071            cpp_lib_version = "5.12.2",
73072            cpp_lib_version = "5.13.0"
73073        )))
73074    )]
73075    #[cfg(any(
73076        any(
73077            cpp_lib_version = "5.14.0",
73078            cpp_lib_version = "5.11.3",
73079            cpp_lib_version = "5.12.2",
73080            cpp_lib_version = "5.13.0"
73081        ),
73082        feature = "ritual_rustdoc"
73083    ))]
73084    pub fn signal(&self) -> ::qt_core::Signal<(*const crate::QVectorOfQRayCasterHit,)> {
73085        unsafe {
73086            ::qt_core::Signal::new(
73087                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
73088                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
73089                    b"2emit_(QVector< Qt3DRender::QRayCasterHit > const &)\0",
73090                ),
73091            )
73092        }
73093    }
73094
73095    /// Emits the signal.
73096    #[inline(always)]
73097    #[cfg_attr(
73098        feature = "ritual_rustdoc_nightly",
73099        doc(cfg(any(
73100            cpp_lib_version = "5.14.0",
73101            cpp_lib_version = "5.11.3",
73102            cpp_lib_version = "5.12.2",
73103            cpp_lib_version = "5.13.0"
73104        )))
73105    )]
73106    #[cfg(any(
73107        any(
73108            cpp_lib_version = "5.14.0",
73109            cpp_lib_version = "5.11.3",
73110            cpp_lib_version = "5.12.2",
73111            cpp_lib_version = "5.13.0"
73112        ),
73113        feature = "ritual_rustdoc"
73114    ))]
73115    pub unsafe fn emit(
73116        &self,
73117        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>,
73118    ) {
73119        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_emit_(self as *const crate::SignalOfQVectorOfQRayCasterHit as *mut crate::SignalOfQVectorOfQRayCasterHit, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>::cast_into(arg0).as_raw_ptr())
73120    }
73121
73122    #[inline(always)]
73123    #[cfg_attr(
73124        feature = "ritual_rustdoc_nightly",
73125        doc(cfg(any(
73126            cpp_lib_version = "5.14.0",
73127            cpp_lib_version = "5.11.3",
73128            cpp_lib_version = "5.12.2",
73129            cpp_lib_version = "5.13.0"
73130        )))
73131    )]
73132    #[cfg(any(
73133        any(
73134            cpp_lib_version = "5.14.0",
73135            cpp_lib_version = "5.11.3",
73136            cpp_lib_version = "5.12.2",
73137            cpp_lib_version = "5.13.0"
73138        ),
73139        feature = "ritual_rustdoc"
73140    ))]
73141    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
73142        let ffi_result = {
73143            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_metaObject(self as *const crate::SignalOfQVectorOfQRayCasterHit)
73144        };
73145        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
73146    }
73147
73148    /// Creates a new object.
73149    #[inline(always)]
73150    #[cfg_attr(
73151        feature = "ritual_rustdoc_nightly",
73152        doc(cfg(any(
73153            cpp_lib_version = "5.14.0",
73154            cpp_lib_version = "5.11.3",
73155            cpp_lib_version = "5.12.2",
73156            cpp_lib_version = "5.13.0"
73157        )))
73158    )]
73159    #[cfg(any(
73160        any(
73161            cpp_lib_version = "5.14.0",
73162            cpp_lib_version = "5.11.3",
73163            cpp_lib_version = "5.12.2",
73164            cpp_lib_version = "5.13.0"
73165        ),
73166        feature = "ritual_rustdoc"
73167    ))]
73168    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQVectorOfQRayCasterHit> {
73169        let ffi_result = {
73170            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref()
73171        };
73172        ::qt_core::QBox::from_raw(ffi_result)
73173    }
73174
73175    #[inline(always)]
73176    #[cfg_attr(
73177        feature = "ritual_rustdoc_nightly",
73178        doc(cfg(any(
73179            cpp_lib_version = "5.14.0",
73180            cpp_lib_version = "5.11.3",
73181            cpp_lib_version = "5.12.2",
73182            cpp_lib_version = "5.13.0"
73183        )))
73184    )]
73185    #[cfg(any(
73186        any(
73187            cpp_lib_version = "5.14.0",
73188            cpp_lib_version = "5.11.3",
73189            cpp_lib_version = "5.12.2",
73190            cpp_lib_version = "5.13.0"
73191        ),
73192        feature = "ritual_rustdoc"
73193    ))]
73194    pub unsafe fn qt_metacall(
73195        &self,
73196        arg1: ::qt_core::q_meta_object::Call,
73197        arg2: ::std::os::raw::c_int,
73198        arg3: *mut *mut ::std::ffi::c_void,
73199    ) -> ::std::os::raw::c_int {
73200        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_qt_metacall(self as *const crate::SignalOfQVectorOfQRayCasterHit as *mut crate::SignalOfQVectorOfQRayCasterHit, arg1, arg2, arg3)
73201    }
73202
73203    #[inline(always)]
73204    #[cfg_attr(
73205        feature = "ritual_rustdoc_nightly",
73206        doc(cfg(any(
73207            cpp_lib_version = "5.14.0",
73208            cpp_lib_version = "5.11.3",
73209            cpp_lib_version = "5.12.2",
73210            cpp_lib_version = "5.13.0"
73211        )))
73212    )]
73213    #[cfg(any(
73214        any(
73215            cpp_lib_version = "5.14.0",
73216            cpp_lib_version = "5.11.3",
73217            cpp_lib_version = "5.12.2",
73218            cpp_lib_version = "5.13.0"
73219        ),
73220        feature = "ritual_rustdoc"
73221    ))]
73222    pub unsafe fn qt_metacast(
73223        &self,
73224        arg1: *const ::std::os::raw::c_char,
73225    ) -> *mut ::std::ffi::c_void {
73226        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_qt_metacast(self as *const crate::SignalOfQVectorOfQRayCasterHit as *mut crate::SignalOfQVectorOfQRayCasterHit, arg1)
73227    }
73228
73229    #[inline(always)]
73230    #[cfg_attr(
73231        feature = "ritual_rustdoc_nightly",
73232        doc(cfg(any(
73233            cpp_lib_version = "5.14.0",
73234            cpp_lib_version = "5.11.3",
73235            cpp_lib_version = "5.12.2",
73236            cpp_lib_version = "5.13.0"
73237        )))
73238    )]
73239    #[cfg(any(
73240        any(
73241            cpp_lib_version = "5.14.0",
73242            cpp_lib_version = "5.11.3",
73243            cpp_lib_version = "5.12.2",
73244            cpp_lib_version = "5.13.0"
73245        ),
73246        feature = "ritual_rustdoc"
73247    ))]
73248    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
73249        let ffi_result = {
73250            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_staticMetaObject()
73251        };
73252        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
73253            .expect("attempted to construct a null Ref")
73254    }
73255
73256    #[inline(always)]
73257    #[cfg_attr(
73258        feature = "ritual_rustdoc_nightly",
73259        doc(cfg(any(
73260            cpp_lib_version = "5.14.0",
73261            cpp_lib_version = "5.11.3",
73262            cpp_lib_version = "5.12.2",
73263            cpp_lib_version = "5.13.0"
73264        )))
73265    )]
73266    #[cfg(any(
73267        any(
73268            cpp_lib_version = "5.14.0",
73269            cpp_lib_version = "5.11.3",
73270            cpp_lib_version = "5.12.2",
73271            cpp_lib_version = "5.13.0"
73272        ),
73273        feature = "ritual_rustdoc"
73274    ))]
73275    pub unsafe fn tr(
73276        s: *const ::std::os::raw::c_char,
73277        c: *const ::std::os::raw::c_char,
73278        n: ::std::os::raw::c_int,
73279    ) -> ::cpp_core::CppBox<::qt_core::QString> {
73280        let ffi_result = {
73281            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_tr(s, c, n)
73282        };
73283        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
73284    }
73285
73286    #[inline(always)]
73287    #[cfg_attr(
73288        feature = "ritual_rustdoc_nightly",
73289        doc(cfg(any(
73290            cpp_lib_version = "5.14.0",
73291            cpp_lib_version = "5.11.3",
73292            cpp_lib_version = "5.12.2",
73293            cpp_lib_version = "5.13.0"
73294        )))
73295    )]
73296    #[cfg(any(
73297        any(
73298            cpp_lib_version = "5.14.0",
73299            cpp_lib_version = "5.11.3",
73300            cpp_lib_version = "5.12.2",
73301            cpp_lib_version = "5.13.0"
73302        ),
73303        feature = "ritual_rustdoc"
73304    ))]
73305    pub unsafe fn tr_utf8(
73306        s: *const ::std::os::raw::c_char,
73307        c: *const ::std::os::raw::c_char,
73308        n: ::std::os::raw::c_int,
73309    ) -> ::cpp_core::CppBox<::qt_core::QString> {
73310        let ffi_result = {
73311            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_trUtf8(s, c, n)
73312        };
73313        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
73314    }
73315}
73316
73317impl ::qt_core::AsReceiver for crate::SignalOfBlendFunction {
73318    type Arguments = (crate::q_blend_equation::BlendFunction,);
73319    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
73320        unsafe {
73321            ::qt_core::Receiver::new(
73322                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
73323                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
73324                    b"2emit_(Qt3DRender::QBlendEquation::BlendFunction)\0",
73325                ),
73326            )
73327        }
73328    }
73329}
73330
73331impl crate::SignalOfBlendFunction {
73332    /// Connects this signal to another signal or slot.
73333    ///
73334    /// This is a shortcut for `self.signal().connect(receiver)`.
73335
73336    pub unsafe fn connect_with_type<R>(
73337        &self,
73338        connection_type: ::qt_core::ConnectionType,
73339        receiver: R,
73340    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73341    where
73342        R: ::qt_core::AsReceiver,
73343        (crate::q_blend_equation::BlendFunction,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73344    {
73345        self.signal().connect_with_type(connection_type, receiver)
73346    }
73347
73348    /// Connects this signal to another signal or slot, using auto connection type.
73349    ///
73350    /// This is a shortcut for `self.signal().connect(receiver)`.
73351
73352    pub unsafe fn connect<R>(
73353        &self,
73354        receiver: R,
73355    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73356    where
73357        R: ::qt_core::AsReceiver,
73358        (crate::q_blend_equation::BlendFunction,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73359    {
73360        self.signal().connect(receiver)
73361    }
73362}
73363
73364/// Emits a Qt signal with arguments `crate::q_blend_equation::BlendFunction`.
73365///
73366/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBlendEquation::BlendFunction```</span>).
73367///
73368/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
73369#[repr(C)]
73370pub struct SignalOfBlendFunction {
73371    _unused: u8,
73372}
73373impl SignalOfBlendFunction {
73374    /// Returns a `Signal` object representing the signal.
73375    ///
73376    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
73377    #[inline(always)]
73378    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_blend_equation::BlendFunction,)> {
73379        unsafe {
73380            ::qt_core::Signal::new(
73381                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
73382                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
73383                    b"2emit_(Qt3DRender::QBlendEquation::BlendFunction)\0",
73384                ),
73385            )
73386        }
73387    }
73388
73389    /// Emits the signal.
73390    #[inline(always)]
73391    pub unsafe fn emit(&self, arg0: crate::q_blend_equation::BlendFunction) {
73392        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_emit_(self as *const crate::SignalOfBlendFunction as *mut crate::SignalOfBlendFunction, arg0)
73393    }
73394
73395    #[inline(always)]
73396    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
73397        let ffi_result = {
73398            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_metaObject(self as *const crate::SignalOfBlendFunction)
73399        };
73400        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
73401    }
73402
73403    /// Creates a new object.
73404    #[inline(always)]
73405    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfBlendFunction> {
73406        let ffi_result = {
73407            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction()
73408        };
73409        ::qt_core::QBox::from_raw(ffi_result)
73410    }
73411
73412    #[inline(always)]
73413    pub unsafe fn qt_metacall(
73414        &self,
73415        arg1: ::qt_core::q_meta_object::Call,
73416        arg2: ::std::os::raw::c_int,
73417        arg3: *mut *mut ::std::ffi::c_void,
73418    ) -> ::std::os::raw::c_int {
73419        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_qt_metacall(self as *const crate::SignalOfBlendFunction as *mut crate::SignalOfBlendFunction, arg1, arg2, arg3)
73420    }
73421
73422    #[inline(always)]
73423    pub unsafe fn qt_metacast(
73424        &self,
73425        arg1: *const ::std::os::raw::c_char,
73426    ) -> *mut ::std::ffi::c_void {
73427        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_qt_metacast(self as *const crate::SignalOfBlendFunction as *mut crate::SignalOfBlendFunction, arg1)
73428    }
73429
73430    #[inline(always)]
73431    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
73432        let ffi_result = {
73433            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_staticMetaObject()
73434        };
73435        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
73436            .expect("attempted to construct a null Ref")
73437    }
73438
73439    #[inline(always)]
73440    pub unsafe fn tr(
73441        s: *const ::std::os::raw::c_char,
73442        c: *const ::std::os::raw::c_char,
73443        n: ::std::os::raw::c_int,
73444    ) -> ::cpp_core::CppBox<::qt_core::QString> {
73445        let ffi_result = {
73446            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_tr(s, c, n)
73447        };
73448        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
73449    }
73450
73451    #[inline(always)]
73452    pub unsafe fn tr_utf8(
73453        s: *const ::std::os::raw::c_char,
73454        c: *const ::std::os::raw::c_char,
73455        n: ::std::os::raw::c_int,
73456    ) -> ::cpp_core::CppBox<::qt_core::QString> {
73457        let ffi_result = {
73458            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_trUtf8(s, c, n)
73459        };
73460        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
73461    }
73462}
73463
73464impl ::qt_core::AsReceiver for crate::SignalOfApi {
73465    type Arguments = (crate::q_graphics_api_filter::Api,);
73466    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
73467        unsafe {
73468            ::qt_core::Receiver::new(
73469                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
73470                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
73471                    b"2emit_(Qt3DRender::QGraphicsApiFilter::Api)\0",
73472                ),
73473            )
73474        }
73475    }
73476}
73477
73478impl crate::SignalOfApi {
73479    /// Connects this signal to another signal or slot.
73480    ///
73481    /// This is a shortcut for `self.signal().connect(receiver)`.
73482
73483    pub unsafe fn connect_with_type<R>(
73484        &self,
73485        connection_type: ::qt_core::ConnectionType,
73486        receiver: R,
73487    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73488    where
73489        R: ::qt_core::AsReceiver,
73490        (crate::q_graphics_api_filter::Api,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73491    {
73492        self.signal().connect_with_type(connection_type, receiver)
73493    }
73494
73495    /// Connects this signal to another signal or slot, using auto connection type.
73496    ///
73497    /// This is a shortcut for `self.signal().connect(receiver)`.
73498
73499    pub unsafe fn connect<R>(
73500        &self,
73501        receiver: R,
73502    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73503    where
73504        R: ::qt_core::AsReceiver,
73505        (crate::q_graphics_api_filter::Api,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73506    {
73507        self.signal().connect(receiver)
73508    }
73509}
73510
73511/// Emits a Qt signal with arguments `crate::q_graphics_api_filter::Api`.
73512///
73513/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QGraphicsApiFilter::Api```</span>).
73514///
73515/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
73516#[repr(C)]
73517pub struct SignalOfApi {
73518    _unused: u8,
73519}
73520impl SignalOfApi {
73521    /// Returns a `Signal` object representing the signal.
73522    ///
73523    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
73524    #[inline(always)]
73525    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_graphics_api_filter::Api,)> {
73526        unsafe {
73527            ::qt_core::Signal::new(
73528                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
73529                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
73530                    b"2emit_(Qt3DRender::QGraphicsApiFilter::Api)\0",
73531                ),
73532            )
73533        }
73534    }
73535
73536    /// Emits the signal.
73537    #[inline(always)]
73538    pub unsafe fn emit(&self, arg0: crate::q_graphics_api_filter::Api) {
73539        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_emit_(self as *const crate::SignalOfApi as *mut crate::SignalOfApi, arg0)
73540    }
73541
73542    #[inline(always)]
73543    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
73544        let ffi_result = {
73545            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_metaObject(self as *const crate::SignalOfApi)
73546        };
73547        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
73548    }
73549
73550    /// Creates a new object.
73551    #[inline(always)]
73552    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfApi> {
73553        let ffi_result = {
73554            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api()
73555        };
73556        ::qt_core::QBox::from_raw(ffi_result)
73557    }
73558
73559    #[inline(always)]
73560    pub unsafe fn qt_metacall(
73561        &self,
73562        arg1: ::qt_core::q_meta_object::Call,
73563        arg2: ::std::os::raw::c_int,
73564        arg3: *mut *mut ::std::ffi::c_void,
73565    ) -> ::std::os::raw::c_int {
73566        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_qt_metacall(self as *const crate::SignalOfApi as *mut crate::SignalOfApi, arg1, arg2, arg3)
73567    }
73568
73569    #[inline(always)]
73570    pub unsafe fn qt_metacast(
73571        &self,
73572        arg1: *const ::std::os::raw::c_char,
73573    ) -> *mut ::std::ffi::c_void {
73574        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_qt_metacast(self as *const crate::SignalOfApi as *mut crate::SignalOfApi, arg1)
73575    }
73576
73577    #[inline(always)]
73578    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
73579        let ffi_result = {
73580            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_staticMetaObject()
73581        };
73582        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
73583            .expect("attempted to construct a null Ref")
73584    }
73585
73586    #[inline(always)]
73587    pub unsafe fn tr(
73588        s: *const ::std::os::raw::c_char,
73589        c: *const ::std::os::raw::c_char,
73590        n: ::std::os::raw::c_int,
73591    ) -> ::cpp_core::CppBox<::qt_core::QString> {
73592        let ffi_result = {
73593            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_tr(s, c, n)
73594        };
73595        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
73596    }
73597
73598    #[inline(always)]
73599    pub unsafe fn tr_utf8(
73600        s: *const ::std::os::raw::c_char,
73601        c: *const ::std::os::raw::c_char,
73602        n: ::std::os::raw::c_int,
73603    ) -> ::cpp_core::CppBox<::qt_core::QString> {
73604        let ffi_result = {
73605            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_trUtf8(s, c, n)
73606        };
73607        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
73608    }
73609}
73610
73611impl ::qt_core::AsReceiver for crate::SignalOfThresholdType {
73612    type Arguments = (crate::q_level_of_detail::ThresholdType,);
73613    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
73614        unsafe {
73615            ::qt_core::Receiver::new(
73616                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
73617                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
73618                    b"2emit_(Qt3DRender::QLevelOfDetail::ThresholdType)\0",
73619                ),
73620            )
73621        }
73622    }
73623}
73624
73625impl crate::SignalOfThresholdType {
73626    /// Connects this signal to another signal or slot.
73627    ///
73628    /// This is a shortcut for `self.signal().connect(receiver)`.
73629
73630    pub unsafe fn connect_with_type<R>(
73631        &self,
73632        connection_type: ::qt_core::ConnectionType,
73633        receiver: R,
73634    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73635    where
73636        R: ::qt_core::AsReceiver,
73637        (crate::q_level_of_detail::ThresholdType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73638    {
73639        self.signal().connect_with_type(connection_type, receiver)
73640    }
73641
73642    /// Connects this signal to another signal or slot, using auto connection type.
73643    ///
73644    /// This is a shortcut for `self.signal().connect(receiver)`.
73645
73646    pub unsafe fn connect<R>(
73647        &self,
73648        receiver: R,
73649    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73650    where
73651        R: ::qt_core::AsReceiver,
73652        (crate::q_level_of_detail::ThresholdType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73653    {
73654        self.signal().connect(receiver)
73655    }
73656}
73657
73658/// Emits a Qt signal with arguments `crate::q_level_of_detail::ThresholdType`.
73659///
73660/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QLevelOfDetail::ThresholdType```</span>).
73661///
73662/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
73663#[repr(C)]
73664pub struct SignalOfThresholdType {
73665    _unused: u8,
73666}
73667impl SignalOfThresholdType {
73668    /// Returns a `Signal` object representing the signal.
73669    ///
73670    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
73671    #[inline(always)]
73672    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_level_of_detail::ThresholdType,)> {
73673        unsafe {
73674            ::qt_core::Signal::new(
73675                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
73676                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
73677                    b"2emit_(Qt3DRender::QLevelOfDetail::ThresholdType)\0",
73678                ),
73679            )
73680        }
73681    }
73682
73683    /// Emits the signal.
73684    #[inline(always)]
73685    pub unsafe fn emit(&self, arg0: crate::q_level_of_detail::ThresholdType) {
73686        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_emit_(self as *const crate::SignalOfThresholdType as *mut crate::SignalOfThresholdType, arg0)
73687    }
73688
73689    #[inline(always)]
73690    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
73691        let ffi_result = {
73692            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_metaObject(self as *const crate::SignalOfThresholdType)
73693        };
73694        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
73695    }
73696
73697    /// Creates a new object.
73698    #[inline(always)]
73699    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfThresholdType> {
73700        let ffi_result = {
73701            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType()
73702        };
73703        ::qt_core::QBox::from_raw(ffi_result)
73704    }
73705
73706    #[inline(always)]
73707    pub unsafe fn qt_metacall(
73708        &self,
73709        arg1: ::qt_core::q_meta_object::Call,
73710        arg2: ::std::os::raw::c_int,
73711        arg3: *mut *mut ::std::ffi::c_void,
73712    ) -> ::std::os::raw::c_int {
73713        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_qt_metacall(self as *const crate::SignalOfThresholdType as *mut crate::SignalOfThresholdType, arg1, arg2, arg3)
73714    }
73715
73716    #[inline(always)]
73717    pub unsafe fn qt_metacast(
73718        &self,
73719        arg1: *const ::std::os::raw::c_char,
73720    ) -> *mut ::std::ffi::c_void {
73721        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_qt_metacast(self as *const crate::SignalOfThresholdType as *mut crate::SignalOfThresholdType, arg1)
73722    }
73723
73724    #[inline(always)]
73725    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
73726        let ffi_result = {
73727            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_staticMetaObject()
73728        };
73729        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
73730            .expect("attempted to construct a null Ref")
73731    }
73732
73733    #[inline(always)]
73734    pub unsafe fn tr(
73735        s: *const ::std::os::raw::c_char,
73736        c: *const ::std::os::raw::c_char,
73737        n: ::std::os::raw::c_int,
73738    ) -> ::cpp_core::CppBox<::qt_core::QString> {
73739        let ffi_result = {
73740            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_tr(s, c, n)
73741        };
73742        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
73743    }
73744
73745    #[inline(always)]
73746    pub unsafe fn tr_utf8(
73747        s: *const ::std::os::raw::c_char,
73748        c: *const ::std::os::raw::c_char,
73749        n: ::std::os::raw::c_int,
73750    ) -> ::cpp_core::CppBox<::qt_core::QString> {
73751        let ffi_result = {
73752            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_trUtf8(s, c, n)
73753        };
73754        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
73755    }
73756}
73757
73758#[cfg_attr(
73759    feature = "ritual_rustdoc_nightly",
73760    doc(cfg(any(
73761        cpp_lib_version = "5.14.0",
73762        cpp_lib_version = "5.11.3",
73763        cpp_lib_version = "5.12.2",
73764        cpp_lib_version = "5.13.0"
73765    )))
73766)]
73767#[cfg(any(
73768    any(
73769        cpp_lib_version = "5.14.0",
73770        cpp_lib_version = "5.11.3",
73771        cpp_lib_version = "5.12.2",
73772        cpp_lib_version = "5.13.0"
73773    ),
73774    feature = "ritual_rustdoc"
73775))]
73776
73777impl ::qt_core::AsReceiver for crate::SignalOfFilterMode {
73778    type Arguments = (crate::q_abstract_ray_caster::FilterMode,);
73779    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
73780        unsafe {
73781            ::qt_core::Receiver::new(
73782                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
73783                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
73784                    b"2emit_(Qt3DRender::QAbstractRayCaster::FilterMode)\0",
73785                ),
73786            )
73787        }
73788    }
73789}
73790
73791impl crate::SignalOfFilterMode {
73792    /// Connects this signal to another signal or slot.
73793    ///
73794    /// This is a shortcut for `self.signal().connect(receiver)`.
73795    #[cfg_attr(
73796        feature = "ritual_rustdoc_nightly",
73797        doc(cfg(any(
73798            cpp_lib_version = "5.14.0",
73799            cpp_lib_version = "5.11.3",
73800            cpp_lib_version = "5.12.2",
73801            cpp_lib_version = "5.13.0"
73802        )))
73803    )]
73804    #[cfg(any(
73805        any(
73806            cpp_lib_version = "5.14.0",
73807            cpp_lib_version = "5.11.3",
73808            cpp_lib_version = "5.12.2",
73809            cpp_lib_version = "5.13.0"
73810        ),
73811        feature = "ritual_rustdoc"
73812    ))]
73813
73814    pub unsafe fn connect_with_type<R>(
73815        &self,
73816        connection_type: ::qt_core::ConnectionType,
73817        receiver: R,
73818    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73819    where
73820        R: ::qt_core::AsReceiver,
73821        (crate::q_abstract_ray_caster::FilterMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73822    {
73823        self.signal().connect_with_type(connection_type, receiver)
73824    }
73825
73826    /// Connects this signal to another signal or slot, using auto connection type.
73827    ///
73828    /// This is a shortcut for `self.signal().connect(receiver)`.
73829    #[cfg_attr(
73830        feature = "ritual_rustdoc_nightly",
73831        doc(cfg(any(
73832            cpp_lib_version = "5.14.0",
73833            cpp_lib_version = "5.11.3",
73834            cpp_lib_version = "5.12.2",
73835            cpp_lib_version = "5.13.0"
73836        )))
73837    )]
73838    #[cfg(any(
73839        any(
73840            cpp_lib_version = "5.14.0",
73841            cpp_lib_version = "5.11.3",
73842            cpp_lib_version = "5.12.2",
73843            cpp_lib_version = "5.13.0"
73844        ),
73845        feature = "ritual_rustdoc"
73846    ))]
73847
73848    pub unsafe fn connect<R>(
73849        &self,
73850        receiver: R,
73851    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
73852    where
73853        R: ::qt_core::AsReceiver,
73854        (crate::q_abstract_ray_caster::FilterMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
73855    {
73856        self.signal().connect(receiver)
73857    }
73858}
73859
73860/// Emits a Qt signal with arguments `crate::q_abstract_ray_caster::FilterMode`.
73861///
73862/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractRayCaster::FilterMode```</span>).
73863///
73864/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
73865#[repr(C)]
73866pub struct SignalOfFilterMode {
73867    _unused: u8,
73868}
73869impl SignalOfFilterMode {
73870    /// Returns a `Signal` object representing the signal.
73871    ///
73872    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
73873    #[inline(always)]
73874    #[cfg_attr(
73875        feature = "ritual_rustdoc_nightly",
73876        doc(cfg(any(
73877            cpp_lib_version = "5.14.0",
73878            cpp_lib_version = "5.11.3",
73879            cpp_lib_version = "5.12.2",
73880            cpp_lib_version = "5.13.0"
73881        )))
73882    )]
73883    #[cfg(any(
73884        any(
73885            cpp_lib_version = "5.14.0",
73886            cpp_lib_version = "5.11.3",
73887            cpp_lib_version = "5.12.2",
73888            cpp_lib_version = "5.13.0"
73889        ),
73890        feature = "ritual_rustdoc"
73891    ))]
73892    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_abstract_ray_caster::FilterMode,)> {
73893        unsafe {
73894            ::qt_core::Signal::new(
73895                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
73896                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
73897                    b"2emit_(Qt3DRender::QAbstractRayCaster::FilterMode)\0",
73898                ),
73899            )
73900        }
73901    }
73902
73903    /// Emits the signal.
73904    #[inline(always)]
73905    #[cfg_attr(
73906        feature = "ritual_rustdoc_nightly",
73907        doc(cfg(any(
73908            cpp_lib_version = "5.14.0",
73909            cpp_lib_version = "5.11.3",
73910            cpp_lib_version = "5.12.2",
73911            cpp_lib_version = "5.13.0"
73912        )))
73913    )]
73914    #[cfg(any(
73915        any(
73916            cpp_lib_version = "5.14.0",
73917            cpp_lib_version = "5.11.3",
73918            cpp_lib_version = "5.12.2",
73919            cpp_lib_version = "5.13.0"
73920        ),
73921        feature = "ritual_rustdoc"
73922    ))]
73923    pub unsafe fn emit(&self, arg0: crate::q_abstract_ray_caster::FilterMode) {
73924        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_emit_(self as *const crate::SignalOfFilterMode as *mut crate::SignalOfFilterMode, arg0)
73925    }
73926
73927    #[inline(always)]
73928    #[cfg_attr(
73929        feature = "ritual_rustdoc_nightly",
73930        doc(cfg(any(
73931            cpp_lib_version = "5.14.0",
73932            cpp_lib_version = "5.11.3",
73933            cpp_lib_version = "5.12.2",
73934            cpp_lib_version = "5.13.0"
73935        )))
73936    )]
73937    #[cfg(any(
73938        any(
73939            cpp_lib_version = "5.14.0",
73940            cpp_lib_version = "5.11.3",
73941            cpp_lib_version = "5.12.2",
73942            cpp_lib_version = "5.13.0"
73943        ),
73944        feature = "ritual_rustdoc"
73945    ))]
73946    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
73947        let ffi_result = {
73948            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_metaObject(self as *const crate::SignalOfFilterMode)
73949        };
73950        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
73951    }
73952
73953    /// Creates a new object.
73954    #[inline(always)]
73955    #[cfg_attr(
73956        feature = "ritual_rustdoc_nightly",
73957        doc(cfg(any(
73958            cpp_lib_version = "5.14.0",
73959            cpp_lib_version = "5.11.3",
73960            cpp_lib_version = "5.12.2",
73961            cpp_lib_version = "5.13.0"
73962        )))
73963    )]
73964    #[cfg(any(
73965        any(
73966            cpp_lib_version = "5.14.0",
73967            cpp_lib_version = "5.11.3",
73968            cpp_lib_version = "5.12.2",
73969            cpp_lib_version = "5.13.0"
73970        ),
73971        feature = "ritual_rustdoc"
73972    ))]
73973    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfFilterMode> {
73974        let ffi_result = {
73975            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode()
73976        };
73977        ::qt_core::QBox::from_raw(ffi_result)
73978    }
73979
73980    #[inline(always)]
73981    #[cfg_attr(
73982        feature = "ritual_rustdoc_nightly",
73983        doc(cfg(any(
73984            cpp_lib_version = "5.14.0",
73985            cpp_lib_version = "5.11.3",
73986            cpp_lib_version = "5.12.2",
73987            cpp_lib_version = "5.13.0"
73988        )))
73989    )]
73990    #[cfg(any(
73991        any(
73992            cpp_lib_version = "5.14.0",
73993            cpp_lib_version = "5.11.3",
73994            cpp_lib_version = "5.12.2",
73995            cpp_lib_version = "5.13.0"
73996        ),
73997        feature = "ritual_rustdoc"
73998    ))]
73999    pub unsafe fn qt_metacall(
74000        &self,
74001        arg1: ::qt_core::q_meta_object::Call,
74002        arg2: ::std::os::raw::c_int,
74003        arg3: *mut *mut ::std::ffi::c_void,
74004    ) -> ::std::os::raw::c_int {
74005        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_qt_metacall(self as *const crate::SignalOfFilterMode as *mut crate::SignalOfFilterMode, arg1, arg2, arg3)
74006    }
74007
74008    #[inline(always)]
74009    #[cfg_attr(
74010        feature = "ritual_rustdoc_nightly",
74011        doc(cfg(any(
74012            cpp_lib_version = "5.14.0",
74013            cpp_lib_version = "5.11.3",
74014            cpp_lib_version = "5.12.2",
74015            cpp_lib_version = "5.13.0"
74016        )))
74017    )]
74018    #[cfg(any(
74019        any(
74020            cpp_lib_version = "5.14.0",
74021            cpp_lib_version = "5.11.3",
74022            cpp_lib_version = "5.12.2",
74023            cpp_lib_version = "5.13.0"
74024        ),
74025        feature = "ritual_rustdoc"
74026    ))]
74027    pub unsafe fn qt_metacast(
74028        &self,
74029        arg1: *const ::std::os::raw::c_char,
74030    ) -> *mut ::std::ffi::c_void {
74031        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_qt_metacast(self as *const crate::SignalOfFilterMode as *mut crate::SignalOfFilterMode, arg1)
74032    }
74033
74034    #[inline(always)]
74035    #[cfg_attr(
74036        feature = "ritual_rustdoc_nightly",
74037        doc(cfg(any(
74038            cpp_lib_version = "5.14.0",
74039            cpp_lib_version = "5.11.3",
74040            cpp_lib_version = "5.12.2",
74041            cpp_lib_version = "5.13.0"
74042        )))
74043    )]
74044    #[cfg(any(
74045        any(
74046            cpp_lib_version = "5.14.0",
74047            cpp_lib_version = "5.11.3",
74048            cpp_lib_version = "5.12.2",
74049            cpp_lib_version = "5.13.0"
74050        ),
74051        feature = "ritual_rustdoc"
74052    ))]
74053    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
74054        let ffi_result = {
74055            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_staticMetaObject()
74056        };
74057        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74058            .expect("attempted to construct a null Ref")
74059    }
74060
74061    #[inline(always)]
74062    #[cfg_attr(
74063        feature = "ritual_rustdoc_nightly",
74064        doc(cfg(any(
74065            cpp_lib_version = "5.14.0",
74066            cpp_lib_version = "5.11.3",
74067            cpp_lib_version = "5.12.2",
74068            cpp_lib_version = "5.13.0"
74069        )))
74070    )]
74071    #[cfg(any(
74072        any(
74073            cpp_lib_version = "5.14.0",
74074            cpp_lib_version = "5.11.3",
74075            cpp_lib_version = "5.12.2",
74076            cpp_lib_version = "5.13.0"
74077        ),
74078        feature = "ritual_rustdoc"
74079    ))]
74080    pub unsafe fn tr(
74081        s: *const ::std::os::raw::c_char,
74082        c: *const ::std::os::raw::c_char,
74083        n: ::std::os::raw::c_int,
74084    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74085        let ffi_result = {
74086            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_tr(s, c, n)
74087        };
74088        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74089    }
74090
74091    #[inline(always)]
74092    #[cfg_attr(
74093        feature = "ritual_rustdoc_nightly",
74094        doc(cfg(any(
74095            cpp_lib_version = "5.14.0",
74096            cpp_lib_version = "5.11.3",
74097            cpp_lib_version = "5.12.2",
74098            cpp_lib_version = "5.13.0"
74099        )))
74100    )]
74101    #[cfg(any(
74102        any(
74103            cpp_lib_version = "5.14.0",
74104            cpp_lib_version = "5.11.3",
74105            cpp_lib_version = "5.12.2",
74106            cpp_lib_version = "5.13.0"
74107        ),
74108        feature = "ritual_rustdoc"
74109    ))]
74110    pub unsafe fn tr_utf8(
74111        s: *const ::std::os::raw::c_char,
74112        c: *const ::std::os::raw::c_char,
74113        n: ::std::os::raw::c_int,
74114    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74115        let ffi_result = {
74116            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_trUtf8(s, c, n)
74117        };
74118        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74119    }
74120}
74121
74122impl ::qt_core::AsReceiver for crate::SignalOfQBuffer {
74123    type Arguments = (*mut crate::QBuffer,);
74124    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
74125        unsafe {
74126            ::qt_core::Receiver::new(
74127                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74128                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(Qt3DRender::QBuffer *)\0"),
74129            )
74130        }
74131    }
74132}
74133
74134impl crate::SignalOfQBuffer {
74135    /// Connects this signal to another signal or slot.
74136    ///
74137    /// This is a shortcut for `self.signal().connect(receiver)`.
74138
74139    pub unsafe fn connect_with_type<R>(
74140        &self,
74141        connection_type: ::qt_core::ConnectionType,
74142        receiver: R,
74143    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74144    where
74145        R: ::qt_core::AsReceiver,
74146        (*mut crate::QBuffer,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74147    {
74148        self.signal().connect_with_type(connection_type, receiver)
74149    }
74150
74151    /// Connects this signal to another signal or slot, using auto connection type.
74152    ///
74153    /// This is a shortcut for `self.signal().connect(receiver)`.
74154
74155    pub unsafe fn connect<R>(
74156        &self,
74157        receiver: R,
74158    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74159    where
74160        R: ::qt_core::AsReceiver,
74161        (*mut crate::QBuffer,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74162    {
74163        self.signal().connect(receiver)
74164    }
74165}
74166
74167/// Emits a Qt signal with arguments `*mut crate::QBuffer`.
74168///
74169/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBuffer*```</span>).
74170///
74171/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
74172#[repr(C)]
74173pub struct SignalOfQBuffer {
74174    _unused: u8,
74175}
74176impl SignalOfQBuffer {
74177    /// Returns a `Signal` object representing the signal.
74178    ///
74179    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
74180    #[inline(always)]
74181    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QBuffer,)> {
74182        unsafe {
74183            ::qt_core::Signal::new(
74184                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74185                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(Qt3DRender::QBuffer *)\0"),
74186            )
74187        }
74188    }
74189
74190    /// Emits the signal.
74191    #[inline(always)]
74192    pub unsafe fn emit(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>) {
74193        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_emit_(self as *const crate::SignalOfQBuffer as *mut crate::SignalOfQBuffer, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(arg0).as_raw_ptr() as *mut crate::QBuffer)
74194    }
74195
74196    #[inline(always)]
74197    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
74198        let ffi_result = {
74199            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_metaObject(self as *const crate::SignalOfQBuffer)
74200        };
74201        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74202    }
74203
74204    /// Creates a new object.
74205    #[inline(always)]
74206    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQBuffer> {
74207        let ffi_result = {
74208            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr()
74209        };
74210        ::qt_core::QBox::from_raw(ffi_result)
74211    }
74212
74213    #[inline(always)]
74214    pub unsafe fn qt_metacall(
74215        &self,
74216        arg1: ::qt_core::q_meta_object::Call,
74217        arg2: ::std::os::raw::c_int,
74218        arg3: *mut *mut ::std::ffi::c_void,
74219    ) -> ::std::os::raw::c_int {
74220        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_qt_metacall(self as *const crate::SignalOfQBuffer as *mut crate::SignalOfQBuffer, arg1, arg2, arg3)
74221    }
74222
74223    #[inline(always)]
74224    pub unsafe fn qt_metacast(
74225        &self,
74226        arg1: *const ::std::os::raw::c_char,
74227    ) -> *mut ::std::ffi::c_void {
74228        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_qt_metacast(self as *const crate::SignalOfQBuffer as *mut crate::SignalOfQBuffer, arg1)
74229    }
74230
74231    #[inline(always)]
74232    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
74233        let ffi_result = {
74234            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_staticMetaObject()
74235        };
74236        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74237            .expect("attempted to construct a null Ref")
74238    }
74239
74240    #[inline(always)]
74241    pub unsafe fn tr(
74242        s: *const ::std::os::raw::c_char,
74243        c: *const ::std::os::raw::c_char,
74244        n: ::std::os::raw::c_int,
74245    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74246        let ffi_result = {
74247            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_tr(s, c, n)
74248        };
74249        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74250    }
74251
74252    #[inline(always)]
74253    pub unsafe fn tr_utf8(
74254        s: *const ::std::os::raw::c_char,
74255        c: *const ::std::os::raw::c_char,
74256        n: ::std::os::raw::c_int,
74257    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74258        let ffi_result = {
74259            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_trUtf8(s, c, n)
74260        };
74261        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74262    }
74263}
74264
74265impl ::qt_core::AsReceiver for crate::SignalOfQAbstractTexture {
74266    type Arguments = (*mut crate::QAbstractTexture,);
74267    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
74268        unsafe {
74269            ::qt_core::Receiver::new(
74270                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74271                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74272                    b"2emit_(Qt3DRender::QAbstractTexture *)\0",
74273                ),
74274            )
74275        }
74276    }
74277}
74278
74279impl crate::SignalOfQAbstractTexture {
74280    /// Connects this signal to another signal or slot.
74281    ///
74282    /// This is a shortcut for `self.signal().connect(receiver)`.
74283
74284    pub unsafe fn connect_with_type<R>(
74285        &self,
74286        connection_type: ::qt_core::ConnectionType,
74287        receiver: R,
74288    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74289    where
74290        R: ::qt_core::AsReceiver,
74291        (*mut crate::QAbstractTexture,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74292    {
74293        self.signal().connect_with_type(connection_type, receiver)
74294    }
74295
74296    /// Connects this signal to another signal or slot, using auto connection type.
74297    ///
74298    /// This is a shortcut for `self.signal().connect(receiver)`.
74299
74300    pub unsafe fn connect<R>(
74301        &self,
74302        receiver: R,
74303    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74304    where
74305        R: ::qt_core::AsReceiver,
74306        (*mut crate::QAbstractTexture,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74307    {
74308        self.signal().connect(receiver)
74309    }
74310}
74311
74312/// Emits a Qt signal with arguments `*mut crate::QAbstractTexture`.
74313///
74314/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture*```</span>).
74315///
74316/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
74317#[repr(C)]
74318pub struct SignalOfQAbstractTexture {
74319    _unused: u8,
74320}
74321impl SignalOfQAbstractTexture {
74322    /// Returns a `Signal` object representing the signal.
74323    ///
74324    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
74325    #[inline(always)]
74326    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QAbstractTexture,)> {
74327        unsafe {
74328            ::qt_core::Signal::new(
74329                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74330                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74331                    b"2emit_(Qt3DRender::QAbstractTexture *)\0",
74332                ),
74333            )
74334        }
74335    }
74336
74337    /// Emits the signal.
74338    #[inline(always)]
74339    pub unsafe fn emit(
74340        &self,
74341        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTexture>>,
74342    ) {
74343        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_emit_(self as *const crate::SignalOfQAbstractTexture as *mut crate::SignalOfQAbstractTexture, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTexture>>::cast_into(arg0).as_raw_ptr() as *mut crate::QAbstractTexture)
74344    }
74345
74346    #[inline(always)]
74347    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
74348        let ffi_result = {
74349            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_metaObject(self as *const crate::SignalOfQAbstractTexture)
74350        };
74351        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74352    }
74353
74354    /// Creates a new object.
74355    #[inline(always)]
74356    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQAbstractTexture> {
74357        let ffi_result = {
74358            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr()
74359        };
74360        ::qt_core::QBox::from_raw(ffi_result)
74361    }
74362
74363    #[inline(always)]
74364    pub unsafe fn qt_metacall(
74365        &self,
74366        arg1: ::qt_core::q_meta_object::Call,
74367        arg2: ::std::os::raw::c_int,
74368        arg3: *mut *mut ::std::ffi::c_void,
74369    ) -> ::std::os::raw::c_int {
74370        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_qt_metacall(self as *const crate::SignalOfQAbstractTexture as *mut crate::SignalOfQAbstractTexture, arg1, arg2, arg3)
74371    }
74372
74373    #[inline(always)]
74374    pub unsafe fn qt_metacast(
74375        &self,
74376        arg1: *const ::std::os::raw::c_char,
74377    ) -> *mut ::std::ffi::c_void {
74378        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_qt_metacast(self as *const crate::SignalOfQAbstractTexture as *mut crate::SignalOfQAbstractTexture, arg1)
74379    }
74380
74381    #[inline(always)]
74382    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
74383        let ffi_result = {
74384            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_staticMetaObject()
74385        };
74386        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74387            .expect("attempted to construct a null Ref")
74388    }
74389
74390    #[inline(always)]
74391    pub unsafe fn tr(
74392        s: *const ::std::os::raw::c_char,
74393        c: *const ::std::os::raw::c_char,
74394        n: ::std::os::raw::c_int,
74395    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74396        let ffi_result = {
74397            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_tr(s, c, n)
74398        };
74399        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74400    }
74401
74402    #[inline(always)]
74403    pub unsafe fn tr_utf8(
74404        s: *const ::std::os::raw::c_char,
74405        c: *const ::std::os::raw::c_char,
74406        n: ::std::os::raw::c_int,
74407    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74408        let ffi_result = {
74409            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_trUtf8(s, c, n)
74410        };
74411        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74412    }
74413}
74414
74415#[cfg_attr(
74416    feature = "ritual_rustdoc_nightly",
74417    doc(cfg(cpp_lib_version = "5.14.0"))
74418)]
74419#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74420
74421impl ::qt_core::AsReceiver for crate::SignalOfImageFormat {
74422    type Arguments = (crate::q_shader_image::ImageFormat,);
74423    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
74424        unsafe {
74425            ::qt_core::Receiver::new(
74426                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74427                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74428                    b"2emit_(Qt3DRender::QShaderImage::ImageFormat)\0",
74429                ),
74430            )
74431        }
74432    }
74433}
74434
74435impl crate::SignalOfImageFormat {
74436    /// Connects this signal to another signal or slot.
74437    ///
74438    /// This is a shortcut for `self.signal().connect(receiver)`.
74439    #[cfg_attr(
74440        feature = "ritual_rustdoc_nightly",
74441        doc(cfg(cpp_lib_version = "5.14.0"))
74442    )]
74443    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74444
74445    pub unsafe fn connect_with_type<R>(
74446        &self,
74447        connection_type: ::qt_core::ConnectionType,
74448        receiver: R,
74449    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74450    where
74451        R: ::qt_core::AsReceiver,
74452        (crate::q_shader_image::ImageFormat,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74453    {
74454        self.signal().connect_with_type(connection_type, receiver)
74455    }
74456
74457    /// Connects this signal to another signal or slot, using auto connection type.
74458    ///
74459    /// This is a shortcut for `self.signal().connect(receiver)`.
74460    #[cfg_attr(
74461        feature = "ritual_rustdoc_nightly",
74462        doc(cfg(cpp_lib_version = "5.14.0"))
74463    )]
74464    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74465
74466    pub unsafe fn connect<R>(
74467        &self,
74468        receiver: R,
74469    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74470    where
74471        R: ::qt_core::AsReceiver,
74472        (crate::q_shader_image::ImageFormat,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74473    {
74474        self.signal().connect(receiver)
74475    }
74476}
74477
74478/// Emits a Qt signal with arguments `crate::q_shader_image::ImageFormat`.
74479///
74480/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QShaderImage::ImageFormat```</span>).
74481///
74482/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
74483#[repr(C)]
74484pub struct SignalOfImageFormat {
74485    _unused: u8,
74486}
74487impl SignalOfImageFormat {
74488    /// Returns a `Signal` object representing the signal.
74489    ///
74490    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
74491    #[inline(always)]
74492    #[cfg_attr(
74493        feature = "ritual_rustdoc_nightly",
74494        doc(cfg(cpp_lib_version = "5.14.0"))
74495    )]
74496    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74497    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_shader_image::ImageFormat,)> {
74498        unsafe {
74499            ::qt_core::Signal::new(
74500                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74501                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74502                    b"2emit_(Qt3DRender::QShaderImage::ImageFormat)\0",
74503                ),
74504            )
74505        }
74506    }
74507
74508    /// Emits the signal.
74509    #[inline(always)]
74510    #[cfg_attr(
74511        feature = "ritual_rustdoc_nightly",
74512        doc(cfg(cpp_lib_version = "5.14.0"))
74513    )]
74514    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74515    pub unsafe fn emit(&self, arg0: crate::q_shader_image::ImageFormat) {
74516        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_emit_(self as *const crate::SignalOfImageFormat as *mut crate::SignalOfImageFormat, arg0)
74517    }
74518
74519    #[inline(always)]
74520    #[cfg_attr(
74521        feature = "ritual_rustdoc_nightly",
74522        doc(cfg(cpp_lib_version = "5.14.0"))
74523    )]
74524    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74525    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
74526        let ffi_result = {
74527            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_metaObject(self as *const crate::SignalOfImageFormat)
74528        };
74529        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74530    }
74531
74532    /// Creates a new object.
74533    #[inline(always)]
74534    #[cfg_attr(
74535        feature = "ritual_rustdoc_nightly",
74536        doc(cfg(cpp_lib_version = "5.14.0"))
74537    )]
74538    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74539    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfImageFormat> {
74540        let ffi_result = {
74541            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat()
74542        };
74543        ::qt_core::QBox::from_raw(ffi_result)
74544    }
74545
74546    #[inline(always)]
74547    #[cfg_attr(
74548        feature = "ritual_rustdoc_nightly",
74549        doc(cfg(cpp_lib_version = "5.14.0"))
74550    )]
74551    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74552    pub unsafe fn qt_metacall(
74553        &self,
74554        arg1: ::qt_core::q_meta_object::Call,
74555        arg2: ::std::os::raw::c_int,
74556        arg3: *mut *mut ::std::ffi::c_void,
74557    ) -> ::std::os::raw::c_int {
74558        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_qt_metacall(self as *const crate::SignalOfImageFormat as *mut crate::SignalOfImageFormat, arg1, arg2, arg3)
74559    }
74560
74561    #[inline(always)]
74562    #[cfg_attr(
74563        feature = "ritual_rustdoc_nightly",
74564        doc(cfg(cpp_lib_version = "5.14.0"))
74565    )]
74566    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74567    pub unsafe fn qt_metacast(
74568        &self,
74569        arg1: *const ::std::os::raw::c_char,
74570    ) -> *mut ::std::ffi::c_void {
74571        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_qt_metacast(self as *const crate::SignalOfImageFormat as *mut crate::SignalOfImageFormat, arg1)
74572    }
74573
74574    #[inline(always)]
74575    #[cfg_attr(
74576        feature = "ritual_rustdoc_nightly",
74577        doc(cfg(cpp_lib_version = "5.14.0"))
74578    )]
74579    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74580    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
74581        let ffi_result = {
74582            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_staticMetaObject()
74583        };
74584        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74585            .expect("attempted to construct a null Ref")
74586    }
74587
74588    #[inline(always)]
74589    #[cfg_attr(
74590        feature = "ritual_rustdoc_nightly",
74591        doc(cfg(cpp_lib_version = "5.14.0"))
74592    )]
74593    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74594    pub unsafe fn tr(
74595        s: *const ::std::os::raw::c_char,
74596        c: *const ::std::os::raw::c_char,
74597        n: ::std::os::raw::c_int,
74598    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74599        let ffi_result = {
74600            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_tr(s, c, n)
74601        };
74602        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74603    }
74604
74605    #[inline(always)]
74606    #[cfg_attr(
74607        feature = "ritual_rustdoc_nightly",
74608        doc(cfg(cpp_lib_version = "5.14.0"))
74609    )]
74610    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
74611    pub unsafe fn tr_utf8(
74612        s: *const ::std::os::raw::c_char,
74613        c: *const ::std::os::raw::c_char,
74614        n: ::std::os::raw::c_int,
74615    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74616        let ffi_result = {
74617            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_trUtf8(s, c, n)
74618        };
74619        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74620    }
74621}
74622
74623impl ::qt_core::AsReceiver for crate::SignalOfQShaderProgram {
74624    type Arguments = (*mut crate::QShaderProgram,);
74625    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
74626        unsafe {
74627            ::qt_core::Receiver::new(
74628                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74629                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74630                    b"2emit_(Qt3DRender::QShaderProgram *)\0",
74631                ),
74632            )
74633        }
74634    }
74635}
74636
74637impl crate::SignalOfQShaderProgram {
74638    /// Connects this signal to another signal or slot.
74639    ///
74640    /// This is a shortcut for `self.signal().connect(receiver)`.
74641
74642    pub unsafe fn connect_with_type<R>(
74643        &self,
74644        connection_type: ::qt_core::ConnectionType,
74645        receiver: R,
74646    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74647    where
74648        R: ::qt_core::AsReceiver,
74649        (*mut crate::QShaderProgram,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74650    {
74651        self.signal().connect_with_type(connection_type, receiver)
74652    }
74653
74654    /// Connects this signal to another signal or slot, using auto connection type.
74655    ///
74656    /// This is a shortcut for `self.signal().connect(receiver)`.
74657
74658    pub unsafe fn connect<R>(
74659        &self,
74660        receiver: R,
74661    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74662    where
74663        R: ::qt_core::AsReceiver,
74664        (*mut crate::QShaderProgram,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74665    {
74666        self.signal().connect(receiver)
74667    }
74668}
74669
74670/// Emits a Qt signal with arguments `*mut crate::QShaderProgram`.
74671///
74672/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QShaderProgram*```</span>).
74673///
74674/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
74675#[repr(C)]
74676pub struct SignalOfQShaderProgram {
74677    _unused: u8,
74678}
74679impl SignalOfQShaderProgram {
74680    /// Returns a `Signal` object representing the signal.
74681    ///
74682    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
74683    #[inline(always)]
74684    pub fn signal(&self) -> ::qt_core::Signal<(*mut crate::QShaderProgram,)> {
74685        unsafe {
74686            ::qt_core::Signal::new(
74687                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74688                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74689                    b"2emit_(Qt3DRender::QShaderProgram *)\0",
74690                ),
74691            )
74692        }
74693    }
74694
74695    /// Emits the signal.
74696    #[inline(always)]
74697    pub unsafe fn emit(
74698        &self,
74699        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QShaderProgram>>,
74700    ) {
74701        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_emit_(self as *const crate::SignalOfQShaderProgram as *mut crate::SignalOfQShaderProgram, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QShaderProgram>>::cast_into(arg0).as_raw_ptr() as *mut crate::QShaderProgram)
74702    }
74703
74704    #[inline(always)]
74705    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
74706        let ffi_result = {
74707            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_metaObject(self as *const crate::SignalOfQShaderProgram)
74708        };
74709        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74710    }
74711
74712    /// Creates a new object.
74713    #[inline(always)]
74714    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQShaderProgram> {
74715        let ffi_result = {
74716            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr()
74717        };
74718        ::qt_core::QBox::from_raw(ffi_result)
74719    }
74720
74721    #[inline(always)]
74722    pub unsafe fn qt_metacall(
74723        &self,
74724        arg1: ::qt_core::q_meta_object::Call,
74725        arg2: ::std::os::raw::c_int,
74726        arg3: *mut *mut ::std::ffi::c_void,
74727    ) -> ::std::os::raw::c_int {
74728        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_qt_metacall(self as *const crate::SignalOfQShaderProgram as *mut crate::SignalOfQShaderProgram, arg1, arg2, arg3)
74729    }
74730
74731    #[inline(always)]
74732    pub unsafe fn qt_metacast(
74733        &self,
74734        arg1: *const ::std::os::raw::c_char,
74735    ) -> *mut ::std::ffi::c_void {
74736        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_qt_metacast(self as *const crate::SignalOfQShaderProgram as *mut crate::SignalOfQShaderProgram, arg1)
74737    }
74738
74739    #[inline(always)]
74740    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
74741        let ffi_result = {
74742            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_staticMetaObject()
74743        };
74744        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74745            .expect("attempted to construct a null Ref")
74746    }
74747
74748    #[inline(always)]
74749    pub unsafe fn tr(
74750        s: *const ::std::os::raw::c_char,
74751        c: *const ::std::os::raw::c_char,
74752        n: ::std::os::raw::c_int,
74753    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74754        let ffi_result = {
74755            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_tr(s, c, n)
74756        };
74757        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74758    }
74759
74760    #[inline(always)]
74761    pub unsafe fn tr_utf8(
74762        s: *const ::std::os::raw::c_char,
74763        c: *const ::std::os::raw::c_char,
74764        n: ::std::os::raw::c_int,
74765    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74766        let ffi_result = {
74767            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_trUtf8(s, c, n)
74768        };
74769        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74770    }
74771}
74772
74773impl ::qt_core::AsReceiver for crate::SignalOfStatus3 {
74774    type Arguments = (crate::q_abstract_texture::Status,);
74775    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
74776        unsafe {
74777            ::qt_core::Receiver::new(
74778                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74779                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74780                    b"2emit_(Qt3DRender::QAbstractTexture::Status)\0",
74781                ),
74782            )
74783        }
74784    }
74785}
74786
74787impl crate::SignalOfStatus3 {
74788    /// Connects this signal to another signal or slot.
74789    ///
74790    /// This is a shortcut for `self.signal().connect(receiver)`.
74791
74792    pub unsafe fn connect_with_type<R>(
74793        &self,
74794        connection_type: ::qt_core::ConnectionType,
74795        receiver: R,
74796    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74797    where
74798        R: ::qt_core::AsReceiver,
74799        (crate::q_abstract_texture::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74800    {
74801        self.signal().connect_with_type(connection_type, receiver)
74802    }
74803
74804    /// Connects this signal to another signal or slot, using auto connection type.
74805    ///
74806    /// This is a shortcut for `self.signal().connect(receiver)`.
74807
74808    pub unsafe fn connect<R>(
74809        &self,
74810        receiver: R,
74811    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74812    where
74813        R: ::qt_core::AsReceiver,
74814        (crate::q_abstract_texture::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74815    {
74816        self.signal().connect(receiver)
74817    }
74818}
74819
74820/// Emits a Qt signal with arguments `crate::q_abstract_texture::Status`.
74821///
74822/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::Status```</span>).
74823///
74824/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
74825#[repr(C)]
74826pub struct SignalOfStatus3 {
74827    _unused: u8,
74828}
74829impl SignalOfStatus3 {
74830    /// Returns a `Signal` object representing the signal.
74831    ///
74832    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
74833    #[inline(always)]
74834    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::Status,)> {
74835        unsafe {
74836            ::qt_core::Signal::new(
74837                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74838                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74839                    b"2emit_(Qt3DRender::QAbstractTexture::Status)\0",
74840                ),
74841            )
74842        }
74843    }
74844
74845    /// Emits the signal.
74846    #[inline(always)]
74847    pub unsafe fn emit(&self, arg0: crate::q_abstract_texture::Status) {
74848        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_emit_(self as *const crate::SignalOfStatus3 as *mut crate::SignalOfStatus3, arg0)
74849    }
74850
74851    #[inline(always)]
74852    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
74853        let ffi_result = {
74854            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_metaObject(self as *const crate::SignalOfStatus3)
74855        };
74856        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74857    }
74858
74859    /// Creates a new object.
74860    #[inline(always)]
74861    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfStatus3> {
74862        let ffi_result = {
74863            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status()
74864        };
74865        ::qt_core::QBox::from_raw(ffi_result)
74866    }
74867
74868    #[inline(always)]
74869    pub unsafe fn qt_metacall(
74870        &self,
74871        arg1: ::qt_core::q_meta_object::Call,
74872        arg2: ::std::os::raw::c_int,
74873        arg3: *mut *mut ::std::ffi::c_void,
74874    ) -> ::std::os::raw::c_int {
74875        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_qt_metacall(self as *const crate::SignalOfStatus3 as *mut crate::SignalOfStatus3, arg1, arg2, arg3)
74876    }
74877
74878    #[inline(always)]
74879    pub unsafe fn qt_metacast(
74880        &self,
74881        arg1: *const ::std::os::raw::c_char,
74882    ) -> *mut ::std::ffi::c_void {
74883        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_qt_metacast(self as *const crate::SignalOfStatus3 as *mut crate::SignalOfStatus3, arg1)
74884    }
74885
74886    #[inline(always)]
74887    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
74888        let ffi_result = {
74889            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_staticMetaObject()
74890        };
74891        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
74892            .expect("attempted to construct a null Ref")
74893    }
74894
74895    #[inline(always)]
74896    pub unsafe fn tr(
74897        s: *const ::std::os::raw::c_char,
74898        c: *const ::std::os::raw::c_char,
74899        n: ::std::os::raw::c_int,
74900    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74901        let ffi_result = {
74902            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_tr(s, c, n)
74903        };
74904        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74905    }
74906
74907    #[inline(always)]
74908    pub unsafe fn tr_utf8(
74909        s: *const ::std::os::raw::c_char,
74910        c: *const ::std::os::raw::c_char,
74911        n: ::std::os::raw::c_int,
74912    ) -> ::cpp_core::CppBox<::qt_core::QString> {
74913        let ffi_result = {
74914            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_trUtf8(s, c, n)
74915        };
74916        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
74917    }
74918}
74919
74920impl ::qt_core::AsReceiver for crate::SignalOfDepthFunction {
74921    type Arguments = (crate::q_depth_test::DepthFunction,);
74922    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
74923        unsafe {
74924            ::qt_core::Receiver::new(
74925                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74926                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74927                    b"2emit_(Qt3DRender::QDepthTest::DepthFunction)\0",
74928                ),
74929            )
74930        }
74931    }
74932}
74933
74934impl crate::SignalOfDepthFunction {
74935    /// Connects this signal to another signal or slot.
74936    ///
74937    /// This is a shortcut for `self.signal().connect(receiver)`.
74938
74939    pub unsafe fn connect_with_type<R>(
74940        &self,
74941        connection_type: ::qt_core::ConnectionType,
74942        receiver: R,
74943    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74944    where
74945        R: ::qt_core::AsReceiver,
74946        (crate::q_depth_test::DepthFunction,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74947    {
74948        self.signal().connect_with_type(connection_type, receiver)
74949    }
74950
74951    /// Connects this signal to another signal or slot, using auto connection type.
74952    ///
74953    /// This is a shortcut for `self.signal().connect(receiver)`.
74954
74955    pub unsafe fn connect<R>(
74956        &self,
74957        receiver: R,
74958    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
74959    where
74960        R: ::qt_core::AsReceiver,
74961        (crate::q_depth_test::DepthFunction,): ::qt_core::ArgumentsCompatible<R::Arguments>,
74962    {
74963        self.signal().connect(receiver)
74964    }
74965}
74966
74967/// Emits a Qt signal with arguments `crate::q_depth_test::DepthFunction`.
74968///
74969/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QDepthTest::DepthFunction```</span>).
74970///
74971/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
74972#[repr(C)]
74973pub struct SignalOfDepthFunction {
74974    _unused: u8,
74975}
74976impl SignalOfDepthFunction {
74977    /// Returns a `Signal` object representing the signal.
74978    ///
74979    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
74980    #[inline(always)]
74981    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_depth_test::DepthFunction,)> {
74982        unsafe {
74983            ::qt_core::Signal::new(
74984                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
74985                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
74986                    b"2emit_(Qt3DRender::QDepthTest::DepthFunction)\0",
74987                ),
74988            )
74989        }
74990    }
74991
74992    /// Emits the signal.
74993    #[inline(always)]
74994    pub unsafe fn emit(&self, arg0: crate::q_depth_test::DepthFunction) {
74995        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_emit_(self as *const crate::SignalOfDepthFunction as *mut crate::SignalOfDepthFunction, arg0)
74996    }
74997
74998    #[inline(always)]
74999    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
75000        let ffi_result = {
75001            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_metaObject(self as *const crate::SignalOfDepthFunction)
75002        };
75003        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75004    }
75005
75006    /// Creates a new object.
75007    #[inline(always)]
75008    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfDepthFunction> {
75009        let ffi_result = {
75010            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction()
75011        };
75012        ::qt_core::QBox::from_raw(ffi_result)
75013    }
75014
75015    #[inline(always)]
75016    pub unsafe fn qt_metacall(
75017        &self,
75018        arg1: ::qt_core::q_meta_object::Call,
75019        arg2: ::std::os::raw::c_int,
75020        arg3: *mut *mut ::std::ffi::c_void,
75021    ) -> ::std::os::raw::c_int {
75022        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_qt_metacall(self as *const crate::SignalOfDepthFunction as *mut crate::SignalOfDepthFunction, arg1, arg2, arg3)
75023    }
75024
75025    #[inline(always)]
75026    pub unsafe fn qt_metacast(
75027        &self,
75028        arg1: *const ::std::os::raw::c_char,
75029    ) -> *mut ::std::ffi::c_void {
75030        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_qt_metacast(self as *const crate::SignalOfDepthFunction as *mut crate::SignalOfDepthFunction, arg1)
75031    }
75032
75033    #[inline(always)]
75034    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
75035        let ffi_result = {
75036            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_staticMetaObject()
75037        };
75038        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75039            .expect("attempted to construct a null Ref")
75040    }
75041
75042    #[inline(always)]
75043    pub unsafe fn tr(
75044        s: *const ::std::os::raw::c_char,
75045        c: *const ::std::os::raw::c_char,
75046        n: ::std::os::raw::c_int,
75047    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75048        let ffi_result = {
75049            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_tr(s, c, n)
75050        };
75051        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75052    }
75053
75054    #[inline(always)]
75055    pub unsafe fn tr_utf8(
75056        s: *const ::std::os::raw::c_char,
75057        c: *const ::std::os::raw::c_char,
75058        n: ::std::os::raw::c_int,
75059    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75060        let ffi_result = {
75061            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_trUtf8(s, c, n)
75062        };
75063        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75064    }
75065}
75066
75067impl ::qt_core::AsReceiver for crate::SignalOfWindingDirection {
75068    type Arguments = (crate::q_front_face::WindingDirection,);
75069    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
75070        unsafe {
75071            ::qt_core::Receiver::new(
75072                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75073                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75074                    b"2emit_(Qt3DRender::QFrontFace::WindingDirection)\0",
75075                ),
75076            )
75077        }
75078    }
75079}
75080
75081impl crate::SignalOfWindingDirection {
75082    /// Connects this signal to another signal or slot.
75083    ///
75084    /// This is a shortcut for `self.signal().connect(receiver)`.
75085
75086    pub unsafe fn connect_with_type<R>(
75087        &self,
75088        connection_type: ::qt_core::ConnectionType,
75089        receiver: R,
75090    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75091    where
75092        R: ::qt_core::AsReceiver,
75093        (crate::q_front_face::WindingDirection,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75094    {
75095        self.signal().connect_with_type(connection_type, receiver)
75096    }
75097
75098    /// Connects this signal to another signal or slot, using auto connection type.
75099    ///
75100    /// This is a shortcut for `self.signal().connect(receiver)`.
75101
75102    pub unsafe fn connect<R>(
75103        &self,
75104        receiver: R,
75105    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75106    where
75107        R: ::qt_core::AsReceiver,
75108        (crate::q_front_face::WindingDirection,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75109    {
75110        self.signal().connect(receiver)
75111    }
75112}
75113
75114/// Emits a Qt signal with arguments `crate::q_front_face::WindingDirection`.
75115///
75116/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QFrontFace::WindingDirection```</span>).
75117///
75118/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
75119#[repr(C)]
75120pub struct SignalOfWindingDirection {
75121    _unused: u8,
75122}
75123impl SignalOfWindingDirection {
75124    /// Returns a `Signal` object representing the signal.
75125    ///
75126    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
75127    #[inline(always)]
75128    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_front_face::WindingDirection,)> {
75129        unsafe {
75130            ::qt_core::Signal::new(
75131                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75132                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75133                    b"2emit_(Qt3DRender::QFrontFace::WindingDirection)\0",
75134                ),
75135            )
75136        }
75137    }
75138
75139    /// Emits the signal.
75140    #[inline(always)]
75141    pub unsafe fn emit(&self, arg0: crate::q_front_face::WindingDirection) {
75142        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_emit_(self as *const crate::SignalOfWindingDirection as *mut crate::SignalOfWindingDirection, arg0)
75143    }
75144
75145    #[inline(always)]
75146    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
75147        let ffi_result = {
75148            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_metaObject(self as *const crate::SignalOfWindingDirection)
75149        };
75150        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75151    }
75152
75153    /// Creates a new object.
75154    #[inline(always)]
75155    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfWindingDirection> {
75156        let ffi_result = {
75157            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection()
75158        };
75159        ::qt_core::QBox::from_raw(ffi_result)
75160    }
75161
75162    #[inline(always)]
75163    pub unsafe fn qt_metacall(
75164        &self,
75165        arg1: ::qt_core::q_meta_object::Call,
75166        arg2: ::std::os::raw::c_int,
75167        arg3: *mut *mut ::std::ffi::c_void,
75168    ) -> ::std::os::raw::c_int {
75169        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_qt_metacall(self as *const crate::SignalOfWindingDirection as *mut crate::SignalOfWindingDirection, arg1, arg2, arg3)
75170    }
75171
75172    #[inline(always)]
75173    pub unsafe fn qt_metacast(
75174        &self,
75175        arg1: *const ::std::os::raw::c_char,
75176    ) -> *mut ::std::ffi::c_void {
75177        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_qt_metacast(self as *const crate::SignalOfWindingDirection as *mut crate::SignalOfWindingDirection, arg1)
75178    }
75179
75180    #[inline(always)]
75181    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
75182        let ffi_result = {
75183            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_staticMetaObject()
75184        };
75185        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75186            .expect("attempted to construct a null Ref")
75187    }
75188
75189    #[inline(always)]
75190    pub unsafe fn tr(
75191        s: *const ::std::os::raw::c_char,
75192        c: *const ::std::os::raw::c_char,
75193        n: ::std::os::raw::c_int,
75194    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75195        let ffi_result = {
75196            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_tr(s, c, n)
75197        };
75198        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75199    }
75200
75201    #[inline(always)]
75202    pub unsafe fn tr_utf8(
75203        s: *const ::std::os::raw::c_char,
75204        c: *const ::std::os::raw::c_char,
75205        n: ::std::os::raw::c_int,
75206    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75207        let ffi_result = {
75208            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_trUtf8(s, c, n)
75209        };
75210        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75211    }
75212}
75213
75214impl ::qt_core::AsReceiver for crate::SignalOfStencilFunction {
75215    type Arguments = (crate::q_stencil_test_arguments::StencilFunction,);
75216    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
75217        unsafe {
75218            ::qt_core::Receiver::new(
75219                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75220                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75221                    b"2emit_(Qt3DRender::QStencilTestArguments::StencilFunction)\0",
75222                ),
75223            )
75224        }
75225    }
75226}
75227
75228impl crate::SignalOfStencilFunction {
75229    /// Connects this signal to another signal or slot.
75230    ///
75231    /// This is a shortcut for `self.signal().connect(receiver)`.
75232
75233    pub unsafe fn connect_with_type<R>(
75234        &self,
75235        connection_type: ::qt_core::ConnectionType,
75236        receiver: R,
75237    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75238    where
75239        R: ::qt_core::AsReceiver,
75240        (crate::q_stencil_test_arguments::StencilFunction,):
75241            ::qt_core::ArgumentsCompatible<R::Arguments>,
75242    {
75243        self.signal().connect_with_type(connection_type, receiver)
75244    }
75245
75246    /// Connects this signal to another signal or slot, using auto connection type.
75247    ///
75248    /// This is a shortcut for `self.signal().connect(receiver)`.
75249
75250    pub unsafe fn connect<R>(
75251        &self,
75252        receiver: R,
75253    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75254    where
75255        R: ::qt_core::AsReceiver,
75256        (crate::q_stencil_test_arguments::StencilFunction,):
75257            ::qt_core::ArgumentsCompatible<R::Arguments>,
75258    {
75259        self.signal().connect(receiver)
75260    }
75261}
75262
75263/// Emits a Qt signal with arguments `crate::q_stencil_test_arguments::StencilFunction`.
75264///
75265/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QStencilTestArguments::StencilFunction```</span>).
75266///
75267/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
75268#[repr(C)]
75269pub struct SignalOfStencilFunction {
75270    _unused: u8,
75271}
75272impl SignalOfStencilFunction {
75273    /// Returns a `Signal` object representing the signal.
75274    ///
75275    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
75276    #[inline(always)]
75277    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_stencil_test_arguments::StencilFunction,)> {
75278        unsafe {
75279            ::qt_core::Signal::new(
75280                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75281                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75282                    b"2emit_(Qt3DRender::QStencilTestArguments::StencilFunction)\0",
75283                ),
75284            )
75285        }
75286    }
75287
75288    /// Emits the signal.
75289    #[inline(always)]
75290    pub unsafe fn emit(&self, arg0: crate::q_stencil_test_arguments::StencilFunction) {
75291        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_emit_(self as *const crate::SignalOfStencilFunction as *mut crate::SignalOfStencilFunction, arg0)
75292    }
75293
75294    #[inline(always)]
75295    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
75296        let ffi_result = {
75297            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_metaObject(self as *const crate::SignalOfStencilFunction)
75298        };
75299        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75300    }
75301
75302    /// Creates a new object.
75303    #[inline(always)]
75304    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfStencilFunction> {
75305        let ffi_result = {
75306            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction()
75307        };
75308        ::qt_core::QBox::from_raw(ffi_result)
75309    }
75310
75311    #[inline(always)]
75312    pub unsafe fn qt_metacall(
75313        &self,
75314        arg1: ::qt_core::q_meta_object::Call,
75315        arg2: ::std::os::raw::c_int,
75316        arg3: *mut *mut ::std::ffi::c_void,
75317    ) -> ::std::os::raw::c_int {
75318        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_qt_metacall(self as *const crate::SignalOfStencilFunction as *mut crate::SignalOfStencilFunction, arg1, arg2, arg3)
75319    }
75320
75321    #[inline(always)]
75322    pub unsafe fn qt_metacast(
75323        &self,
75324        arg1: *const ::std::os::raw::c_char,
75325    ) -> *mut ::std::ffi::c_void {
75326        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_qt_metacast(self as *const crate::SignalOfStencilFunction as *mut crate::SignalOfStencilFunction, arg1)
75327    }
75328
75329    #[inline(always)]
75330    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
75331        let ffi_result = {
75332            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_staticMetaObject()
75333        };
75334        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75335            .expect("attempted to construct a null Ref")
75336    }
75337
75338    #[inline(always)]
75339    pub unsafe fn tr(
75340        s: *const ::std::os::raw::c_char,
75341        c: *const ::std::os::raw::c_char,
75342        n: ::std::os::raw::c_int,
75343    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75344        let ffi_result = {
75345            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_tr(s, c, n)
75346        };
75347        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75348    }
75349
75350    #[inline(always)]
75351    pub unsafe fn tr_utf8(
75352        s: *const ::std::os::raw::c_char,
75353        c: *const ::std::os::raw::c_char,
75354        n: ::std::os::raw::c_int,
75355    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75356        let ffi_result = {
75357            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_trUtf8(s, c, n)
75358        };
75359        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75360    }
75361}
75362
75363impl ::qt_core::AsReceiver for crate::SignalOfComparisonMode {
75364    type Arguments = (crate::q_abstract_texture::ComparisonMode,);
75365    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
75366        unsafe {
75367            ::qt_core::Receiver::new(
75368                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75369                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75370                    b"2emit_(Qt3DRender::QAbstractTexture::ComparisonMode)\0",
75371                ),
75372            )
75373        }
75374    }
75375}
75376
75377impl crate::SignalOfComparisonMode {
75378    /// Connects this signal to another signal or slot.
75379    ///
75380    /// This is a shortcut for `self.signal().connect(receiver)`.
75381
75382    pub unsafe fn connect_with_type<R>(
75383        &self,
75384        connection_type: ::qt_core::ConnectionType,
75385        receiver: R,
75386    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75387    where
75388        R: ::qt_core::AsReceiver,
75389        (crate::q_abstract_texture::ComparisonMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75390    {
75391        self.signal().connect_with_type(connection_type, receiver)
75392    }
75393
75394    /// Connects this signal to another signal or slot, using auto connection type.
75395    ///
75396    /// This is a shortcut for `self.signal().connect(receiver)`.
75397
75398    pub unsafe fn connect<R>(
75399        &self,
75400        receiver: R,
75401    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75402    where
75403        R: ::qt_core::AsReceiver,
75404        (crate::q_abstract_texture::ComparisonMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75405    {
75406        self.signal().connect(receiver)
75407    }
75408}
75409
75410/// Emits a Qt signal with arguments `crate::q_abstract_texture::ComparisonMode`.
75411///
75412/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonMode```</span>).
75413///
75414/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
75415#[repr(C)]
75416pub struct SignalOfComparisonMode {
75417    _unused: u8,
75418}
75419impl SignalOfComparisonMode {
75420    /// Returns a `Signal` object representing the signal.
75421    ///
75422    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
75423    #[inline(always)]
75424    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::ComparisonMode,)> {
75425        unsafe {
75426            ::qt_core::Signal::new(
75427                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75428                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75429                    b"2emit_(Qt3DRender::QAbstractTexture::ComparisonMode)\0",
75430                ),
75431            )
75432        }
75433    }
75434
75435    /// Emits the signal.
75436    #[inline(always)]
75437    pub unsafe fn emit(&self, arg0: crate::q_abstract_texture::ComparisonMode) {
75438        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_emit_(self as *const crate::SignalOfComparisonMode as *mut crate::SignalOfComparisonMode, arg0)
75439    }
75440
75441    #[inline(always)]
75442    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
75443        let ffi_result = {
75444            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_metaObject(self as *const crate::SignalOfComparisonMode)
75445        };
75446        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75447    }
75448
75449    /// Creates a new object.
75450    #[inline(always)]
75451    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfComparisonMode> {
75452        let ffi_result = {
75453            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode()
75454        };
75455        ::qt_core::QBox::from_raw(ffi_result)
75456    }
75457
75458    #[inline(always)]
75459    pub unsafe fn qt_metacall(
75460        &self,
75461        arg1: ::qt_core::q_meta_object::Call,
75462        arg2: ::std::os::raw::c_int,
75463        arg3: *mut *mut ::std::ffi::c_void,
75464    ) -> ::std::os::raw::c_int {
75465        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_qt_metacall(self as *const crate::SignalOfComparisonMode as *mut crate::SignalOfComparisonMode, arg1, arg2, arg3)
75466    }
75467
75468    #[inline(always)]
75469    pub unsafe fn qt_metacast(
75470        &self,
75471        arg1: *const ::std::os::raw::c_char,
75472    ) -> *mut ::std::ffi::c_void {
75473        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_qt_metacast(self as *const crate::SignalOfComparisonMode as *mut crate::SignalOfComparisonMode, arg1)
75474    }
75475
75476    #[inline(always)]
75477    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
75478        let ffi_result = {
75479            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_staticMetaObject()
75480        };
75481        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75482            .expect("attempted to construct a null Ref")
75483    }
75484
75485    #[inline(always)]
75486    pub unsafe fn tr(
75487        s: *const ::std::os::raw::c_char,
75488        c: *const ::std::os::raw::c_char,
75489        n: ::std::os::raw::c_int,
75490    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75491        let ffi_result = {
75492            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_tr(s, c, n)
75493        };
75494        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75495    }
75496
75497    #[inline(always)]
75498    pub unsafe fn tr_utf8(
75499        s: *const ::std::os::raw::c_char,
75500        c: *const ::std::os::raw::c_char,
75501        n: ::std::os::raw::c_int,
75502    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75503        let ffi_result = {
75504            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_trUtf8(s, c, n)
75505        };
75506        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75507    }
75508}
75509
75510impl ::qt_core::AsReceiver for crate::SignalOfBufferType2 {
75511    type Arguments = (crate::q_clear_buffers::BufferType,);
75512    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
75513        unsafe {
75514            ::qt_core::Receiver::new(
75515                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75516                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75517                    b"2emit_(Qt3DRender::QClearBuffers::BufferType)\0",
75518                ),
75519            )
75520        }
75521    }
75522}
75523
75524impl crate::SignalOfBufferType2 {
75525    /// Connects this signal to another signal or slot.
75526    ///
75527    /// This is a shortcut for `self.signal().connect(receiver)`.
75528
75529    pub unsafe fn connect_with_type<R>(
75530        &self,
75531        connection_type: ::qt_core::ConnectionType,
75532        receiver: R,
75533    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75534    where
75535        R: ::qt_core::AsReceiver,
75536        (crate::q_clear_buffers::BufferType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75537    {
75538        self.signal().connect_with_type(connection_type, receiver)
75539    }
75540
75541    /// Connects this signal to another signal or slot, using auto connection type.
75542    ///
75543    /// This is a shortcut for `self.signal().connect(receiver)`.
75544
75545    pub unsafe fn connect<R>(
75546        &self,
75547        receiver: R,
75548    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75549    where
75550        R: ::qt_core::AsReceiver,
75551        (crate::q_clear_buffers::BufferType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75552    {
75553        self.signal().connect(receiver)
75554    }
75555}
75556
75557/// Emits a Qt signal with arguments `crate::q_clear_buffers::BufferType`.
75558///
75559/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QClearBuffers::BufferType```</span>).
75560///
75561/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
75562#[repr(C)]
75563pub struct SignalOfBufferType2 {
75564    _unused: u8,
75565}
75566impl SignalOfBufferType2 {
75567    /// Returns a `Signal` object representing the signal.
75568    ///
75569    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
75570    #[inline(always)]
75571    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_clear_buffers::BufferType,)> {
75572        unsafe {
75573            ::qt_core::Signal::new(
75574                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75575                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75576                    b"2emit_(Qt3DRender::QClearBuffers::BufferType)\0",
75577                ),
75578            )
75579        }
75580    }
75581
75582    /// Emits the signal.
75583    #[inline(always)]
75584    pub unsafe fn emit(&self, arg0: crate::q_clear_buffers::BufferType) {
75585        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_emit_(self as *const crate::SignalOfBufferType2 as *mut crate::SignalOfBufferType2, arg0)
75586    }
75587
75588    #[inline(always)]
75589    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
75590        let ffi_result = {
75591            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_metaObject(self as *const crate::SignalOfBufferType2)
75592        };
75593        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75594    }
75595
75596    /// Creates a new object.
75597    #[inline(always)]
75598    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfBufferType2> {
75599        let ffi_result = {
75600            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType()
75601        };
75602        ::qt_core::QBox::from_raw(ffi_result)
75603    }
75604
75605    #[inline(always)]
75606    pub unsafe fn qt_metacall(
75607        &self,
75608        arg1: ::qt_core::q_meta_object::Call,
75609        arg2: ::std::os::raw::c_int,
75610        arg3: *mut *mut ::std::ffi::c_void,
75611    ) -> ::std::os::raw::c_int {
75612        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_qt_metacall(self as *const crate::SignalOfBufferType2 as *mut crate::SignalOfBufferType2, arg1, arg2, arg3)
75613    }
75614
75615    #[inline(always)]
75616    pub unsafe fn qt_metacast(
75617        &self,
75618        arg1: *const ::std::os::raw::c_char,
75619    ) -> *mut ::std::ffi::c_void {
75620        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_qt_metacast(self as *const crate::SignalOfBufferType2 as *mut crate::SignalOfBufferType2, arg1)
75621    }
75622
75623    #[inline(always)]
75624    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
75625        let ffi_result = {
75626            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_staticMetaObject()
75627        };
75628        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75629            .expect("attempted to construct a null Ref")
75630    }
75631
75632    #[inline(always)]
75633    pub unsafe fn tr(
75634        s: *const ::std::os::raw::c_char,
75635        c: *const ::std::os::raw::c_char,
75636        n: ::std::os::raw::c_int,
75637    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75638        let ffi_result = {
75639            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_tr(s, c, n)
75640        };
75641        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75642    }
75643
75644    #[inline(always)]
75645    pub unsafe fn tr_utf8(
75646        s: *const ::std::os::raw::c_char,
75647        c: *const ::std::os::raw::c_char,
75648        n: ::std::os::raw::c_int,
75649    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75650        let ffi_result = {
75651            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_trUtf8(s, c, n)
75652        };
75653        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75654    }
75655}
75656
75657impl ::qt_core::AsReceiver for crate::SignalOfQVectorOfSortType {
75658    type Arguments = (*const crate::QVectorOfSortType,);
75659    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
75660        unsafe {
75661            ::qt_core::Receiver::new(
75662                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75663                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75664                    b"2emit_(QVector< Qt3DRender::QSortPolicy::SortType > const &)\0",
75665                ),
75666            )
75667        }
75668    }
75669}
75670
75671impl crate::SignalOfQVectorOfSortType {
75672    /// Connects this signal to another signal or slot.
75673    ///
75674    /// This is a shortcut for `self.signal().connect(receiver)`.
75675
75676    pub unsafe fn connect_with_type<R>(
75677        &self,
75678        connection_type: ::qt_core::ConnectionType,
75679        receiver: R,
75680    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75681    where
75682        R: ::qt_core::AsReceiver,
75683        (*const crate::QVectorOfSortType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75684    {
75685        self.signal().connect_with_type(connection_type, receiver)
75686    }
75687
75688    /// Connects this signal to another signal or slot, using auto connection type.
75689    ///
75690    /// This is a shortcut for `self.signal().connect(receiver)`.
75691
75692    pub unsafe fn connect<R>(
75693        &self,
75694        receiver: R,
75695    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75696    where
75697        R: ::qt_core::AsReceiver,
75698        (*const crate::QVectorOfSortType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75699    {
75700        self.signal().connect(receiver)
75701    }
75702}
75703
75704/// Emits a Qt signal with arguments `*const crate::QVectorOfSortType`.
75705///
75706/// Corresponding C++ argument types: (<span style='color: green;'>```const QVector<Qt3DRender::QSortPolicy::SortType>&```</span>).
75707///
75708/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
75709#[repr(C)]
75710pub struct SignalOfQVectorOfSortType {
75711    _unused: u8,
75712}
75713impl SignalOfQVectorOfSortType {
75714    /// Returns a `Signal` object representing the signal.
75715    ///
75716    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
75717    #[inline(always)]
75718    pub fn signal(&self) -> ::qt_core::Signal<(*const crate::QVectorOfSortType,)> {
75719        unsafe {
75720            ::qt_core::Signal::new(
75721                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75722                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75723                    b"2emit_(QVector< Qt3DRender::QSortPolicy::SortType > const &)\0",
75724                ),
75725            )
75726        }
75727    }
75728
75729    /// Emits the signal.
75730    #[inline(always)]
75731    pub unsafe fn emit(
75732        &self,
75733        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
75734    ) {
75735        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_emit_(self as *const crate::SignalOfQVectorOfSortType as *mut crate::SignalOfQVectorOfSortType, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(arg0).as_raw_ptr())
75736    }
75737
75738    #[inline(always)]
75739    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
75740        let ffi_result = {
75741            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_metaObject(self as *const crate::SignalOfQVectorOfSortType)
75742        };
75743        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75744    }
75745
75746    /// Creates a new object.
75747    #[inline(always)]
75748    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQVectorOfSortType> {
75749        let ffi_result = {
75750            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref()
75751        };
75752        ::qt_core::QBox::from_raw(ffi_result)
75753    }
75754
75755    #[inline(always)]
75756    pub unsafe fn qt_metacall(
75757        &self,
75758        arg1: ::qt_core::q_meta_object::Call,
75759        arg2: ::std::os::raw::c_int,
75760        arg3: *mut *mut ::std::ffi::c_void,
75761    ) -> ::std::os::raw::c_int {
75762        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_qt_metacall(self as *const crate::SignalOfQVectorOfSortType as *mut crate::SignalOfQVectorOfSortType, arg1, arg2, arg3)
75763    }
75764
75765    #[inline(always)]
75766    pub unsafe fn qt_metacast(
75767        &self,
75768        arg1: *const ::std::os::raw::c_char,
75769    ) -> *mut ::std::ffi::c_void {
75770        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_qt_metacast(self as *const crate::SignalOfQVectorOfSortType as *mut crate::SignalOfQVectorOfSortType, arg1)
75771    }
75772
75773    #[inline(always)]
75774    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
75775        let ffi_result = {
75776            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_staticMetaObject()
75777        };
75778        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75779            .expect("attempted to construct a null Ref")
75780    }
75781
75782    #[inline(always)]
75783    pub unsafe fn tr(
75784        s: *const ::std::os::raw::c_char,
75785        c: *const ::std::os::raw::c_char,
75786        n: ::std::os::raw::c_int,
75787    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75788        let ffi_result = {
75789            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_tr(s, c, n)
75790        };
75791        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75792    }
75793
75794    #[inline(always)]
75795    pub unsafe fn tr_utf8(
75796        s: *const ::std::os::raw::c_char,
75797        c: *const ::std::os::raw::c_char,
75798        n: ::std::os::raw::c_int,
75799    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75800        let ffi_result = {
75801            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_trUtf8(s, c, n)
75802        };
75803        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75804    }
75805}
75806
75807impl ::qt_core::AsReceiver for crate::SignalOfUint {
75808    type Arguments = (::std::os::raw::c_uint,);
75809    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
75810        unsafe {
75811            ::qt_core::Receiver::new(
75812                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75813                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(unsigned int)\0"),
75814            )
75815        }
75816    }
75817}
75818
75819impl crate::SignalOfUint {
75820    /// Connects this signal to another signal or slot.
75821    ///
75822    /// This is a shortcut for `self.signal().connect(receiver)`.
75823
75824    pub unsafe fn connect_with_type<R>(
75825        &self,
75826        connection_type: ::qt_core::ConnectionType,
75827        receiver: R,
75828    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75829    where
75830        R: ::qt_core::AsReceiver,
75831        (::std::os::raw::c_uint,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75832    {
75833        self.signal().connect_with_type(connection_type, receiver)
75834    }
75835
75836    /// Connects this signal to another signal or slot, using auto connection type.
75837    ///
75838    /// This is a shortcut for `self.signal().connect(receiver)`.
75839
75840    pub unsafe fn connect<R>(
75841        &self,
75842        receiver: R,
75843    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75844    where
75845        R: ::qt_core::AsReceiver,
75846        (::std::os::raw::c_uint,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75847    {
75848        self.signal().connect(receiver)
75849    }
75850}
75851
75852/// Emits a Qt signal with arguments `::std::os::raw::c_uint`.
75853///
75854/// Corresponding C++ argument types: (<span style='color: green;'>```unsigned int```</span>).
75855///
75856/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
75857#[repr(C)]
75858pub struct SignalOfUint {
75859    _unused: u8,
75860}
75861impl SignalOfUint {
75862    /// Returns a `Signal` object representing the signal.
75863    ///
75864    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
75865    #[inline(always)]
75866    pub fn signal(&self) -> ::qt_core::Signal<(::std::os::raw::c_uint,)> {
75867        unsafe {
75868            ::qt_core::Signal::new(
75869                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75870                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(unsigned int)\0"),
75871            )
75872        }
75873    }
75874
75875    /// Emits the signal.
75876    #[inline(always)]
75877    pub unsafe fn emit(&self, arg0: ::std::os::raw::c_uint) {
75878        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_emit_(
75879            self as *const crate::SignalOfUint as *mut crate::SignalOfUint,
75880            arg0,
75881        )
75882    }
75883
75884    #[inline(always)]
75885    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
75886        let ffi_result = {
75887            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_metaObject(self as *const crate::SignalOfUint)
75888        };
75889        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75890    }
75891
75892    /// Creates a new object.
75893    #[inline(always)]
75894    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfUint> {
75895        let ffi_result = {
75896            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int()
75897        };
75898        ::qt_core::QBox::from_raw(ffi_result)
75899    }
75900
75901    #[inline(always)]
75902    pub unsafe fn qt_metacall(
75903        &self,
75904        arg1: ::qt_core::q_meta_object::Call,
75905        arg2: ::std::os::raw::c_int,
75906        arg3: *mut *mut ::std::ffi::c_void,
75907    ) -> ::std::os::raw::c_int {
75908        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_qt_metacall(self as *const crate::SignalOfUint as *mut crate::SignalOfUint, arg1, arg2, arg3)
75909    }
75910
75911    #[inline(always)]
75912    pub unsafe fn qt_metacast(
75913        &self,
75914        arg1: *const ::std::os::raw::c_char,
75915    ) -> *mut ::std::ffi::c_void {
75916        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_qt_metacast(self as *const crate::SignalOfUint as *mut crate::SignalOfUint, arg1)
75917    }
75918
75919    #[inline(always)]
75920    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
75921        let ffi_result = {
75922            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_staticMetaObject()
75923        };
75924        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
75925            .expect("attempted to construct a null Ref")
75926    }
75927
75928    #[inline(always)]
75929    pub unsafe fn tr(
75930        s: *const ::std::os::raw::c_char,
75931        c: *const ::std::os::raw::c_char,
75932        n: ::std::os::raw::c_int,
75933    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75934        let ffi_result = {
75935            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_tr(
75936                s, c, n,
75937            )
75938        };
75939        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75940    }
75941
75942    #[inline(always)]
75943    pub unsafe fn tr_utf8(
75944        s: *const ::std::os::raw::c_char,
75945        c: *const ::std::os::raw::c_char,
75946        n: ::std::os::raw::c_int,
75947    ) -> ::cpp_core::CppBox<::qt_core::QString> {
75948        let ffi_result = {
75949            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_trUtf8(s, c, n)
75950        };
75951        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
75952    }
75953}
75954
75955impl ::qt_core::AsReceiver for crate::SignalOfStatus4 {
75956    type Arguments = (crate::q_scene_loader::Status,);
75957    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
75958        unsafe {
75959            ::qt_core::Receiver::new(
75960                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
75961                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
75962                    b"2emit_(Qt3DRender::QSceneLoader::Status)\0",
75963                ),
75964            )
75965        }
75966    }
75967}
75968
75969impl crate::SignalOfStatus4 {
75970    /// Connects this signal to another signal or slot.
75971    ///
75972    /// This is a shortcut for `self.signal().connect(receiver)`.
75973
75974    pub unsafe fn connect_with_type<R>(
75975        &self,
75976        connection_type: ::qt_core::ConnectionType,
75977        receiver: R,
75978    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75979    where
75980        R: ::qt_core::AsReceiver,
75981        (crate::q_scene_loader::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75982    {
75983        self.signal().connect_with_type(connection_type, receiver)
75984    }
75985
75986    /// Connects this signal to another signal or slot, using auto connection type.
75987    ///
75988    /// This is a shortcut for `self.signal().connect(receiver)`.
75989
75990    pub unsafe fn connect<R>(
75991        &self,
75992        receiver: R,
75993    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
75994    where
75995        R: ::qt_core::AsReceiver,
75996        (crate::q_scene_loader::Status,): ::qt_core::ArgumentsCompatible<R::Arguments>,
75997    {
75998        self.signal().connect(receiver)
75999    }
76000}
76001
76002/// Emits a Qt signal with arguments `crate::q_scene_loader::Status`.
76003///
76004/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QSceneLoader::Status```</span>).
76005///
76006/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
76007#[repr(C)]
76008pub struct SignalOfStatus4 {
76009    _unused: u8,
76010}
76011impl SignalOfStatus4 {
76012    /// Returns a `Signal` object representing the signal.
76013    ///
76014    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
76015    #[inline(always)]
76016    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_scene_loader::Status,)> {
76017        unsafe {
76018            ::qt_core::Signal::new(
76019                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76020                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76021                    b"2emit_(Qt3DRender::QSceneLoader::Status)\0",
76022                ),
76023            )
76024        }
76025    }
76026
76027    /// Emits the signal.
76028    #[inline(always)]
76029    pub unsafe fn emit(&self, arg0: crate::q_scene_loader::Status) {
76030        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_emit_(self as *const crate::SignalOfStatus4 as *mut crate::SignalOfStatus4, arg0)
76031    }
76032
76033    #[inline(always)]
76034    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
76035        let ffi_result = {
76036            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_metaObject(self as *const crate::SignalOfStatus4)
76037        };
76038        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76039    }
76040
76041    /// Creates a new object.
76042    #[inline(always)]
76043    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfStatus4> {
76044        let ffi_result = {
76045            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status()
76046        };
76047        ::qt_core::QBox::from_raw(ffi_result)
76048    }
76049
76050    #[inline(always)]
76051    pub unsafe fn qt_metacall(
76052        &self,
76053        arg1: ::qt_core::q_meta_object::Call,
76054        arg2: ::std::os::raw::c_int,
76055        arg3: *mut *mut ::std::ffi::c_void,
76056    ) -> ::std::os::raw::c_int {
76057        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_qt_metacall(self as *const crate::SignalOfStatus4 as *mut crate::SignalOfStatus4, arg1, arg2, arg3)
76058    }
76059
76060    #[inline(always)]
76061    pub unsafe fn qt_metacast(
76062        &self,
76063        arg1: *const ::std::os::raw::c_char,
76064    ) -> *mut ::std::ffi::c_void {
76065        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_qt_metacast(self as *const crate::SignalOfStatus4 as *mut crate::SignalOfStatus4, arg1)
76066    }
76067
76068    #[inline(always)]
76069    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
76070        let ffi_result = {
76071            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_staticMetaObject()
76072        };
76073        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76074            .expect("attempted to construct a null Ref")
76075    }
76076
76077    #[inline(always)]
76078    pub unsafe fn tr(
76079        s: *const ::std::os::raw::c_char,
76080        c: *const ::std::os::raw::c_char,
76081        n: ::std::os::raw::c_int,
76082    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76083        let ffi_result = {
76084            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_tr(s, c, n)
76085        };
76086        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76087    }
76088
76089    #[inline(always)]
76090    pub unsafe fn tr_utf8(
76091        s: *const ::std::os::raw::c_char,
76092        c: *const ::std::os::raw::c_char,
76093        n: ::std::os::raw::c_int,
76094    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76095        let ffi_result = {
76096            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_trUtf8(s, c, n)
76097        };
76098        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76099    }
76100}
76101
76102impl ::qt_core::AsReceiver for crate::SignalOfTextureFormat {
76103    type Arguments = (crate::q_abstract_texture::TextureFormat,);
76104    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
76105        unsafe {
76106            ::qt_core::Receiver::new(
76107                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76108                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76109                    b"2emit_(Qt3DRender::QAbstractTexture::TextureFormat)\0",
76110                ),
76111            )
76112        }
76113    }
76114}
76115
76116impl crate::SignalOfTextureFormat {
76117    /// Connects this signal to another signal or slot.
76118    ///
76119    /// This is a shortcut for `self.signal().connect(receiver)`.
76120
76121    pub unsafe fn connect_with_type<R>(
76122        &self,
76123        connection_type: ::qt_core::ConnectionType,
76124        receiver: R,
76125    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76126    where
76127        R: ::qt_core::AsReceiver,
76128        (crate::q_abstract_texture::TextureFormat,): ::qt_core::ArgumentsCompatible<R::Arguments>,
76129    {
76130        self.signal().connect_with_type(connection_type, receiver)
76131    }
76132
76133    /// Connects this signal to another signal or slot, using auto connection type.
76134    ///
76135    /// This is a shortcut for `self.signal().connect(receiver)`.
76136
76137    pub unsafe fn connect<R>(
76138        &self,
76139        receiver: R,
76140    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76141    where
76142        R: ::qt_core::AsReceiver,
76143        (crate::q_abstract_texture::TextureFormat,): ::qt_core::ArgumentsCompatible<R::Arguments>,
76144    {
76145        self.signal().connect(receiver)
76146    }
76147}
76148
76149/// Emits a Qt signal with arguments `crate::q_abstract_texture::TextureFormat`.
76150///
76151/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::TextureFormat```</span>).
76152///
76153/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
76154#[repr(C)]
76155pub struct SignalOfTextureFormat {
76156    _unused: u8,
76157}
76158impl SignalOfTextureFormat {
76159    /// Returns a `Signal` object representing the signal.
76160    ///
76161    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
76162    #[inline(always)]
76163    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::TextureFormat,)> {
76164        unsafe {
76165            ::qt_core::Signal::new(
76166                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76167                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76168                    b"2emit_(Qt3DRender::QAbstractTexture::TextureFormat)\0",
76169                ),
76170            )
76171        }
76172    }
76173
76174    /// Emits the signal.
76175    #[inline(always)]
76176    pub unsafe fn emit(&self, arg0: crate::q_abstract_texture::TextureFormat) {
76177        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_emit_(self as *const crate::SignalOfTextureFormat as *mut crate::SignalOfTextureFormat, arg0)
76178    }
76179
76180    #[inline(always)]
76181    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
76182        let ffi_result = {
76183            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_metaObject(self as *const crate::SignalOfTextureFormat)
76184        };
76185        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76186    }
76187
76188    /// Creates a new object.
76189    #[inline(always)]
76190    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfTextureFormat> {
76191        let ffi_result = {
76192            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat()
76193        };
76194        ::qt_core::QBox::from_raw(ffi_result)
76195    }
76196
76197    #[inline(always)]
76198    pub unsafe fn qt_metacall(
76199        &self,
76200        arg1: ::qt_core::q_meta_object::Call,
76201        arg2: ::std::os::raw::c_int,
76202        arg3: *mut *mut ::std::ffi::c_void,
76203    ) -> ::std::os::raw::c_int {
76204        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_qt_metacall(self as *const crate::SignalOfTextureFormat as *mut crate::SignalOfTextureFormat, arg1, arg2, arg3)
76205    }
76206
76207    #[inline(always)]
76208    pub unsafe fn qt_metacast(
76209        &self,
76210        arg1: *const ::std::os::raw::c_char,
76211    ) -> *mut ::std::ffi::c_void {
76212        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_qt_metacast(self as *const crate::SignalOfTextureFormat as *mut crate::SignalOfTextureFormat, arg1)
76213    }
76214
76215    #[inline(always)]
76216    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
76217        let ffi_result = {
76218            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_staticMetaObject()
76219        };
76220        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76221            .expect("attempted to construct a null Ref")
76222    }
76223
76224    #[inline(always)]
76225    pub unsafe fn tr(
76226        s: *const ::std::os::raw::c_char,
76227        c: *const ::std::os::raw::c_char,
76228        n: ::std::os::raw::c_int,
76229    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76230        let ffi_result = {
76231            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_tr(s, c, n)
76232        };
76233        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76234    }
76235
76236    #[inline(always)]
76237    pub unsafe fn tr_utf8(
76238        s: *const ::std::os::raw::c_char,
76239        c: *const ::std::os::raw::c_char,
76240        n: ::std::os::raw::c_int,
76241    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76242        let ffi_result = {
76243            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_trUtf8(s, c, n)
76244        };
76245        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76246    }
76247}
76248
76249impl ::qt_core::AsReceiver for crate::SignalOfPickResultMode {
76250    type Arguments = (crate::q_picking_settings::PickResultMode,);
76251    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
76252        unsafe {
76253            ::qt_core::Receiver::new(
76254                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76255                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76256                    b"2emit_(Qt3DRender::QPickingSettings::PickResultMode)\0",
76257                ),
76258            )
76259        }
76260    }
76261}
76262
76263impl crate::SignalOfPickResultMode {
76264    /// Connects this signal to another signal or slot.
76265    ///
76266    /// This is a shortcut for `self.signal().connect(receiver)`.
76267
76268    pub unsafe fn connect_with_type<R>(
76269        &self,
76270        connection_type: ::qt_core::ConnectionType,
76271        receiver: R,
76272    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76273    where
76274        R: ::qt_core::AsReceiver,
76275        (crate::q_picking_settings::PickResultMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
76276    {
76277        self.signal().connect_with_type(connection_type, receiver)
76278    }
76279
76280    /// Connects this signal to another signal or slot, using auto connection type.
76281    ///
76282    /// This is a shortcut for `self.signal().connect(receiver)`.
76283
76284    pub unsafe fn connect<R>(
76285        &self,
76286        receiver: R,
76287    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76288    where
76289        R: ::qt_core::AsReceiver,
76290        (crate::q_picking_settings::PickResultMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
76291    {
76292        self.signal().connect(receiver)
76293    }
76294}
76295
76296/// Emits a Qt signal with arguments `crate::q_picking_settings::PickResultMode`.
76297///
76298/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPickingSettings::PickResultMode```</span>).
76299///
76300/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
76301#[repr(C)]
76302pub struct SignalOfPickResultMode {
76303    _unused: u8,
76304}
76305impl SignalOfPickResultMode {
76306    /// Returns a `Signal` object representing the signal.
76307    ///
76308    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
76309    #[inline(always)]
76310    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_picking_settings::PickResultMode,)> {
76311        unsafe {
76312            ::qt_core::Signal::new(
76313                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76314                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76315                    b"2emit_(Qt3DRender::QPickingSettings::PickResultMode)\0",
76316                ),
76317            )
76318        }
76319    }
76320
76321    /// Emits the signal.
76322    #[inline(always)]
76323    pub unsafe fn emit(&self, arg0: crate::q_picking_settings::PickResultMode) {
76324        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_emit_(self as *const crate::SignalOfPickResultMode as *mut crate::SignalOfPickResultMode, arg0)
76325    }
76326
76327    #[inline(always)]
76328    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
76329        let ffi_result = {
76330            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_metaObject(self as *const crate::SignalOfPickResultMode)
76331        };
76332        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76333    }
76334
76335    /// Creates a new object.
76336    #[inline(always)]
76337    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfPickResultMode> {
76338        let ffi_result = {
76339            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode()
76340        };
76341        ::qt_core::QBox::from_raw(ffi_result)
76342    }
76343
76344    #[inline(always)]
76345    pub unsafe fn qt_metacall(
76346        &self,
76347        arg1: ::qt_core::q_meta_object::Call,
76348        arg2: ::std::os::raw::c_int,
76349        arg3: *mut *mut ::std::ffi::c_void,
76350    ) -> ::std::os::raw::c_int {
76351        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_qt_metacall(self as *const crate::SignalOfPickResultMode as *mut crate::SignalOfPickResultMode, arg1, arg2, arg3)
76352    }
76353
76354    #[inline(always)]
76355    pub unsafe fn qt_metacast(
76356        &self,
76357        arg1: *const ::std::os::raw::c_char,
76358    ) -> *mut ::std::ffi::c_void {
76359        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_qt_metacast(self as *const crate::SignalOfPickResultMode as *mut crate::SignalOfPickResultMode, arg1)
76360    }
76361
76362    #[inline(always)]
76363    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
76364        let ffi_result = {
76365            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_staticMetaObject()
76366        };
76367        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76368            .expect("attempted to construct a null Ref")
76369    }
76370
76371    #[inline(always)]
76372    pub unsafe fn tr(
76373        s: *const ::std::os::raw::c_char,
76374        c: *const ::std::os::raw::c_char,
76375        n: ::std::os::raw::c_int,
76376    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76377        let ffi_result = {
76378            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_tr(s, c, n)
76379        };
76380        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76381    }
76382
76383    #[inline(always)]
76384    pub unsafe fn tr_utf8(
76385        s: *const ::std::os::raw::c_char,
76386        c: *const ::std::os::raw::c_char,
76387        n: ::std::os::raw::c_int,
76388    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76389        let ffi_result = {
76390            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_trUtf8(s, c, n)
76391        };
76392        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76393    }
76394}
76395
76396impl ::qt_core::AsReceiver for crate::SignalOfFaceOrientationPickingMode {
76397    type Arguments = (crate::q_picking_settings::FaceOrientationPickingMode,);
76398    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
76399        unsafe {
76400            ::qt_core::Receiver::new(
76401                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76402                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76403                    b"2emit_(Qt3DRender::QPickingSettings::FaceOrientationPickingMode)\0",
76404                ),
76405            )
76406        }
76407    }
76408}
76409
76410impl crate::SignalOfFaceOrientationPickingMode {
76411    /// Connects this signal to another signal or slot.
76412    ///
76413    /// This is a shortcut for `self.signal().connect(receiver)`.
76414
76415    pub unsafe fn connect_with_type<R>(
76416        &self,
76417        connection_type: ::qt_core::ConnectionType,
76418        receiver: R,
76419    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76420    where
76421        R: ::qt_core::AsReceiver,
76422        (crate::q_picking_settings::FaceOrientationPickingMode,):
76423            ::qt_core::ArgumentsCompatible<R::Arguments>,
76424    {
76425        self.signal().connect_with_type(connection_type, receiver)
76426    }
76427
76428    /// Connects this signal to another signal or slot, using auto connection type.
76429    ///
76430    /// This is a shortcut for `self.signal().connect(receiver)`.
76431
76432    pub unsafe fn connect<R>(
76433        &self,
76434        receiver: R,
76435    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76436    where
76437        R: ::qt_core::AsReceiver,
76438        (crate::q_picking_settings::FaceOrientationPickingMode,):
76439            ::qt_core::ArgumentsCompatible<R::Arguments>,
76440    {
76441        self.signal().connect(receiver)
76442    }
76443}
76444
76445/// Emits a Qt signal with arguments `crate::q_picking_settings::FaceOrientationPickingMode`.
76446///
76447/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPickingSettings::FaceOrientationPickingMode```</span>).
76448///
76449/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
76450#[repr(C)]
76451pub struct SignalOfFaceOrientationPickingMode {
76452    _unused: u8,
76453}
76454impl SignalOfFaceOrientationPickingMode {
76455    /// Returns a `Signal` object representing the signal.
76456    ///
76457    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
76458    #[inline(always)]
76459    pub fn signal(
76460        &self,
76461    ) -> ::qt_core::Signal<(crate::q_picking_settings::FaceOrientationPickingMode,)> {
76462        unsafe {
76463            ::qt_core::Signal::new(
76464                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76465                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76466                    b"2emit_(Qt3DRender::QPickingSettings::FaceOrientationPickingMode)\0",
76467                ),
76468            )
76469        }
76470    }
76471
76472    /// Emits the signal.
76473    #[inline(always)]
76474    pub unsafe fn emit(&self, arg0: crate::q_picking_settings::FaceOrientationPickingMode) {
76475        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_emit_(self as *const crate::SignalOfFaceOrientationPickingMode as *mut crate::SignalOfFaceOrientationPickingMode, arg0)
76476    }
76477
76478    #[inline(always)]
76479    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
76480        let ffi_result = {
76481            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_metaObject(self as *const crate::SignalOfFaceOrientationPickingMode)
76482        };
76483        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76484    }
76485
76486    /// Creates a new object.
76487    #[inline(always)]
76488    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfFaceOrientationPickingMode> {
76489        let ffi_result = {
76490            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode()
76491        };
76492        ::qt_core::QBox::from_raw(ffi_result)
76493    }
76494
76495    #[inline(always)]
76496    pub unsafe fn qt_metacall(
76497        &self,
76498        arg1: ::qt_core::q_meta_object::Call,
76499        arg2: ::std::os::raw::c_int,
76500        arg3: *mut *mut ::std::ffi::c_void,
76501    ) -> ::std::os::raw::c_int {
76502        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_qt_metacall(self as *const crate::SignalOfFaceOrientationPickingMode as *mut crate::SignalOfFaceOrientationPickingMode, arg1, arg2, arg3)
76503    }
76504
76505    #[inline(always)]
76506    pub unsafe fn qt_metacast(
76507        &self,
76508        arg1: *const ::std::os::raw::c_char,
76509    ) -> *mut ::std::ffi::c_void {
76510        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_qt_metacast(self as *const crate::SignalOfFaceOrientationPickingMode as *mut crate::SignalOfFaceOrientationPickingMode, arg1)
76511    }
76512
76513    #[inline(always)]
76514    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
76515        let ffi_result = {
76516            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_staticMetaObject()
76517        };
76518        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76519            .expect("attempted to construct a null Ref")
76520    }
76521
76522    #[inline(always)]
76523    pub unsafe fn tr(
76524        s: *const ::std::os::raw::c_char,
76525        c: *const ::std::os::raw::c_char,
76526        n: ::std::os::raw::c_int,
76527    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76528        let ffi_result = {
76529            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_tr(s, c, n)
76530        };
76531        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76532    }
76533
76534    #[inline(always)]
76535    pub unsafe fn tr_utf8(
76536        s: *const ::std::os::raw::c_char,
76537        c: *const ::std::os::raw::c_char,
76538        n: ::std::os::raw::c_int,
76539    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76540        let ffi_result = {
76541            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_trUtf8(s, c, n)
76542        };
76543        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76544    }
76545}
76546
76547impl ::qt_core::AsReceiver for crate::SignalOfAttachmentPoint {
76548    type Arguments = (crate::q_render_target_output::AttachmentPoint,);
76549    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
76550        unsafe {
76551            ::qt_core::Receiver::new(
76552                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76553                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76554                    b"2emit_(Qt3DRender::QRenderTargetOutput::AttachmentPoint)\0",
76555                ),
76556            )
76557        }
76558    }
76559}
76560
76561impl crate::SignalOfAttachmentPoint {
76562    /// Connects this signal to another signal or slot.
76563    ///
76564    /// This is a shortcut for `self.signal().connect(receiver)`.
76565
76566    pub unsafe fn connect_with_type<R>(
76567        &self,
76568        connection_type: ::qt_core::ConnectionType,
76569        receiver: R,
76570    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76571    where
76572        R: ::qt_core::AsReceiver,
76573        (crate::q_render_target_output::AttachmentPoint,):
76574            ::qt_core::ArgumentsCompatible<R::Arguments>,
76575    {
76576        self.signal().connect_with_type(connection_type, receiver)
76577    }
76578
76579    /// Connects this signal to another signal or slot, using auto connection type.
76580    ///
76581    /// This is a shortcut for `self.signal().connect(receiver)`.
76582
76583    pub unsafe fn connect<R>(
76584        &self,
76585        receiver: R,
76586    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76587    where
76588        R: ::qt_core::AsReceiver,
76589        (crate::q_render_target_output::AttachmentPoint,):
76590            ::qt_core::ArgumentsCompatible<R::Arguments>,
76591    {
76592        self.signal().connect(receiver)
76593    }
76594}
76595
76596/// Emits a Qt signal with arguments `crate::q_render_target_output::AttachmentPoint`.
76597///
76598/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint```</span>).
76599///
76600/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
76601#[repr(C)]
76602pub struct SignalOfAttachmentPoint {
76603    _unused: u8,
76604}
76605impl SignalOfAttachmentPoint {
76606    /// Returns a `Signal` object representing the signal.
76607    ///
76608    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
76609    #[inline(always)]
76610    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_render_target_output::AttachmentPoint,)> {
76611        unsafe {
76612            ::qt_core::Signal::new(
76613                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76614                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76615                    b"2emit_(Qt3DRender::QRenderTargetOutput::AttachmentPoint)\0",
76616                ),
76617            )
76618        }
76619    }
76620
76621    /// Emits the signal.
76622    #[inline(always)]
76623    pub unsafe fn emit(&self, arg0: crate::q_render_target_output::AttachmentPoint) {
76624        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_emit_(self as *const crate::SignalOfAttachmentPoint as *mut crate::SignalOfAttachmentPoint, arg0)
76625    }
76626
76627    #[inline(always)]
76628    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
76629        let ffi_result = {
76630            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_metaObject(self as *const crate::SignalOfAttachmentPoint)
76631        };
76632        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76633    }
76634
76635    /// Creates a new object.
76636    #[inline(always)]
76637    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfAttachmentPoint> {
76638        let ffi_result = {
76639            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint()
76640        };
76641        ::qt_core::QBox::from_raw(ffi_result)
76642    }
76643
76644    #[inline(always)]
76645    pub unsafe fn qt_metacall(
76646        &self,
76647        arg1: ::qt_core::q_meta_object::Call,
76648        arg2: ::std::os::raw::c_int,
76649        arg3: *mut *mut ::std::ffi::c_void,
76650    ) -> ::std::os::raw::c_int {
76651        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_qt_metacall(self as *const crate::SignalOfAttachmentPoint as *mut crate::SignalOfAttachmentPoint, arg1, arg2, arg3)
76652    }
76653
76654    #[inline(always)]
76655    pub unsafe fn qt_metacast(
76656        &self,
76657        arg1: *const ::std::os::raw::c_char,
76658    ) -> *mut ::std::ffi::c_void {
76659        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_qt_metacast(self as *const crate::SignalOfAttachmentPoint as *mut crate::SignalOfAttachmentPoint, arg1)
76660    }
76661
76662    #[inline(always)]
76663    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
76664        let ffi_result = {
76665            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_staticMetaObject()
76666        };
76667        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76668            .expect("attempted to construct a null Ref")
76669    }
76670
76671    #[inline(always)]
76672    pub unsafe fn tr(
76673        s: *const ::std::os::raw::c_char,
76674        c: *const ::std::os::raw::c_char,
76675        n: ::std::os::raw::c_int,
76676    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76677        let ffi_result = {
76678            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_tr(s, c, n)
76679        };
76680        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76681    }
76682
76683    #[inline(always)]
76684    pub unsafe fn tr_utf8(
76685        s: *const ::std::os::raw::c_char,
76686        c: *const ::std::os::raw::c_char,
76687        n: ::std::os::raw::c_int,
76688    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76689        let ffi_result = {
76690            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_trUtf8(s, c, n)
76691        };
76692        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76693    }
76694}
76695
76696#[cfg_attr(
76697    feature = "ritual_rustdoc_nightly",
76698    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76699)]
76700#[cfg(any(
76701    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76702    feature = "ritual_rustdoc"
76703))]
76704
76705impl ::qt_core::AsReceiver for crate::SignalOfHandleType2 {
76706    type Arguments = (crate::q_wait_fence::HandleType,);
76707    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
76708        unsafe {
76709            ::qt_core::Receiver::new(
76710                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76711                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76712                    b"2emit_(Qt3DRender::QWaitFence::HandleType)\0",
76713                ),
76714            )
76715        }
76716    }
76717}
76718
76719impl crate::SignalOfHandleType2 {
76720    /// Connects this signal to another signal or slot.
76721    ///
76722    /// This is a shortcut for `self.signal().connect(receiver)`.
76723    #[cfg_attr(
76724        feature = "ritual_rustdoc_nightly",
76725        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76726    )]
76727    #[cfg(any(
76728        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76729        feature = "ritual_rustdoc"
76730    ))]
76731
76732    pub unsafe fn connect_with_type<R>(
76733        &self,
76734        connection_type: ::qt_core::ConnectionType,
76735        receiver: R,
76736    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76737    where
76738        R: ::qt_core::AsReceiver,
76739        (crate::q_wait_fence::HandleType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
76740    {
76741        self.signal().connect_with_type(connection_type, receiver)
76742    }
76743
76744    /// Connects this signal to another signal or slot, using auto connection type.
76745    ///
76746    /// This is a shortcut for `self.signal().connect(receiver)`.
76747    #[cfg_attr(
76748        feature = "ritual_rustdoc_nightly",
76749        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76750    )]
76751    #[cfg(any(
76752        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76753        feature = "ritual_rustdoc"
76754    ))]
76755
76756    pub unsafe fn connect<R>(
76757        &self,
76758        receiver: R,
76759    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76760    where
76761        R: ::qt_core::AsReceiver,
76762        (crate::q_wait_fence::HandleType,): ::qt_core::ArgumentsCompatible<R::Arguments>,
76763    {
76764        self.signal().connect(receiver)
76765    }
76766}
76767
76768/// Emits a Qt signal with arguments `crate::q_wait_fence::HandleType`.
76769///
76770/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QWaitFence::HandleType```</span>).
76771///
76772/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
76773#[repr(C)]
76774pub struct SignalOfHandleType2 {
76775    _unused: u8,
76776}
76777impl SignalOfHandleType2 {
76778    /// Returns a `Signal` object representing the signal.
76779    ///
76780    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
76781    #[inline(always)]
76782    #[cfg_attr(
76783        feature = "ritual_rustdoc_nightly",
76784        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76785    )]
76786    #[cfg(any(
76787        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76788        feature = "ritual_rustdoc"
76789    ))]
76790    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_wait_fence::HandleType,)> {
76791        unsafe {
76792            ::qt_core::Signal::new(
76793                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76794                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76795                    b"2emit_(Qt3DRender::QWaitFence::HandleType)\0",
76796                ),
76797            )
76798        }
76799    }
76800
76801    /// Emits the signal.
76802    #[inline(always)]
76803    #[cfg_attr(
76804        feature = "ritual_rustdoc_nightly",
76805        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76806    )]
76807    #[cfg(any(
76808        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76809        feature = "ritual_rustdoc"
76810    ))]
76811    pub unsafe fn emit(&self, arg0: crate::q_wait_fence::HandleType) {
76812        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_emit_(self as *const crate::SignalOfHandleType2 as *mut crate::SignalOfHandleType2, arg0)
76813    }
76814
76815    #[inline(always)]
76816    #[cfg_attr(
76817        feature = "ritual_rustdoc_nightly",
76818        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76819    )]
76820    #[cfg(any(
76821        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76822        feature = "ritual_rustdoc"
76823    ))]
76824    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
76825        let ffi_result = {
76826            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_metaObject(self as *const crate::SignalOfHandleType2)
76827        };
76828        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76829    }
76830
76831    /// Creates a new object.
76832    #[inline(always)]
76833    #[cfg_attr(
76834        feature = "ritual_rustdoc_nightly",
76835        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76836    )]
76837    #[cfg(any(
76838        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76839        feature = "ritual_rustdoc"
76840    ))]
76841    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfHandleType2> {
76842        let ffi_result = {
76843            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType()
76844        };
76845        ::qt_core::QBox::from_raw(ffi_result)
76846    }
76847
76848    #[inline(always)]
76849    #[cfg_attr(
76850        feature = "ritual_rustdoc_nightly",
76851        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76852    )]
76853    #[cfg(any(
76854        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76855        feature = "ritual_rustdoc"
76856    ))]
76857    pub unsafe fn qt_metacall(
76858        &self,
76859        arg1: ::qt_core::q_meta_object::Call,
76860        arg2: ::std::os::raw::c_int,
76861        arg3: *mut *mut ::std::ffi::c_void,
76862    ) -> ::std::os::raw::c_int {
76863        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_qt_metacall(self as *const crate::SignalOfHandleType2 as *mut crate::SignalOfHandleType2, arg1, arg2, arg3)
76864    }
76865
76866    #[inline(always)]
76867    #[cfg_attr(
76868        feature = "ritual_rustdoc_nightly",
76869        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76870    )]
76871    #[cfg(any(
76872        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76873        feature = "ritual_rustdoc"
76874    ))]
76875    pub unsafe fn qt_metacast(
76876        &self,
76877        arg1: *const ::std::os::raw::c_char,
76878    ) -> *mut ::std::ffi::c_void {
76879        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_qt_metacast(self as *const crate::SignalOfHandleType2 as *mut crate::SignalOfHandleType2, arg1)
76880    }
76881
76882    #[inline(always)]
76883    #[cfg_attr(
76884        feature = "ritual_rustdoc_nightly",
76885        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76886    )]
76887    #[cfg(any(
76888        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76889        feature = "ritual_rustdoc"
76890    ))]
76891    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
76892        let ffi_result = {
76893            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_staticMetaObject()
76894        };
76895        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
76896            .expect("attempted to construct a null Ref")
76897    }
76898
76899    #[inline(always)]
76900    #[cfg_attr(
76901        feature = "ritual_rustdoc_nightly",
76902        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76903    )]
76904    #[cfg(any(
76905        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76906        feature = "ritual_rustdoc"
76907    ))]
76908    pub unsafe fn tr(
76909        s: *const ::std::os::raw::c_char,
76910        c: *const ::std::os::raw::c_char,
76911        n: ::std::os::raw::c_int,
76912    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76913        let ffi_result = {
76914            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_tr(s, c, n)
76915        };
76916        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76917    }
76918
76919    #[inline(always)]
76920    #[cfg_attr(
76921        feature = "ritual_rustdoc_nightly",
76922        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
76923    )]
76924    #[cfg(any(
76925        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
76926        feature = "ritual_rustdoc"
76927    ))]
76928    pub unsafe fn tr_utf8(
76929        s: *const ::std::os::raw::c_char,
76930        c: *const ::std::os::raw::c_char,
76931        n: ::std::os::raw::c_int,
76932    ) -> ::cpp_core::CppBox<::qt_core::QString> {
76933        let ffi_result = {
76934            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_trUtf8(s, c, n)
76935        };
76936        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
76937    }
76938}
76939
76940impl ::qt_core::AsReceiver for crate::SignalOfOpenglProfile {
76941    type Arguments = (crate::q_graphics_api_filter::OpenGLProfile,);
76942    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
76943        unsafe {
76944            ::qt_core::Receiver::new(
76945                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
76946                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
76947                    b"2emit_(Qt3DRender::QGraphicsApiFilter::OpenGLProfile)\0",
76948                ),
76949            )
76950        }
76951    }
76952}
76953
76954impl crate::SignalOfOpenglProfile {
76955    /// Connects this signal to another signal or slot.
76956    ///
76957    /// This is a shortcut for `self.signal().connect(receiver)`.
76958
76959    pub unsafe fn connect_with_type<R>(
76960        &self,
76961        connection_type: ::qt_core::ConnectionType,
76962        receiver: R,
76963    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76964    where
76965        R: ::qt_core::AsReceiver,
76966        (crate::q_graphics_api_filter::OpenGLProfile,):
76967            ::qt_core::ArgumentsCompatible<R::Arguments>,
76968    {
76969        self.signal().connect_with_type(connection_type, receiver)
76970    }
76971
76972    /// Connects this signal to another signal or slot, using auto connection type.
76973    ///
76974    /// This is a shortcut for `self.signal().connect(receiver)`.
76975
76976    pub unsafe fn connect<R>(
76977        &self,
76978        receiver: R,
76979    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
76980    where
76981        R: ::qt_core::AsReceiver,
76982        (crate::q_graphics_api_filter::OpenGLProfile,):
76983            ::qt_core::ArgumentsCompatible<R::Arguments>,
76984    {
76985        self.signal().connect(receiver)
76986    }
76987}
76988
76989/// Emits a Qt signal with arguments `crate::q_graphics_api_filter::OpenGLProfile`.
76990///
76991/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QGraphicsApiFilter::OpenGLProfile```</span>).
76992///
76993/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
76994#[repr(C)]
76995pub struct SignalOfOpenglProfile {
76996    _unused: u8,
76997}
76998impl SignalOfOpenglProfile {
76999    /// Returns a `Signal` object representing the signal.
77000    ///
77001    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
77002    #[inline(always)]
77003    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_graphics_api_filter::OpenGLProfile,)> {
77004        unsafe {
77005            ::qt_core::Signal::new(
77006                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77007                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
77008                    b"2emit_(Qt3DRender::QGraphicsApiFilter::OpenGLProfile)\0",
77009                ),
77010            )
77011        }
77012    }
77013
77014    /// Emits the signal.
77015    #[inline(always)]
77016    pub unsafe fn emit(&self, arg0: crate::q_graphics_api_filter::OpenGLProfile) {
77017        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_emit_(self as *const crate::SignalOfOpenglProfile as *mut crate::SignalOfOpenglProfile, arg0)
77018    }
77019
77020    #[inline(always)]
77021    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
77022        let ffi_result = {
77023            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_metaObject(self as *const crate::SignalOfOpenglProfile)
77024        };
77025        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77026    }
77027
77028    /// Creates a new object.
77029    #[inline(always)]
77030    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfOpenglProfile> {
77031        let ffi_result = {
77032            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile()
77033        };
77034        ::qt_core::QBox::from_raw(ffi_result)
77035    }
77036
77037    #[inline(always)]
77038    pub unsafe fn qt_metacall(
77039        &self,
77040        arg1: ::qt_core::q_meta_object::Call,
77041        arg2: ::std::os::raw::c_int,
77042        arg3: *mut *mut ::std::ffi::c_void,
77043    ) -> ::std::os::raw::c_int {
77044        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_qt_metacall(self as *const crate::SignalOfOpenglProfile as *mut crate::SignalOfOpenglProfile, arg1, arg2, arg3)
77045    }
77046
77047    #[inline(always)]
77048    pub unsafe fn qt_metacast(
77049        &self,
77050        arg1: *const ::std::os::raw::c_char,
77051    ) -> *mut ::std::ffi::c_void {
77052        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_qt_metacast(self as *const crate::SignalOfOpenglProfile as *mut crate::SignalOfOpenglProfile, arg1)
77053    }
77054
77055    #[inline(always)]
77056    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
77057        let ffi_result = {
77058            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_staticMetaObject()
77059        };
77060        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77061            .expect("attempted to construct a null Ref")
77062    }
77063
77064    #[inline(always)]
77065    pub unsafe fn tr(
77066        s: *const ::std::os::raw::c_char,
77067        c: *const ::std::os::raw::c_char,
77068        n: ::std::os::raw::c_int,
77069    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77070        let ffi_result = {
77071            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_tr(s, c, n)
77072        };
77073        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77074    }
77075
77076    #[inline(always)]
77077    pub unsafe fn tr_utf8(
77078        s: *const ::std::os::raw::c_char,
77079        c: *const ::std::os::raw::c_char,
77080        n: ::std::os::raw::c_int,
77081    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77082        let ffi_result = {
77083            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_trUtf8(s, c, n)
77084        };
77085        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77086    }
77087}
77088
77089#[cfg_attr(
77090    feature = "ritual_rustdoc_nightly",
77091    doc(cfg(cpp_lib_version = "5.14.0"))
77092)]
77093#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77094
77095impl ::qt_core::AsReceiver for crate::SignalOfFaceMode2 {
77096    type Arguments = (crate::q_raster_mode::FaceMode,);
77097    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
77098        unsafe {
77099            ::qt_core::Receiver::new(
77100                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77101                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
77102                    b"2emit_(Qt3DRender::QRasterMode::FaceMode)\0",
77103                ),
77104            )
77105        }
77106    }
77107}
77108
77109impl crate::SignalOfFaceMode2 {
77110    /// Connects this signal to another signal or slot.
77111    ///
77112    /// This is a shortcut for `self.signal().connect(receiver)`.
77113    #[cfg_attr(
77114        feature = "ritual_rustdoc_nightly",
77115        doc(cfg(cpp_lib_version = "5.14.0"))
77116    )]
77117    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77118
77119    pub unsafe fn connect_with_type<R>(
77120        &self,
77121        connection_type: ::qt_core::ConnectionType,
77122        receiver: R,
77123    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77124    where
77125        R: ::qt_core::AsReceiver,
77126        (crate::q_raster_mode::FaceMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77127    {
77128        self.signal().connect_with_type(connection_type, receiver)
77129    }
77130
77131    /// Connects this signal to another signal or slot, using auto connection type.
77132    ///
77133    /// This is a shortcut for `self.signal().connect(receiver)`.
77134    #[cfg_attr(
77135        feature = "ritual_rustdoc_nightly",
77136        doc(cfg(cpp_lib_version = "5.14.0"))
77137    )]
77138    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77139
77140    pub unsafe fn connect<R>(
77141        &self,
77142        receiver: R,
77143    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77144    where
77145        R: ::qt_core::AsReceiver,
77146        (crate::q_raster_mode::FaceMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77147    {
77148        self.signal().connect(receiver)
77149    }
77150}
77151
77152/// Emits a Qt signal with arguments `crate::q_raster_mode::FaceMode`.
77153///
77154/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRasterMode::FaceMode```</span>).
77155///
77156/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
77157#[repr(C)]
77158pub struct SignalOfFaceMode2 {
77159    _unused: u8,
77160}
77161impl SignalOfFaceMode2 {
77162    /// Returns a `Signal` object representing the signal.
77163    ///
77164    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
77165    #[inline(always)]
77166    #[cfg_attr(
77167        feature = "ritual_rustdoc_nightly",
77168        doc(cfg(cpp_lib_version = "5.14.0"))
77169    )]
77170    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77171    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_raster_mode::FaceMode,)> {
77172        unsafe {
77173            ::qt_core::Signal::new(
77174                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77175                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
77176                    b"2emit_(Qt3DRender::QRasterMode::FaceMode)\0",
77177                ),
77178            )
77179        }
77180    }
77181
77182    /// Emits the signal.
77183    #[inline(always)]
77184    #[cfg_attr(
77185        feature = "ritual_rustdoc_nightly",
77186        doc(cfg(cpp_lib_version = "5.14.0"))
77187    )]
77188    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77189    pub unsafe fn emit(&self, arg0: crate::q_raster_mode::FaceMode) {
77190        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_emit_(self as *const crate::SignalOfFaceMode2 as *mut crate::SignalOfFaceMode2, arg0)
77191    }
77192
77193    #[inline(always)]
77194    #[cfg_attr(
77195        feature = "ritual_rustdoc_nightly",
77196        doc(cfg(cpp_lib_version = "5.14.0"))
77197    )]
77198    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77199    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
77200        let ffi_result = {
77201            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_metaObject(self as *const crate::SignalOfFaceMode2)
77202        };
77203        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77204    }
77205
77206    /// Creates a new object.
77207    #[inline(always)]
77208    #[cfg_attr(
77209        feature = "ritual_rustdoc_nightly",
77210        doc(cfg(cpp_lib_version = "5.14.0"))
77211    )]
77212    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77213    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfFaceMode2> {
77214        let ffi_result = {
77215            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode()
77216        };
77217        ::qt_core::QBox::from_raw(ffi_result)
77218    }
77219
77220    #[inline(always)]
77221    #[cfg_attr(
77222        feature = "ritual_rustdoc_nightly",
77223        doc(cfg(cpp_lib_version = "5.14.0"))
77224    )]
77225    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77226    pub unsafe fn qt_metacall(
77227        &self,
77228        arg1: ::qt_core::q_meta_object::Call,
77229        arg2: ::std::os::raw::c_int,
77230        arg3: *mut *mut ::std::ffi::c_void,
77231    ) -> ::std::os::raw::c_int {
77232        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_qt_metacall(self as *const crate::SignalOfFaceMode2 as *mut crate::SignalOfFaceMode2, arg1, arg2, arg3)
77233    }
77234
77235    #[inline(always)]
77236    #[cfg_attr(
77237        feature = "ritual_rustdoc_nightly",
77238        doc(cfg(cpp_lib_version = "5.14.0"))
77239    )]
77240    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77241    pub unsafe fn qt_metacast(
77242        &self,
77243        arg1: *const ::std::os::raw::c_char,
77244    ) -> *mut ::std::ffi::c_void {
77245        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_qt_metacast(self as *const crate::SignalOfFaceMode2 as *mut crate::SignalOfFaceMode2, arg1)
77246    }
77247
77248    #[inline(always)]
77249    #[cfg_attr(
77250        feature = "ritual_rustdoc_nightly",
77251        doc(cfg(cpp_lib_version = "5.14.0"))
77252    )]
77253    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77254    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
77255        let ffi_result = {
77256            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_staticMetaObject()
77257        };
77258        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77259            .expect("attempted to construct a null Ref")
77260    }
77261
77262    #[inline(always)]
77263    #[cfg_attr(
77264        feature = "ritual_rustdoc_nightly",
77265        doc(cfg(cpp_lib_version = "5.14.0"))
77266    )]
77267    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77268    pub unsafe fn tr(
77269        s: *const ::std::os::raw::c_char,
77270        c: *const ::std::os::raw::c_char,
77271        n: ::std::os::raw::c_int,
77272    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77273        let ffi_result = {
77274            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_tr(s, c, n)
77275        };
77276        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77277    }
77278
77279    #[inline(always)]
77280    #[cfg_attr(
77281        feature = "ritual_rustdoc_nightly",
77282        doc(cfg(cpp_lib_version = "5.14.0"))
77283    )]
77284    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77285    pub unsafe fn tr_utf8(
77286        s: *const ::std::os::raw::c_char,
77287        c: *const ::std::os::raw::c_char,
77288        n: ::std::os::raw::c_int,
77289    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77290        let ffi_result = {
77291            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_trUtf8(s, c, n)
77292        };
77293        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77294    }
77295}
77296
77297impl ::qt_core::AsReceiver for crate::SignalOfFilter {
77298    type Arguments = (crate::q_abstract_texture::Filter,);
77299    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
77300        unsafe {
77301            ::qt_core::Receiver::new(
77302                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77303                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
77304                    b"2emit_(Qt3DRender::QAbstractTexture::Filter)\0",
77305                ),
77306            )
77307        }
77308    }
77309}
77310
77311impl crate::SignalOfFilter {
77312    /// Connects this signal to another signal or slot.
77313    ///
77314    /// This is a shortcut for `self.signal().connect(receiver)`.
77315
77316    pub unsafe fn connect_with_type<R>(
77317        &self,
77318        connection_type: ::qt_core::ConnectionType,
77319        receiver: R,
77320    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77321    where
77322        R: ::qt_core::AsReceiver,
77323        (crate::q_abstract_texture::Filter,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77324    {
77325        self.signal().connect_with_type(connection_type, receiver)
77326    }
77327
77328    /// Connects this signal to another signal or slot, using auto connection type.
77329    ///
77330    /// This is a shortcut for `self.signal().connect(receiver)`.
77331
77332    pub unsafe fn connect<R>(
77333        &self,
77334        receiver: R,
77335    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77336    where
77337        R: ::qt_core::AsReceiver,
77338        (crate::q_abstract_texture::Filter,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77339    {
77340        self.signal().connect(receiver)
77341    }
77342}
77343
77344/// Emits a Qt signal with arguments `crate::q_abstract_texture::Filter`.
77345///
77346/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::Filter```</span>).
77347///
77348/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
77349#[repr(C)]
77350pub struct SignalOfFilter {
77351    _unused: u8,
77352}
77353impl SignalOfFilter {
77354    /// Returns a `Signal` object representing the signal.
77355    ///
77356    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
77357    #[inline(always)]
77358    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_abstract_texture::Filter,)> {
77359        unsafe {
77360            ::qt_core::Signal::new(
77361                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77362                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
77363                    b"2emit_(Qt3DRender::QAbstractTexture::Filter)\0",
77364                ),
77365            )
77366        }
77367    }
77368
77369    /// Emits the signal.
77370    #[inline(always)]
77371    pub unsafe fn emit(&self, arg0: crate::q_abstract_texture::Filter) {
77372        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_emit_(self as *const crate::SignalOfFilter as *mut crate::SignalOfFilter, arg0)
77373    }
77374
77375    #[inline(always)]
77376    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
77377        let ffi_result = {
77378            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_metaObject(self as *const crate::SignalOfFilter)
77379        };
77380        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77381    }
77382
77383    /// Creates a new object.
77384    #[inline(always)]
77385    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfFilter> {
77386        let ffi_result = {
77387            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter()
77388        };
77389        ::qt_core::QBox::from_raw(ffi_result)
77390    }
77391
77392    #[inline(always)]
77393    pub unsafe fn qt_metacall(
77394        &self,
77395        arg1: ::qt_core::q_meta_object::Call,
77396        arg2: ::std::os::raw::c_int,
77397        arg3: *mut *mut ::std::ffi::c_void,
77398    ) -> ::std::os::raw::c_int {
77399        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_qt_metacall(self as *const crate::SignalOfFilter as *mut crate::SignalOfFilter, arg1, arg2, arg3)
77400    }
77401
77402    #[inline(always)]
77403    pub unsafe fn qt_metacast(
77404        &self,
77405        arg1: *const ::std::os::raw::c_char,
77406    ) -> *mut ::std::ffi::c_void {
77407        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_qt_metacast(self as *const crate::SignalOfFilter as *mut crate::SignalOfFilter, arg1)
77408    }
77409
77410    #[inline(always)]
77411    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
77412        let ffi_result = {
77413            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_staticMetaObject()
77414        };
77415        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77416            .expect("attempted to construct a null Ref")
77417    }
77418
77419    #[inline(always)]
77420    pub unsafe fn tr(
77421        s: *const ::std::os::raw::c_char,
77422        c: *const ::std::os::raw::c_char,
77423        n: ::std::os::raw::c_int,
77424    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77425        let ffi_result = {
77426            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_tr(s, c, n)
77427        };
77428        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77429    }
77430
77431    #[inline(always)]
77432    pub unsafe fn tr_utf8(
77433        s: *const ::std::os::raw::c_char,
77434        c: *const ::std::os::raw::c_char,
77435        n: ::std::os::raw::c_int,
77436    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77437        let ffi_result = {
77438            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_trUtf8(s, c, n)
77439        };
77440        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77441    }
77442}
77443
77444impl ::qt_core::AsReceiver for crate::SignalOfQVector3D {
77445    type Arguments = (*const ::qt_gui::QVector3D,);
77446    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
77447        unsafe {
77448            ::qt_core::Receiver::new(
77449                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77450                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QVector3D)\0"),
77451            )
77452        }
77453    }
77454}
77455
77456impl crate::SignalOfQVector3D {
77457    /// Connects this signal to another signal or slot.
77458    ///
77459    /// This is a shortcut for `self.signal().connect(receiver)`.
77460
77461    pub unsafe fn connect_with_type<R>(
77462        &self,
77463        connection_type: ::qt_core::ConnectionType,
77464        receiver: R,
77465    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77466    where
77467        R: ::qt_core::AsReceiver,
77468        (*const ::qt_gui::QVector3D,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77469    {
77470        self.signal().connect_with_type(connection_type, receiver)
77471    }
77472
77473    /// Connects this signal to another signal or slot, using auto connection type.
77474    ///
77475    /// This is a shortcut for `self.signal().connect(receiver)`.
77476
77477    pub unsafe fn connect<R>(
77478        &self,
77479        receiver: R,
77480    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77481    where
77482        R: ::qt_core::AsReceiver,
77483        (*const ::qt_gui::QVector3D,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77484    {
77485        self.signal().connect(receiver)
77486    }
77487}
77488
77489/// Emits a Qt signal with arguments `*const ::qt_gui::QVector3D`.
77490///
77491/// Corresponding C++ argument types: (<span style='color: green;'>```QVector3D```</span>).
77492///
77493/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
77494#[repr(C)]
77495pub struct SignalOfQVector3D {
77496    _unused: u8,
77497}
77498impl SignalOfQVector3D {
77499    /// Returns a `Signal` object representing the signal.
77500    ///
77501    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
77502    #[inline(always)]
77503    pub fn signal(&self) -> ::qt_core::Signal<(*const ::qt_gui::QVector3D,)> {
77504        unsafe {
77505            ::qt_core::Signal::new(
77506                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77507                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QVector3D)\0"),
77508            )
77509        }
77510    }
77511
77512    /// Emits the signal.
77513    #[inline(always)]
77514    pub unsafe fn emit(
77515        &self,
77516        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
77517    ) {
77518        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_emit_(
77519            self as *const crate::SignalOfQVector3D as *mut crate::SignalOfQVector3D,
77520            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(arg0)
77521                .as_raw_ptr(),
77522        )
77523    }
77524
77525    #[inline(always)]
77526    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
77527        let ffi_result = {
77528            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_metaObject(self as *const crate::SignalOfQVector3D)
77529        };
77530        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77531    }
77532
77533    /// Creates a new object.
77534    #[inline(always)]
77535    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQVector3D> {
77536        let ffi_result = {
77537            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D()
77538        };
77539        ::qt_core::QBox::from_raw(ffi_result)
77540    }
77541
77542    #[inline(always)]
77543    pub unsafe fn qt_metacall(
77544        &self,
77545        arg1: ::qt_core::q_meta_object::Call,
77546        arg2: ::std::os::raw::c_int,
77547        arg3: *mut *mut ::std::ffi::c_void,
77548    ) -> ::std::os::raw::c_int {
77549        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_qt_metacall(
77550            self as *const crate::SignalOfQVector3D as *mut crate::SignalOfQVector3D,
77551            arg1,
77552            arg2,
77553            arg3,
77554        )
77555    }
77556
77557    #[inline(always)]
77558    pub unsafe fn qt_metacast(
77559        &self,
77560        arg1: *const ::std::os::raw::c_char,
77561    ) -> *mut ::std::ffi::c_void {
77562        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_qt_metacast(
77563            self as *const crate::SignalOfQVector3D as *mut crate::SignalOfQVector3D,
77564            arg1,
77565        )
77566    }
77567
77568    #[inline(always)]
77569    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
77570        let ffi_result = {
77571            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_staticMetaObject()
77572        };
77573        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77574            .expect("attempted to construct a null Ref")
77575    }
77576
77577    #[inline(always)]
77578    pub unsafe fn tr(
77579        s: *const ::std::os::raw::c_char,
77580        c: *const ::std::os::raw::c_char,
77581        n: ::std::os::raw::c_int,
77582    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77583        let ffi_result = {
77584            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_tr(
77585                s, c, n,
77586            )
77587        };
77588        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77589    }
77590
77591    #[inline(always)]
77592    pub unsafe fn tr_utf8(
77593        s: *const ::std::os::raw::c_char,
77594        c: *const ::std::os::raw::c_char,
77595        n: ::std::os::raw::c_int,
77596    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77597        let ffi_result = {
77598            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_trUtf8(
77599                s, c, n,
77600            )
77601        };
77602        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77603    }
77604}
77605
77606#[cfg_attr(
77607    feature = "ritual_rustdoc_nightly",
77608    doc(cfg(cpp_lib_version = "5.14.0"))
77609)]
77610#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77611
77612impl ::qt_core::AsReceiver for crate::SignalOfRasterMode {
77613    type Arguments = (crate::q_raster_mode::RasterMode,);
77614    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
77615        unsafe {
77616            ::qt_core::Receiver::new(
77617                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77618                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
77619                    b"2emit_(Qt3DRender::QRasterMode::RasterMode)\0",
77620                ),
77621            )
77622        }
77623    }
77624}
77625
77626impl crate::SignalOfRasterMode {
77627    /// Connects this signal to another signal or slot.
77628    ///
77629    /// This is a shortcut for `self.signal().connect(receiver)`.
77630    #[cfg_attr(
77631        feature = "ritual_rustdoc_nightly",
77632        doc(cfg(cpp_lib_version = "5.14.0"))
77633    )]
77634    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77635
77636    pub unsafe fn connect_with_type<R>(
77637        &self,
77638        connection_type: ::qt_core::ConnectionType,
77639        receiver: R,
77640    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77641    where
77642        R: ::qt_core::AsReceiver,
77643        (crate::q_raster_mode::RasterMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77644    {
77645        self.signal().connect_with_type(connection_type, receiver)
77646    }
77647
77648    /// Connects this signal to another signal or slot, using auto connection type.
77649    ///
77650    /// This is a shortcut for `self.signal().connect(receiver)`.
77651    #[cfg_attr(
77652        feature = "ritual_rustdoc_nightly",
77653        doc(cfg(cpp_lib_version = "5.14.0"))
77654    )]
77655    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77656
77657    pub unsafe fn connect<R>(
77658        &self,
77659        receiver: R,
77660    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77661    where
77662        R: ::qt_core::AsReceiver,
77663        (crate::q_raster_mode::RasterMode,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77664    {
77665        self.signal().connect(receiver)
77666    }
77667}
77668
77669/// Emits a Qt signal with arguments `crate::q_raster_mode::RasterMode`.
77670///
77671/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRasterMode::RasterMode```</span>).
77672///
77673/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
77674#[repr(C)]
77675pub struct SignalOfRasterMode {
77676    _unused: u8,
77677}
77678impl SignalOfRasterMode {
77679    /// Returns a `Signal` object representing the signal.
77680    ///
77681    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
77682    #[inline(always)]
77683    #[cfg_attr(
77684        feature = "ritual_rustdoc_nightly",
77685        doc(cfg(cpp_lib_version = "5.14.0"))
77686    )]
77687    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77688    pub fn signal(&self) -> ::qt_core::Signal<(crate::q_raster_mode::RasterMode,)> {
77689        unsafe {
77690            ::qt_core::Signal::new(
77691                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77692                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
77693                    b"2emit_(Qt3DRender::QRasterMode::RasterMode)\0",
77694                ),
77695            )
77696        }
77697    }
77698
77699    /// Emits the signal.
77700    #[inline(always)]
77701    #[cfg_attr(
77702        feature = "ritual_rustdoc_nightly",
77703        doc(cfg(cpp_lib_version = "5.14.0"))
77704    )]
77705    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77706    pub unsafe fn emit(&self, arg0: crate::q_raster_mode::RasterMode) {
77707        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_emit_(self as *const crate::SignalOfRasterMode as *mut crate::SignalOfRasterMode, arg0)
77708    }
77709
77710    #[inline(always)]
77711    #[cfg_attr(
77712        feature = "ritual_rustdoc_nightly",
77713        doc(cfg(cpp_lib_version = "5.14.0"))
77714    )]
77715    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77716    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
77717        let ffi_result = {
77718            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_metaObject(self as *const crate::SignalOfRasterMode)
77719        };
77720        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77721    }
77722
77723    /// Creates a new object.
77724    #[inline(always)]
77725    #[cfg_attr(
77726        feature = "ritual_rustdoc_nightly",
77727        doc(cfg(cpp_lib_version = "5.14.0"))
77728    )]
77729    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77730    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfRasterMode> {
77731        let ffi_result = {
77732            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode()
77733        };
77734        ::qt_core::QBox::from_raw(ffi_result)
77735    }
77736
77737    #[inline(always)]
77738    #[cfg_attr(
77739        feature = "ritual_rustdoc_nightly",
77740        doc(cfg(cpp_lib_version = "5.14.0"))
77741    )]
77742    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77743    pub unsafe fn qt_metacall(
77744        &self,
77745        arg1: ::qt_core::q_meta_object::Call,
77746        arg2: ::std::os::raw::c_int,
77747        arg3: *mut *mut ::std::ffi::c_void,
77748    ) -> ::std::os::raw::c_int {
77749        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_qt_metacall(self as *const crate::SignalOfRasterMode as *mut crate::SignalOfRasterMode, arg1, arg2, arg3)
77750    }
77751
77752    #[inline(always)]
77753    #[cfg_attr(
77754        feature = "ritual_rustdoc_nightly",
77755        doc(cfg(cpp_lib_version = "5.14.0"))
77756    )]
77757    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77758    pub unsafe fn qt_metacast(
77759        &self,
77760        arg1: *const ::std::os::raw::c_char,
77761    ) -> *mut ::std::ffi::c_void {
77762        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_qt_metacast(self as *const crate::SignalOfRasterMode as *mut crate::SignalOfRasterMode, arg1)
77763    }
77764
77765    #[inline(always)]
77766    #[cfg_attr(
77767        feature = "ritual_rustdoc_nightly",
77768        doc(cfg(cpp_lib_version = "5.14.0"))
77769    )]
77770    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77771    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
77772        let ffi_result = {
77773            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_staticMetaObject()
77774        };
77775        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77776            .expect("attempted to construct a null Ref")
77777    }
77778
77779    #[inline(always)]
77780    #[cfg_attr(
77781        feature = "ritual_rustdoc_nightly",
77782        doc(cfg(cpp_lib_version = "5.14.0"))
77783    )]
77784    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77785    pub unsafe fn tr(
77786        s: *const ::std::os::raw::c_char,
77787        c: *const ::std::os::raw::c_char,
77788        n: ::std::os::raw::c_int,
77789    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77790        let ffi_result = {
77791            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_tr(s, c, n)
77792        };
77793        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77794    }
77795
77796    #[inline(always)]
77797    #[cfg_attr(
77798        feature = "ritual_rustdoc_nightly",
77799        doc(cfg(cpp_lib_version = "5.14.0"))
77800    )]
77801    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
77802    pub unsafe fn tr_utf8(
77803        s: *const ::std::os::raw::c_char,
77804        c: *const ::std::os::raw::c_char,
77805        n: ::std::os::raw::c_int,
77806    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77807        let ffi_result = {
77808            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_trUtf8(s, c, n)
77809        };
77810        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77811    }
77812}
77813
77814impl ::qt_core::AsReceiver for crate::SignalOfQSize {
77815    type Arguments = (*const ::qt_core::QSize,);
77816    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
77817        unsafe {
77818            ::qt_core::Receiver::new(
77819                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77820                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QSize)\0"),
77821            )
77822        }
77823    }
77824}
77825
77826impl crate::SignalOfQSize {
77827    /// Connects this signal to another signal or slot.
77828    ///
77829    /// This is a shortcut for `self.signal().connect(receiver)`.
77830
77831    pub unsafe fn connect_with_type<R>(
77832        &self,
77833        connection_type: ::qt_core::ConnectionType,
77834        receiver: R,
77835    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77836    where
77837        R: ::qt_core::AsReceiver,
77838        (*const ::qt_core::QSize,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77839    {
77840        self.signal().connect_with_type(connection_type, receiver)
77841    }
77842
77843    /// Connects this signal to another signal or slot, using auto connection type.
77844    ///
77845    /// This is a shortcut for `self.signal().connect(receiver)`.
77846
77847    pub unsafe fn connect<R>(
77848        &self,
77849        receiver: R,
77850    ) -> cpp_core::CppBox<::qt_core::q_meta_object::Connection>
77851    where
77852        R: ::qt_core::AsReceiver,
77853        (*const ::qt_core::QSize,): ::qt_core::ArgumentsCompatible<R::Arguments>,
77854    {
77855        self.signal().connect(receiver)
77856    }
77857}
77858
77859/// Emits a Qt signal with arguments `*const ::qt_core::QSize`.
77860///
77861/// Corresponding C++ argument types: (<span style='color: green;'>```QSize```</span>).
77862///
77863/// Use `connect()` method of this object to connect this signal to a slot. Use `emit()` method to emit the signal.
77864#[repr(C)]
77865pub struct SignalOfQSize {
77866    _unused: u8,
77867}
77868impl SignalOfQSize {
77869    /// Returns a `Signal` object representing the signal.
77870    ///
77871    /// This method is useful if you need to connect another signal to this signal. However, when you need to connect this signal to another signal or slot, it's simpler to use the `connect()` method of this object directly.
77872    #[inline(always)]
77873    pub fn signal(&self) -> ::qt_core::Signal<(*const ::qt_core::QSize,)> {
77874        unsafe {
77875            ::qt_core::Signal::new(
77876                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77877                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"2emit_(QSize)\0"),
77878            )
77879        }
77880    }
77881
77882    /// Emits the signal.
77883    #[inline(always)]
77884    pub unsafe fn emit(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QSize>>) {
77885        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QSize_emit_(
77886            self as *const crate::SignalOfQSize as *mut crate::SignalOfQSize,
77887            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QSize>>::cast_into(arg0).as_raw_ptr(),
77888        )
77889    }
77890
77891    #[inline(always)]
77892    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
77893        let ffi_result = {
77894            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QSize_metaObject(
77895                self as *const crate::SignalOfQSize,
77896            )
77897        };
77898        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77899    }
77900
77901    /// Creates a new object.
77902    #[inline(always)]
77903    pub unsafe fn new() -> ::qt_core::QBox<crate::SignalOfQSize> {
77904        let ffi_result = {
77905            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QSize_ctr_qt_3d_render_ffi_signal_wrapper_QSize()
77906        };
77907        ::qt_core::QBox::from_raw(ffi_result)
77908    }
77909
77910    #[inline(always)]
77911    pub unsafe fn qt_metacall(
77912        &self,
77913        arg1: ::qt_core::q_meta_object::Call,
77914        arg2: ::std::os::raw::c_int,
77915        arg3: *mut *mut ::std::ffi::c_void,
77916    ) -> ::std::os::raw::c_int {
77917        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QSize_qt_metacall(
77918            self as *const crate::SignalOfQSize as *mut crate::SignalOfQSize,
77919            arg1,
77920            arg2,
77921            arg3,
77922        )
77923    }
77924
77925    #[inline(always)]
77926    pub unsafe fn qt_metacast(
77927        &self,
77928        arg1: *const ::std::os::raw::c_char,
77929    ) -> *mut ::std::ffi::c_void {
77930        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QSize_qt_metacast(
77931            self as *const crate::SignalOfQSize as *mut crate::SignalOfQSize,
77932            arg1,
77933        )
77934    }
77935
77936    #[inline(always)]
77937    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
77938        let ffi_result = {
77939            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QSize_staticMetaObject()
77940        };
77941        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
77942            .expect("attempted to construct a null Ref")
77943    }
77944
77945    #[inline(always)]
77946    pub unsafe fn tr(
77947        s: *const ::std::os::raw::c_char,
77948        c: *const ::std::os::raw::c_char,
77949        n: ::std::os::raw::c_int,
77950    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77951        let ffi_result = {
77952            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QSize_tr(s, c, n)
77953        };
77954        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77955    }
77956
77957    #[inline(always)]
77958    pub unsafe fn tr_utf8(
77959        s: *const ::std::os::raw::c_char,
77960        c: *const ::std::os::raw::c_char,
77961        n: ::std::os::raw::c_int,
77962    ) -> ::cpp_core::CppBox<::qt_core::QString> {
77963        let ffi_result = {
77964            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QSize_trUtf8(
77965                s, c, n,
77966            )
77967        };
77968        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
77969    }
77970}
77971
77972impl ::qt_core::AsReceiver for crate::SlotOfApi {
77973    type Arguments = (crate::q_graphics_api_filter::Api,);
77974    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
77975        unsafe {
77976            ::qt_core::Receiver::new(
77977                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
77978                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
77979                    b"1slot_(Qt3DRender::QGraphicsApiFilter::Api)\0",
77980                ),
77981            )
77982        }
77983    }
77984}
77985
77986/// Binds a Qt signal with arguments `crate::q_graphics_api_filter::Api` to a Rust closure.
77987///
77988/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QGraphicsApiFilter::Api```</span>).
77989///
77990/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
77991///
77992/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
77993///
77994/// If `set()` was not called, slot invocation has no effect.
77995#[repr(C)]
77996pub struct SlotOfApi {
77997    _unused: u8,
77998}
77999impl SlotOfApi {
78000    #[inline(always)]
78001    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
78002        let ffi_result = {
78003            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_metaObject(self as *const crate::SlotOfApi)
78004        };
78005        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78006    }
78007
78008    /// Creates a new object.
78009    #[inline(always)]
78010    pub unsafe fn new<T: FnMut(crate::q_graphics_api_filter::Api) + 'static>(
78011        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
78012        callback: T,
78013    ) -> ::qt_core::QBox<crate::SlotOfApi> {
78014        let ffi_result = {
78015            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78016                unsafe {
78017                    let _ = Box::from_raw(data as *mut T);
78018                }
78019            }
78020            extern "C" fn ffi_callback<T: FnMut(crate::q_graphics_api_filter::Api) + 'static>(
78021                data: *mut ::std::ffi::c_void,
78022                arg0: crate::q_graphics_api_filter::Api,
78023            ) {
78024                unsafe { (*(data as *mut T))(arg0) }
78025            }
78026            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78027            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78028        };
78029        ::qt_core::QBox::from_raw(ffi_result)
78030    }
78031
78032    #[inline(always)]
78033    pub unsafe fn qt_metacall(
78034        &self,
78035        arg1: ::qt_core::q_meta_object::Call,
78036        arg2: ::std::os::raw::c_int,
78037        arg3: *mut *mut ::std::ffi::c_void,
78038    ) -> ::std::os::raw::c_int {
78039        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_qt_metacall(self as *const crate::SlotOfApi as *mut crate::SlotOfApi, arg1, arg2, arg3)
78040    }
78041
78042    #[inline(always)]
78043    pub unsafe fn qt_metacast(
78044        &self,
78045        arg1: *const ::std::os::raw::c_char,
78046    ) -> *mut ::std::ffi::c_void {
78047        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_qt_metacast(self as *const crate::SlotOfApi as *mut crate::SlotOfApi, arg1)
78048    }
78049
78050    /// Assigns `callback` as the signal handler.
78051    ///
78052    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
78053    #[inline(always)]
78054    pub unsafe fn set<T: FnMut(crate::q_graphics_api_filter::Api) + 'static>(&self, callback: T) {
78055        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78056            unsafe {
78057                let _ = Box::from_raw(data as *mut T);
78058            }
78059        }
78060        extern "C" fn ffi_callback<T: FnMut(crate::q_graphics_api_filter::Api) + 'static>(
78061            data: *mut ::std::ffi::c_void,
78062            arg0: crate::q_graphics_api_filter::Api,
78063        ) {
78064            unsafe { (*(data as *mut T))(arg0) }
78065        }
78066        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78067        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_set(self as *const crate::SlotOfApi as *mut crate::SlotOfApi, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78068    }
78069
78070    /// Calls the slot directly, invoking the assigned handler (if any).
78071    #[inline(always)]
78072    pub unsafe fn slot(&self, arg0: crate::q_graphics_api_filter::Api) {
78073        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_slot_(self as *const crate::SlotOfApi as *mut crate::SlotOfApi, arg0)
78074    }
78075
78076    #[inline(always)]
78077    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
78078        let ffi_result = {
78079            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_staticMetaObject()
78080        };
78081        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78082            .expect("attempted to construct a null Ref")
78083    }
78084
78085    #[inline(always)]
78086    pub unsafe fn tr(
78087        s: *const ::std::os::raw::c_char,
78088        c: *const ::std::os::raw::c_char,
78089        n: ::std::os::raw::c_int,
78090    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78091        let ffi_result = {
78092            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_tr(s, c, n)
78093        };
78094        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78095    }
78096
78097    #[inline(always)]
78098    pub unsafe fn tr_utf8(
78099        s: *const ::std::os::raw::c_char,
78100        c: *const ::std::os::raw::c_char,
78101        n: ::std::os::raw::c_int,
78102    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78103        let ffi_result = {
78104            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_trUtf8(s, c, n)
78105        };
78106        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78107    }
78108}
78109
78110impl ::qt_core::AsReceiver for crate::SlotOfQGeometry {
78111    type Arguments = (*mut crate::QGeometry,);
78112    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
78113        unsafe {
78114            ::qt_core::Receiver::new(
78115                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
78116                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
78117                    b"1slot_(Qt3DRender::QGeometry *)\0",
78118                ),
78119            )
78120        }
78121    }
78122}
78123
78124/// Binds a Qt signal with arguments `*mut crate::QGeometry` to a Rust closure.
78125///
78126/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QGeometry*```</span>).
78127///
78128/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
78129///
78130/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
78131///
78132/// If `set()` was not called, slot invocation has no effect.
78133#[repr(C)]
78134pub struct SlotOfQGeometry {
78135    _unused: u8,
78136}
78137impl SlotOfQGeometry {
78138    #[inline(always)]
78139    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
78140        let ffi_result = {
78141            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_metaObject(self as *const crate::SlotOfQGeometry)
78142        };
78143        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78144    }
78145
78146    /// Creates a new object.
78147    #[inline(always)]
78148    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QGeometry>) + 'static>(
78149        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
78150        callback: T,
78151    ) -> ::qt_core::QBox<crate::SlotOfQGeometry> {
78152        let ffi_result = {
78153            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78154                unsafe {
78155                    let _ = Box::from_raw(data as *mut T);
78156                }
78157            }
78158            extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QGeometry>) + 'static>(
78159                data: *mut ::std::ffi::c_void,
78160                arg0: *mut crate::QGeometry,
78161            ) {
78162                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
78163            }
78164            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78165            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78166        };
78167        ::qt_core::QBox::from_raw(ffi_result)
78168    }
78169
78170    #[inline(always)]
78171    pub unsafe fn qt_metacall(
78172        &self,
78173        arg1: ::qt_core::q_meta_object::Call,
78174        arg2: ::std::os::raw::c_int,
78175        arg3: *mut *mut ::std::ffi::c_void,
78176    ) -> ::std::os::raw::c_int {
78177        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_qt_metacall(self as *const crate::SlotOfQGeometry as *mut crate::SlotOfQGeometry, arg1, arg2, arg3)
78178    }
78179
78180    #[inline(always)]
78181    pub unsafe fn qt_metacast(
78182        &self,
78183        arg1: *const ::std::os::raw::c_char,
78184    ) -> *mut ::std::ffi::c_void {
78185        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_qt_metacast(self as *const crate::SlotOfQGeometry as *mut crate::SlotOfQGeometry, arg1)
78186    }
78187
78188    /// Assigns `callback` as the signal handler.
78189    ///
78190    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
78191    #[inline(always)]
78192    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QGeometry>) + 'static>(&self, callback: T) {
78193        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78194            unsafe {
78195                let _ = Box::from_raw(data as *mut T);
78196            }
78197        }
78198        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QGeometry>) + 'static>(
78199            data: *mut ::std::ffi::c_void,
78200            arg0: *mut crate::QGeometry,
78201        ) {
78202            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
78203        }
78204        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78205        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_set(self as *const crate::SlotOfQGeometry as *mut crate::SlotOfQGeometry, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78206    }
78207
78208    /// Calls the slot directly, invoking the assigned handler (if any).
78209    #[inline(always)]
78210    pub unsafe fn slot(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QGeometry>>) {
78211        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_slot_(self as *const crate::SlotOfQGeometry as *mut crate::SlotOfQGeometry, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QGeometry>>::cast_into(arg0).as_raw_ptr() as *mut crate::QGeometry)
78212    }
78213
78214    #[inline(always)]
78215    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
78216        let ffi_result = {
78217            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_staticMetaObject()
78218        };
78219        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78220            .expect("attempted to construct a null Ref")
78221    }
78222
78223    #[inline(always)]
78224    pub unsafe fn tr(
78225        s: *const ::std::os::raw::c_char,
78226        c: *const ::std::os::raw::c_char,
78227        n: ::std::os::raw::c_int,
78228    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78229        let ffi_result = {
78230            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_tr(s, c, n)
78231        };
78232        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78233    }
78234
78235    #[inline(always)]
78236    pub unsafe fn tr_utf8(
78237        s: *const ::std::os::raw::c_char,
78238        c: *const ::std::os::raw::c_char,
78239        n: ::std::os::raw::c_int,
78240    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78241        let ffi_result = {
78242            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_trUtf8(s, c, n)
78243        };
78244        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78245    }
78246}
78247
78248impl ::qt_core::AsReceiver for crate::SlotOfQRenderTarget {
78249    type Arguments = (*mut crate::QRenderTarget,);
78250    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
78251        unsafe {
78252            ::qt_core::Receiver::new(
78253                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
78254                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
78255                    b"1slot_(Qt3DRender::QRenderTarget *)\0",
78256                ),
78257            )
78258        }
78259    }
78260}
78261
78262/// Binds a Qt signal with arguments `*mut crate::QRenderTarget` to a Rust closure.
78263///
78264/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRenderTarget*```</span>).
78265///
78266/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
78267///
78268/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
78269///
78270/// If `set()` was not called, slot invocation has no effect.
78271#[repr(C)]
78272pub struct SlotOfQRenderTarget {
78273    _unused: u8,
78274}
78275impl SlotOfQRenderTarget {
78276    #[inline(always)]
78277    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
78278        let ffi_result = {
78279            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_metaObject(self as *const crate::SlotOfQRenderTarget)
78280        };
78281        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78282    }
78283
78284    /// Creates a new object.
78285    #[inline(always)]
78286    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QRenderTarget>) + 'static>(
78287        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
78288        callback: T,
78289    ) -> ::qt_core::QBox<crate::SlotOfQRenderTarget> {
78290        let ffi_result = {
78291            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78292                unsafe {
78293                    let _ = Box::from_raw(data as *mut T);
78294                }
78295            }
78296            extern "C" fn ffi_callback<
78297                T: FnMut(::qt_core::QPtr<crate::QRenderTarget>) + 'static,
78298            >(
78299                data: *mut ::std::ffi::c_void,
78300                arg0: *mut crate::QRenderTarget,
78301            ) {
78302                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
78303            }
78304            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78305            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78306        };
78307        ::qt_core::QBox::from_raw(ffi_result)
78308    }
78309
78310    #[inline(always)]
78311    pub unsafe fn qt_metacall(
78312        &self,
78313        arg1: ::qt_core::q_meta_object::Call,
78314        arg2: ::std::os::raw::c_int,
78315        arg3: *mut *mut ::std::ffi::c_void,
78316    ) -> ::std::os::raw::c_int {
78317        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_qt_metacall(self as *const crate::SlotOfQRenderTarget as *mut crate::SlotOfQRenderTarget, arg1, arg2, arg3)
78318    }
78319
78320    #[inline(always)]
78321    pub unsafe fn qt_metacast(
78322        &self,
78323        arg1: *const ::std::os::raw::c_char,
78324    ) -> *mut ::std::ffi::c_void {
78325        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_qt_metacast(self as *const crate::SlotOfQRenderTarget as *mut crate::SlotOfQRenderTarget, arg1)
78326    }
78327
78328    /// Assigns `callback` as the signal handler.
78329    ///
78330    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
78331    #[inline(always)]
78332    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QRenderTarget>) + 'static>(
78333        &self,
78334        callback: T,
78335    ) {
78336        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78337            unsafe {
78338                let _ = Box::from_raw(data as *mut T);
78339            }
78340        }
78341        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QRenderTarget>) + 'static>(
78342            data: *mut ::std::ffi::c_void,
78343            arg0: *mut crate::QRenderTarget,
78344        ) {
78345            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
78346        }
78347        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78348        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_set(self as *const crate::SlotOfQRenderTarget as *mut crate::SlotOfQRenderTarget, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78349    }
78350
78351    /// Calls the slot directly, invoking the assigned handler (if any).
78352    #[inline(always)]
78353    pub unsafe fn slot(
78354        &self,
78355        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTarget>>,
78356    ) {
78357        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_slot_(self as *const crate::SlotOfQRenderTarget as *mut crate::SlotOfQRenderTarget, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTarget>>::cast_into(arg0).as_raw_ptr() as *mut crate::QRenderTarget)
78358    }
78359
78360    #[inline(always)]
78361    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
78362        let ffi_result = {
78363            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_staticMetaObject()
78364        };
78365        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78366            .expect("attempted to construct a null Ref")
78367    }
78368
78369    #[inline(always)]
78370    pub unsafe fn tr(
78371        s: *const ::std::os::raw::c_char,
78372        c: *const ::std::os::raw::c_char,
78373        n: ::std::os::raw::c_int,
78374    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78375        let ffi_result = {
78376            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_tr(s, c, n)
78377        };
78378        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78379    }
78380
78381    #[inline(always)]
78382    pub unsafe fn tr_utf8(
78383        s: *const ::std::os::raw::c_char,
78384        c: *const ::std::os::raw::c_char,
78385        n: ::std::os::raw::c_int,
78386    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78387        let ffi_result = {
78388            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_trUtf8(s, c, n)
78389        };
78390        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78391    }
78392}
78393
78394impl ::qt_core::AsReceiver for crate::SlotOfQPoint {
78395    type Arguments = (*const ::qt_core::QPoint,);
78396    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
78397        unsafe {
78398            ::qt_core::Receiver::new(
78399                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
78400                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(QPoint const &)\0"),
78401            )
78402        }
78403    }
78404}
78405
78406/// Binds a Qt signal with arguments `*const ::qt_core::QPoint` to a Rust closure.
78407///
78408/// Corresponding C++ argument types: (<span style='color: green;'>```const QPoint&```</span>).
78409///
78410/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
78411///
78412/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
78413///
78414/// If `set()` was not called, slot invocation has no effect.
78415#[repr(C)]
78416pub struct SlotOfQPoint {
78417    _unused: u8,
78418}
78419impl SlotOfQPoint {
78420    #[inline(always)]
78421    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
78422        let ffi_result = {
78423            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_metaObject(self as *const crate::SlotOfQPoint)
78424        };
78425        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78426    }
78427
78428    /// Creates a new object.
78429    #[inline(always)]
78430    pub unsafe fn new<T: FnMut(::cpp_core::Ref<::qt_core::QPoint>) + 'static>(
78431        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
78432        callback: T,
78433    ) -> ::qt_core::QBox<crate::SlotOfQPoint> {
78434        let ffi_result = {
78435            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78436                unsafe {
78437                    let _ = Box::from_raw(data as *mut T);
78438                }
78439            }
78440            extern "C" fn ffi_callback<T: FnMut(::cpp_core::Ref<::qt_core::QPoint>) + 'static>(
78441                data: *mut ::std::ffi::c_void,
78442                arg0: *const ::qt_core::QPoint,
78443            ) {
78444                unsafe {
78445                    (*(data as *mut T))(
78446                        ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QPoint)
78447                            .expect("attempted to construct a null Ref"),
78448                    )
78449                }
78450            }
78451            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78452            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78453        };
78454        ::qt_core::QBox::from_raw(ffi_result)
78455    }
78456
78457    #[inline(always)]
78458    pub unsafe fn qt_metacall(
78459        &self,
78460        arg1: ::qt_core::q_meta_object::Call,
78461        arg2: ::std::os::raw::c_int,
78462        arg3: *mut *mut ::std::ffi::c_void,
78463    ) -> ::std::os::raw::c_int {
78464        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_qt_metacall(self as *const crate::SlotOfQPoint as *mut crate::SlotOfQPoint, arg1, arg2, arg3)
78465    }
78466
78467    #[inline(always)]
78468    pub unsafe fn qt_metacast(
78469        &self,
78470        arg1: *const ::std::os::raw::c_char,
78471    ) -> *mut ::std::ffi::c_void {
78472        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_qt_metacast(self as *const crate::SlotOfQPoint as *mut crate::SlotOfQPoint, arg1)
78473    }
78474
78475    /// Assigns `callback` as the signal handler.
78476    ///
78477    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
78478    #[inline(always)]
78479    pub unsafe fn set<T: FnMut(::cpp_core::Ref<::qt_core::QPoint>) + 'static>(&self, callback: T) {
78480        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78481            unsafe {
78482                let _ = Box::from_raw(data as *mut T);
78483            }
78484        }
78485        extern "C" fn ffi_callback<T: FnMut(::cpp_core::Ref<::qt_core::QPoint>) + 'static>(
78486            data: *mut ::std::ffi::c_void,
78487            arg0: *const ::qt_core::QPoint,
78488        ) {
78489            unsafe {
78490                (*(data as *mut T))(
78491                    ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QPoint)
78492                        .expect("attempted to construct a null Ref"),
78493                )
78494            }
78495        }
78496        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78497        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_set(
78498            self as *const crate::SlotOfQPoint as *mut crate::SlotOfQPoint,
78499            Some(ffi_callback::<T>),
78500            Some(deleter::<T>),
78501            data,
78502        )
78503    }
78504
78505    /// Calls the slot directly, invoking the assigned handler (if any).
78506    #[inline(always)]
78507    pub unsafe fn slot(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QPoint>>) {
78508        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_slot_(
78509            self as *const crate::SlotOfQPoint as *mut crate::SlotOfQPoint,
78510            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QPoint>>::cast_into(arg0)
78511                .as_raw_ptr(),
78512        )
78513    }
78514
78515    #[inline(always)]
78516    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
78517        let ffi_result = {
78518            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_staticMetaObject()
78519        };
78520        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78521            .expect("attempted to construct a null Ref")
78522    }
78523
78524    #[inline(always)]
78525    pub unsafe fn tr(
78526        s: *const ::std::os::raw::c_char,
78527        c: *const ::std::os::raw::c_char,
78528        n: ::std::os::raw::c_int,
78529    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78530        let ffi_result = {
78531            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_tr(
78532                s, c, n,
78533            )
78534        };
78535        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78536    }
78537
78538    #[inline(always)]
78539    pub unsafe fn tr_utf8(
78540        s: *const ::std::os::raw::c_char,
78541        c: *const ::std::os::raw::c_char,
78542        n: ::std::os::raw::c_int,
78543    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78544        let ffi_result = {
78545            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_trUtf8(s, c, n)
78546        };
78547        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78548    }
78549}
78550
78551impl ::qt_core::AsReceiver for crate::SlotOfStatus {
78552    type Arguments = (crate::q_shader_program::Status,);
78553    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
78554        unsafe {
78555            ::qt_core::Receiver::new(
78556                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
78557                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
78558                    b"1slot_(Qt3DRender::QShaderProgram::Status)\0",
78559                ),
78560            )
78561        }
78562    }
78563}
78564
78565/// Binds a Qt signal with arguments `crate::q_shader_program::Status` to a Rust closure.
78566///
78567/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QShaderProgram::Status```</span>).
78568///
78569/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
78570///
78571/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
78572///
78573/// If `set()` was not called, slot invocation has no effect.
78574#[repr(C)]
78575pub struct SlotOfStatus {
78576    _unused: u8,
78577}
78578impl SlotOfStatus {
78579    #[inline(always)]
78580    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
78581        let ffi_result = {
78582            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_metaObject(self as *const crate::SlotOfStatus)
78583        };
78584        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78585    }
78586
78587    /// Creates a new object.
78588    #[inline(always)]
78589    pub unsafe fn new<T: FnMut(crate::q_shader_program::Status) + 'static>(
78590        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
78591        callback: T,
78592    ) -> ::qt_core::QBox<crate::SlotOfStatus> {
78593        let ffi_result = {
78594            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78595                unsafe {
78596                    let _ = Box::from_raw(data as *mut T);
78597                }
78598            }
78599            extern "C" fn ffi_callback<T: FnMut(crate::q_shader_program::Status) + 'static>(
78600                data: *mut ::std::ffi::c_void,
78601                arg0: crate::q_shader_program::Status,
78602            ) {
78603                unsafe { (*(data as *mut T))(arg0) }
78604            }
78605            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78606            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78607        };
78608        ::qt_core::QBox::from_raw(ffi_result)
78609    }
78610
78611    #[inline(always)]
78612    pub unsafe fn qt_metacall(
78613        &self,
78614        arg1: ::qt_core::q_meta_object::Call,
78615        arg2: ::std::os::raw::c_int,
78616        arg3: *mut *mut ::std::ffi::c_void,
78617    ) -> ::std::os::raw::c_int {
78618        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_qt_metacall(self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus, arg1, arg2, arg3)
78619    }
78620
78621    #[inline(always)]
78622    pub unsafe fn qt_metacast(
78623        &self,
78624        arg1: *const ::std::os::raw::c_char,
78625    ) -> *mut ::std::ffi::c_void {
78626        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_qt_metacast(self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus, arg1)
78627    }
78628
78629    /// Assigns `callback` as the signal handler.
78630    ///
78631    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
78632    #[inline(always)]
78633    pub unsafe fn set<T: FnMut(crate::q_shader_program::Status) + 'static>(&self, callback: T) {
78634        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78635            unsafe {
78636                let _ = Box::from_raw(data as *mut T);
78637            }
78638        }
78639        extern "C" fn ffi_callback<T: FnMut(crate::q_shader_program::Status) + 'static>(
78640            data: *mut ::std::ffi::c_void,
78641            arg0: crate::q_shader_program::Status,
78642        ) {
78643            unsafe { (*(data as *mut T))(arg0) }
78644        }
78645        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78646        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_set(self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78647    }
78648
78649    /// Calls the slot directly, invoking the assigned handler (if any).
78650    #[inline(always)]
78651    pub unsafe fn slot(&self, arg0: crate::q_shader_program::Status) {
78652        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_slot_(self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus, arg0)
78653    }
78654
78655    #[inline(always)]
78656    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
78657        let ffi_result = {
78658            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_staticMetaObject()
78659        };
78660        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78661            .expect("attempted to construct a null Ref")
78662    }
78663
78664    #[inline(always)]
78665    pub unsafe fn tr(
78666        s: *const ::std::os::raw::c_char,
78667        c: *const ::std::os::raw::c_char,
78668        n: ::std::os::raw::c_int,
78669    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78670        let ffi_result = {
78671            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_tr(s, c, n)
78672        };
78673        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78674    }
78675
78676    #[inline(always)]
78677    pub unsafe fn tr_utf8(
78678        s: *const ::std::os::raw::c_char,
78679        c: *const ::std::os::raw::c_char,
78680        n: ::std::os::raw::c_int,
78681    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78682        let ffi_result = {
78683            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_trUtf8(s, c, n)
78684        };
78685        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78686    }
78687}
78688
78689impl ::qt_core::AsReceiver for crate::SlotOfQVector3D {
78690    type Arguments = (*const ::qt_gui::QVector3D,);
78691    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
78692        unsafe {
78693            ::qt_core::Receiver::new(
78694                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
78695                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(QVector3D)\0"),
78696            )
78697        }
78698    }
78699}
78700
78701/// Binds a Qt signal with arguments `*const ::qt_gui::QVector3D` to a Rust closure.
78702///
78703/// Corresponding C++ argument types: (<span style='color: green;'>```QVector3D```</span>).
78704///
78705/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
78706///
78707/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
78708///
78709/// If `set()` was not called, slot invocation has no effect.
78710#[repr(C)]
78711pub struct SlotOfQVector3D {
78712    _unused: u8,
78713}
78714impl SlotOfQVector3D {
78715    #[inline(always)]
78716    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
78717        let ffi_result = {
78718            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_metaObject(self as *const crate::SlotOfQVector3D)
78719        };
78720        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78721    }
78722
78723    #[inline(always)]
78724    pub unsafe fn qt_metacall(
78725        &self,
78726        arg1: ::qt_core::q_meta_object::Call,
78727        arg2: ::std::os::raw::c_int,
78728        arg3: *mut *mut ::std::ffi::c_void,
78729    ) -> ::std::os::raw::c_int {
78730        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_qt_metacall(
78731            self as *const crate::SlotOfQVector3D as *mut crate::SlotOfQVector3D,
78732            arg1,
78733            arg2,
78734            arg3,
78735        )
78736    }
78737
78738    #[inline(always)]
78739    pub unsafe fn qt_metacast(
78740        &self,
78741        arg1: *const ::std::os::raw::c_char,
78742    ) -> *mut ::std::ffi::c_void {
78743        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_qt_metacast(
78744            self as *const crate::SlotOfQVector3D as *mut crate::SlotOfQVector3D,
78745            arg1,
78746        )
78747    }
78748
78749    /// Calls the slot directly, invoking the assigned handler (if any).
78750    #[inline(always)]
78751    pub unsafe fn slot(
78752        &self,
78753        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVector3D>>,
78754    ) {
78755        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_slot_(
78756            self as *const crate::SlotOfQVector3D as *mut crate::SlotOfQVector3D,
78757            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVector3D>>::cast_into(arg0)
78758                .as_raw_ptr(),
78759        )
78760    }
78761
78762    #[inline(always)]
78763    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
78764        let ffi_result = {
78765            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_staticMetaObject()
78766        };
78767        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78768            .expect("attempted to construct a null Ref")
78769    }
78770
78771    #[inline(always)]
78772    pub unsafe fn tr(
78773        s: *const ::std::os::raw::c_char,
78774        c: *const ::std::os::raw::c_char,
78775        n: ::std::os::raw::c_int,
78776    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78777        let ffi_result = {
78778            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_tr(
78779                s, c, n,
78780            )
78781        };
78782        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78783    }
78784
78785    #[inline(always)]
78786    pub unsafe fn tr_utf8(
78787        s: *const ::std::os::raw::c_char,
78788        c: *const ::std::os::raw::c_char,
78789        n: ::std::os::raw::c_int,
78790    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78791        let ffi_result = {
78792            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_trUtf8(
78793                s, c, n,
78794            )
78795        };
78796        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78797    }
78798}
78799
78800impl ::qt_core::AsReceiver for crate::SlotOfDepthFunction {
78801    type Arguments = (crate::q_depth_test::DepthFunction,);
78802    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
78803        unsafe {
78804            ::qt_core::Receiver::new(
78805                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
78806                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
78807                    b"1slot_(Qt3DRender::QDepthTest::DepthFunction)\0",
78808                ),
78809            )
78810        }
78811    }
78812}
78813
78814/// Binds a Qt signal with arguments `crate::q_depth_test::DepthFunction` to a Rust closure.
78815///
78816/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QDepthTest::DepthFunction```</span>).
78817///
78818/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
78819///
78820/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
78821///
78822/// If `set()` was not called, slot invocation has no effect.
78823#[repr(C)]
78824pub struct SlotOfDepthFunction {
78825    _unused: u8,
78826}
78827impl SlotOfDepthFunction {
78828    #[inline(always)]
78829    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
78830        let ffi_result = {
78831            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_metaObject(self as *const crate::SlotOfDepthFunction)
78832        };
78833        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78834    }
78835
78836    /// Creates a new object.
78837    #[inline(always)]
78838    pub unsafe fn new<T: FnMut(crate::q_depth_test::DepthFunction) + 'static>(
78839        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
78840        callback: T,
78841    ) -> ::qt_core::QBox<crate::SlotOfDepthFunction> {
78842        let ffi_result = {
78843            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78844                unsafe {
78845                    let _ = Box::from_raw(data as *mut T);
78846                }
78847            }
78848            extern "C" fn ffi_callback<T: FnMut(crate::q_depth_test::DepthFunction) + 'static>(
78849                data: *mut ::std::ffi::c_void,
78850                arg0: crate::q_depth_test::DepthFunction,
78851            ) {
78852                unsafe { (*(data as *mut T))(arg0) }
78853            }
78854            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78855            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78856        };
78857        ::qt_core::QBox::from_raw(ffi_result)
78858    }
78859
78860    #[inline(always)]
78861    pub unsafe fn qt_metacall(
78862        &self,
78863        arg1: ::qt_core::q_meta_object::Call,
78864        arg2: ::std::os::raw::c_int,
78865        arg3: *mut *mut ::std::ffi::c_void,
78866    ) -> ::std::os::raw::c_int {
78867        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_qt_metacall(self as *const crate::SlotOfDepthFunction as *mut crate::SlotOfDepthFunction, arg1, arg2, arg3)
78868    }
78869
78870    #[inline(always)]
78871    pub unsafe fn qt_metacast(
78872        &self,
78873        arg1: *const ::std::os::raw::c_char,
78874    ) -> *mut ::std::ffi::c_void {
78875        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_qt_metacast(self as *const crate::SlotOfDepthFunction as *mut crate::SlotOfDepthFunction, arg1)
78876    }
78877
78878    /// Assigns `callback` as the signal handler.
78879    ///
78880    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
78881    #[inline(always)]
78882    pub unsafe fn set<T: FnMut(crate::q_depth_test::DepthFunction) + 'static>(&self, callback: T) {
78883        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
78884            unsafe {
78885                let _ = Box::from_raw(data as *mut T);
78886            }
78887        }
78888        extern "C" fn ffi_callback<T: FnMut(crate::q_depth_test::DepthFunction) + 'static>(
78889            data: *mut ::std::ffi::c_void,
78890            arg0: crate::q_depth_test::DepthFunction,
78891        ) {
78892            unsafe { (*(data as *mut T))(arg0) }
78893        }
78894        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
78895        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_set(self as *const crate::SlotOfDepthFunction as *mut crate::SlotOfDepthFunction, Some(ffi_callback::<T>), Some(deleter::<T>), data)
78896    }
78897
78898    /// Calls the slot directly, invoking the assigned handler (if any).
78899    #[inline(always)]
78900    pub unsafe fn slot(&self, arg0: crate::q_depth_test::DepthFunction) {
78901        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_slot_(self as *const crate::SlotOfDepthFunction as *mut crate::SlotOfDepthFunction, arg0)
78902    }
78903
78904    #[inline(always)]
78905    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
78906        let ffi_result = {
78907            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_staticMetaObject()
78908        };
78909        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78910            .expect("attempted to construct a null Ref")
78911    }
78912
78913    #[inline(always)]
78914    pub unsafe fn tr(
78915        s: *const ::std::os::raw::c_char,
78916        c: *const ::std::os::raw::c_char,
78917        n: ::std::os::raw::c_int,
78918    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78919        let ffi_result = {
78920            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_tr(s, c, n)
78921        };
78922        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78923    }
78924
78925    #[inline(always)]
78926    pub unsafe fn tr_utf8(
78927        s: *const ::std::os::raw::c_char,
78928        c: *const ::std::os::raw::c_char,
78929        n: ::std::os::raw::c_int,
78930    ) -> ::cpp_core::CppBox<::qt_core::QString> {
78931        let ffi_result = {
78932            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_trUtf8(s, c, n)
78933        };
78934        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
78935    }
78936}
78937
78938#[cfg_attr(
78939    feature = "ritual_rustdoc_nightly",
78940    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
78941)]
78942#[cfg(any(
78943    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
78944    feature = "ritual_rustdoc"
78945))]
78946
78947impl ::qt_core::AsReceiver for crate::SlotOfHandleType {
78948    type Arguments = (crate::q_set_fence::HandleType,);
78949    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
78950        unsafe {
78951            ::qt_core::Receiver::new(
78952                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
78953                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
78954                    b"1slot_(Qt3DRender::QSetFence::HandleType)\0",
78955                ),
78956            )
78957        }
78958    }
78959}
78960
78961/// Binds a Qt signal with arguments `crate::q_set_fence::HandleType` to a Rust closure.
78962///
78963/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QSetFence::HandleType```</span>).
78964///
78965/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
78966///
78967/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
78968///
78969/// If `set()` was not called, slot invocation has no effect.
78970#[repr(C)]
78971pub struct SlotOfHandleType {
78972    _unused: u8,
78973}
78974impl SlotOfHandleType {
78975    #[inline(always)]
78976    #[cfg_attr(
78977        feature = "ritual_rustdoc_nightly",
78978        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
78979    )]
78980    #[cfg(any(
78981        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
78982        feature = "ritual_rustdoc"
78983    ))]
78984    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
78985        let ffi_result = {
78986            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_metaObject(self as *const crate::SlotOfHandleType)
78987        };
78988        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
78989    }
78990
78991    /// Creates a new object.
78992    #[inline(always)]
78993    #[cfg_attr(
78994        feature = "ritual_rustdoc_nightly",
78995        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
78996    )]
78997    #[cfg(any(
78998        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
78999        feature = "ritual_rustdoc"
79000    ))]
79001    pub unsafe fn new<T: FnMut(crate::q_set_fence::HandleType) + 'static>(
79002        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
79003        callback: T,
79004    ) -> ::qt_core::QBox<crate::SlotOfHandleType> {
79005        let ffi_result = {
79006            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79007                unsafe {
79008                    let _ = Box::from_raw(data as *mut T);
79009                }
79010            }
79011            extern "C" fn ffi_callback<T: FnMut(crate::q_set_fence::HandleType) + 'static>(
79012                data: *mut ::std::ffi::c_void,
79013                arg0: crate::q_set_fence::HandleType,
79014            ) {
79015                unsafe { (*(data as *mut T))(arg0) }
79016            }
79017            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79018            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79019        };
79020        ::qt_core::QBox::from_raw(ffi_result)
79021    }
79022
79023    #[inline(always)]
79024    #[cfg_attr(
79025        feature = "ritual_rustdoc_nightly",
79026        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79027    )]
79028    #[cfg(any(
79029        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79030        feature = "ritual_rustdoc"
79031    ))]
79032    pub unsafe fn qt_metacall(
79033        &self,
79034        arg1: ::qt_core::q_meta_object::Call,
79035        arg2: ::std::os::raw::c_int,
79036        arg3: *mut *mut ::std::ffi::c_void,
79037    ) -> ::std::os::raw::c_int {
79038        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_qt_metacall(self as *const crate::SlotOfHandleType as *mut crate::SlotOfHandleType, arg1, arg2, arg3)
79039    }
79040
79041    #[inline(always)]
79042    #[cfg_attr(
79043        feature = "ritual_rustdoc_nightly",
79044        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79045    )]
79046    #[cfg(any(
79047        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79048        feature = "ritual_rustdoc"
79049    ))]
79050    pub unsafe fn qt_metacast(
79051        &self,
79052        arg1: *const ::std::os::raw::c_char,
79053    ) -> *mut ::std::ffi::c_void {
79054        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_qt_metacast(self as *const crate::SlotOfHandleType as *mut crate::SlotOfHandleType, arg1)
79055    }
79056
79057    /// Assigns `callback` as the signal handler.
79058    ///
79059    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
79060    #[inline(always)]
79061    #[cfg_attr(
79062        feature = "ritual_rustdoc_nightly",
79063        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79064    )]
79065    #[cfg(any(
79066        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79067        feature = "ritual_rustdoc"
79068    ))]
79069    pub unsafe fn set<T: FnMut(crate::q_set_fence::HandleType) + 'static>(&self, callback: T) {
79070        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79071            unsafe {
79072                let _ = Box::from_raw(data as *mut T);
79073            }
79074        }
79075        extern "C" fn ffi_callback<T: FnMut(crate::q_set_fence::HandleType) + 'static>(
79076            data: *mut ::std::ffi::c_void,
79077            arg0: crate::q_set_fence::HandleType,
79078        ) {
79079            unsafe { (*(data as *mut T))(arg0) }
79080        }
79081        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79082        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_set(self as *const crate::SlotOfHandleType as *mut crate::SlotOfHandleType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79083    }
79084
79085    /// Calls the slot directly, invoking the assigned handler (if any).
79086    #[inline(always)]
79087    #[cfg_attr(
79088        feature = "ritual_rustdoc_nightly",
79089        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79090    )]
79091    #[cfg(any(
79092        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79093        feature = "ritual_rustdoc"
79094    ))]
79095    pub unsafe fn slot(&self, arg0: crate::q_set_fence::HandleType) {
79096        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_slot_(self as *const crate::SlotOfHandleType as *mut crate::SlotOfHandleType, arg0)
79097    }
79098
79099    #[inline(always)]
79100    #[cfg_attr(
79101        feature = "ritual_rustdoc_nightly",
79102        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79103    )]
79104    #[cfg(any(
79105        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79106        feature = "ritual_rustdoc"
79107    ))]
79108    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
79109        let ffi_result = {
79110            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_staticMetaObject()
79111        };
79112        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79113            .expect("attempted to construct a null Ref")
79114    }
79115
79116    #[inline(always)]
79117    #[cfg_attr(
79118        feature = "ritual_rustdoc_nightly",
79119        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79120    )]
79121    #[cfg(any(
79122        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79123        feature = "ritual_rustdoc"
79124    ))]
79125    pub unsafe fn tr(
79126        s: *const ::std::os::raw::c_char,
79127        c: *const ::std::os::raw::c_char,
79128        n: ::std::os::raw::c_int,
79129    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79130        let ffi_result = {
79131            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_tr(s, c, n)
79132        };
79133        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79134    }
79135
79136    #[inline(always)]
79137    #[cfg_attr(
79138        feature = "ritual_rustdoc_nightly",
79139        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79140    )]
79141    #[cfg(any(
79142        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79143        feature = "ritual_rustdoc"
79144    ))]
79145    pub unsafe fn tr_utf8(
79146        s: *const ::std::os::raw::c_char,
79147        c: *const ::std::os::raw::c_char,
79148        n: ::std::os::raw::c_int,
79149    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79150        let ffi_result = {
79151            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_trUtf8(s, c, n)
79152        };
79153        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79154    }
79155}
79156
79157impl ::qt_core::AsReceiver for crate::SlotOfComparisonMode {
79158    type Arguments = (crate::q_abstract_texture::ComparisonMode,);
79159    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
79160        unsafe {
79161            ::qt_core::Receiver::new(
79162                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
79163                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
79164                    b"1slot_(Qt3DRender::QAbstractTexture::ComparisonMode)\0",
79165                ),
79166            )
79167        }
79168    }
79169}
79170
79171/// Binds a Qt signal with arguments `crate::q_abstract_texture::ComparisonMode` to a Rust closure.
79172///
79173/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonMode```</span>).
79174///
79175/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
79176///
79177/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
79178///
79179/// If `set()` was not called, slot invocation has no effect.
79180#[repr(C)]
79181pub struct SlotOfComparisonMode {
79182    _unused: u8,
79183}
79184impl SlotOfComparisonMode {
79185    #[inline(always)]
79186    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
79187        let ffi_result = {
79188            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_metaObject(self as *const crate::SlotOfComparisonMode)
79189        };
79190        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79191    }
79192
79193    /// Creates a new object.
79194    #[inline(always)]
79195    pub unsafe fn new<T: FnMut(crate::q_abstract_texture::ComparisonMode) + 'static>(
79196        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
79197        callback: T,
79198    ) -> ::qt_core::QBox<crate::SlotOfComparisonMode> {
79199        let ffi_result = {
79200            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79201                unsafe {
79202                    let _ = Box::from_raw(data as *mut T);
79203                }
79204            }
79205            extern "C" fn ffi_callback<
79206                T: FnMut(crate::q_abstract_texture::ComparisonMode) + 'static,
79207            >(
79208                data: *mut ::std::ffi::c_void,
79209                arg0: crate::q_abstract_texture::ComparisonMode,
79210            ) {
79211                unsafe { (*(data as *mut T))(arg0) }
79212            }
79213            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79214            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79215        };
79216        ::qt_core::QBox::from_raw(ffi_result)
79217    }
79218
79219    #[inline(always)]
79220    pub unsafe fn qt_metacall(
79221        &self,
79222        arg1: ::qt_core::q_meta_object::Call,
79223        arg2: ::std::os::raw::c_int,
79224        arg3: *mut *mut ::std::ffi::c_void,
79225    ) -> ::std::os::raw::c_int {
79226        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_qt_metacall(self as *const crate::SlotOfComparisonMode as *mut crate::SlotOfComparisonMode, arg1, arg2, arg3)
79227    }
79228
79229    #[inline(always)]
79230    pub unsafe fn qt_metacast(
79231        &self,
79232        arg1: *const ::std::os::raw::c_char,
79233    ) -> *mut ::std::ffi::c_void {
79234        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_qt_metacast(self as *const crate::SlotOfComparisonMode as *mut crate::SlotOfComparisonMode, arg1)
79235    }
79236
79237    /// Assigns `callback` as the signal handler.
79238    ///
79239    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
79240    #[inline(always)]
79241    pub unsafe fn set<T: FnMut(crate::q_abstract_texture::ComparisonMode) + 'static>(
79242        &self,
79243        callback: T,
79244    ) {
79245        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79246            unsafe {
79247                let _ = Box::from_raw(data as *mut T);
79248            }
79249        }
79250        extern "C" fn ffi_callback<
79251            T: FnMut(crate::q_abstract_texture::ComparisonMode) + 'static,
79252        >(
79253            data: *mut ::std::ffi::c_void,
79254            arg0: crate::q_abstract_texture::ComparisonMode,
79255        ) {
79256            unsafe { (*(data as *mut T))(arg0) }
79257        }
79258        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79259        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_set(self as *const crate::SlotOfComparisonMode as *mut crate::SlotOfComparisonMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79260    }
79261
79262    /// Calls the slot directly, invoking the assigned handler (if any).
79263    #[inline(always)]
79264    pub unsafe fn slot(&self, arg0: crate::q_abstract_texture::ComparisonMode) {
79265        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_slot_(self as *const crate::SlotOfComparisonMode as *mut crate::SlotOfComparisonMode, arg0)
79266    }
79267
79268    #[inline(always)]
79269    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
79270        let ffi_result = {
79271            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_staticMetaObject()
79272        };
79273        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79274            .expect("attempted to construct a null Ref")
79275    }
79276
79277    #[inline(always)]
79278    pub unsafe fn tr(
79279        s: *const ::std::os::raw::c_char,
79280        c: *const ::std::os::raw::c_char,
79281        n: ::std::os::raw::c_int,
79282    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79283        let ffi_result = {
79284            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_tr(s, c, n)
79285        };
79286        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79287    }
79288
79289    #[inline(always)]
79290    pub unsafe fn tr_utf8(
79291        s: *const ::std::os::raw::c_char,
79292        c: *const ::std::os::raw::c_char,
79293        n: ::std::os::raw::c_int,
79294    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79295        let ffi_result = {
79296            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_trUtf8(s, c, n)
79297        };
79298        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79299    }
79300}
79301
79302#[cfg_attr(
79303    feature = "ritual_rustdoc_nightly",
79304    doc(cfg(cpp_lib_version = "5.14.0"))
79305)]
79306#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79307
79308impl ::qt_core::AsReceiver for crate::SlotOfAccess {
79309    type Arguments = (crate::q_shader_image::Access,);
79310    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
79311        unsafe {
79312            ::qt_core::Receiver::new(
79313                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
79314                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
79315                    b"1slot_(Qt3DRender::QShaderImage::Access)\0",
79316                ),
79317            )
79318        }
79319    }
79320}
79321
79322/// Binds a Qt signal with arguments `crate::q_shader_image::Access` to a Rust closure.
79323///
79324/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QShaderImage::Access```</span>).
79325///
79326/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
79327///
79328/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
79329///
79330/// If `set()` was not called, slot invocation has no effect.
79331#[repr(C)]
79332pub struct SlotOfAccess {
79333    _unused: u8,
79334}
79335impl SlotOfAccess {
79336    #[inline(always)]
79337    #[cfg_attr(
79338        feature = "ritual_rustdoc_nightly",
79339        doc(cfg(cpp_lib_version = "5.14.0"))
79340    )]
79341    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79342    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
79343        let ffi_result = {
79344            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_metaObject(self as *const crate::SlotOfAccess)
79345        };
79346        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79347    }
79348
79349    /// Creates a new object.
79350    #[inline(always)]
79351    #[cfg_attr(
79352        feature = "ritual_rustdoc_nightly",
79353        doc(cfg(cpp_lib_version = "5.14.0"))
79354    )]
79355    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79356    pub unsafe fn new<T: FnMut(crate::q_shader_image::Access) + 'static>(
79357        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
79358        callback: T,
79359    ) -> ::qt_core::QBox<crate::SlotOfAccess> {
79360        let ffi_result = {
79361            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79362                unsafe {
79363                    let _ = Box::from_raw(data as *mut T);
79364                }
79365            }
79366            extern "C" fn ffi_callback<T: FnMut(crate::q_shader_image::Access) + 'static>(
79367                data: *mut ::std::ffi::c_void,
79368                arg0: crate::q_shader_image::Access,
79369            ) {
79370                unsafe { (*(data as *mut T))(arg0) }
79371            }
79372            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79373            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79374        };
79375        ::qt_core::QBox::from_raw(ffi_result)
79376    }
79377
79378    #[inline(always)]
79379    #[cfg_attr(
79380        feature = "ritual_rustdoc_nightly",
79381        doc(cfg(cpp_lib_version = "5.14.0"))
79382    )]
79383    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79384    pub unsafe fn qt_metacall(
79385        &self,
79386        arg1: ::qt_core::q_meta_object::Call,
79387        arg2: ::std::os::raw::c_int,
79388        arg3: *mut *mut ::std::ffi::c_void,
79389    ) -> ::std::os::raw::c_int {
79390        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_qt_metacall(self as *const crate::SlotOfAccess as *mut crate::SlotOfAccess, arg1, arg2, arg3)
79391    }
79392
79393    #[inline(always)]
79394    #[cfg_attr(
79395        feature = "ritual_rustdoc_nightly",
79396        doc(cfg(cpp_lib_version = "5.14.0"))
79397    )]
79398    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79399    pub unsafe fn qt_metacast(
79400        &self,
79401        arg1: *const ::std::os::raw::c_char,
79402    ) -> *mut ::std::ffi::c_void {
79403        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_qt_metacast(self as *const crate::SlotOfAccess as *mut crate::SlotOfAccess, arg1)
79404    }
79405
79406    /// Assigns `callback` as the signal handler.
79407    ///
79408    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
79409    #[inline(always)]
79410    #[cfg_attr(
79411        feature = "ritual_rustdoc_nightly",
79412        doc(cfg(cpp_lib_version = "5.14.0"))
79413    )]
79414    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79415    pub unsafe fn set<T: FnMut(crate::q_shader_image::Access) + 'static>(&self, callback: T) {
79416        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79417            unsafe {
79418                let _ = Box::from_raw(data as *mut T);
79419            }
79420        }
79421        extern "C" fn ffi_callback<T: FnMut(crate::q_shader_image::Access) + 'static>(
79422            data: *mut ::std::ffi::c_void,
79423            arg0: crate::q_shader_image::Access,
79424        ) {
79425            unsafe { (*(data as *mut T))(arg0) }
79426        }
79427        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79428        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_set(self as *const crate::SlotOfAccess as *mut crate::SlotOfAccess, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79429    }
79430
79431    /// Calls the slot directly, invoking the assigned handler (if any).
79432    #[inline(always)]
79433    #[cfg_attr(
79434        feature = "ritual_rustdoc_nightly",
79435        doc(cfg(cpp_lib_version = "5.14.0"))
79436    )]
79437    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79438    pub unsafe fn slot(&self, arg0: crate::q_shader_image::Access) {
79439        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_slot_(self as *const crate::SlotOfAccess as *mut crate::SlotOfAccess, arg0)
79440    }
79441
79442    #[inline(always)]
79443    #[cfg_attr(
79444        feature = "ritual_rustdoc_nightly",
79445        doc(cfg(cpp_lib_version = "5.14.0"))
79446    )]
79447    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79448    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
79449        let ffi_result = {
79450            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_staticMetaObject()
79451        };
79452        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79453            .expect("attempted to construct a null Ref")
79454    }
79455
79456    #[inline(always)]
79457    #[cfg_attr(
79458        feature = "ritual_rustdoc_nightly",
79459        doc(cfg(cpp_lib_version = "5.14.0"))
79460    )]
79461    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79462    pub unsafe fn tr(
79463        s: *const ::std::os::raw::c_char,
79464        c: *const ::std::os::raw::c_char,
79465        n: ::std::os::raw::c_int,
79466    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79467        let ffi_result = {
79468            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_tr(s, c, n)
79469        };
79470        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79471    }
79472
79473    #[inline(always)]
79474    #[cfg_attr(
79475        feature = "ritual_rustdoc_nightly",
79476        doc(cfg(cpp_lib_version = "5.14.0"))
79477    )]
79478    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
79479    pub unsafe fn tr_utf8(
79480        s: *const ::std::os::raw::c_char,
79481        c: *const ::std::os::raw::c_char,
79482        n: ::std::os::raw::c_int,
79483    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79484        let ffi_result = {
79485            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_trUtf8(s, c, n)
79486        };
79487        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79488    }
79489}
79490
79491impl ::qt_core::AsReceiver for crate::SlotOfBufferType {
79492    type Arguments = (crate::q_clear_buffers::BufferType,);
79493    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
79494        unsafe {
79495            ::qt_core::Receiver::new(
79496                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
79497                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
79498                    b"1slot_(Qt3DRender::QClearBuffers::BufferType)\0",
79499                ),
79500            )
79501        }
79502    }
79503}
79504
79505/// Binds a Qt signal with arguments `crate::q_clear_buffers::BufferType` to a Rust closure.
79506///
79507/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QClearBuffers::BufferType```</span>).
79508///
79509/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
79510///
79511/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
79512///
79513/// If `set()` was not called, slot invocation has no effect.
79514#[repr(C)]
79515pub struct SlotOfBufferType {
79516    _unused: u8,
79517}
79518impl SlotOfBufferType {
79519    #[inline(always)]
79520    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
79521        let ffi_result = {
79522            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_metaObject(self as *const crate::SlotOfBufferType)
79523        };
79524        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79525    }
79526
79527    /// Creates a new object.
79528    #[inline(always)]
79529    pub unsafe fn new<T: FnMut(crate::q_clear_buffers::BufferType) + 'static>(
79530        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
79531        callback: T,
79532    ) -> ::qt_core::QBox<crate::SlotOfBufferType> {
79533        let ffi_result = {
79534            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79535                unsafe {
79536                    let _ = Box::from_raw(data as *mut T);
79537                }
79538            }
79539            extern "C" fn ffi_callback<T: FnMut(crate::q_clear_buffers::BufferType) + 'static>(
79540                data: *mut ::std::ffi::c_void,
79541                arg0: crate::q_clear_buffers::BufferType,
79542            ) {
79543                unsafe { (*(data as *mut T))(arg0) }
79544            }
79545            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79546            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79547        };
79548        ::qt_core::QBox::from_raw(ffi_result)
79549    }
79550
79551    #[inline(always)]
79552    pub unsafe fn qt_metacall(
79553        &self,
79554        arg1: ::qt_core::q_meta_object::Call,
79555        arg2: ::std::os::raw::c_int,
79556        arg3: *mut *mut ::std::ffi::c_void,
79557    ) -> ::std::os::raw::c_int {
79558        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_qt_metacall(self as *const crate::SlotOfBufferType as *mut crate::SlotOfBufferType, arg1, arg2, arg3)
79559    }
79560
79561    #[inline(always)]
79562    pub unsafe fn qt_metacast(
79563        &self,
79564        arg1: *const ::std::os::raw::c_char,
79565    ) -> *mut ::std::ffi::c_void {
79566        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_qt_metacast(self as *const crate::SlotOfBufferType as *mut crate::SlotOfBufferType, arg1)
79567    }
79568
79569    /// Assigns `callback` as the signal handler.
79570    ///
79571    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
79572    #[inline(always)]
79573    pub unsafe fn set<T: FnMut(crate::q_clear_buffers::BufferType) + 'static>(&self, callback: T) {
79574        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79575            unsafe {
79576                let _ = Box::from_raw(data as *mut T);
79577            }
79578        }
79579        extern "C" fn ffi_callback<T: FnMut(crate::q_clear_buffers::BufferType) + 'static>(
79580            data: *mut ::std::ffi::c_void,
79581            arg0: crate::q_clear_buffers::BufferType,
79582        ) {
79583            unsafe { (*(data as *mut T))(arg0) }
79584        }
79585        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79586        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_set(self as *const crate::SlotOfBufferType as *mut crate::SlotOfBufferType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79587    }
79588
79589    /// Calls the slot directly, invoking the assigned handler (if any).
79590    #[inline(always)]
79591    pub unsafe fn slot(&self, arg0: crate::q_clear_buffers::BufferType) {
79592        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_slot_(self as *const crate::SlotOfBufferType as *mut crate::SlotOfBufferType, arg0)
79593    }
79594
79595    #[inline(always)]
79596    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
79597        let ffi_result = {
79598            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_staticMetaObject()
79599        };
79600        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79601            .expect("attempted to construct a null Ref")
79602    }
79603
79604    #[inline(always)]
79605    pub unsafe fn tr(
79606        s: *const ::std::os::raw::c_char,
79607        c: *const ::std::os::raw::c_char,
79608        n: ::std::os::raw::c_int,
79609    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79610        let ffi_result = {
79611            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_tr(s, c, n)
79612        };
79613        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79614    }
79615
79616    #[inline(always)]
79617    pub unsafe fn tr_utf8(
79618        s: *const ::std::os::raw::c_char,
79619        c: *const ::std::os::raw::c_char,
79620        n: ::std::os::raw::c_int,
79621    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79622        let ffi_result = {
79623            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_trUtf8(s, c, n)
79624        };
79625        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79626    }
79627}
79628
79629impl ::qt_core::AsReceiver for crate::SlotOfFilter {
79630    type Arguments = (crate::q_abstract_texture::Filter,);
79631    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
79632        unsafe {
79633            ::qt_core::Receiver::new(
79634                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
79635                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
79636                    b"1slot_(Qt3DRender::QAbstractTexture::Filter)\0",
79637                ),
79638            )
79639        }
79640    }
79641}
79642
79643/// Binds a Qt signal with arguments `crate::q_abstract_texture::Filter` to a Rust closure.
79644///
79645/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::Filter```</span>).
79646///
79647/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
79648///
79649/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
79650///
79651/// If `set()` was not called, slot invocation has no effect.
79652#[repr(C)]
79653pub struct SlotOfFilter {
79654    _unused: u8,
79655}
79656impl SlotOfFilter {
79657    #[inline(always)]
79658    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
79659        let ffi_result = {
79660            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_metaObject(self as *const crate::SlotOfFilter)
79661        };
79662        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79663    }
79664
79665    /// Creates a new object.
79666    #[inline(always)]
79667    pub unsafe fn new<T: FnMut(crate::q_abstract_texture::Filter) + 'static>(
79668        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
79669        callback: T,
79670    ) -> ::qt_core::QBox<crate::SlotOfFilter> {
79671        let ffi_result = {
79672            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79673                unsafe {
79674                    let _ = Box::from_raw(data as *mut T);
79675                }
79676            }
79677            extern "C" fn ffi_callback<T: FnMut(crate::q_abstract_texture::Filter) + 'static>(
79678                data: *mut ::std::ffi::c_void,
79679                arg0: crate::q_abstract_texture::Filter,
79680            ) {
79681                unsafe { (*(data as *mut T))(arg0) }
79682            }
79683            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79684            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79685        };
79686        ::qt_core::QBox::from_raw(ffi_result)
79687    }
79688
79689    #[inline(always)]
79690    pub unsafe fn qt_metacall(
79691        &self,
79692        arg1: ::qt_core::q_meta_object::Call,
79693        arg2: ::std::os::raw::c_int,
79694        arg3: *mut *mut ::std::ffi::c_void,
79695    ) -> ::std::os::raw::c_int {
79696        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_qt_metacall(self as *const crate::SlotOfFilter as *mut crate::SlotOfFilter, arg1, arg2, arg3)
79697    }
79698
79699    #[inline(always)]
79700    pub unsafe fn qt_metacast(
79701        &self,
79702        arg1: *const ::std::os::raw::c_char,
79703    ) -> *mut ::std::ffi::c_void {
79704        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_qt_metacast(self as *const crate::SlotOfFilter as *mut crate::SlotOfFilter, arg1)
79705    }
79706
79707    /// Assigns `callback` as the signal handler.
79708    ///
79709    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
79710    #[inline(always)]
79711    pub unsafe fn set<T: FnMut(crate::q_abstract_texture::Filter) + 'static>(&self, callback: T) {
79712        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79713            unsafe {
79714                let _ = Box::from_raw(data as *mut T);
79715            }
79716        }
79717        extern "C" fn ffi_callback<T: FnMut(crate::q_abstract_texture::Filter) + 'static>(
79718            data: *mut ::std::ffi::c_void,
79719            arg0: crate::q_abstract_texture::Filter,
79720        ) {
79721            unsafe { (*(data as *mut T))(arg0) }
79722        }
79723        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79724        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_set(self as *const crate::SlotOfFilter as *mut crate::SlotOfFilter, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79725    }
79726
79727    /// Calls the slot directly, invoking the assigned handler (if any).
79728    #[inline(always)]
79729    pub unsafe fn slot(&self, arg0: crate::q_abstract_texture::Filter) {
79730        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_slot_(self as *const crate::SlotOfFilter as *mut crate::SlotOfFilter, arg0)
79731    }
79732
79733    #[inline(always)]
79734    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
79735        let ffi_result = {
79736            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_staticMetaObject()
79737        };
79738        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79739            .expect("attempted to construct a null Ref")
79740    }
79741
79742    #[inline(always)]
79743    pub unsafe fn tr(
79744        s: *const ::std::os::raw::c_char,
79745        c: *const ::std::os::raw::c_char,
79746        n: ::std::os::raw::c_int,
79747    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79748        let ffi_result = {
79749            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_tr(s, c, n)
79750        };
79751        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79752    }
79753
79754    #[inline(always)]
79755    pub unsafe fn tr_utf8(
79756        s: *const ::std::os::raw::c_char,
79757        c: *const ::std::os::raw::c_char,
79758        n: ::std::os::raw::c_int,
79759    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79760        let ffi_result = {
79761            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_trUtf8(s, c, n)
79762        };
79763        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79764    }
79765}
79766
79767impl ::qt_core::AsReceiver for crate::SlotOfCullingMode {
79768    type Arguments = (crate::q_cull_face::CullingMode,);
79769    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
79770        unsafe {
79771            ::qt_core::Receiver::new(
79772                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
79773                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
79774                    b"1slot_(Qt3DRender::QCullFace::CullingMode)\0",
79775                ),
79776            )
79777        }
79778    }
79779}
79780
79781/// Binds a Qt signal with arguments `crate::q_cull_face::CullingMode` to a Rust closure.
79782///
79783/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QCullFace::CullingMode```</span>).
79784///
79785/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
79786///
79787/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
79788///
79789/// If `set()` was not called, slot invocation has no effect.
79790#[repr(C)]
79791pub struct SlotOfCullingMode {
79792    _unused: u8,
79793}
79794impl SlotOfCullingMode {
79795    #[inline(always)]
79796    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
79797        let ffi_result = {
79798            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_metaObject(self as *const crate::SlotOfCullingMode)
79799        };
79800        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79801    }
79802
79803    /// Creates a new object.
79804    #[inline(always)]
79805    pub unsafe fn new<T: FnMut(crate::q_cull_face::CullingMode) + 'static>(
79806        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
79807        callback: T,
79808    ) -> ::qt_core::QBox<crate::SlotOfCullingMode> {
79809        let ffi_result = {
79810            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79811                unsafe {
79812                    let _ = Box::from_raw(data as *mut T);
79813                }
79814            }
79815            extern "C" fn ffi_callback<T: FnMut(crate::q_cull_face::CullingMode) + 'static>(
79816                data: *mut ::std::ffi::c_void,
79817                arg0: crate::q_cull_face::CullingMode,
79818            ) {
79819                unsafe { (*(data as *mut T))(arg0) }
79820            }
79821            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79822            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79823        };
79824        ::qt_core::QBox::from_raw(ffi_result)
79825    }
79826
79827    #[inline(always)]
79828    pub unsafe fn qt_metacall(
79829        &self,
79830        arg1: ::qt_core::q_meta_object::Call,
79831        arg2: ::std::os::raw::c_int,
79832        arg3: *mut *mut ::std::ffi::c_void,
79833    ) -> ::std::os::raw::c_int {
79834        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_qt_metacall(self as *const crate::SlotOfCullingMode as *mut crate::SlotOfCullingMode, arg1, arg2, arg3)
79835    }
79836
79837    #[inline(always)]
79838    pub unsafe fn qt_metacast(
79839        &self,
79840        arg1: *const ::std::os::raw::c_char,
79841    ) -> *mut ::std::ffi::c_void {
79842        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_qt_metacast(self as *const crate::SlotOfCullingMode as *mut crate::SlotOfCullingMode, arg1)
79843    }
79844
79845    /// Assigns `callback` as the signal handler.
79846    ///
79847    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
79848    #[inline(always)]
79849    pub unsafe fn set<T: FnMut(crate::q_cull_face::CullingMode) + 'static>(&self, callback: T) {
79850        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79851            unsafe {
79852                let _ = Box::from_raw(data as *mut T);
79853            }
79854        }
79855        extern "C" fn ffi_callback<T: FnMut(crate::q_cull_face::CullingMode) + 'static>(
79856            data: *mut ::std::ffi::c_void,
79857            arg0: crate::q_cull_face::CullingMode,
79858        ) {
79859            unsafe { (*(data as *mut T))(arg0) }
79860        }
79861        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79862        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_set(self as *const crate::SlotOfCullingMode as *mut crate::SlotOfCullingMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79863    }
79864
79865    /// Calls the slot directly, invoking the assigned handler (if any).
79866    #[inline(always)]
79867    pub unsafe fn slot(&self, arg0: crate::q_cull_face::CullingMode) {
79868        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_slot_(self as *const crate::SlotOfCullingMode as *mut crate::SlotOfCullingMode, arg0)
79869    }
79870
79871    #[inline(always)]
79872    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
79873        let ffi_result = {
79874            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_staticMetaObject()
79875        };
79876        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79877            .expect("attempted to construct a null Ref")
79878    }
79879
79880    #[inline(always)]
79881    pub unsafe fn tr(
79882        s: *const ::std::os::raw::c_char,
79883        c: *const ::std::os::raw::c_char,
79884        n: ::std::os::raw::c_int,
79885    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79886        let ffi_result = {
79887            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_tr(s, c, n)
79888        };
79889        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79890    }
79891
79892    #[inline(always)]
79893    pub unsafe fn tr_utf8(
79894        s: *const ::std::os::raw::c_char,
79895        c: *const ::std::os::raw::c_char,
79896        n: ::std::os::raw::c_int,
79897    ) -> ::cpp_core::CppBox<::qt_core::QString> {
79898        let ffi_result = {
79899            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_trUtf8(s, c, n)
79900        };
79901        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
79902    }
79903}
79904
79905#[cfg_attr(
79906    feature = "ritual_rustdoc_nightly",
79907    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79908)]
79909#[cfg(any(
79910    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79911    feature = "ritual_rustdoc"
79912))]
79913
79914impl ::qt_core::AsReceiver for crate::SlotOfHandleType2 {
79915    type Arguments = (crate::q_wait_fence::HandleType,);
79916    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
79917        unsafe {
79918            ::qt_core::Receiver::new(
79919                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
79920                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
79921                    b"1slot_(Qt3DRender::QWaitFence::HandleType)\0",
79922                ),
79923            )
79924        }
79925    }
79926}
79927
79928/// Binds a Qt signal with arguments `crate::q_wait_fence::HandleType` to a Rust closure.
79929///
79930/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QWaitFence::HandleType```</span>).
79931///
79932/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
79933///
79934/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
79935///
79936/// If `set()` was not called, slot invocation has no effect.
79937#[repr(C)]
79938pub struct SlotOfHandleType2 {
79939    _unused: u8,
79940}
79941impl SlotOfHandleType2 {
79942    #[inline(always)]
79943    #[cfg_attr(
79944        feature = "ritual_rustdoc_nightly",
79945        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79946    )]
79947    #[cfg(any(
79948        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79949        feature = "ritual_rustdoc"
79950    ))]
79951    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
79952        let ffi_result = {
79953            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_metaObject(self as *const crate::SlotOfHandleType2)
79954        };
79955        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
79956    }
79957
79958    /// Creates a new object.
79959    #[inline(always)]
79960    #[cfg_attr(
79961        feature = "ritual_rustdoc_nightly",
79962        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79963    )]
79964    #[cfg(any(
79965        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79966        feature = "ritual_rustdoc"
79967    ))]
79968    pub unsafe fn new<T: FnMut(crate::q_wait_fence::HandleType) + 'static>(
79969        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
79970        callback: T,
79971    ) -> ::qt_core::QBox<crate::SlotOfHandleType2> {
79972        let ffi_result = {
79973            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
79974                unsafe {
79975                    let _ = Box::from_raw(data as *mut T);
79976                }
79977            }
79978            extern "C" fn ffi_callback<T: FnMut(crate::q_wait_fence::HandleType) + 'static>(
79979                data: *mut ::std::ffi::c_void,
79980                arg0: crate::q_wait_fence::HandleType,
79981            ) {
79982                unsafe { (*(data as *mut T))(arg0) }
79983            }
79984            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
79985            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
79986        };
79987        ::qt_core::QBox::from_raw(ffi_result)
79988    }
79989
79990    #[inline(always)]
79991    #[cfg_attr(
79992        feature = "ritual_rustdoc_nightly",
79993        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
79994    )]
79995    #[cfg(any(
79996        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
79997        feature = "ritual_rustdoc"
79998    ))]
79999    pub unsafe fn qt_metacall(
80000        &self,
80001        arg1: ::qt_core::q_meta_object::Call,
80002        arg2: ::std::os::raw::c_int,
80003        arg3: *mut *mut ::std::ffi::c_void,
80004    ) -> ::std::os::raw::c_int {
80005        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_qt_metacall(self as *const crate::SlotOfHandleType2 as *mut crate::SlotOfHandleType2, arg1, arg2, arg3)
80006    }
80007
80008    #[inline(always)]
80009    #[cfg_attr(
80010        feature = "ritual_rustdoc_nightly",
80011        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
80012    )]
80013    #[cfg(any(
80014        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
80015        feature = "ritual_rustdoc"
80016    ))]
80017    pub unsafe fn qt_metacast(
80018        &self,
80019        arg1: *const ::std::os::raw::c_char,
80020    ) -> *mut ::std::ffi::c_void {
80021        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_qt_metacast(self as *const crate::SlotOfHandleType2 as *mut crate::SlotOfHandleType2, arg1)
80022    }
80023
80024    /// Assigns `callback` as the signal handler.
80025    ///
80026    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
80027    #[inline(always)]
80028    #[cfg_attr(
80029        feature = "ritual_rustdoc_nightly",
80030        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
80031    )]
80032    #[cfg(any(
80033        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
80034        feature = "ritual_rustdoc"
80035    ))]
80036    pub unsafe fn set<T: FnMut(crate::q_wait_fence::HandleType) + 'static>(&self, callback: T) {
80037        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
80038            unsafe {
80039                let _ = Box::from_raw(data as *mut T);
80040            }
80041        }
80042        extern "C" fn ffi_callback<T: FnMut(crate::q_wait_fence::HandleType) + 'static>(
80043            data: *mut ::std::ffi::c_void,
80044            arg0: crate::q_wait_fence::HandleType,
80045        ) {
80046            unsafe { (*(data as *mut T))(arg0) }
80047        }
80048        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
80049        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_set(self as *const crate::SlotOfHandleType2 as *mut crate::SlotOfHandleType2, Some(ffi_callback::<T>), Some(deleter::<T>), data)
80050    }
80051
80052    /// Calls the slot directly, invoking the assigned handler (if any).
80053    #[inline(always)]
80054    #[cfg_attr(
80055        feature = "ritual_rustdoc_nightly",
80056        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
80057    )]
80058    #[cfg(any(
80059        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
80060        feature = "ritual_rustdoc"
80061    ))]
80062    pub unsafe fn slot(&self, arg0: crate::q_wait_fence::HandleType) {
80063        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_slot_(self as *const crate::SlotOfHandleType2 as *mut crate::SlotOfHandleType2, arg0)
80064    }
80065
80066    #[inline(always)]
80067    #[cfg_attr(
80068        feature = "ritual_rustdoc_nightly",
80069        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
80070    )]
80071    #[cfg(any(
80072        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
80073        feature = "ritual_rustdoc"
80074    ))]
80075    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
80076        let ffi_result = {
80077            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_staticMetaObject()
80078        };
80079        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80080            .expect("attempted to construct a null Ref")
80081    }
80082
80083    #[inline(always)]
80084    #[cfg_attr(
80085        feature = "ritual_rustdoc_nightly",
80086        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
80087    )]
80088    #[cfg(any(
80089        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
80090        feature = "ritual_rustdoc"
80091    ))]
80092    pub unsafe fn tr(
80093        s: *const ::std::os::raw::c_char,
80094        c: *const ::std::os::raw::c_char,
80095        n: ::std::os::raw::c_int,
80096    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80097        let ffi_result = {
80098            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_tr(s, c, n)
80099        };
80100        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80101    }
80102
80103    #[inline(always)]
80104    #[cfg_attr(
80105        feature = "ritual_rustdoc_nightly",
80106        doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
80107    )]
80108    #[cfg(any(
80109        any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
80110        feature = "ritual_rustdoc"
80111    ))]
80112    pub unsafe fn tr_utf8(
80113        s: *const ::std::os::raw::c_char,
80114        c: *const ::std::os::raw::c_char,
80115        n: ::std::os::raw::c_int,
80116    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80117        let ffi_result = {
80118            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_trUtf8(s, c, n)
80119        };
80120        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80121    }
80122}
80123
80124impl ::qt_core::AsReceiver for crate::SlotOfQFlagsOperation {
80125    type Arguments = (::std::os::raw::c_int,);
80126    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
80127        unsafe {
80128            ::qt_core::Receiver::new(
80129                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
80130                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
80131                    b"1slot_(QFlags< Qt3DRender::QMemoryBarrier::Operation >)\0",
80132                ),
80133            )
80134        }
80135    }
80136}
80137
80138/// Binds a Qt signal with arguments `::std::os::raw::c_int` to a Rust closure.
80139///
80140/// Corresponding C++ argument types: (<span style='color: green;'>```QFlags<Qt3DRender::QMemoryBarrier::Operation>```</span>).
80141///
80142/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
80143///
80144/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
80145///
80146/// If `set()` was not called, slot invocation has no effect.
80147#[repr(C)]
80148pub struct SlotOfQFlagsOperation {
80149    _unused: u8,
80150}
80151impl SlotOfQFlagsOperation {
80152    #[inline(always)]
80153    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
80154        let ffi_result = {
80155            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_metaObject(self as *const crate::SlotOfQFlagsOperation)
80156        };
80157        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80158    }
80159
80160    /// Creates a new object.
80161    #[inline(always)]
80162    pub unsafe fn new<T: FnMut(::qt_core::QFlags<crate::q_memory_barrier::Operation>) + 'static>(
80163        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
80164        callback: T,
80165    ) -> ::qt_core::QBox<crate::SlotOfQFlagsOperation> {
80166        let ffi_result = {
80167            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
80168                unsafe {
80169                    let _ = Box::from_raw(data as *mut T);
80170                }
80171            }
80172            extern "C" fn ffi_callback<
80173                T: FnMut(::qt_core::QFlags<crate::q_memory_barrier::Operation>) + 'static,
80174            >(
80175                data: *mut ::std::ffi::c_void,
80176                arg0: ::std::os::raw::c_int,
80177            ) {
80178                unsafe { (*(data as *mut T))(::qt_core::QFlags::from(arg0)) }
80179            }
80180            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
80181            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
80182        };
80183        ::qt_core::QBox::from_raw(ffi_result)
80184    }
80185
80186    #[inline(always)]
80187    pub unsafe fn qt_metacall(
80188        &self,
80189        arg1: ::qt_core::q_meta_object::Call,
80190        arg2: ::std::os::raw::c_int,
80191        arg3: *mut *mut ::std::ffi::c_void,
80192    ) -> ::std::os::raw::c_int {
80193        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_qt_metacall(self as *const crate::SlotOfQFlagsOperation as *mut crate::SlotOfQFlagsOperation, arg1, arg2, arg3)
80194    }
80195
80196    #[inline(always)]
80197    pub unsafe fn qt_metacast(
80198        &self,
80199        arg1: *const ::std::os::raw::c_char,
80200    ) -> *mut ::std::ffi::c_void {
80201        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_qt_metacast(self as *const crate::SlotOfQFlagsOperation as *mut crate::SlotOfQFlagsOperation, arg1)
80202    }
80203
80204    /// Assigns `callback` as the signal handler.
80205    ///
80206    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
80207    #[inline(always)]
80208    pub unsafe fn set<T: FnMut(::qt_core::QFlags<crate::q_memory_barrier::Operation>) + 'static>(
80209        &self,
80210        callback: T,
80211    ) {
80212        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
80213            unsafe {
80214                let _ = Box::from_raw(data as *mut T);
80215            }
80216        }
80217        extern "C" fn ffi_callback<
80218            T: FnMut(::qt_core::QFlags<crate::q_memory_barrier::Operation>) + 'static,
80219        >(
80220            data: *mut ::std::ffi::c_void,
80221            arg0: ::std::os::raw::c_int,
80222        ) {
80223            unsafe { (*(data as *mut T))(::qt_core::QFlags::from(arg0)) }
80224        }
80225        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
80226        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_set(self as *const crate::SlotOfQFlagsOperation as *mut crate::SlotOfQFlagsOperation, Some(ffi_callback::<T>), Some(deleter::<T>), data)
80227    }
80228
80229    /// Calls the slot directly, invoking the assigned handler (if any).
80230    #[inline(always)]
80231    pub unsafe fn slot(&self, arg0: ::qt_core::QFlags<crate::q_memory_barrier::Operation>) {
80232        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_slot_(self as *const crate::SlotOfQFlagsOperation as *mut crate::SlotOfQFlagsOperation, arg0.to_int())
80233    }
80234
80235    #[inline(always)]
80236    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
80237        let ffi_result = {
80238            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_staticMetaObject()
80239        };
80240        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80241            .expect("attempted to construct a null Ref")
80242    }
80243
80244    #[inline(always)]
80245    pub unsafe fn tr(
80246        s: *const ::std::os::raw::c_char,
80247        c: *const ::std::os::raw::c_char,
80248        n: ::std::os::raw::c_int,
80249    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80250        let ffi_result = {
80251            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_tr(s, c, n)
80252        };
80253        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80254    }
80255
80256    #[inline(always)]
80257    pub unsafe fn tr_utf8(
80258        s: *const ::std::os::raw::c_char,
80259        c: *const ::std::os::raw::c_char,
80260        n: ::std::os::raw::c_int,
80261    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80262        let ffi_result = {
80263            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_trUtf8(s, c, n)
80264        };
80265        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80266    }
80267}
80268
80269#[cfg_attr(
80270    feature = "ritual_rustdoc_nightly",
80271    doc(cfg(any(
80272        cpp_lib_version = "5.14.0",
80273        cpp_lib_version = "5.11.3",
80274        cpp_lib_version = "5.12.2",
80275        cpp_lib_version = "5.13.0"
80276    )))
80277)]
80278#[cfg(any(
80279    any(
80280        cpp_lib_version = "5.14.0",
80281        cpp_lib_version = "5.11.3",
80282        cpp_lib_version = "5.12.2",
80283        cpp_lib_version = "5.13.0"
80284    ),
80285    feature = "ritual_rustdoc"
80286))]
80287
80288impl ::qt_core::AsReceiver for crate::SlotOfFilterMode {
80289    type Arguments = (crate::q_abstract_ray_caster::FilterMode,);
80290    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
80291        unsafe {
80292            ::qt_core::Receiver::new(
80293                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
80294                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
80295                    b"1slot_(Qt3DRender::QAbstractRayCaster::FilterMode)\0",
80296                ),
80297            )
80298        }
80299    }
80300}
80301
80302/// Binds a Qt signal with arguments `crate::q_abstract_ray_caster::FilterMode` to a Rust closure.
80303///
80304/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractRayCaster::FilterMode```</span>).
80305///
80306/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
80307///
80308/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
80309///
80310/// If `set()` was not called, slot invocation has no effect.
80311#[repr(C)]
80312pub struct SlotOfFilterMode {
80313    _unused: u8,
80314}
80315impl SlotOfFilterMode {
80316    #[inline(always)]
80317    #[cfg_attr(
80318        feature = "ritual_rustdoc_nightly",
80319        doc(cfg(any(
80320            cpp_lib_version = "5.14.0",
80321            cpp_lib_version = "5.11.3",
80322            cpp_lib_version = "5.12.2",
80323            cpp_lib_version = "5.13.0"
80324        )))
80325    )]
80326    #[cfg(any(
80327        any(
80328            cpp_lib_version = "5.14.0",
80329            cpp_lib_version = "5.11.3",
80330            cpp_lib_version = "5.12.2",
80331            cpp_lib_version = "5.13.0"
80332        ),
80333        feature = "ritual_rustdoc"
80334    ))]
80335    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
80336        let ffi_result = {
80337            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_metaObject(self as *const crate::SlotOfFilterMode)
80338        };
80339        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80340    }
80341
80342    /// Creates a new object.
80343    #[inline(always)]
80344    #[cfg_attr(
80345        feature = "ritual_rustdoc_nightly",
80346        doc(cfg(any(
80347            cpp_lib_version = "5.14.0",
80348            cpp_lib_version = "5.11.3",
80349            cpp_lib_version = "5.12.2",
80350            cpp_lib_version = "5.13.0"
80351        )))
80352    )]
80353    #[cfg(any(
80354        any(
80355            cpp_lib_version = "5.14.0",
80356            cpp_lib_version = "5.11.3",
80357            cpp_lib_version = "5.12.2",
80358            cpp_lib_version = "5.13.0"
80359        ),
80360        feature = "ritual_rustdoc"
80361    ))]
80362    pub unsafe fn new<T: FnMut(crate::q_abstract_ray_caster::FilterMode) + 'static>(
80363        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
80364        callback: T,
80365    ) -> ::qt_core::QBox<crate::SlotOfFilterMode> {
80366        let ffi_result = {
80367            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
80368                unsafe {
80369                    let _ = Box::from_raw(data as *mut T);
80370                }
80371            }
80372            extern "C" fn ffi_callback<
80373                T: FnMut(crate::q_abstract_ray_caster::FilterMode) + 'static,
80374            >(
80375                data: *mut ::std::ffi::c_void,
80376                arg0: crate::q_abstract_ray_caster::FilterMode,
80377            ) {
80378                unsafe { (*(data as *mut T))(arg0) }
80379            }
80380            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
80381            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
80382        };
80383        ::qt_core::QBox::from_raw(ffi_result)
80384    }
80385
80386    #[inline(always)]
80387    #[cfg_attr(
80388        feature = "ritual_rustdoc_nightly",
80389        doc(cfg(any(
80390            cpp_lib_version = "5.14.0",
80391            cpp_lib_version = "5.11.3",
80392            cpp_lib_version = "5.12.2",
80393            cpp_lib_version = "5.13.0"
80394        )))
80395    )]
80396    #[cfg(any(
80397        any(
80398            cpp_lib_version = "5.14.0",
80399            cpp_lib_version = "5.11.3",
80400            cpp_lib_version = "5.12.2",
80401            cpp_lib_version = "5.13.0"
80402        ),
80403        feature = "ritual_rustdoc"
80404    ))]
80405    pub unsafe fn qt_metacall(
80406        &self,
80407        arg1: ::qt_core::q_meta_object::Call,
80408        arg2: ::std::os::raw::c_int,
80409        arg3: *mut *mut ::std::ffi::c_void,
80410    ) -> ::std::os::raw::c_int {
80411        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_qt_metacall(self as *const crate::SlotOfFilterMode as *mut crate::SlotOfFilterMode, arg1, arg2, arg3)
80412    }
80413
80414    #[inline(always)]
80415    #[cfg_attr(
80416        feature = "ritual_rustdoc_nightly",
80417        doc(cfg(any(
80418            cpp_lib_version = "5.14.0",
80419            cpp_lib_version = "5.11.3",
80420            cpp_lib_version = "5.12.2",
80421            cpp_lib_version = "5.13.0"
80422        )))
80423    )]
80424    #[cfg(any(
80425        any(
80426            cpp_lib_version = "5.14.0",
80427            cpp_lib_version = "5.11.3",
80428            cpp_lib_version = "5.12.2",
80429            cpp_lib_version = "5.13.0"
80430        ),
80431        feature = "ritual_rustdoc"
80432    ))]
80433    pub unsafe fn qt_metacast(
80434        &self,
80435        arg1: *const ::std::os::raw::c_char,
80436    ) -> *mut ::std::ffi::c_void {
80437        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_qt_metacast(self as *const crate::SlotOfFilterMode as *mut crate::SlotOfFilterMode, arg1)
80438    }
80439
80440    /// Assigns `callback` as the signal handler.
80441    ///
80442    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
80443    #[inline(always)]
80444    #[cfg_attr(
80445        feature = "ritual_rustdoc_nightly",
80446        doc(cfg(any(
80447            cpp_lib_version = "5.14.0",
80448            cpp_lib_version = "5.11.3",
80449            cpp_lib_version = "5.12.2",
80450            cpp_lib_version = "5.13.0"
80451        )))
80452    )]
80453    #[cfg(any(
80454        any(
80455            cpp_lib_version = "5.14.0",
80456            cpp_lib_version = "5.11.3",
80457            cpp_lib_version = "5.12.2",
80458            cpp_lib_version = "5.13.0"
80459        ),
80460        feature = "ritual_rustdoc"
80461    ))]
80462    pub unsafe fn set<T: FnMut(crate::q_abstract_ray_caster::FilterMode) + 'static>(
80463        &self,
80464        callback: T,
80465    ) {
80466        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
80467            unsafe {
80468                let _ = Box::from_raw(data as *mut T);
80469            }
80470        }
80471        extern "C" fn ffi_callback<T: FnMut(crate::q_abstract_ray_caster::FilterMode) + 'static>(
80472            data: *mut ::std::ffi::c_void,
80473            arg0: crate::q_abstract_ray_caster::FilterMode,
80474        ) {
80475            unsafe { (*(data as *mut T))(arg0) }
80476        }
80477        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
80478        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_set(self as *const crate::SlotOfFilterMode as *mut crate::SlotOfFilterMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
80479    }
80480
80481    /// Calls the slot directly, invoking the assigned handler (if any).
80482    #[inline(always)]
80483    #[cfg_attr(
80484        feature = "ritual_rustdoc_nightly",
80485        doc(cfg(any(
80486            cpp_lib_version = "5.14.0",
80487            cpp_lib_version = "5.11.3",
80488            cpp_lib_version = "5.12.2",
80489            cpp_lib_version = "5.13.0"
80490        )))
80491    )]
80492    #[cfg(any(
80493        any(
80494            cpp_lib_version = "5.14.0",
80495            cpp_lib_version = "5.11.3",
80496            cpp_lib_version = "5.12.2",
80497            cpp_lib_version = "5.13.0"
80498        ),
80499        feature = "ritual_rustdoc"
80500    ))]
80501    pub unsafe fn slot(&self, arg0: crate::q_abstract_ray_caster::FilterMode) {
80502        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_slot_(self as *const crate::SlotOfFilterMode as *mut crate::SlotOfFilterMode, arg0)
80503    }
80504
80505    #[inline(always)]
80506    #[cfg_attr(
80507        feature = "ritual_rustdoc_nightly",
80508        doc(cfg(any(
80509            cpp_lib_version = "5.14.0",
80510            cpp_lib_version = "5.11.3",
80511            cpp_lib_version = "5.12.2",
80512            cpp_lib_version = "5.13.0"
80513        )))
80514    )]
80515    #[cfg(any(
80516        any(
80517            cpp_lib_version = "5.14.0",
80518            cpp_lib_version = "5.11.3",
80519            cpp_lib_version = "5.12.2",
80520            cpp_lib_version = "5.13.0"
80521        ),
80522        feature = "ritual_rustdoc"
80523    ))]
80524    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
80525        let ffi_result = {
80526            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_staticMetaObject()
80527        };
80528        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80529            .expect("attempted to construct a null Ref")
80530    }
80531
80532    #[inline(always)]
80533    #[cfg_attr(
80534        feature = "ritual_rustdoc_nightly",
80535        doc(cfg(any(
80536            cpp_lib_version = "5.14.0",
80537            cpp_lib_version = "5.11.3",
80538            cpp_lib_version = "5.12.2",
80539            cpp_lib_version = "5.13.0"
80540        )))
80541    )]
80542    #[cfg(any(
80543        any(
80544            cpp_lib_version = "5.14.0",
80545            cpp_lib_version = "5.11.3",
80546            cpp_lib_version = "5.12.2",
80547            cpp_lib_version = "5.13.0"
80548        ),
80549        feature = "ritual_rustdoc"
80550    ))]
80551    pub unsafe fn tr(
80552        s: *const ::std::os::raw::c_char,
80553        c: *const ::std::os::raw::c_char,
80554        n: ::std::os::raw::c_int,
80555    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80556        let ffi_result = {
80557            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_tr(s, c, n)
80558        };
80559        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80560    }
80561
80562    #[inline(always)]
80563    #[cfg_attr(
80564        feature = "ritual_rustdoc_nightly",
80565        doc(cfg(any(
80566            cpp_lib_version = "5.14.0",
80567            cpp_lib_version = "5.11.3",
80568            cpp_lib_version = "5.12.2",
80569            cpp_lib_version = "5.13.0"
80570        )))
80571    )]
80572    #[cfg(any(
80573        any(
80574            cpp_lib_version = "5.14.0",
80575            cpp_lib_version = "5.11.3",
80576            cpp_lib_version = "5.12.2",
80577            cpp_lib_version = "5.13.0"
80578        ),
80579        feature = "ritual_rustdoc"
80580    ))]
80581    pub unsafe fn tr_utf8(
80582        s: *const ::std::os::raw::c_char,
80583        c: *const ::std::os::raw::c_char,
80584        n: ::std::os::raw::c_int,
80585    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80586        let ffi_result = {
80587            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_trUtf8(s, c, n)
80588        };
80589        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80590    }
80591}
80592
80593impl ::qt_core::AsReceiver for crate::SlotOfAccessType {
80594    type Arguments = (crate::q_buffer::AccessType,);
80595    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
80596        unsafe {
80597            ::qt_core::Receiver::new(
80598                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
80599                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
80600                    b"1slot_(Qt3DRender::QBuffer::AccessType)\0",
80601                ),
80602            )
80603        }
80604    }
80605}
80606
80607/// Binds a Qt signal with arguments `crate::q_buffer::AccessType` to a Rust closure.
80608///
80609/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBuffer::AccessType```</span>).
80610///
80611/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
80612///
80613/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
80614///
80615/// If `set()` was not called, slot invocation has no effect.
80616#[repr(C)]
80617pub struct SlotOfAccessType {
80618    _unused: u8,
80619}
80620impl SlotOfAccessType {
80621    #[inline(always)]
80622    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
80623        let ffi_result = {
80624            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_metaObject(self as *const crate::SlotOfAccessType)
80625        };
80626        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80627    }
80628
80629    /// Creates a new object.
80630    #[inline(always)]
80631    pub unsafe fn new<T: FnMut(crate::q_buffer::AccessType) + 'static>(
80632        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
80633        callback: T,
80634    ) -> ::qt_core::QBox<crate::SlotOfAccessType> {
80635        let ffi_result = {
80636            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
80637                unsafe {
80638                    let _ = Box::from_raw(data as *mut T);
80639                }
80640            }
80641            extern "C" fn ffi_callback<T: FnMut(crate::q_buffer::AccessType) + 'static>(
80642                data: *mut ::std::ffi::c_void,
80643                arg0: crate::q_buffer::AccessType,
80644            ) {
80645                unsafe { (*(data as *mut T))(arg0) }
80646            }
80647            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
80648            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
80649        };
80650        ::qt_core::QBox::from_raw(ffi_result)
80651    }
80652
80653    #[inline(always)]
80654    pub unsafe fn qt_metacall(
80655        &self,
80656        arg1: ::qt_core::q_meta_object::Call,
80657        arg2: ::std::os::raw::c_int,
80658        arg3: *mut *mut ::std::ffi::c_void,
80659    ) -> ::std::os::raw::c_int {
80660        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_qt_metacall(self as *const crate::SlotOfAccessType as *mut crate::SlotOfAccessType, arg1, arg2, arg3)
80661    }
80662
80663    #[inline(always)]
80664    pub unsafe fn qt_metacast(
80665        &self,
80666        arg1: *const ::std::os::raw::c_char,
80667    ) -> *mut ::std::ffi::c_void {
80668        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_qt_metacast(self as *const crate::SlotOfAccessType as *mut crate::SlotOfAccessType, arg1)
80669    }
80670
80671    /// Assigns `callback` as the signal handler.
80672    ///
80673    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
80674    #[inline(always)]
80675    pub unsafe fn set<T: FnMut(crate::q_buffer::AccessType) + 'static>(&self, callback: T) {
80676        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
80677            unsafe {
80678                let _ = Box::from_raw(data as *mut T);
80679            }
80680        }
80681        extern "C" fn ffi_callback<T: FnMut(crate::q_buffer::AccessType) + 'static>(
80682            data: *mut ::std::ffi::c_void,
80683            arg0: crate::q_buffer::AccessType,
80684        ) {
80685            unsafe { (*(data as *mut T))(arg0) }
80686        }
80687        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
80688        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_set(self as *const crate::SlotOfAccessType as *mut crate::SlotOfAccessType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
80689    }
80690
80691    /// Calls the slot directly, invoking the assigned handler (if any).
80692    #[inline(always)]
80693    pub unsafe fn slot(&self, arg0: crate::q_buffer::AccessType) {
80694        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_slot_(self as *const crate::SlotOfAccessType as *mut crate::SlotOfAccessType, arg0)
80695    }
80696
80697    #[inline(always)]
80698    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
80699        let ffi_result = {
80700            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_staticMetaObject()
80701        };
80702        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80703            .expect("attempted to construct a null Ref")
80704    }
80705
80706    #[inline(always)]
80707    pub unsafe fn tr(
80708        s: *const ::std::os::raw::c_char,
80709        c: *const ::std::os::raw::c_char,
80710        n: ::std::os::raw::c_int,
80711    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80712        let ffi_result = {
80713            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_tr(s, c, n)
80714        };
80715        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80716    }
80717
80718    #[inline(always)]
80719    pub unsafe fn tr_utf8(
80720        s: *const ::std::os::raw::c_char,
80721        c: *const ::std::os::raw::c_char,
80722        n: ::std::os::raw::c_int,
80723    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80724        let ffi_result = {
80725            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_trUtf8(s, c, n)
80726        };
80727        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80728    }
80729}
80730
80731impl ::qt_core::AsReceiver for crate::SlotOfQVariant {
80732    type Arguments = (*const ::qt_core::QVariant,);
80733    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
80734        unsafe {
80735            ::qt_core::Receiver::new(
80736                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
80737                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(QVariant)\0"),
80738            )
80739        }
80740    }
80741}
80742
80743/// Binds a Qt signal with arguments `*const ::qt_core::QVariant` to a Rust closure.
80744///
80745/// Corresponding C++ argument types: (<span style='color: green;'>```QVariant```</span>).
80746///
80747/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
80748///
80749/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
80750///
80751/// If `set()` was not called, slot invocation has no effect.
80752#[repr(C)]
80753pub struct SlotOfQVariant {
80754    _unused: u8,
80755}
80756impl SlotOfQVariant {
80757    #[inline(always)]
80758    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
80759        let ffi_result = {
80760            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_metaObject(
80761                self as *const crate::SlotOfQVariant,
80762            )
80763        };
80764        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80765    }
80766
80767    #[inline(always)]
80768    pub unsafe fn qt_metacall(
80769        &self,
80770        arg1: ::qt_core::q_meta_object::Call,
80771        arg2: ::std::os::raw::c_int,
80772        arg3: *mut *mut ::std::ffi::c_void,
80773    ) -> ::std::os::raw::c_int {
80774        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_qt_metacall(
80775            self as *const crate::SlotOfQVariant as *mut crate::SlotOfQVariant,
80776            arg1,
80777            arg2,
80778            arg3,
80779        )
80780    }
80781
80782    #[inline(always)]
80783    pub unsafe fn qt_metacast(
80784        &self,
80785        arg1: *const ::std::os::raw::c_char,
80786    ) -> *mut ::std::ffi::c_void {
80787        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_qt_metacast(
80788            self as *const crate::SlotOfQVariant as *mut crate::SlotOfQVariant,
80789            arg1,
80790        )
80791    }
80792
80793    /// Calls the slot directly, invoking the assigned handler (if any).
80794    #[inline(always)]
80795    pub unsafe fn slot(
80796        &self,
80797        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVariant>>,
80798    ) {
80799        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_slot_(
80800            self as *const crate::SlotOfQVariant as *mut crate::SlotOfQVariant,
80801            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVariant>>::cast_into(arg0)
80802                .as_raw_ptr(),
80803        )
80804    }
80805
80806    #[inline(always)]
80807    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
80808        let ffi_result = {
80809            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_staticMetaObject()
80810        };
80811        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80812            .expect("attempted to construct a null Ref")
80813    }
80814
80815    #[inline(always)]
80816    pub unsafe fn tr(
80817        s: *const ::std::os::raw::c_char,
80818        c: *const ::std::os::raw::c_char,
80819        n: ::std::os::raw::c_int,
80820    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80821        let ffi_result = {
80822            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_tr(
80823                s, c, n,
80824            )
80825        };
80826        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80827    }
80828
80829    #[inline(always)]
80830    pub unsafe fn tr_utf8(
80831        s: *const ::std::os::raw::c_char,
80832        c: *const ::std::os::raw::c_char,
80833        n: ::std::os::raw::c_int,
80834    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80835        let ffi_result = {
80836            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_trUtf8(
80837                s, c, n,
80838            )
80839        };
80840        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80841    }
80842}
80843
80844impl ::qt_core::AsReceiver for crate::SlotOfAlphaFunction {
80845    type Arguments = (crate::q_alpha_test::AlphaFunction,);
80846    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
80847        unsafe {
80848            ::qt_core::Receiver::new(
80849                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
80850                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
80851                    b"1slot_(Qt3DRender::QAlphaTest::AlphaFunction)\0",
80852                ),
80853            )
80854        }
80855    }
80856}
80857
80858/// Binds a Qt signal with arguments `crate::q_alpha_test::AlphaFunction` to a Rust closure.
80859///
80860/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAlphaTest::AlphaFunction```</span>).
80861///
80862/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
80863///
80864/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
80865///
80866/// If `set()` was not called, slot invocation has no effect.
80867#[repr(C)]
80868pub struct SlotOfAlphaFunction {
80869    _unused: u8,
80870}
80871impl SlotOfAlphaFunction {
80872    #[inline(always)]
80873    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
80874        let ffi_result = {
80875            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_metaObject(self as *const crate::SlotOfAlphaFunction)
80876        };
80877        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80878    }
80879
80880    /// Creates a new object.
80881    #[inline(always)]
80882    pub unsafe fn new<T: FnMut(crate::q_alpha_test::AlphaFunction) + 'static>(
80883        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
80884        callback: T,
80885    ) -> ::qt_core::QBox<crate::SlotOfAlphaFunction> {
80886        let ffi_result = {
80887            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
80888                unsafe {
80889                    let _ = Box::from_raw(data as *mut T);
80890                }
80891            }
80892            extern "C" fn ffi_callback<T: FnMut(crate::q_alpha_test::AlphaFunction) + 'static>(
80893                data: *mut ::std::ffi::c_void,
80894                arg0: crate::q_alpha_test::AlphaFunction,
80895            ) {
80896                unsafe { (*(data as *mut T))(arg0) }
80897            }
80898            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
80899            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
80900        };
80901        ::qt_core::QBox::from_raw(ffi_result)
80902    }
80903
80904    #[inline(always)]
80905    pub unsafe fn qt_metacall(
80906        &self,
80907        arg1: ::qt_core::q_meta_object::Call,
80908        arg2: ::std::os::raw::c_int,
80909        arg3: *mut *mut ::std::ffi::c_void,
80910    ) -> ::std::os::raw::c_int {
80911        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_qt_metacall(self as *const crate::SlotOfAlphaFunction as *mut crate::SlotOfAlphaFunction, arg1, arg2, arg3)
80912    }
80913
80914    #[inline(always)]
80915    pub unsafe fn qt_metacast(
80916        &self,
80917        arg1: *const ::std::os::raw::c_char,
80918    ) -> *mut ::std::ffi::c_void {
80919        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_qt_metacast(self as *const crate::SlotOfAlphaFunction as *mut crate::SlotOfAlphaFunction, arg1)
80920    }
80921
80922    /// Assigns `callback` as the signal handler.
80923    ///
80924    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
80925    #[inline(always)]
80926    pub unsafe fn set<T: FnMut(crate::q_alpha_test::AlphaFunction) + 'static>(&self, callback: T) {
80927        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
80928            unsafe {
80929                let _ = Box::from_raw(data as *mut T);
80930            }
80931        }
80932        extern "C" fn ffi_callback<T: FnMut(crate::q_alpha_test::AlphaFunction) + 'static>(
80933            data: *mut ::std::ffi::c_void,
80934            arg0: crate::q_alpha_test::AlphaFunction,
80935        ) {
80936            unsafe { (*(data as *mut T))(arg0) }
80937        }
80938        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
80939        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_set(self as *const crate::SlotOfAlphaFunction as *mut crate::SlotOfAlphaFunction, Some(ffi_callback::<T>), Some(deleter::<T>), data)
80940    }
80941
80942    /// Calls the slot directly, invoking the assigned handler (if any).
80943    #[inline(always)]
80944    pub unsafe fn slot(&self, arg0: crate::q_alpha_test::AlphaFunction) {
80945        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_slot_(self as *const crate::SlotOfAlphaFunction as *mut crate::SlotOfAlphaFunction, arg0)
80946    }
80947
80948    #[inline(always)]
80949    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
80950        let ffi_result = {
80951            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_staticMetaObject()
80952        };
80953        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
80954            .expect("attempted to construct a null Ref")
80955    }
80956
80957    #[inline(always)]
80958    pub unsafe fn tr(
80959        s: *const ::std::os::raw::c_char,
80960        c: *const ::std::os::raw::c_char,
80961        n: ::std::os::raw::c_int,
80962    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80963        let ffi_result = {
80964            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_tr(s, c, n)
80965        };
80966        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80967    }
80968
80969    #[inline(always)]
80970    pub unsafe fn tr_utf8(
80971        s: *const ::std::os::raw::c_char,
80972        c: *const ::std::os::raw::c_char,
80973        n: ::std::os::raw::c_int,
80974    ) -> ::cpp_core::CppBox<::qt_core::QString> {
80975        let ffi_result = {
80976            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_trUtf8(s, c, n)
80977        };
80978        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
80979    }
80980}
80981
80982impl ::qt_core::AsReceiver for crate::SlotOfWrapMode {
80983    type Arguments = (crate::q_texture_wrap_mode::WrapMode,);
80984    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
80985        unsafe {
80986            ::qt_core::Receiver::new(
80987                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
80988                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
80989                    b"1slot_(Qt3DRender::QTextureWrapMode::WrapMode)\0",
80990                ),
80991            )
80992        }
80993    }
80994}
80995
80996/// Binds a Qt signal with arguments `crate::q_texture_wrap_mode::WrapMode` to a Rust closure.
80997///
80998/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QTextureWrapMode::WrapMode```</span>).
80999///
81000/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
81001///
81002/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
81003///
81004/// If `set()` was not called, slot invocation has no effect.
81005#[repr(C)]
81006pub struct SlotOfWrapMode {
81007    _unused: u8,
81008}
81009impl SlotOfWrapMode {
81010    #[inline(always)]
81011    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
81012        let ffi_result = {
81013            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_metaObject(self as *const crate::SlotOfWrapMode)
81014        };
81015        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81016    }
81017
81018    /// Creates a new object.
81019    #[inline(always)]
81020    pub unsafe fn new<T: FnMut(crate::q_texture_wrap_mode::WrapMode) + 'static>(
81021        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
81022        callback: T,
81023    ) -> ::qt_core::QBox<crate::SlotOfWrapMode> {
81024        let ffi_result = {
81025            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81026                unsafe {
81027                    let _ = Box::from_raw(data as *mut T);
81028                }
81029            }
81030            extern "C" fn ffi_callback<T: FnMut(crate::q_texture_wrap_mode::WrapMode) + 'static>(
81031                data: *mut ::std::ffi::c_void,
81032                arg0: crate::q_texture_wrap_mode::WrapMode,
81033            ) {
81034                unsafe { (*(data as *mut T))(arg0) }
81035            }
81036            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81037            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81038        };
81039        ::qt_core::QBox::from_raw(ffi_result)
81040    }
81041
81042    #[inline(always)]
81043    pub unsafe fn qt_metacall(
81044        &self,
81045        arg1: ::qt_core::q_meta_object::Call,
81046        arg2: ::std::os::raw::c_int,
81047        arg3: *mut *mut ::std::ffi::c_void,
81048    ) -> ::std::os::raw::c_int {
81049        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_qt_metacall(self as *const crate::SlotOfWrapMode as *mut crate::SlotOfWrapMode, arg1, arg2, arg3)
81050    }
81051
81052    #[inline(always)]
81053    pub unsafe fn qt_metacast(
81054        &self,
81055        arg1: *const ::std::os::raw::c_char,
81056    ) -> *mut ::std::ffi::c_void {
81057        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_qt_metacast(self as *const crate::SlotOfWrapMode as *mut crate::SlotOfWrapMode, arg1)
81058    }
81059
81060    /// Assigns `callback` as the signal handler.
81061    ///
81062    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
81063    #[inline(always)]
81064    pub unsafe fn set<T: FnMut(crate::q_texture_wrap_mode::WrapMode) + 'static>(
81065        &self,
81066        callback: T,
81067    ) {
81068        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81069            unsafe {
81070                let _ = Box::from_raw(data as *mut T);
81071            }
81072        }
81073        extern "C" fn ffi_callback<T: FnMut(crate::q_texture_wrap_mode::WrapMode) + 'static>(
81074            data: *mut ::std::ffi::c_void,
81075            arg0: crate::q_texture_wrap_mode::WrapMode,
81076        ) {
81077            unsafe { (*(data as *mut T))(arg0) }
81078        }
81079        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81080        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_set(self as *const crate::SlotOfWrapMode as *mut crate::SlotOfWrapMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81081    }
81082
81083    /// Calls the slot directly, invoking the assigned handler (if any).
81084    #[inline(always)]
81085    pub unsafe fn slot(&self, arg0: crate::q_texture_wrap_mode::WrapMode) {
81086        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_slot_(self as *const crate::SlotOfWrapMode as *mut crate::SlotOfWrapMode, arg0)
81087    }
81088
81089    #[inline(always)]
81090    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
81091        let ffi_result = {
81092            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_staticMetaObject()
81093        };
81094        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81095            .expect("attempted to construct a null Ref")
81096    }
81097
81098    #[inline(always)]
81099    pub unsafe fn tr(
81100        s: *const ::std::os::raw::c_char,
81101        c: *const ::std::os::raw::c_char,
81102        n: ::std::os::raw::c_int,
81103    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81104        let ffi_result = {
81105            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_tr(s, c, n)
81106        };
81107        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81108    }
81109
81110    #[inline(always)]
81111    pub unsafe fn tr_utf8(
81112        s: *const ::std::os::raw::c_char,
81113        c: *const ::std::os::raw::c_char,
81114        n: ::std::os::raw::c_int,
81115    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81116        let ffi_result = {
81117            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_trUtf8(s, c, n)
81118        };
81119        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81120    }
81121}
81122
81123impl ::qt_core::AsReceiver for crate::SlotOfStencilFunction {
81124    type Arguments = (crate::q_stencil_test_arguments::StencilFunction,);
81125    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
81126        unsafe {
81127            ::qt_core::Receiver::new(
81128                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
81129                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
81130                    b"1slot_(Qt3DRender::QStencilTestArguments::StencilFunction)\0",
81131                ),
81132            )
81133        }
81134    }
81135}
81136
81137/// Binds a Qt signal with arguments `crate::q_stencil_test_arguments::StencilFunction` to a Rust closure.
81138///
81139/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QStencilTestArguments::StencilFunction```</span>).
81140///
81141/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
81142///
81143/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
81144///
81145/// If `set()` was not called, slot invocation has no effect.
81146#[repr(C)]
81147pub struct SlotOfStencilFunction {
81148    _unused: u8,
81149}
81150impl SlotOfStencilFunction {
81151    #[inline(always)]
81152    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
81153        let ffi_result = {
81154            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_metaObject(self as *const crate::SlotOfStencilFunction)
81155        };
81156        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81157    }
81158
81159    /// Creates a new object.
81160    #[inline(always)]
81161    pub unsafe fn new<T: FnMut(crate::q_stencil_test_arguments::StencilFunction) + 'static>(
81162        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
81163        callback: T,
81164    ) -> ::qt_core::QBox<crate::SlotOfStencilFunction> {
81165        let ffi_result = {
81166            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81167                unsafe {
81168                    let _ = Box::from_raw(data as *mut T);
81169                }
81170            }
81171            extern "C" fn ffi_callback<
81172                T: FnMut(crate::q_stencil_test_arguments::StencilFunction) + 'static,
81173            >(
81174                data: *mut ::std::ffi::c_void,
81175                arg0: crate::q_stencil_test_arguments::StencilFunction,
81176            ) {
81177                unsafe { (*(data as *mut T))(arg0) }
81178            }
81179            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81180            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81181        };
81182        ::qt_core::QBox::from_raw(ffi_result)
81183    }
81184
81185    #[inline(always)]
81186    pub unsafe fn qt_metacall(
81187        &self,
81188        arg1: ::qt_core::q_meta_object::Call,
81189        arg2: ::std::os::raw::c_int,
81190        arg3: *mut *mut ::std::ffi::c_void,
81191    ) -> ::std::os::raw::c_int {
81192        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_qt_metacall(self as *const crate::SlotOfStencilFunction as *mut crate::SlotOfStencilFunction, arg1, arg2, arg3)
81193    }
81194
81195    #[inline(always)]
81196    pub unsafe fn qt_metacast(
81197        &self,
81198        arg1: *const ::std::os::raw::c_char,
81199    ) -> *mut ::std::ffi::c_void {
81200        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_qt_metacast(self as *const crate::SlotOfStencilFunction as *mut crate::SlotOfStencilFunction, arg1)
81201    }
81202
81203    /// Assigns `callback` as the signal handler.
81204    ///
81205    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
81206    #[inline(always)]
81207    pub unsafe fn set<T: FnMut(crate::q_stencil_test_arguments::StencilFunction) + 'static>(
81208        &self,
81209        callback: T,
81210    ) {
81211        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81212            unsafe {
81213                let _ = Box::from_raw(data as *mut T);
81214            }
81215        }
81216        extern "C" fn ffi_callback<
81217            T: FnMut(crate::q_stencil_test_arguments::StencilFunction) + 'static,
81218        >(
81219            data: *mut ::std::ffi::c_void,
81220            arg0: crate::q_stencil_test_arguments::StencilFunction,
81221        ) {
81222            unsafe { (*(data as *mut T))(arg0) }
81223        }
81224        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81225        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_set(self as *const crate::SlotOfStencilFunction as *mut crate::SlotOfStencilFunction, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81226    }
81227
81228    /// Calls the slot directly, invoking the assigned handler (if any).
81229    #[inline(always)]
81230    pub unsafe fn slot(&self, arg0: crate::q_stencil_test_arguments::StencilFunction) {
81231        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_slot_(self as *const crate::SlotOfStencilFunction as *mut crate::SlotOfStencilFunction, arg0)
81232    }
81233
81234    #[inline(always)]
81235    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
81236        let ffi_result = {
81237            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_staticMetaObject()
81238        };
81239        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81240            .expect("attempted to construct a null Ref")
81241    }
81242
81243    #[inline(always)]
81244    pub unsafe fn tr(
81245        s: *const ::std::os::raw::c_char,
81246        c: *const ::std::os::raw::c_char,
81247        n: ::std::os::raw::c_int,
81248    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81249        let ffi_result = {
81250            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_tr(s, c, n)
81251        };
81252        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81253    }
81254
81255    #[inline(always)]
81256    pub unsafe fn tr_utf8(
81257        s: *const ::std::os::raw::c_char,
81258        c: *const ::std::os::raw::c_char,
81259        n: ::std::os::raw::c_int,
81260    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81261        let ffi_result = {
81262            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_trUtf8(s, c, n)
81263        };
81264        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81265    }
81266}
81267
81268impl ::qt_core::AsReceiver for crate::SlotOfQVectorOfDouble {
81269    type Arguments = (*const ::qt_gui::QVectorOfDouble,);
81270    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
81271        unsafe {
81272            ::qt_core::Receiver::new(
81273                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
81274                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
81275                    b"1slot_(QVector< double > const &)\0",
81276                ),
81277            )
81278        }
81279    }
81280}
81281
81282/// Binds a Qt signal with arguments `*const ::qt_gui::QVectorOfDouble` to a Rust closure.
81283///
81284/// Corresponding C++ argument types: (<span style='color: green;'>```const QVector<double>&```</span>).
81285///
81286/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
81287///
81288/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
81289///
81290/// If `set()` was not called, slot invocation has no effect.
81291#[repr(C)]
81292pub struct SlotOfQVectorOfDouble {
81293    _unused: u8,
81294}
81295impl SlotOfQVectorOfDouble {
81296    #[inline(always)]
81297    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
81298        let ffi_result = {
81299            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_metaObject(self as *const crate::SlotOfQVectorOfDouble)
81300        };
81301        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81302    }
81303
81304    /// Creates a new object.
81305    #[inline(always)]
81306    pub unsafe fn new<T: FnMut(::cpp_core::Ref<::qt_gui::QVectorOfDouble>) + 'static>(
81307        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
81308        callback: T,
81309    ) -> ::qt_core::QBox<crate::SlotOfQVectorOfDouble> {
81310        let ffi_result = {
81311            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81312                unsafe {
81313                    let _ = Box::from_raw(data as *mut T);
81314                }
81315            }
81316            extern "C" fn ffi_callback<
81317                T: FnMut(::cpp_core::Ref<::qt_gui::QVectorOfDouble>) + 'static,
81318            >(
81319                data: *mut ::std::ffi::c_void,
81320                arg0: *const ::qt_gui::QVectorOfDouble,
81321            ) {
81322                unsafe {
81323                    (*(data as *mut T))(
81324                        ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_gui::QVectorOfDouble)
81325                            .expect("attempted to construct a null Ref"),
81326                    )
81327                }
81328            }
81329            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81330            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81331        };
81332        ::qt_core::QBox::from_raw(ffi_result)
81333    }
81334
81335    #[inline(always)]
81336    pub unsafe fn qt_metacall(
81337        &self,
81338        arg1: ::qt_core::q_meta_object::Call,
81339        arg2: ::std::os::raw::c_int,
81340        arg3: *mut *mut ::std::ffi::c_void,
81341    ) -> ::std::os::raw::c_int {
81342        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_qt_metacall(self as *const crate::SlotOfQVectorOfDouble as *mut crate::SlotOfQVectorOfDouble, arg1, arg2, arg3)
81343    }
81344
81345    #[inline(always)]
81346    pub unsafe fn qt_metacast(
81347        &self,
81348        arg1: *const ::std::os::raw::c_char,
81349    ) -> *mut ::std::ffi::c_void {
81350        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_qt_metacast(self as *const crate::SlotOfQVectorOfDouble as *mut crate::SlotOfQVectorOfDouble, arg1)
81351    }
81352
81353    /// Assigns `callback` as the signal handler.
81354    ///
81355    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
81356    #[inline(always)]
81357    pub unsafe fn set<T: FnMut(::cpp_core::Ref<::qt_gui::QVectorOfDouble>) + 'static>(
81358        &self,
81359        callback: T,
81360    ) {
81361        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81362            unsafe {
81363                let _ = Box::from_raw(data as *mut T);
81364            }
81365        }
81366        extern "C" fn ffi_callback<
81367            T: FnMut(::cpp_core::Ref<::qt_gui::QVectorOfDouble>) + 'static,
81368        >(
81369            data: *mut ::std::ffi::c_void,
81370            arg0: *const ::qt_gui::QVectorOfDouble,
81371        ) {
81372            unsafe {
81373                (*(data as *mut T))(
81374                    ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_gui::QVectorOfDouble)
81375                        .expect("attempted to construct a null Ref"),
81376                )
81377            }
81378        }
81379        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81380        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_set(self as *const crate::SlotOfQVectorOfDouble as *mut crate::SlotOfQVectorOfDouble, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81381    }
81382
81383    /// Calls the slot directly, invoking the assigned handler (if any).
81384    #[inline(always)]
81385    pub unsafe fn slot(
81386        &self,
81387        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QVectorOfDouble>>,
81388    ) {
81389        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_slot_(self as *const crate::SlotOfQVectorOfDouble as *mut crate::SlotOfQVectorOfDouble, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QVectorOfDouble>>::cast_into(arg0).as_raw_ptr())
81390    }
81391
81392    #[inline(always)]
81393    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
81394        let ffi_result = {
81395            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_staticMetaObject()
81396        };
81397        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81398            .expect("attempted to construct a null Ref")
81399    }
81400
81401    #[inline(always)]
81402    pub unsafe fn tr(
81403        s: *const ::std::os::raw::c_char,
81404        c: *const ::std::os::raw::c_char,
81405        n: ::std::os::raw::c_int,
81406    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81407        let ffi_result = {
81408            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_tr(s, c, n)
81409        };
81410        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81411    }
81412
81413    #[inline(always)]
81414    pub unsafe fn tr_utf8(
81415        s: *const ::std::os::raw::c_char,
81416        c: *const ::std::os::raw::c_char,
81417        n: ::std::os::raw::c_int,
81418    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81419        let ffi_result = {
81420            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_trUtf8(s, c, n)
81421        };
81422        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81423    }
81424}
81425
81426impl ::qt_core::AsReceiver for crate::SlotOfSizeMode {
81427    type Arguments = (crate::q_point_size::SizeMode,);
81428    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
81429        unsafe {
81430            ::qt_core::Receiver::new(
81431                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
81432                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
81433                    b"1slot_(Qt3DRender::QPointSize::SizeMode)\0",
81434                ),
81435            )
81436        }
81437    }
81438}
81439
81440/// Binds a Qt signal with arguments `crate::q_point_size::SizeMode` to a Rust closure.
81441///
81442/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPointSize::SizeMode```</span>).
81443///
81444/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
81445///
81446/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
81447///
81448/// If `set()` was not called, slot invocation has no effect.
81449#[repr(C)]
81450pub struct SlotOfSizeMode {
81451    _unused: u8,
81452}
81453impl SlotOfSizeMode {
81454    #[inline(always)]
81455    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
81456        let ffi_result = {
81457            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_metaObject(self as *const crate::SlotOfSizeMode)
81458        };
81459        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81460    }
81461
81462    /// Creates a new object.
81463    #[inline(always)]
81464    pub unsafe fn new<T: FnMut(crate::q_point_size::SizeMode) + 'static>(
81465        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
81466        callback: T,
81467    ) -> ::qt_core::QBox<crate::SlotOfSizeMode> {
81468        let ffi_result = {
81469            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81470                unsafe {
81471                    let _ = Box::from_raw(data as *mut T);
81472                }
81473            }
81474            extern "C" fn ffi_callback<T: FnMut(crate::q_point_size::SizeMode) + 'static>(
81475                data: *mut ::std::ffi::c_void,
81476                arg0: crate::q_point_size::SizeMode,
81477            ) {
81478                unsafe { (*(data as *mut T))(arg0) }
81479            }
81480            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81481            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81482        };
81483        ::qt_core::QBox::from_raw(ffi_result)
81484    }
81485
81486    #[inline(always)]
81487    pub unsafe fn qt_metacall(
81488        &self,
81489        arg1: ::qt_core::q_meta_object::Call,
81490        arg2: ::std::os::raw::c_int,
81491        arg3: *mut *mut ::std::ffi::c_void,
81492    ) -> ::std::os::raw::c_int {
81493        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_qt_metacall(self as *const crate::SlotOfSizeMode as *mut crate::SlotOfSizeMode, arg1, arg2, arg3)
81494    }
81495
81496    #[inline(always)]
81497    pub unsafe fn qt_metacast(
81498        &self,
81499        arg1: *const ::std::os::raw::c_char,
81500    ) -> *mut ::std::ffi::c_void {
81501        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_qt_metacast(self as *const crate::SlotOfSizeMode as *mut crate::SlotOfSizeMode, arg1)
81502    }
81503
81504    /// Assigns `callback` as the signal handler.
81505    ///
81506    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
81507    #[inline(always)]
81508    pub unsafe fn set<T: FnMut(crate::q_point_size::SizeMode) + 'static>(&self, callback: T) {
81509        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81510            unsafe {
81511                let _ = Box::from_raw(data as *mut T);
81512            }
81513        }
81514        extern "C" fn ffi_callback<T: FnMut(crate::q_point_size::SizeMode) + 'static>(
81515            data: *mut ::std::ffi::c_void,
81516            arg0: crate::q_point_size::SizeMode,
81517        ) {
81518            unsafe { (*(data as *mut T))(arg0) }
81519        }
81520        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81521        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_set(self as *const crate::SlotOfSizeMode as *mut crate::SlotOfSizeMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81522    }
81523
81524    /// Calls the slot directly, invoking the assigned handler (if any).
81525    #[inline(always)]
81526    pub unsafe fn slot(&self, arg0: crate::q_point_size::SizeMode) {
81527        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_slot_(self as *const crate::SlotOfSizeMode as *mut crate::SlotOfSizeMode, arg0)
81528    }
81529
81530    #[inline(always)]
81531    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
81532        let ffi_result = {
81533            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_staticMetaObject()
81534        };
81535        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81536            .expect("attempted to construct a null Ref")
81537    }
81538
81539    #[inline(always)]
81540    pub unsafe fn tr(
81541        s: *const ::std::os::raw::c_char,
81542        c: *const ::std::os::raw::c_char,
81543        n: ::std::os::raw::c_int,
81544    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81545        let ffi_result = {
81546            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_tr(s, c, n)
81547        };
81548        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81549    }
81550
81551    #[inline(always)]
81552    pub unsafe fn tr_utf8(
81553        s: *const ::std::os::raw::c_char,
81554        c: *const ::std::os::raw::c_char,
81555        n: ::std::os::raw::c_int,
81556    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81557        let ffi_result = {
81558            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_trUtf8(s, c, n)
81559        };
81560        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81561    }
81562}
81563
81564impl ::qt_core::AsReceiver for crate::SlotOfVertexBaseType {
81565    type Arguments = (crate::q_attribute::VertexBaseType,);
81566    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
81567        unsafe {
81568            ::qt_core::Receiver::new(
81569                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
81570                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
81571                    b"1slot_(Qt3DRender::QAttribute::VertexBaseType)\0",
81572                ),
81573            )
81574        }
81575    }
81576}
81577
81578/// Binds a Qt signal with arguments `crate::q_attribute::VertexBaseType` to a Rust closure.
81579///
81580/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAttribute::VertexBaseType```</span>).
81581///
81582/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
81583///
81584/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
81585///
81586/// If `set()` was not called, slot invocation has no effect.
81587#[repr(C)]
81588pub struct SlotOfVertexBaseType {
81589    _unused: u8,
81590}
81591impl SlotOfVertexBaseType {
81592    #[inline(always)]
81593    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
81594        let ffi_result = {
81595            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_metaObject(self as *const crate::SlotOfVertexBaseType)
81596        };
81597        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81598    }
81599
81600    /// Creates a new object.
81601    #[inline(always)]
81602    pub unsafe fn new<T: FnMut(crate::q_attribute::VertexBaseType) + 'static>(
81603        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
81604        callback: T,
81605    ) -> ::qt_core::QBox<crate::SlotOfVertexBaseType> {
81606        let ffi_result = {
81607            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81608                unsafe {
81609                    let _ = Box::from_raw(data as *mut T);
81610                }
81611            }
81612            extern "C" fn ffi_callback<T: FnMut(crate::q_attribute::VertexBaseType) + 'static>(
81613                data: *mut ::std::ffi::c_void,
81614                arg0: crate::q_attribute::VertexBaseType,
81615            ) {
81616                unsafe { (*(data as *mut T))(arg0) }
81617            }
81618            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81619            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81620        };
81621        ::qt_core::QBox::from_raw(ffi_result)
81622    }
81623
81624    #[inline(always)]
81625    pub unsafe fn qt_metacall(
81626        &self,
81627        arg1: ::qt_core::q_meta_object::Call,
81628        arg2: ::std::os::raw::c_int,
81629        arg3: *mut *mut ::std::ffi::c_void,
81630    ) -> ::std::os::raw::c_int {
81631        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_qt_metacall(self as *const crate::SlotOfVertexBaseType as *mut crate::SlotOfVertexBaseType, arg1, arg2, arg3)
81632    }
81633
81634    #[inline(always)]
81635    pub unsafe fn qt_metacast(
81636        &self,
81637        arg1: *const ::std::os::raw::c_char,
81638    ) -> *mut ::std::ffi::c_void {
81639        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_qt_metacast(self as *const crate::SlotOfVertexBaseType as *mut crate::SlotOfVertexBaseType, arg1)
81640    }
81641
81642    /// Assigns `callback` as the signal handler.
81643    ///
81644    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
81645    #[inline(always)]
81646    pub unsafe fn set<T: FnMut(crate::q_attribute::VertexBaseType) + 'static>(&self, callback: T) {
81647        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81648            unsafe {
81649                let _ = Box::from_raw(data as *mut T);
81650            }
81651        }
81652        extern "C" fn ffi_callback<T: FnMut(crate::q_attribute::VertexBaseType) + 'static>(
81653            data: *mut ::std::ffi::c_void,
81654            arg0: crate::q_attribute::VertexBaseType,
81655        ) {
81656            unsafe { (*(data as *mut T))(arg0) }
81657        }
81658        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81659        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_set(self as *const crate::SlotOfVertexBaseType as *mut crate::SlotOfVertexBaseType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81660    }
81661
81662    /// Calls the slot directly, invoking the assigned handler (if any).
81663    #[inline(always)]
81664    pub unsafe fn slot(&self, arg0: crate::q_attribute::VertexBaseType) {
81665        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_slot_(self as *const crate::SlotOfVertexBaseType as *mut crate::SlotOfVertexBaseType, arg0)
81666    }
81667
81668    #[inline(always)]
81669    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
81670        let ffi_result = {
81671            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_staticMetaObject()
81672        };
81673        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81674            .expect("attempted to construct a null Ref")
81675    }
81676
81677    #[inline(always)]
81678    pub unsafe fn tr(
81679        s: *const ::std::os::raw::c_char,
81680        c: *const ::std::os::raw::c_char,
81681        n: ::std::os::raw::c_int,
81682    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81683        let ffi_result = {
81684            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_tr(s, c, n)
81685        };
81686        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81687    }
81688
81689    #[inline(always)]
81690    pub unsafe fn tr_utf8(
81691        s: *const ::std::os::raw::c_char,
81692        c: *const ::std::os::raw::c_char,
81693        n: ::std::os::raw::c_int,
81694    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81695        let ffi_result = {
81696            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_trUtf8(s, c, n)
81697        };
81698        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81699    }
81700}
81701
81702impl ::qt_core::AsReceiver for crate::SlotOfThresholdType {
81703    type Arguments = (crate::q_level_of_detail::ThresholdType,);
81704    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
81705        unsafe {
81706            ::qt_core::Receiver::new(
81707                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
81708                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
81709                    b"1slot_(Qt3DRender::QLevelOfDetail::ThresholdType)\0",
81710                ),
81711            )
81712        }
81713    }
81714}
81715
81716/// Binds a Qt signal with arguments `crate::q_level_of_detail::ThresholdType` to a Rust closure.
81717///
81718/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QLevelOfDetail::ThresholdType```</span>).
81719///
81720/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
81721///
81722/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
81723///
81724/// If `set()` was not called, slot invocation has no effect.
81725#[repr(C)]
81726pub struct SlotOfThresholdType {
81727    _unused: u8,
81728}
81729impl SlotOfThresholdType {
81730    #[inline(always)]
81731    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
81732        let ffi_result = {
81733            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_metaObject(self as *const crate::SlotOfThresholdType)
81734        };
81735        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81736    }
81737
81738    /// Creates a new object.
81739    #[inline(always)]
81740    pub unsafe fn new<T: FnMut(crate::q_level_of_detail::ThresholdType) + 'static>(
81741        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
81742        callback: T,
81743    ) -> ::qt_core::QBox<crate::SlotOfThresholdType> {
81744        let ffi_result = {
81745            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81746                unsafe {
81747                    let _ = Box::from_raw(data as *mut T);
81748                }
81749            }
81750            extern "C" fn ffi_callback<
81751                T: FnMut(crate::q_level_of_detail::ThresholdType) + 'static,
81752            >(
81753                data: *mut ::std::ffi::c_void,
81754                arg0: crate::q_level_of_detail::ThresholdType,
81755            ) {
81756                unsafe { (*(data as *mut T))(arg0) }
81757            }
81758            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81759            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81760        };
81761        ::qt_core::QBox::from_raw(ffi_result)
81762    }
81763
81764    #[inline(always)]
81765    pub unsafe fn qt_metacall(
81766        &self,
81767        arg1: ::qt_core::q_meta_object::Call,
81768        arg2: ::std::os::raw::c_int,
81769        arg3: *mut *mut ::std::ffi::c_void,
81770    ) -> ::std::os::raw::c_int {
81771        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_qt_metacall(self as *const crate::SlotOfThresholdType as *mut crate::SlotOfThresholdType, arg1, arg2, arg3)
81772    }
81773
81774    #[inline(always)]
81775    pub unsafe fn qt_metacast(
81776        &self,
81777        arg1: *const ::std::os::raw::c_char,
81778    ) -> *mut ::std::ffi::c_void {
81779        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_qt_metacast(self as *const crate::SlotOfThresholdType as *mut crate::SlotOfThresholdType, arg1)
81780    }
81781
81782    /// Assigns `callback` as the signal handler.
81783    ///
81784    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
81785    #[inline(always)]
81786    pub unsafe fn set<T: FnMut(crate::q_level_of_detail::ThresholdType) + 'static>(
81787        &self,
81788        callback: T,
81789    ) {
81790        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81791            unsafe {
81792                let _ = Box::from_raw(data as *mut T);
81793            }
81794        }
81795        extern "C" fn ffi_callback<T: FnMut(crate::q_level_of_detail::ThresholdType) + 'static>(
81796            data: *mut ::std::ffi::c_void,
81797            arg0: crate::q_level_of_detail::ThresholdType,
81798        ) {
81799            unsafe { (*(data as *mut T))(arg0) }
81800        }
81801        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81802        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_set(self as *const crate::SlotOfThresholdType as *mut crate::SlotOfThresholdType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81803    }
81804
81805    /// Calls the slot directly, invoking the assigned handler (if any).
81806    #[inline(always)]
81807    pub unsafe fn slot(&self, arg0: crate::q_level_of_detail::ThresholdType) {
81808        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_slot_(self as *const crate::SlotOfThresholdType as *mut crate::SlotOfThresholdType, arg0)
81809    }
81810
81811    #[inline(always)]
81812    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
81813        let ffi_result = {
81814            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_staticMetaObject()
81815        };
81816        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81817            .expect("attempted to construct a null Ref")
81818    }
81819
81820    #[inline(always)]
81821    pub unsafe fn tr(
81822        s: *const ::std::os::raw::c_char,
81823        c: *const ::std::os::raw::c_char,
81824        n: ::std::os::raw::c_int,
81825    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81826        let ffi_result = {
81827            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_tr(s, c, n)
81828        };
81829        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81830    }
81831
81832    #[inline(always)]
81833    pub unsafe fn tr_utf8(
81834        s: *const ::std::os::raw::c_char,
81835        c: *const ::std::os::raw::c_char,
81836        n: ::std::os::raw::c_int,
81837    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81838        let ffi_result = {
81839            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_trUtf8(s, c, n)
81840        };
81841        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81842    }
81843}
81844
81845impl ::qt_core::AsReceiver for crate::SlotOfFaceMode {
81846    type Arguments = (crate::q_stencil_operation_arguments::FaceMode,);
81847    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
81848        unsafe {
81849            ::qt_core::Receiver::new(
81850                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
81851                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
81852                    b"1slot_(Qt3DRender::QStencilOperationArguments::FaceMode)\0",
81853                ),
81854            )
81855        }
81856    }
81857}
81858
81859/// Binds a Qt signal with arguments `crate::q_stencil_operation_arguments::FaceMode` to a Rust closure.
81860///
81861/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QStencilOperationArguments::FaceMode```</span>).
81862///
81863/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
81864///
81865/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
81866///
81867/// If `set()` was not called, slot invocation has no effect.
81868#[repr(C)]
81869pub struct SlotOfFaceMode {
81870    _unused: u8,
81871}
81872impl SlotOfFaceMode {
81873    #[inline(always)]
81874    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
81875        let ffi_result = {
81876            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_metaObject(self as *const crate::SlotOfFaceMode)
81877        };
81878        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81879    }
81880
81881    /// Creates a new object.
81882    #[inline(always)]
81883    pub unsafe fn new<T: FnMut(crate::q_stencil_operation_arguments::FaceMode) + 'static>(
81884        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
81885        callback: T,
81886    ) -> ::qt_core::QBox<crate::SlotOfFaceMode> {
81887        let ffi_result = {
81888            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81889                unsafe {
81890                    let _ = Box::from_raw(data as *mut T);
81891                }
81892            }
81893            extern "C" fn ffi_callback<
81894                T: FnMut(crate::q_stencil_operation_arguments::FaceMode) + 'static,
81895            >(
81896                data: *mut ::std::ffi::c_void,
81897                arg0: crate::q_stencil_operation_arguments::FaceMode,
81898            ) {
81899                unsafe { (*(data as *mut T))(arg0) }
81900            }
81901            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81902            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81903        };
81904        ::qt_core::QBox::from_raw(ffi_result)
81905    }
81906
81907    #[inline(always)]
81908    pub unsafe fn qt_metacall(
81909        &self,
81910        arg1: ::qt_core::q_meta_object::Call,
81911        arg2: ::std::os::raw::c_int,
81912        arg3: *mut *mut ::std::ffi::c_void,
81913    ) -> ::std::os::raw::c_int {
81914        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_qt_metacall(self as *const crate::SlotOfFaceMode as *mut crate::SlotOfFaceMode, arg1, arg2, arg3)
81915    }
81916
81917    #[inline(always)]
81918    pub unsafe fn qt_metacast(
81919        &self,
81920        arg1: *const ::std::os::raw::c_char,
81921    ) -> *mut ::std::ffi::c_void {
81922        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_qt_metacast(self as *const crate::SlotOfFaceMode as *mut crate::SlotOfFaceMode, arg1)
81923    }
81924
81925    /// Assigns `callback` as the signal handler.
81926    ///
81927    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
81928    #[inline(always)]
81929    pub unsafe fn set<T: FnMut(crate::q_stencil_operation_arguments::FaceMode) + 'static>(
81930        &self,
81931        callback: T,
81932    ) {
81933        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
81934            unsafe {
81935                let _ = Box::from_raw(data as *mut T);
81936            }
81937        }
81938        extern "C" fn ffi_callback<
81939            T: FnMut(crate::q_stencil_operation_arguments::FaceMode) + 'static,
81940        >(
81941            data: *mut ::std::ffi::c_void,
81942            arg0: crate::q_stencil_operation_arguments::FaceMode,
81943        ) {
81944            unsafe { (*(data as *mut T))(arg0) }
81945        }
81946        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
81947        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_set(self as *const crate::SlotOfFaceMode as *mut crate::SlotOfFaceMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
81948    }
81949
81950    /// Calls the slot directly, invoking the assigned handler (if any).
81951    #[inline(always)]
81952    pub unsafe fn slot(&self, arg0: crate::q_stencil_operation_arguments::FaceMode) {
81953        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_slot_(self as *const crate::SlotOfFaceMode as *mut crate::SlotOfFaceMode, arg0)
81954    }
81955
81956    #[inline(always)]
81957    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
81958        let ffi_result = {
81959            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_staticMetaObject()
81960        };
81961        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
81962            .expect("attempted to construct a null Ref")
81963    }
81964
81965    #[inline(always)]
81966    pub unsafe fn tr(
81967        s: *const ::std::os::raw::c_char,
81968        c: *const ::std::os::raw::c_char,
81969        n: ::std::os::raw::c_int,
81970    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81971        let ffi_result = {
81972            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_tr(s, c, n)
81973        };
81974        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81975    }
81976
81977    #[inline(always)]
81978    pub unsafe fn tr_utf8(
81979        s: *const ::std::os::raw::c_char,
81980        c: *const ::std::os::raw::c_char,
81981        n: ::std::os::raw::c_int,
81982    ) -> ::cpp_core::CppBox<::qt_core::QString> {
81983        let ffi_result = {
81984            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_trUtf8(s, c, n)
81985        };
81986        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
81987    }
81988}
81989
81990impl ::qt_core::AsReceiver for crate::SlotOfQByteArray {
81991    type Arguments = (*const ::qt_core::QByteArray,);
81992    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
81993        unsafe {
81994            ::qt_core::Receiver::new(
81995                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
81996                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(QByteArray const &)\0"),
81997            )
81998        }
81999    }
82000}
82001
82002/// Binds a Qt signal with arguments `*const ::qt_core::QByteArray` to a Rust closure.
82003///
82004/// Corresponding C++ argument types: (<span style='color: green;'>```const QByteArray&```</span>).
82005///
82006/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
82007///
82008/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
82009///
82010/// If `set()` was not called, slot invocation has no effect.
82011#[repr(C)]
82012pub struct SlotOfQByteArray {
82013    _unused: u8,
82014}
82015impl SlotOfQByteArray {
82016    #[inline(always)]
82017    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
82018        let ffi_result = {
82019            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_metaObject(self as *const crate::SlotOfQByteArray)
82020        };
82021        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82022    }
82023
82024    /// Creates a new object.
82025    #[inline(always)]
82026    pub unsafe fn new<T: FnMut(::cpp_core::Ref<::qt_core::QByteArray>) + 'static>(
82027        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
82028        callback: T,
82029    ) -> ::qt_core::QBox<crate::SlotOfQByteArray> {
82030        let ffi_result = {
82031            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82032                unsafe {
82033                    let _ = Box::from_raw(data as *mut T);
82034                }
82035            }
82036            extern "C" fn ffi_callback<
82037                T: FnMut(::cpp_core::Ref<::qt_core::QByteArray>) + 'static,
82038            >(
82039                data: *mut ::std::ffi::c_void,
82040                arg0: *const ::qt_core::QByteArray,
82041            ) {
82042                unsafe {
82043                    (*(data as *mut T))(
82044                        ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QByteArray)
82045                            .expect("attempted to construct a null Ref"),
82046                    )
82047                }
82048            }
82049            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82050            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82051        };
82052        ::qt_core::QBox::from_raw(ffi_result)
82053    }
82054
82055    #[inline(always)]
82056    pub unsafe fn qt_metacall(
82057        &self,
82058        arg1: ::qt_core::q_meta_object::Call,
82059        arg2: ::std::os::raw::c_int,
82060        arg3: *mut *mut ::std::ffi::c_void,
82061    ) -> ::std::os::raw::c_int {
82062        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_qt_metacall(self as *const crate::SlotOfQByteArray as *mut crate::SlotOfQByteArray, arg1, arg2, arg3)
82063    }
82064
82065    #[inline(always)]
82066    pub unsafe fn qt_metacast(
82067        &self,
82068        arg1: *const ::std::os::raw::c_char,
82069    ) -> *mut ::std::ffi::c_void {
82070        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_qt_metacast(self as *const crate::SlotOfQByteArray as *mut crate::SlotOfQByteArray, arg1)
82071    }
82072
82073    /// Assigns `callback` as the signal handler.
82074    ///
82075    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
82076    #[inline(always)]
82077    pub unsafe fn set<T: FnMut(::cpp_core::Ref<::qt_core::QByteArray>) + 'static>(
82078        &self,
82079        callback: T,
82080    ) {
82081        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82082            unsafe {
82083                let _ = Box::from_raw(data as *mut T);
82084            }
82085        }
82086        extern "C" fn ffi_callback<T: FnMut(::cpp_core::Ref<::qt_core::QByteArray>) + 'static>(
82087            data: *mut ::std::ffi::c_void,
82088            arg0: *const ::qt_core::QByteArray,
82089        ) {
82090            unsafe {
82091                (*(data as *mut T))(
82092                    ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QByteArray)
82093                        .expect("attempted to construct a null Ref"),
82094                )
82095            }
82096        }
82097        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82098        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_set(self as *const crate::SlotOfQByteArray as *mut crate::SlotOfQByteArray, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82099    }
82100
82101    /// Calls the slot directly, invoking the assigned handler (if any).
82102    #[inline(always)]
82103    pub unsafe fn slot(
82104        &self,
82105        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QByteArray>>,
82106    ) {
82107        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_slot_(self as *const crate::SlotOfQByteArray as *mut crate::SlotOfQByteArray, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QByteArray>>::cast_into(arg0).as_raw_ptr())
82108    }
82109
82110    #[inline(always)]
82111    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
82112        let ffi_result = {
82113            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_staticMetaObject()
82114        };
82115        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82116            .expect("attempted to construct a null Ref")
82117    }
82118
82119    #[inline(always)]
82120    pub unsafe fn tr(
82121        s: *const ::std::os::raw::c_char,
82122        c: *const ::std::os::raw::c_char,
82123        n: ::std::os::raw::c_int,
82124    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82125        let ffi_result = {
82126            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_tr(s, c, n)
82127        };
82128        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82129    }
82130
82131    #[inline(always)]
82132    pub unsafe fn tr_utf8(
82133        s: *const ::std::os::raw::c_char,
82134        c: *const ::std::os::raw::c_char,
82135        n: ::std::os::raw::c_int,
82136    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82137        let ffi_result = {
82138            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_trUtf8(s, c, n)
82139        };
82140        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82141    }
82142}
82143
82144#[cfg_attr(
82145    feature = "ritual_rustdoc_nightly",
82146    doc(cfg(cpp_lib_version = "5.14.0"))
82147)]
82148#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82149
82150impl ::qt_core::AsReceiver for crate::SlotOfRasterMode {
82151    type Arguments = (crate::q_raster_mode::RasterMode,);
82152    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
82153        unsafe {
82154            ::qt_core::Receiver::new(
82155                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
82156                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
82157                    b"1slot_(Qt3DRender::QRasterMode::RasterMode)\0",
82158                ),
82159            )
82160        }
82161    }
82162}
82163
82164/// Binds a Qt signal with arguments `crate::q_raster_mode::RasterMode` to a Rust closure.
82165///
82166/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRasterMode::RasterMode```</span>).
82167///
82168/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
82169///
82170/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
82171///
82172/// If `set()` was not called, slot invocation has no effect.
82173#[repr(C)]
82174pub struct SlotOfRasterMode {
82175    _unused: u8,
82176}
82177impl SlotOfRasterMode {
82178    #[inline(always)]
82179    #[cfg_attr(
82180        feature = "ritual_rustdoc_nightly",
82181        doc(cfg(cpp_lib_version = "5.14.0"))
82182    )]
82183    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82184    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
82185        let ffi_result = {
82186            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_metaObject(self as *const crate::SlotOfRasterMode)
82187        };
82188        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82189    }
82190
82191    /// Creates a new object.
82192    #[inline(always)]
82193    #[cfg_attr(
82194        feature = "ritual_rustdoc_nightly",
82195        doc(cfg(cpp_lib_version = "5.14.0"))
82196    )]
82197    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82198    pub unsafe fn new<T: FnMut(crate::q_raster_mode::RasterMode) + 'static>(
82199        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
82200        callback: T,
82201    ) -> ::qt_core::QBox<crate::SlotOfRasterMode> {
82202        let ffi_result = {
82203            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82204                unsafe {
82205                    let _ = Box::from_raw(data as *mut T);
82206                }
82207            }
82208            extern "C" fn ffi_callback<T: FnMut(crate::q_raster_mode::RasterMode) + 'static>(
82209                data: *mut ::std::ffi::c_void,
82210                arg0: crate::q_raster_mode::RasterMode,
82211            ) {
82212                unsafe { (*(data as *mut T))(arg0) }
82213            }
82214            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82215            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82216        };
82217        ::qt_core::QBox::from_raw(ffi_result)
82218    }
82219
82220    #[inline(always)]
82221    #[cfg_attr(
82222        feature = "ritual_rustdoc_nightly",
82223        doc(cfg(cpp_lib_version = "5.14.0"))
82224    )]
82225    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82226    pub unsafe fn qt_metacall(
82227        &self,
82228        arg1: ::qt_core::q_meta_object::Call,
82229        arg2: ::std::os::raw::c_int,
82230        arg3: *mut *mut ::std::ffi::c_void,
82231    ) -> ::std::os::raw::c_int {
82232        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_qt_metacall(self as *const crate::SlotOfRasterMode as *mut crate::SlotOfRasterMode, arg1, arg2, arg3)
82233    }
82234
82235    #[inline(always)]
82236    #[cfg_attr(
82237        feature = "ritual_rustdoc_nightly",
82238        doc(cfg(cpp_lib_version = "5.14.0"))
82239    )]
82240    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82241    pub unsafe fn qt_metacast(
82242        &self,
82243        arg1: *const ::std::os::raw::c_char,
82244    ) -> *mut ::std::ffi::c_void {
82245        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_qt_metacast(self as *const crate::SlotOfRasterMode as *mut crate::SlotOfRasterMode, arg1)
82246    }
82247
82248    /// Assigns `callback` as the signal handler.
82249    ///
82250    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
82251    #[inline(always)]
82252    #[cfg_attr(
82253        feature = "ritual_rustdoc_nightly",
82254        doc(cfg(cpp_lib_version = "5.14.0"))
82255    )]
82256    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82257    pub unsafe fn set<T: FnMut(crate::q_raster_mode::RasterMode) + 'static>(&self, callback: T) {
82258        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82259            unsafe {
82260                let _ = Box::from_raw(data as *mut T);
82261            }
82262        }
82263        extern "C" fn ffi_callback<T: FnMut(crate::q_raster_mode::RasterMode) + 'static>(
82264            data: *mut ::std::ffi::c_void,
82265            arg0: crate::q_raster_mode::RasterMode,
82266        ) {
82267            unsafe { (*(data as *mut T))(arg0) }
82268        }
82269        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82270        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_set(self as *const crate::SlotOfRasterMode as *mut crate::SlotOfRasterMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82271    }
82272
82273    /// Calls the slot directly, invoking the assigned handler (if any).
82274    #[inline(always)]
82275    #[cfg_attr(
82276        feature = "ritual_rustdoc_nightly",
82277        doc(cfg(cpp_lib_version = "5.14.0"))
82278    )]
82279    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82280    pub unsafe fn slot(&self, arg0: crate::q_raster_mode::RasterMode) {
82281        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_slot_(self as *const crate::SlotOfRasterMode as *mut crate::SlotOfRasterMode, arg0)
82282    }
82283
82284    #[inline(always)]
82285    #[cfg_attr(
82286        feature = "ritual_rustdoc_nightly",
82287        doc(cfg(cpp_lib_version = "5.14.0"))
82288    )]
82289    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82290    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
82291        let ffi_result = {
82292            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_staticMetaObject()
82293        };
82294        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82295            .expect("attempted to construct a null Ref")
82296    }
82297
82298    #[inline(always)]
82299    #[cfg_attr(
82300        feature = "ritual_rustdoc_nightly",
82301        doc(cfg(cpp_lib_version = "5.14.0"))
82302    )]
82303    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82304    pub unsafe fn tr(
82305        s: *const ::std::os::raw::c_char,
82306        c: *const ::std::os::raw::c_char,
82307        n: ::std::os::raw::c_int,
82308    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82309        let ffi_result = {
82310            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_tr(s, c, n)
82311        };
82312        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82313    }
82314
82315    #[inline(always)]
82316    #[cfg_attr(
82317        feature = "ritual_rustdoc_nightly",
82318        doc(cfg(cpp_lib_version = "5.14.0"))
82319    )]
82320    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
82321    pub unsafe fn tr_utf8(
82322        s: *const ::std::os::raw::c_char,
82323        c: *const ::std::os::raw::c_char,
82324        n: ::std::os::raw::c_int,
82325    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82326        let ffi_result = {
82327            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_trUtf8(s, c, n)
82328        };
82329        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82330    }
82331}
82332
82333impl ::qt_core::AsReceiver for crate::SlotOfUsageType {
82334    type Arguments = (crate::q_buffer::UsageType,);
82335    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
82336        unsafe {
82337            ::qt_core::Receiver::new(
82338                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
82339                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
82340                    b"1slot_(Qt3DRender::QBuffer::UsageType)\0",
82341                ),
82342            )
82343        }
82344    }
82345}
82346
82347/// Binds a Qt signal with arguments `crate::q_buffer::UsageType` to a Rust closure.
82348///
82349/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBuffer::UsageType```</span>).
82350///
82351/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
82352///
82353/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
82354///
82355/// If `set()` was not called, slot invocation has no effect.
82356#[repr(C)]
82357pub struct SlotOfUsageType {
82358    _unused: u8,
82359}
82360impl SlotOfUsageType {
82361    #[inline(always)]
82362    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
82363        let ffi_result = {
82364            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_metaObject(self as *const crate::SlotOfUsageType)
82365        };
82366        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82367    }
82368
82369    /// Creates a new object.
82370    #[inline(always)]
82371    pub unsafe fn new<T: FnMut(crate::q_buffer::UsageType) + 'static>(
82372        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
82373        callback: T,
82374    ) -> ::qt_core::QBox<crate::SlotOfUsageType> {
82375        let ffi_result = {
82376            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82377                unsafe {
82378                    let _ = Box::from_raw(data as *mut T);
82379                }
82380            }
82381            extern "C" fn ffi_callback<T: FnMut(crate::q_buffer::UsageType) + 'static>(
82382                data: *mut ::std::ffi::c_void,
82383                arg0: crate::q_buffer::UsageType,
82384            ) {
82385                unsafe { (*(data as *mut T))(arg0) }
82386            }
82387            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82388            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82389        };
82390        ::qt_core::QBox::from_raw(ffi_result)
82391    }
82392
82393    #[inline(always)]
82394    pub unsafe fn qt_metacall(
82395        &self,
82396        arg1: ::qt_core::q_meta_object::Call,
82397        arg2: ::std::os::raw::c_int,
82398        arg3: *mut *mut ::std::ffi::c_void,
82399    ) -> ::std::os::raw::c_int {
82400        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_qt_metacall(self as *const crate::SlotOfUsageType as *mut crate::SlotOfUsageType, arg1, arg2, arg3)
82401    }
82402
82403    #[inline(always)]
82404    pub unsafe fn qt_metacast(
82405        &self,
82406        arg1: *const ::std::os::raw::c_char,
82407    ) -> *mut ::std::ffi::c_void {
82408        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_qt_metacast(self as *const crate::SlotOfUsageType as *mut crate::SlotOfUsageType, arg1)
82409    }
82410
82411    /// Assigns `callback` as the signal handler.
82412    ///
82413    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
82414    #[inline(always)]
82415    pub unsafe fn set<T: FnMut(crate::q_buffer::UsageType) + 'static>(&self, callback: T) {
82416        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82417            unsafe {
82418                let _ = Box::from_raw(data as *mut T);
82419            }
82420        }
82421        extern "C" fn ffi_callback<T: FnMut(crate::q_buffer::UsageType) + 'static>(
82422            data: *mut ::std::ffi::c_void,
82423            arg0: crate::q_buffer::UsageType,
82424        ) {
82425            unsafe { (*(data as *mut T))(arg0) }
82426        }
82427        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82428        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_set(self as *const crate::SlotOfUsageType as *mut crate::SlotOfUsageType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82429    }
82430
82431    /// Calls the slot directly, invoking the assigned handler (if any).
82432    #[inline(always)]
82433    pub unsafe fn slot(&self, arg0: crate::q_buffer::UsageType) {
82434        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_slot_(self as *const crate::SlotOfUsageType as *mut crate::SlotOfUsageType, arg0)
82435    }
82436
82437    #[inline(always)]
82438    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
82439        let ffi_result = {
82440            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_staticMetaObject()
82441        };
82442        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82443            .expect("attempted to construct a null Ref")
82444    }
82445
82446    #[inline(always)]
82447    pub unsafe fn tr(
82448        s: *const ::std::os::raw::c_char,
82449        c: *const ::std::os::raw::c_char,
82450        n: ::std::os::raw::c_int,
82451    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82452        let ffi_result = {
82453            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_tr(s, c, n)
82454        };
82455        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82456    }
82457
82458    #[inline(always)]
82459    pub unsafe fn tr_utf8(
82460        s: *const ::std::os::raw::c_char,
82461        c: *const ::std::os::raw::c_char,
82462        n: ::std::os::raw::c_int,
82463    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82464        let ffi_result = {
82465            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_trUtf8(s, c, n)
82466        };
82467        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82468    }
82469}
82470
82471impl ::qt_core::AsReceiver for crate::SlotOfStatus2 {
82472    type Arguments = (crate::q_texture_image::Status,);
82473    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
82474        unsafe {
82475            ::qt_core::Receiver::new(
82476                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
82477                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
82478                    b"1slot_(Qt3DRender::QTextureImage::Status)\0",
82479                ),
82480            )
82481        }
82482    }
82483}
82484
82485/// Binds a Qt signal with arguments `crate::q_texture_image::Status` to a Rust closure.
82486///
82487/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QTextureImage::Status```</span>).
82488///
82489/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
82490///
82491/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
82492///
82493/// If `set()` was not called, slot invocation has no effect.
82494#[repr(C)]
82495pub struct SlotOfStatus2 {
82496    _unused: u8,
82497}
82498impl SlotOfStatus2 {
82499    #[inline(always)]
82500    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
82501        let ffi_result = {
82502            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_metaObject(self as *const crate::SlotOfStatus2)
82503        };
82504        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82505    }
82506
82507    /// Creates a new object.
82508    #[inline(always)]
82509    pub unsafe fn new<T: FnMut(crate::q_texture_image::Status) + 'static>(
82510        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
82511        callback: T,
82512    ) -> ::qt_core::QBox<crate::SlotOfStatus2> {
82513        let ffi_result = {
82514            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82515                unsafe {
82516                    let _ = Box::from_raw(data as *mut T);
82517                }
82518            }
82519            extern "C" fn ffi_callback<T: FnMut(crate::q_texture_image::Status) + 'static>(
82520                data: *mut ::std::ffi::c_void,
82521                arg0: crate::q_texture_image::Status,
82522            ) {
82523                unsafe { (*(data as *mut T))(arg0) }
82524            }
82525            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82526            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82527        };
82528        ::qt_core::QBox::from_raw(ffi_result)
82529    }
82530
82531    #[inline(always)]
82532    pub unsafe fn qt_metacall(
82533        &self,
82534        arg1: ::qt_core::q_meta_object::Call,
82535        arg2: ::std::os::raw::c_int,
82536        arg3: *mut *mut ::std::ffi::c_void,
82537    ) -> ::std::os::raw::c_int {
82538        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_qt_metacall(self as *const crate::SlotOfStatus2 as *mut crate::SlotOfStatus2, arg1, arg2, arg3)
82539    }
82540
82541    #[inline(always)]
82542    pub unsafe fn qt_metacast(
82543        &self,
82544        arg1: *const ::std::os::raw::c_char,
82545    ) -> *mut ::std::ffi::c_void {
82546        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_qt_metacast(self as *const crate::SlotOfStatus2 as *mut crate::SlotOfStatus2, arg1)
82547    }
82548
82549    /// Assigns `callback` as the signal handler.
82550    ///
82551    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
82552    #[inline(always)]
82553    pub unsafe fn set<T: FnMut(crate::q_texture_image::Status) + 'static>(&self, callback: T) {
82554        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82555            unsafe {
82556                let _ = Box::from_raw(data as *mut T);
82557            }
82558        }
82559        extern "C" fn ffi_callback<T: FnMut(crate::q_texture_image::Status) + 'static>(
82560            data: *mut ::std::ffi::c_void,
82561            arg0: crate::q_texture_image::Status,
82562        ) {
82563            unsafe { (*(data as *mut T))(arg0) }
82564        }
82565        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82566        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_set(self as *const crate::SlotOfStatus2 as *mut crate::SlotOfStatus2, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82567    }
82568
82569    /// Calls the slot directly, invoking the assigned handler (if any).
82570    #[inline(always)]
82571    pub unsafe fn slot(&self, arg0: crate::q_texture_image::Status) {
82572        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_slot_(self as *const crate::SlotOfStatus2 as *mut crate::SlotOfStatus2, arg0)
82573    }
82574
82575    #[inline(always)]
82576    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
82577        let ffi_result = {
82578            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_staticMetaObject()
82579        };
82580        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82581            .expect("attempted to construct a null Ref")
82582    }
82583
82584    #[inline(always)]
82585    pub unsafe fn tr(
82586        s: *const ::std::os::raw::c_char,
82587        c: *const ::std::os::raw::c_char,
82588        n: ::std::os::raw::c_int,
82589    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82590        let ffi_result = {
82591            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_tr(s, c, n)
82592        };
82593        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82594    }
82595
82596    #[inline(always)]
82597    pub unsafe fn tr_utf8(
82598        s: *const ::std::os::raw::c_char,
82599        c: *const ::std::os::raw::c_char,
82600        n: ::std::os::raw::c_int,
82601    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82602        let ffi_result = {
82603            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_trUtf8(s, c, n)
82604        };
82605        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82606    }
82607}
82608
82609impl ::qt_core::AsReceiver for crate::SlotOfU64 {
82610    type Arguments = (u64,);
82611    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
82612        unsafe {
82613            ::qt_core::Receiver::new(
82614                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
82615                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(quint64)\0"),
82616            )
82617        }
82618    }
82619}
82620
82621/// Binds a Qt signal with arguments `u64` to a Rust closure.
82622///
82623/// Corresponding C++ argument types: (<span style='color: green;'>```quint64```</span>).
82624///
82625/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
82626///
82627/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
82628///
82629/// If `set()` was not called, slot invocation has no effect.
82630#[repr(C)]
82631pub struct SlotOfU64 {
82632    _unused: u8,
82633}
82634impl SlotOfU64 {
82635    #[inline(always)]
82636    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
82637        let ffi_result = {
82638            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_metaObject(
82639                self as *const crate::SlotOfU64,
82640            )
82641        };
82642        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82643    }
82644
82645    /// Creates a new object.
82646    #[inline(always)]
82647    pub unsafe fn new<T: FnMut(u64) + 'static>(
82648        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
82649        callback: T,
82650    ) -> ::qt_core::QBox<crate::SlotOfU64> {
82651        let ffi_result = {
82652            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82653                unsafe {
82654                    let _ = Box::from_raw(data as *mut T);
82655                }
82656            }
82657            extern "C" fn ffi_callback<T: FnMut(u64) + 'static>(
82658                data: *mut ::std::ffi::c_void,
82659                arg0: u64,
82660            ) {
82661                unsafe { (*(data as *mut T))(arg0) }
82662            }
82663            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82664            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_ctr_qt_3d_render_ffi_slot_wrapper_quint64(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82665        };
82666        ::qt_core::QBox::from_raw(ffi_result)
82667    }
82668
82669    #[inline(always)]
82670    pub unsafe fn qt_metacall(
82671        &self,
82672        arg1: ::qt_core::q_meta_object::Call,
82673        arg2: ::std::os::raw::c_int,
82674        arg3: *mut *mut ::std::ffi::c_void,
82675    ) -> ::std::os::raw::c_int {
82676        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_qt_metacall(
82677            self as *const crate::SlotOfU64 as *mut crate::SlotOfU64,
82678            arg1,
82679            arg2,
82680            arg3,
82681        )
82682    }
82683
82684    #[inline(always)]
82685    pub unsafe fn qt_metacast(
82686        &self,
82687        arg1: *const ::std::os::raw::c_char,
82688    ) -> *mut ::std::ffi::c_void {
82689        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_qt_metacast(
82690            self as *const crate::SlotOfU64 as *mut crate::SlotOfU64,
82691            arg1,
82692        )
82693    }
82694
82695    /// Assigns `callback` as the signal handler.
82696    ///
82697    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
82698    #[inline(always)]
82699    pub unsafe fn set<T: FnMut(u64) + 'static>(&self, callback: T) {
82700        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82701            unsafe {
82702                let _ = Box::from_raw(data as *mut T);
82703            }
82704        }
82705        extern "C" fn ffi_callback<T: FnMut(u64) + 'static>(
82706            data: *mut ::std::ffi::c_void,
82707            arg0: u64,
82708        ) {
82709            unsafe { (*(data as *mut T))(arg0) }
82710        }
82711        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82712        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_set(
82713            self as *const crate::SlotOfU64 as *mut crate::SlotOfU64,
82714            Some(ffi_callback::<T>),
82715            Some(deleter::<T>),
82716            data,
82717        )
82718    }
82719
82720    /// Calls the slot directly, invoking the assigned handler (if any).
82721    #[inline(always)]
82722    pub unsafe fn slot(&self, arg0: u64) {
82723        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_slot_(
82724            self as *const crate::SlotOfU64 as *mut crate::SlotOfU64,
82725            arg0,
82726        )
82727    }
82728
82729    #[inline(always)]
82730    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
82731        let ffi_result = {
82732            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_staticMetaObject()
82733        };
82734        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82735            .expect("attempted to construct a null Ref")
82736    }
82737
82738    #[inline(always)]
82739    pub unsafe fn tr(
82740        s: *const ::std::os::raw::c_char,
82741        c: *const ::std::os::raw::c_char,
82742        n: ::std::os::raw::c_int,
82743    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82744        let ffi_result = {
82745            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_tr(s, c, n)
82746        };
82747        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82748    }
82749
82750    #[inline(always)]
82751    pub unsafe fn tr_utf8(
82752        s: *const ::std::os::raw::c_char,
82753        c: *const ::std::os::raw::c_char,
82754        n: ::std::os::raw::c_int,
82755    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82756        let ffi_result = {
82757            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_trUtf8(
82758                s, c, n,
82759            )
82760        };
82761        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82762    }
82763}
82764
82765impl ::qt_core::AsReceiver for crate::SlotOfFaceOrientationPickingMode {
82766    type Arguments = (crate::q_picking_settings::FaceOrientationPickingMode,);
82767    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
82768        unsafe {
82769            ::qt_core::Receiver::new(
82770                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
82771                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
82772                    b"1slot_(Qt3DRender::QPickingSettings::FaceOrientationPickingMode)\0",
82773                ),
82774            )
82775        }
82776    }
82777}
82778
82779/// Binds a Qt signal with arguments `crate::q_picking_settings::FaceOrientationPickingMode` to a Rust closure.
82780///
82781/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPickingSettings::FaceOrientationPickingMode```</span>).
82782///
82783/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
82784///
82785/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
82786///
82787/// If `set()` was not called, slot invocation has no effect.
82788#[repr(C)]
82789pub struct SlotOfFaceOrientationPickingMode {
82790    _unused: u8,
82791}
82792impl SlotOfFaceOrientationPickingMode {
82793    #[inline(always)]
82794    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
82795        let ffi_result = {
82796            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_metaObject(self as *const crate::SlotOfFaceOrientationPickingMode)
82797        };
82798        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82799    }
82800
82801    /// Creates a new object.
82802    #[inline(always)]
82803    pub unsafe fn new<T: FnMut(crate::q_picking_settings::FaceOrientationPickingMode) + 'static>(
82804        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
82805        callback: T,
82806    ) -> ::qt_core::QBox<crate::SlotOfFaceOrientationPickingMode> {
82807        let ffi_result = {
82808            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82809                unsafe {
82810                    let _ = Box::from_raw(data as *mut T);
82811                }
82812            }
82813            extern "C" fn ffi_callback<
82814                T: FnMut(crate::q_picking_settings::FaceOrientationPickingMode) + 'static,
82815            >(
82816                data: *mut ::std::ffi::c_void,
82817                arg0: crate::q_picking_settings::FaceOrientationPickingMode,
82818            ) {
82819                unsafe { (*(data as *mut T))(arg0) }
82820            }
82821            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82822            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82823        };
82824        ::qt_core::QBox::from_raw(ffi_result)
82825    }
82826
82827    #[inline(always)]
82828    pub unsafe fn qt_metacall(
82829        &self,
82830        arg1: ::qt_core::q_meta_object::Call,
82831        arg2: ::std::os::raw::c_int,
82832        arg3: *mut *mut ::std::ffi::c_void,
82833    ) -> ::std::os::raw::c_int {
82834        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_qt_metacall(self as *const crate::SlotOfFaceOrientationPickingMode as *mut crate::SlotOfFaceOrientationPickingMode, arg1, arg2, arg3)
82835    }
82836
82837    #[inline(always)]
82838    pub unsafe fn qt_metacast(
82839        &self,
82840        arg1: *const ::std::os::raw::c_char,
82841    ) -> *mut ::std::ffi::c_void {
82842        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_qt_metacast(self as *const crate::SlotOfFaceOrientationPickingMode as *mut crate::SlotOfFaceOrientationPickingMode, arg1)
82843    }
82844
82845    /// Assigns `callback` as the signal handler.
82846    ///
82847    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
82848    #[inline(always)]
82849    pub unsafe fn set<T: FnMut(crate::q_picking_settings::FaceOrientationPickingMode) + 'static>(
82850        &self,
82851        callback: T,
82852    ) {
82853        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82854            unsafe {
82855                let _ = Box::from_raw(data as *mut T);
82856            }
82857        }
82858        extern "C" fn ffi_callback<
82859            T: FnMut(crate::q_picking_settings::FaceOrientationPickingMode) + 'static,
82860        >(
82861            data: *mut ::std::ffi::c_void,
82862            arg0: crate::q_picking_settings::FaceOrientationPickingMode,
82863        ) {
82864            unsafe { (*(data as *mut T))(arg0) }
82865        }
82866        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82867        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_set(self as *const crate::SlotOfFaceOrientationPickingMode as *mut crate::SlotOfFaceOrientationPickingMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82868    }
82869
82870    /// Calls the slot directly, invoking the assigned handler (if any).
82871    #[inline(always)]
82872    pub unsafe fn slot(&self, arg0: crate::q_picking_settings::FaceOrientationPickingMode) {
82873        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_slot_(self as *const crate::SlotOfFaceOrientationPickingMode as *mut crate::SlotOfFaceOrientationPickingMode, arg0)
82874    }
82875
82876    #[inline(always)]
82877    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
82878        let ffi_result = {
82879            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_staticMetaObject()
82880        };
82881        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82882            .expect("attempted to construct a null Ref")
82883    }
82884
82885    #[inline(always)]
82886    pub unsafe fn tr(
82887        s: *const ::std::os::raw::c_char,
82888        c: *const ::std::os::raw::c_char,
82889        n: ::std::os::raw::c_int,
82890    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82891        let ffi_result = {
82892            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_tr(s, c, n)
82893        };
82894        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82895    }
82896
82897    #[inline(always)]
82898    pub unsafe fn tr_utf8(
82899        s: *const ::std::os::raw::c_char,
82900        c: *const ::std::os::raw::c_char,
82901        n: ::std::os::raw::c_int,
82902    ) -> ::cpp_core::CppBox<::qt_core::QString> {
82903        let ffi_result = {
82904            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_trUtf8(s, c, n)
82905        };
82906        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
82907    }
82908}
82909
82910impl ::qt_core::AsReceiver for crate::SlotOfCubeMapFace {
82911    type Arguments = (crate::q_abstract_texture::CubeMapFace,);
82912    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
82913        unsafe {
82914            ::qt_core::Receiver::new(
82915                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
82916                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
82917                    b"1slot_(Qt3DRender::QAbstractTexture::CubeMapFace)\0",
82918                ),
82919            )
82920        }
82921    }
82922}
82923
82924/// Binds a Qt signal with arguments `crate::q_abstract_texture::CubeMapFace` to a Rust closure.
82925///
82926/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::CubeMapFace```</span>).
82927///
82928/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
82929///
82930/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
82931///
82932/// If `set()` was not called, slot invocation has no effect.
82933#[repr(C)]
82934pub struct SlotOfCubeMapFace {
82935    _unused: u8,
82936}
82937impl SlotOfCubeMapFace {
82938    #[inline(always)]
82939    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
82940        let ffi_result = {
82941            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_metaObject(self as *const crate::SlotOfCubeMapFace)
82942        };
82943        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
82944    }
82945
82946    /// Creates a new object.
82947    #[inline(always)]
82948    pub unsafe fn new<T: FnMut(crate::q_abstract_texture::CubeMapFace) + 'static>(
82949        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
82950        callback: T,
82951    ) -> ::qt_core::QBox<crate::SlotOfCubeMapFace> {
82952        let ffi_result = {
82953            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82954                unsafe {
82955                    let _ = Box::from_raw(data as *mut T);
82956                }
82957            }
82958            extern "C" fn ffi_callback<
82959                T: FnMut(crate::q_abstract_texture::CubeMapFace) + 'static,
82960            >(
82961                data: *mut ::std::ffi::c_void,
82962                arg0: crate::q_abstract_texture::CubeMapFace,
82963            ) {
82964                unsafe { (*(data as *mut T))(arg0) }
82965            }
82966            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
82967            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
82968        };
82969        ::qt_core::QBox::from_raw(ffi_result)
82970    }
82971
82972    #[inline(always)]
82973    pub unsafe fn qt_metacall(
82974        &self,
82975        arg1: ::qt_core::q_meta_object::Call,
82976        arg2: ::std::os::raw::c_int,
82977        arg3: *mut *mut ::std::ffi::c_void,
82978    ) -> ::std::os::raw::c_int {
82979        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_qt_metacall(self as *const crate::SlotOfCubeMapFace as *mut crate::SlotOfCubeMapFace, arg1, arg2, arg3)
82980    }
82981
82982    #[inline(always)]
82983    pub unsafe fn qt_metacast(
82984        &self,
82985        arg1: *const ::std::os::raw::c_char,
82986    ) -> *mut ::std::ffi::c_void {
82987        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_qt_metacast(self as *const crate::SlotOfCubeMapFace as *mut crate::SlotOfCubeMapFace, arg1)
82988    }
82989
82990    /// Assigns `callback` as the signal handler.
82991    ///
82992    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
82993    #[inline(always)]
82994    pub unsafe fn set<T: FnMut(crate::q_abstract_texture::CubeMapFace) + 'static>(
82995        &self,
82996        callback: T,
82997    ) {
82998        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
82999            unsafe {
83000                let _ = Box::from_raw(data as *mut T);
83001            }
83002        }
83003        extern "C" fn ffi_callback<T: FnMut(crate::q_abstract_texture::CubeMapFace) + 'static>(
83004            data: *mut ::std::ffi::c_void,
83005            arg0: crate::q_abstract_texture::CubeMapFace,
83006        ) {
83007            unsafe { (*(data as *mut T))(arg0) }
83008        }
83009        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83010        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_set(self as *const crate::SlotOfCubeMapFace as *mut crate::SlotOfCubeMapFace, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83011    }
83012
83013    /// Calls the slot directly, invoking the assigned handler (if any).
83014    #[inline(always)]
83015    pub unsafe fn slot(&self, arg0: crate::q_abstract_texture::CubeMapFace) {
83016        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_slot_(self as *const crate::SlotOfCubeMapFace as *mut crate::SlotOfCubeMapFace, arg0)
83017    }
83018
83019    #[inline(always)]
83020    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
83021        let ffi_result = {
83022            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_staticMetaObject()
83023        };
83024        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83025            .expect("attempted to construct a null Ref")
83026    }
83027
83028    #[inline(always)]
83029    pub unsafe fn tr(
83030        s: *const ::std::os::raw::c_char,
83031        c: *const ::std::os::raw::c_char,
83032        n: ::std::os::raw::c_int,
83033    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83034        let ffi_result = {
83035            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_tr(s, c, n)
83036        };
83037        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83038    }
83039
83040    #[inline(always)]
83041    pub unsafe fn tr_utf8(
83042        s: *const ::std::os::raw::c_char,
83043        c: *const ::std::os::raw::c_char,
83044        n: ::std::os::raw::c_int,
83045    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83046        let ffi_result = {
83047            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_trUtf8(s, c, n)
83048        };
83049        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83050    }
83051}
83052
83053impl ::qt_core::AsReceiver for crate::SlotOfQShaderProgram {
83054    type Arguments = (*mut crate::QShaderProgram,);
83055    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
83056        unsafe {
83057            ::qt_core::Receiver::new(
83058                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
83059                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
83060                    b"1slot_(Qt3DRender::QShaderProgram *)\0",
83061                ),
83062            )
83063        }
83064    }
83065}
83066
83067/// Binds a Qt signal with arguments `*mut crate::QShaderProgram` to a Rust closure.
83068///
83069/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QShaderProgram*```</span>).
83070///
83071/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
83072///
83073/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
83074///
83075/// If `set()` was not called, slot invocation has no effect.
83076#[repr(C)]
83077pub struct SlotOfQShaderProgram {
83078    _unused: u8,
83079}
83080impl SlotOfQShaderProgram {
83081    #[inline(always)]
83082    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
83083        let ffi_result = {
83084            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_metaObject(self as *const crate::SlotOfQShaderProgram)
83085        };
83086        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83087    }
83088
83089    /// Creates a new object.
83090    #[inline(always)]
83091    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QShaderProgram>) + 'static>(
83092        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
83093        callback: T,
83094    ) -> ::qt_core::QBox<crate::SlotOfQShaderProgram> {
83095        let ffi_result = {
83096            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83097                unsafe {
83098                    let _ = Box::from_raw(data as *mut T);
83099                }
83100            }
83101            extern "C" fn ffi_callback<
83102                T: FnMut(::qt_core::QPtr<crate::QShaderProgram>) + 'static,
83103            >(
83104                data: *mut ::std::ffi::c_void,
83105                arg0: *mut crate::QShaderProgram,
83106            ) {
83107                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
83108            }
83109            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83110            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83111        };
83112        ::qt_core::QBox::from_raw(ffi_result)
83113    }
83114
83115    #[inline(always)]
83116    pub unsafe fn qt_metacall(
83117        &self,
83118        arg1: ::qt_core::q_meta_object::Call,
83119        arg2: ::std::os::raw::c_int,
83120        arg3: *mut *mut ::std::ffi::c_void,
83121    ) -> ::std::os::raw::c_int {
83122        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_qt_metacall(self as *const crate::SlotOfQShaderProgram as *mut crate::SlotOfQShaderProgram, arg1, arg2, arg3)
83123    }
83124
83125    #[inline(always)]
83126    pub unsafe fn qt_metacast(
83127        &self,
83128        arg1: *const ::std::os::raw::c_char,
83129    ) -> *mut ::std::ffi::c_void {
83130        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_qt_metacast(self as *const crate::SlotOfQShaderProgram as *mut crate::SlotOfQShaderProgram, arg1)
83131    }
83132
83133    /// Assigns `callback` as the signal handler.
83134    ///
83135    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
83136    #[inline(always)]
83137    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QShaderProgram>) + 'static>(
83138        &self,
83139        callback: T,
83140    ) {
83141        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83142            unsafe {
83143                let _ = Box::from_raw(data as *mut T);
83144            }
83145        }
83146        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QShaderProgram>) + 'static>(
83147            data: *mut ::std::ffi::c_void,
83148            arg0: *mut crate::QShaderProgram,
83149        ) {
83150            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
83151        }
83152        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83153        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_set(self as *const crate::SlotOfQShaderProgram as *mut crate::SlotOfQShaderProgram, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83154    }
83155
83156    /// Calls the slot directly, invoking the assigned handler (if any).
83157    #[inline(always)]
83158    pub unsafe fn slot(
83159        &self,
83160        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QShaderProgram>>,
83161    ) {
83162        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_slot_(self as *const crate::SlotOfQShaderProgram as *mut crate::SlotOfQShaderProgram, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QShaderProgram>>::cast_into(arg0).as_raw_ptr() as *mut crate::QShaderProgram)
83163    }
83164
83165    #[inline(always)]
83166    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
83167        let ffi_result = {
83168            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_staticMetaObject()
83169        };
83170        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83171            .expect("attempted to construct a null Ref")
83172    }
83173
83174    #[inline(always)]
83175    pub unsafe fn tr(
83176        s: *const ::std::os::raw::c_char,
83177        c: *const ::std::os::raw::c_char,
83178        n: ::std::os::raw::c_int,
83179    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83180        let ffi_result = {
83181            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_tr(s, c, n)
83182        };
83183        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83184    }
83185
83186    #[inline(always)]
83187    pub unsafe fn tr_utf8(
83188        s: *const ::std::os::raw::c_char,
83189        c: *const ::std::os::raw::c_char,
83190        n: ::std::os::raw::c_int,
83191    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83192        let ffi_result = {
83193            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_trUtf8(s, c, n)
83194        };
83195        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83196    }
83197}
83198
83199#[cfg_attr(
83200    feature = "ritual_rustdoc_nightly",
83201    doc(cfg(cpp_lib_version = "5.14.0"))
83202)]
83203#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83204
83205impl ::qt_core::AsReceiver for crate::SlotOfEnablement {
83206    type Arguments = (crate::q_subtree_enabler::Enablement,);
83207    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
83208        unsafe {
83209            ::qt_core::Receiver::new(
83210                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
83211                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
83212                    b"1slot_(Qt3DRender::QSubtreeEnabler::Enablement)\0",
83213                ),
83214            )
83215        }
83216    }
83217}
83218
83219/// Binds a Qt signal with arguments `crate::q_subtree_enabler::Enablement` to a Rust closure.
83220///
83221/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QSubtreeEnabler::Enablement```</span>).
83222///
83223/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
83224///
83225/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
83226///
83227/// If `set()` was not called, slot invocation has no effect.
83228#[repr(C)]
83229pub struct SlotOfEnablement {
83230    _unused: u8,
83231}
83232impl SlotOfEnablement {
83233    #[inline(always)]
83234    #[cfg_attr(
83235        feature = "ritual_rustdoc_nightly",
83236        doc(cfg(cpp_lib_version = "5.14.0"))
83237    )]
83238    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83239    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
83240        let ffi_result = {
83241            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_metaObject(self as *const crate::SlotOfEnablement)
83242        };
83243        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83244    }
83245
83246    /// Creates a new object.
83247    #[inline(always)]
83248    #[cfg_attr(
83249        feature = "ritual_rustdoc_nightly",
83250        doc(cfg(cpp_lib_version = "5.14.0"))
83251    )]
83252    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83253    pub unsafe fn new<T: FnMut(crate::q_subtree_enabler::Enablement) + 'static>(
83254        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
83255        callback: T,
83256    ) -> ::qt_core::QBox<crate::SlotOfEnablement> {
83257        let ffi_result = {
83258            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83259                unsafe {
83260                    let _ = Box::from_raw(data as *mut T);
83261                }
83262            }
83263            extern "C" fn ffi_callback<T: FnMut(crate::q_subtree_enabler::Enablement) + 'static>(
83264                data: *mut ::std::ffi::c_void,
83265                arg0: crate::q_subtree_enabler::Enablement,
83266            ) {
83267                unsafe { (*(data as *mut T))(arg0) }
83268            }
83269            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83270            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83271        };
83272        ::qt_core::QBox::from_raw(ffi_result)
83273    }
83274
83275    #[inline(always)]
83276    #[cfg_attr(
83277        feature = "ritual_rustdoc_nightly",
83278        doc(cfg(cpp_lib_version = "5.14.0"))
83279    )]
83280    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83281    pub unsafe fn qt_metacall(
83282        &self,
83283        arg1: ::qt_core::q_meta_object::Call,
83284        arg2: ::std::os::raw::c_int,
83285        arg3: *mut *mut ::std::ffi::c_void,
83286    ) -> ::std::os::raw::c_int {
83287        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_qt_metacall(self as *const crate::SlotOfEnablement as *mut crate::SlotOfEnablement, arg1, arg2, arg3)
83288    }
83289
83290    #[inline(always)]
83291    #[cfg_attr(
83292        feature = "ritual_rustdoc_nightly",
83293        doc(cfg(cpp_lib_version = "5.14.0"))
83294    )]
83295    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83296    pub unsafe fn qt_metacast(
83297        &self,
83298        arg1: *const ::std::os::raw::c_char,
83299    ) -> *mut ::std::ffi::c_void {
83300        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_qt_metacast(self as *const crate::SlotOfEnablement as *mut crate::SlotOfEnablement, arg1)
83301    }
83302
83303    /// Assigns `callback` as the signal handler.
83304    ///
83305    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
83306    #[inline(always)]
83307    #[cfg_attr(
83308        feature = "ritual_rustdoc_nightly",
83309        doc(cfg(cpp_lib_version = "5.14.0"))
83310    )]
83311    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83312    pub unsafe fn set<T: FnMut(crate::q_subtree_enabler::Enablement) + 'static>(
83313        &self,
83314        callback: T,
83315    ) {
83316        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83317            unsafe {
83318                let _ = Box::from_raw(data as *mut T);
83319            }
83320        }
83321        extern "C" fn ffi_callback<T: FnMut(crate::q_subtree_enabler::Enablement) + 'static>(
83322            data: *mut ::std::ffi::c_void,
83323            arg0: crate::q_subtree_enabler::Enablement,
83324        ) {
83325            unsafe { (*(data as *mut T))(arg0) }
83326        }
83327        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83328        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_set(self as *const crate::SlotOfEnablement as *mut crate::SlotOfEnablement, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83329    }
83330
83331    /// Calls the slot directly, invoking the assigned handler (if any).
83332    #[inline(always)]
83333    #[cfg_attr(
83334        feature = "ritual_rustdoc_nightly",
83335        doc(cfg(cpp_lib_version = "5.14.0"))
83336    )]
83337    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83338    pub unsafe fn slot(&self, arg0: crate::q_subtree_enabler::Enablement) {
83339        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_slot_(self as *const crate::SlotOfEnablement as *mut crate::SlotOfEnablement, arg0)
83340    }
83341
83342    #[inline(always)]
83343    #[cfg_attr(
83344        feature = "ritual_rustdoc_nightly",
83345        doc(cfg(cpp_lib_version = "5.14.0"))
83346    )]
83347    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83348    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
83349        let ffi_result = {
83350            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_staticMetaObject()
83351        };
83352        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83353            .expect("attempted to construct a null Ref")
83354    }
83355
83356    #[inline(always)]
83357    #[cfg_attr(
83358        feature = "ritual_rustdoc_nightly",
83359        doc(cfg(cpp_lib_version = "5.14.0"))
83360    )]
83361    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83362    pub unsafe fn tr(
83363        s: *const ::std::os::raw::c_char,
83364        c: *const ::std::os::raw::c_char,
83365        n: ::std::os::raw::c_int,
83366    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83367        let ffi_result = {
83368            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_tr(s, c, n)
83369        };
83370        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83371    }
83372
83373    #[inline(always)]
83374    #[cfg_attr(
83375        feature = "ritual_rustdoc_nightly",
83376        doc(cfg(cpp_lib_version = "5.14.0"))
83377    )]
83378    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
83379    pub unsafe fn tr_utf8(
83380        s: *const ::std::os::raw::c_char,
83381        c: *const ::std::os::raw::c_char,
83382        n: ::std::os::raw::c_int,
83383    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83384        let ffi_result = {
83385            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_trUtf8(s, c, n)
83386        };
83387        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83388    }
83389}
83390
83391impl ::qt_core::AsReceiver for crate::SlotOfQColor {
83392    type Arguments = (*const ::qt_gui::QColor,);
83393    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
83394        unsafe {
83395            ::qt_core::Receiver::new(
83396                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
83397                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(QColor const &)\0"),
83398            )
83399        }
83400    }
83401}
83402
83403/// Binds a Qt signal with arguments `*const ::qt_gui::QColor` to a Rust closure.
83404///
83405/// Corresponding C++ argument types: (<span style='color: green;'>```const QColor&```</span>).
83406///
83407/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
83408///
83409/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
83410///
83411/// If `set()` was not called, slot invocation has no effect.
83412#[repr(C)]
83413pub struct SlotOfQColor {
83414    _unused: u8,
83415}
83416impl SlotOfQColor {
83417    #[inline(always)]
83418    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
83419        let ffi_result = {
83420            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_metaObject(self as *const crate::SlotOfQColor)
83421        };
83422        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83423    }
83424
83425    /// Creates a new object.
83426    #[inline(always)]
83427    pub unsafe fn new<T: FnMut(::cpp_core::Ref<::qt_gui::QColor>) + 'static>(
83428        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
83429        callback: T,
83430    ) -> ::qt_core::QBox<crate::SlotOfQColor> {
83431        let ffi_result = {
83432            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83433                unsafe {
83434                    let _ = Box::from_raw(data as *mut T);
83435                }
83436            }
83437            extern "C" fn ffi_callback<T: FnMut(::cpp_core::Ref<::qt_gui::QColor>) + 'static>(
83438                data: *mut ::std::ffi::c_void,
83439                arg0: *const ::qt_gui::QColor,
83440            ) {
83441                unsafe {
83442                    (*(data as *mut T))(
83443                        ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_gui::QColor)
83444                            .expect("attempted to construct a null Ref"),
83445                    )
83446                }
83447            }
83448            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83449            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83450        };
83451        ::qt_core::QBox::from_raw(ffi_result)
83452    }
83453
83454    #[inline(always)]
83455    pub unsafe fn qt_metacall(
83456        &self,
83457        arg1: ::qt_core::q_meta_object::Call,
83458        arg2: ::std::os::raw::c_int,
83459        arg3: *mut *mut ::std::ffi::c_void,
83460    ) -> ::std::os::raw::c_int {
83461        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_qt_metacall(self as *const crate::SlotOfQColor as *mut crate::SlotOfQColor, arg1, arg2, arg3)
83462    }
83463
83464    #[inline(always)]
83465    pub unsafe fn qt_metacast(
83466        &self,
83467        arg1: *const ::std::os::raw::c_char,
83468    ) -> *mut ::std::ffi::c_void {
83469        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_qt_metacast(self as *const crate::SlotOfQColor as *mut crate::SlotOfQColor, arg1)
83470    }
83471
83472    /// Assigns `callback` as the signal handler.
83473    ///
83474    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
83475    #[inline(always)]
83476    pub unsafe fn set<T: FnMut(::cpp_core::Ref<::qt_gui::QColor>) + 'static>(&self, callback: T) {
83477        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83478            unsafe {
83479                let _ = Box::from_raw(data as *mut T);
83480            }
83481        }
83482        extern "C" fn ffi_callback<T: FnMut(::cpp_core::Ref<::qt_gui::QColor>) + 'static>(
83483            data: *mut ::std::ffi::c_void,
83484            arg0: *const ::qt_gui::QColor,
83485        ) {
83486            unsafe {
83487                (*(data as *mut T))(
83488                    ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_gui::QColor)
83489                        .expect("attempted to construct a null Ref"),
83490                )
83491            }
83492        }
83493        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83494        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_set(
83495            self as *const crate::SlotOfQColor as *mut crate::SlotOfQColor,
83496            Some(ffi_callback::<T>),
83497            Some(deleter::<T>),
83498            data,
83499        )
83500    }
83501
83502    /// Calls the slot directly, invoking the assigned handler (if any).
83503    #[inline(always)]
83504    pub unsafe fn slot(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_gui::QColor>>) {
83505        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_slot_(
83506            self as *const crate::SlotOfQColor as *mut crate::SlotOfQColor,
83507            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_gui::QColor>>::cast_into(arg0).as_raw_ptr(),
83508        )
83509    }
83510
83511    #[inline(always)]
83512    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
83513        let ffi_result = {
83514            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_staticMetaObject()
83515        };
83516        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83517            .expect("attempted to construct a null Ref")
83518    }
83519
83520    #[inline(always)]
83521    pub unsafe fn tr(
83522        s: *const ::std::os::raw::c_char,
83523        c: *const ::std::os::raw::c_char,
83524        n: ::std::os::raw::c_int,
83525    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83526        let ffi_result = {
83527            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_tr(
83528                s, c, n,
83529            )
83530        };
83531        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83532    }
83533
83534    #[inline(always)]
83535    pub unsafe fn tr_utf8(
83536        s: *const ::std::os::raw::c_char,
83537        c: *const ::std::os::raw::c_char,
83538        n: ::std::os::raw::c_int,
83539    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83540        let ffi_result = {
83541            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_trUtf8(s, c, n)
83542        };
83543        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83544    }
83545}
83546
83547impl ::qt_core::AsReceiver for crate::SlotOfQRenderTargetOutput {
83548    type Arguments = (*mut crate::QRenderTargetOutput,);
83549    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
83550        unsafe {
83551            ::qt_core::Receiver::new(
83552                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
83553                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
83554                    b"1slot_(Qt3DRender::QRenderTargetOutput *)\0",
83555                ),
83556            )
83557        }
83558    }
83559}
83560
83561/// Binds a Qt signal with arguments `*mut crate::QRenderTargetOutput` to a Rust closure.
83562///
83563/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRenderTargetOutput*```</span>).
83564///
83565/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
83566///
83567/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
83568///
83569/// If `set()` was not called, slot invocation has no effect.
83570#[repr(C)]
83571pub struct SlotOfQRenderTargetOutput {
83572    _unused: u8,
83573}
83574impl SlotOfQRenderTargetOutput {
83575    #[inline(always)]
83576    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
83577        let ffi_result = {
83578            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_metaObject(self as *const crate::SlotOfQRenderTargetOutput)
83579        };
83580        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83581    }
83582
83583    /// Creates a new object.
83584    #[inline(always)]
83585    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QRenderTargetOutput>) + 'static>(
83586        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
83587        callback: T,
83588    ) -> ::qt_core::QBox<crate::SlotOfQRenderTargetOutput> {
83589        let ffi_result = {
83590            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83591                unsafe {
83592                    let _ = Box::from_raw(data as *mut T);
83593                }
83594            }
83595            extern "C" fn ffi_callback<
83596                T: FnMut(::qt_core::QPtr<crate::QRenderTargetOutput>) + 'static,
83597            >(
83598                data: *mut ::std::ffi::c_void,
83599                arg0: *mut crate::QRenderTargetOutput,
83600            ) {
83601                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
83602            }
83603            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83604            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83605        };
83606        ::qt_core::QBox::from_raw(ffi_result)
83607    }
83608
83609    #[inline(always)]
83610    pub unsafe fn qt_metacall(
83611        &self,
83612        arg1: ::qt_core::q_meta_object::Call,
83613        arg2: ::std::os::raw::c_int,
83614        arg3: *mut *mut ::std::ffi::c_void,
83615    ) -> ::std::os::raw::c_int {
83616        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_qt_metacall(self as *const crate::SlotOfQRenderTargetOutput as *mut crate::SlotOfQRenderTargetOutput, arg1, arg2, arg3)
83617    }
83618
83619    #[inline(always)]
83620    pub unsafe fn qt_metacast(
83621        &self,
83622        arg1: *const ::std::os::raw::c_char,
83623    ) -> *mut ::std::ffi::c_void {
83624        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_qt_metacast(self as *const crate::SlotOfQRenderTargetOutput as *mut crate::SlotOfQRenderTargetOutput, arg1)
83625    }
83626
83627    /// Assigns `callback` as the signal handler.
83628    ///
83629    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
83630    #[inline(always)]
83631    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QRenderTargetOutput>) + 'static>(
83632        &self,
83633        callback: T,
83634    ) {
83635        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83636            unsafe {
83637                let _ = Box::from_raw(data as *mut T);
83638            }
83639        }
83640        extern "C" fn ffi_callback<
83641            T: FnMut(::qt_core::QPtr<crate::QRenderTargetOutput>) + 'static,
83642        >(
83643            data: *mut ::std::ffi::c_void,
83644            arg0: *mut crate::QRenderTargetOutput,
83645        ) {
83646            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
83647        }
83648        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83649        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_set(self as *const crate::SlotOfQRenderTargetOutput as *mut crate::SlotOfQRenderTargetOutput, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83650    }
83651
83652    /// Calls the slot directly, invoking the assigned handler (if any).
83653    #[inline(always)]
83654    pub unsafe fn slot(
83655        &self,
83656        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QRenderTargetOutput>>,
83657    ) {
83658        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_slot_(self as *const crate::SlotOfQRenderTargetOutput as *mut crate::SlotOfQRenderTargetOutput, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QRenderTargetOutput>>::cast_into(arg0).as_raw_ptr() as *mut crate::QRenderTargetOutput)
83659    }
83660
83661    #[inline(always)]
83662    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
83663        let ffi_result = {
83664            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_staticMetaObject()
83665        };
83666        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83667            .expect("attempted to construct a null Ref")
83668    }
83669
83670    #[inline(always)]
83671    pub unsafe fn tr(
83672        s: *const ::std::os::raw::c_char,
83673        c: *const ::std::os::raw::c_char,
83674        n: ::std::os::raw::c_int,
83675    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83676        let ffi_result = {
83677            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_tr(s, c, n)
83678        };
83679        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83680    }
83681
83682    #[inline(always)]
83683    pub unsafe fn tr_utf8(
83684        s: *const ::std::os::raw::c_char,
83685        c: *const ::std::os::raw::c_char,
83686        n: ::std::os::raw::c_int,
83687    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83688        let ffi_result = {
83689            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_trUtf8(s, c, n)
83690        };
83691        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83692    }
83693}
83694
83695impl ::qt_core::AsReceiver for crate::SlotOfRenderPolicy {
83696    type Arguments = (crate::q_render_settings::RenderPolicy,);
83697    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
83698        unsafe {
83699            ::qt_core::Receiver::new(
83700                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
83701                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
83702                    b"1slot_(Qt3DRender::QRenderSettings::RenderPolicy)\0",
83703                ),
83704            )
83705        }
83706    }
83707}
83708
83709/// Binds a Qt signal with arguments `crate::q_render_settings::RenderPolicy` to a Rust closure.
83710///
83711/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRenderSettings::RenderPolicy```</span>).
83712///
83713/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
83714///
83715/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
83716///
83717/// If `set()` was not called, slot invocation has no effect.
83718#[repr(C)]
83719pub struct SlotOfRenderPolicy {
83720    _unused: u8,
83721}
83722impl SlotOfRenderPolicy {
83723    #[inline(always)]
83724    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
83725        let ffi_result = {
83726            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_metaObject(self as *const crate::SlotOfRenderPolicy)
83727        };
83728        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83729    }
83730
83731    /// Creates a new object.
83732    #[inline(always)]
83733    pub unsafe fn new<T: FnMut(crate::q_render_settings::RenderPolicy) + 'static>(
83734        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
83735        callback: T,
83736    ) -> ::qt_core::QBox<crate::SlotOfRenderPolicy> {
83737        let ffi_result = {
83738            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83739                unsafe {
83740                    let _ = Box::from_raw(data as *mut T);
83741                }
83742            }
83743            extern "C" fn ffi_callback<
83744                T: FnMut(crate::q_render_settings::RenderPolicy) + 'static,
83745            >(
83746                data: *mut ::std::ffi::c_void,
83747                arg0: crate::q_render_settings::RenderPolicy,
83748            ) {
83749                unsafe { (*(data as *mut T))(arg0) }
83750            }
83751            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83752            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83753        };
83754        ::qt_core::QBox::from_raw(ffi_result)
83755    }
83756
83757    #[inline(always)]
83758    pub unsafe fn qt_metacall(
83759        &self,
83760        arg1: ::qt_core::q_meta_object::Call,
83761        arg2: ::std::os::raw::c_int,
83762        arg3: *mut *mut ::std::ffi::c_void,
83763    ) -> ::std::os::raw::c_int {
83764        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_qt_metacall(self as *const crate::SlotOfRenderPolicy as *mut crate::SlotOfRenderPolicy, arg1, arg2, arg3)
83765    }
83766
83767    #[inline(always)]
83768    pub unsafe fn qt_metacast(
83769        &self,
83770        arg1: *const ::std::os::raw::c_char,
83771    ) -> *mut ::std::ffi::c_void {
83772        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_qt_metacast(self as *const crate::SlotOfRenderPolicy as *mut crate::SlotOfRenderPolicy, arg1)
83773    }
83774
83775    /// Assigns `callback` as the signal handler.
83776    ///
83777    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
83778    #[inline(always)]
83779    pub unsafe fn set<T: FnMut(crate::q_render_settings::RenderPolicy) + 'static>(
83780        &self,
83781        callback: T,
83782    ) {
83783        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83784            unsafe {
83785                let _ = Box::from_raw(data as *mut T);
83786            }
83787        }
83788        extern "C" fn ffi_callback<T: FnMut(crate::q_render_settings::RenderPolicy) + 'static>(
83789            data: *mut ::std::ffi::c_void,
83790            arg0: crate::q_render_settings::RenderPolicy,
83791        ) {
83792            unsafe { (*(data as *mut T))(arg0) }
83793        }
83794        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83795        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_set(self as *const crate::SlotOfRenderPolicy as *mut crate::SlotOfRenderPolicy, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83796    }
83797
83798    /// Calls the slot directly, invoking the assigned handler (if any).
83799    #[inline(always)]
83800    pub unsafe fn slot(&self, arg0: crate::q_render_settings::RenderPolicy) {
83801        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_slot_(self as *const crate::SlotOfRenderPolicy as *mut crate::SlotOfRenderPolicy, arg0)
83802    }
83803
83804    #[inline(always)]
83805    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
83806        let ffi_result = {
83807            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_staticMetaObject()
83808        };
83809        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83810            .expect("attempted to construct a null Ref")
83811    }
83812
83813    #[inline(always)]
83814    pub unsafe fn tr(
83815        s: *const ::std::os::raw::c_char,
83816        c: *const ::std::os::raw::c_char,
83817        n: ::std::os::raw::c_int,
83818    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83819        let ffi_result = {
83820            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_tr(s, c, n)
83821        };
83822        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83823    }
83824
83825    #[inline(always)]
83826    pub unsafe fn tr_utf8(
83827        s: *const ::std::os::raw::c_char,
83828        c: *const ::std::os::raw::c_char,
83829        n: ::std::os::raw::c_int,
83830    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83831        let ffi_result = {
83832            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_trUtf8(s, c, n)
83833        };
83834        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83835    }
83836}
83837
83838impl ::qt_core::AsReceiver for crate::SlotOfComparisonFunction {
83839    type Arguments = (crate::q_abstract_texture::ComparisonFunction,);
83840    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
83841        unsafe {
83842            ::qt_core::Receiver::new(
83843                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
83844                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
83845                    b"1slot_(Qt3DRender::QAbstractTexture::ComparisonFunction)\0",
83846                ),
83847            )
83848        }
83849    }
83850}
83851
83852/// Binds a Qt signal with arguments `crate::q_abstract_texture::ComparisonFunction` to a Rust closure.
83853///
83854/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::ComparisonFunction```</span>).
83855///
83856/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
83857///
83858/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
83859///
83860/// If `set()` was not called, slot invocation has no effect.
83861#[repr(C)]
83862pub struct SlotOfComparisonFunction {
83863    _unused: u8,
83864}
83865impl SlotOfComparisonFunction {
83866    #[inline(always)]
83867    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
83868        let ffi_result = {
83869            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_metaObject(self as *const crate::SlotOfComparisonFunction)
83870        };
83871        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83872    }
83873
83874    /// Creates a new object.
83875    #[inline(always)]
83876    pub unsafe fn new<T: FnMut(crate::q_abstract_texture::ComparisonFunction) + 'static>(
83877        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
83878        callback: T,
83879    ) -> ::qt_core::QBox<crate::SlotOfComparisonFunction> {
83880        let ffi_result = {
83881            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83882                unsafe {
83883                    let _ = Box::from_raw(data as *mut T);
83884                }
83885            }
83886            extern "C" fn ffi_callback<
83887                T: FnMut(crate::q_abstract_texture::ComparisonFunction) + 'static,
83888            >(
83889                data: *mut ::std::ffi::c_void,
83890                arg0: crate::q_abstract_texture::ComparisonFunction,
83891            ) {
83892                unsafe { (*(data as *mut T))(arg0) }
83893            }
83894            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83895            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83896        };
83897        ::qt_core::QBox::from_raw(ffi_result)
83898    }
83899
83900    #[inline(always)]
83901    pub unsafe fn qt_metacall(
83902        &self,
83903        arg1: ::qt_core::q_meta_object::Call,
83904        arg2: ::std::os::raw::c_int,
83905        arg3: *mut *mut ::std::ffi::c_void,
83906    ) -> ::std::os::raw::c_int {
83907        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_qt_metacall(self as *const crate::SlotOfComparisonFunction as *mut crate::SlotOfComparisonFunction, arg1, arg2, arg3)
83908    }
83909
83910    #[inline(always)]
83911    pub unsafe fn qt_metacast(
83912        &self,
83913        arg1: *const ::std::os::raw::c_char,
83914    ) -> *mut ::std::ffi::c_void {
83915        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_qt_metacast(self as *const crate::SlotOfComparisonFunction as *mut crate::SlotOfComparisonFunction, arg1)
83916    }
83917
83918    /// Assigns `callback` as the signal handler.
83919    ///
83920    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
83921    #[inline(always)]
83922    pub unsafe fn set<T: FnMut(crate::q_abstract_texture::ComparisonFunction) + 'static>(
83923        &self,
83924        callback: T,
83925    ) {
83926        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
83927            unsafe {
83928                let _ = Box::from_raw(data as *mut T);
83929            }
83930        }
83931        extern "C" fn ffi_callback<
83932            T: FnMut(crate::q_abstract_texture::ComparisonFunction) + 'static,
83933        >(
83934            data: *mut ::std::ffi::c_void,
83935            arg0: crate::q_abstract_texture::ComparisonFunction,
83936        ) {
83937            unsafe { (*(data as *mut T))(arg0) }
83938        }
83939        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
83940        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_set(self as *const crate::SlotOfComparisonFunction as *mut crate::SlotOfComparisonFunction, Some(ffi_callback::<T>), Some(deleter::<T>), data)
83941    }
83942
83943    /// Calls the slot directly, invoking the assigned handler (if any).
83944    #[inline(always)]
83945    pub unsafe fn slot(&self, arg0: crate::q_abstract_texture::ComparisonFunction) {
83946        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_slot_(self as *const crate::SlotOfComparisonFunction as *mut crate::SlotOfComparisonFunction, arg0)
83947    }
83948
83949    #[inline(always)]
83950    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
83951        let ffi_result = {
83952            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_staticMetaObject()
83953        };
83954        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
83955            .expect("attempted to construct a null Ref")
83956    }
83957
83958    #[inline(always)]
83959    pub unsafe fn tr(
83960        s: *const ::std::os::raw::c_char,
83961        c: *const ::std::os::raw::c_char,
83962        n: ::std::os::raw::c_int,
83963    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83964        let ffi_result = {
83965            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_tr(s, c, n)
83966        };
83967        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83968    }
83969
83970    #[inline(always)]
83971    pub unsafe fn tr_utf8(
83972        s: *const ::std::os::raw::c_char,
83973        c: *const ::std::os::raw::c_char,
83974        n: ::std::os::raw::c_int,
83975    ) -> ::cpp_core::CppBox<::qt_core::QString> {
83976        let ffi_result = {
83977            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_trUtf8(s, c, n)
83978        };
83979        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
83980    }
83981}
83982
83983impl ::qt_core::AsReceiver for crate::SlotOfBlendFunction {
83984    type Arguments = (crate::q_blend_equation::BlendFunction,);
83985    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
83986        unsafe {
83987            ::qt_core::Receiver::new(
83988                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
83989                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
83990                    b"1slot_(Qt3DRender::QBlendEquation::BlendFunction)\0",
83991                ),
83992            )
83993        }
83994    }
83995}
83996
83997/// Binds a Qt signal with arguments `crate::q_blend_equation::BlendFunction` to a Rust closure.
83998///
83999/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBlendEquation::BlendFunction```</span>).
84000///
84001/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
84002///
84003/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
84004///
84005/// If `set()` was not called, slot invocation has no effect.
84006#[repr(C)]
84007pub struct SlotOfBlendFunction {
84008    _unused: u8,
84009}
84010impl SlotOfBlendFunction {
84011    #[inline(always)]
84012    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
84013        let ffi_result = {
84014            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_metaObject(self as *const crate::SlotOfBlendFunction)
84015        };
84016        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84017    }
84018
84019    /// Creates a new object.
84020    #[inline(always)]
84021    pub unsafe fn new<T: FnMut(crate::q_blend_equation::BlendFunction) + 'static>(
84022        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
84023        callback: T,
84024    ) -> ::qt_core::QBox<crate::SlotOfBlendFunction> {
84025        let ffi_result = {
84026            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84027                unsafe {
84028                    let _ = Box::from_raw(data as *mut T);
84029                }
84030            }
84031            extern "C" fn ffi_callback<
84032                T: FnMut(crate::q_blend_equation::BlendFunction) + 'static,
84033            >(
84034                data: *mut ::std::ffi::c_void,
84035                arg0: crate::q_blend_equation::BlendFunction,
84036            ) {
84037                unsafe { (*(data as *mut T))(arg0) }
84038            }
84039            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84040            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84041        };
84042        ::qt_core::QBox::from_raw(ffi_result)
84043    }
84044
84045    #[inline(always)]
84046    pub unsafe fn qt_metacall(
84047        &self,
84048        arg1: ::qt_core::q_meta_object::Call,
84049        arg2: ::std::os::raw::c_int,
84050        arg3: *mut *mut ::std::ffi::c_void,
84051    ) -> ::std::os::raw::c_int {
84052        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_qt_metacall(self as *const crate::SlotOfBlendFunction as *mut crate::SlotOfBlendFunction, arg1, arg2, arg3)
84053    }
84054
84055    #[inline(always)]
84056    pub unsafe fn qt_metacast(
84057        &self,
84058        arg1: *const ::std::os::raw::c_char,
84059    ) -> *mut ::std::ffi::c_void {
84060        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_qt_metacast(self as *const crate::SlotOfBlendFunction as *mut crate::SlotOfBlendFunction, arg1)
84061    }
84062
84063    /// Assigns `callback` as the signal handler.
84064    ///
84065    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
84066    #[inline(always)]
84067    pub unsafe fn set<T: FnMut(crate::q_blend_equation::BlendFunction) + 'static>(
84068        &self,
84069        callback: T,
84070    ) {
84071        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84072            unsafe {
84073                let _ = Box::from_raw(data as *mut T);
84074            }
84075        }
84076        extern "C" fn ffi_callback<T: FnMut(crate::q_blend_equation::BlendFunction) + 'static>(
84077            data: *mut ::std::ffi::c_void,
84078            arg0: crate::q_blend_equation::BlendFunction,
84079        ) {
84080            unsafe { (*(data as *mut T))(arg0) }
84081        }
84082        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84083        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_set(self as *const crate::SlotOfBlendFunction as *mut crate::SlotOfBlendFunction, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84084    }
84085
84086    /// Calls the slot directly, invoking the assigned handler (if any).
84087    #[inline(always)]
84088    pub unsafe fn slot(&self, arg0: crate::q_blend_equation::BlendFunction) {
84089        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_slot_(self as *const crate::SlotOfBlendFunction as *mut crate::SlotOfBlendFunction, arg0)
84090    }
84091
84092    #[inline(always)]
84093    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
84094        let ffi_result = {
84095            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_staticMetaObject()
84096        };
84097        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84098            .expect("attempted to construct a null Ref")
84099    }
84100
84101    #[inline(always)]
84102    pub unsafe fn tr(
84103        s: *const ::std::os::raw::c_char,
84104        c: *const ::std::os::raw::c_char,
84105        n: ::std::os::raw::c_int,
84106    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84107        let ffi_result = {
84108            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_tr(s, c, n)
84109        };
84110        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84111    }
84112
84113    #[inline(always)]
84114    pub unsafe fn tr_utf8(
84115        s: *const ::std::os::raw::c_char,
84116        c: *const ::std::os::raw::c_char,
84117        n: ::std::os::raw::c_int,
84118    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84119        let ffi_result = {
84120            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_trUtf8(s, c, n)
84121        };
84122        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84123    }
84124}
84125
84126impl ::qt_core::AsReceiver for crate::SlotOfPickMethod {
84127    type Arguments = (crate::q_picking_settings::PickMethod,);
84128    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
84129        unsafe {
84130            ::qt_core::Receiver::new(
84131                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
84132                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
84133                    b"1slot_(Qt3DRender::QPickingSettings::PickMethod)\0",
84134                ),
84135            )
84136        }
84137    }
84138}
84139
84140/// Binds a Qt signal with arguments `crate::q_picking_settings::PickMethod` to a Rust closure.
84141///
84142/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPickingSettings::PickMethod```</span>).
84143///
84144/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
84145///
84146/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
84147///
84148/// If `set()` was not called, slot invocation has no effect.
84149#[repr(C)]
84150pub struct SlotOfPickMethod {
84151    _unused: u8,
84152}
84153impl SlotOfPickMethod {
84154    #[inline(always)]
84155    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
84156        let ffi_result = {
84157            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_metaObject(self as *const crate::SlotOfPickMethod)
84158        };
84159        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84160    }
84161
84162    /// Creates a new object.
84163    #[inline(always)]
84164    pub unsafe fn new<T: FnMut(crate::q_picking_settings::PickMethod) + 'static>(
84165        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
84166        callback: T,
84167    ) -> ::qt_core::QBox<crate::SlotOfPickMethod> {
84168        let ffi_result = {
84169            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84170                unsafe {
84171                    let _ = Box::from_raw(data as *mut T);
84172                }
84173            }
84174            extern "C" fn ffi_callback<
84175                T: FnMut(crate::q_picking_settings::PickMethod) + 'static,
84176            >(
84177                data: *mut ::std::ffi::c_void,
84178                arg0: crate::q_picking_settings::PickMethod,
84179            ) {
84180                unsafe { (*(data as *mut T))(arg0) }
84181            }
84182            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84183            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84184        };
84185        ::qt_core::QBox::from_raw(ffi_result)
84186    }
84187
84188    #[inline(always)]
84189    pub unsafe fn qt_metacall(
84190        &self,
84191        arg1: ::qt_core::q_meta_object::Call,
84192        arg2: ::std::os::raw::c_int,
84193        arg3: *mut *mut ::std::ffi::c_void,
84194    ) -> ::std::os::raw::c_int {
84195        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_qt_metacall(self as *const crate::SlotOfPickMethod as *mut crate::SlotOfPickMethod, arg1, arg2, arg3)
84196    }
84197
84198    #[inline(always)]
84199    pub unsafe fn qt_metacast(
84200        &self,
84201        arg1: *const ::std::os::raw::c_char,
84202    ) -> *mut ::std::ffi::c_void {
84203        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_qt_metacast(self as *const crate::SlotOfPickMethod as *mut crate::SlotOfPickMethod, arg1)
84204    }
84205
84206    /// Assigns `callback` as the signal handler.
84207    ///
84208    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
84209    #[inline(always)]
84210    pub unsafe fn set<T: FnMut(crate::q_picking_settings::PickMethod) + 'static>(
84211        &self,
84212        callback: T,
84213    ) {
84214        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84215            unsafe {
84216                let _ = Box::from_raw(data as *mut T);
84217            }
84218        }
84219        extern "C" fn ffi_callback<T: FnMut(crate::q_picking_settings::PickMethod) + 'static>(
84220            data: *mut ::std::ffi::c_void,
84221            arg0: crate::q_picking_settings::PickMethod,
84222        ) {
84223            unsafe { (*(data as *mut T))(arg0) }
84224        }
84225        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84226        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_set(self as *const crate::SlotOfPickMethod as *mut crate::SlotOfPickMethod, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84227    }
84228
84229    /// Calls the slot directly, invoking the assigned handler (if any).
84230    #[inline(always)]
84231    pub unsafe fn slot(&self, arg0: crate::q_picking_settings::PickMethod) {
84232        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_slot_(self as *const crate::SlotOfPickMethod as *mut crate::SlotOfPickMethod, arg0)
84233    }
84234
84235    #[inline(always)]
84236    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
84237        let ffi_result = {
84238            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_staticMetaObject()
84239        };
84240        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84241            .expect("attempted to construct a null Ref")
84242    }
84243
84244    #[inline(always)]
84245    pub unsafe fn tr(
84246        s: *const ::std::os::raw::c_char,
84247        c: *const ::std::os::raw::c_char,
84248        n: ::std::os::raw::c_int,
84249    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84250        let ffi_result = {
84251            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_tr(s, c, n)
84252        };
84253        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84254    }
84255
84256    #[inline(always)]
84257    pub unsafe fn tr_utf8(
84258        s: *const ::std::os::raw::c_char,
84259        c: *const ::std::os::raw::c_char,
84260        n: ::std::os::raw::c_int,
84261    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84262        let ffi_result = {
84263            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_trUtf8(s, c, n)
84264        };
84265        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84266    }
84267}
84268
84269impl ::qt_core::AsReceiver for crate::SlotOfPickResultMode {
84270    type Arguments = (crate::q_picking_settings::PickResultMode,);
84271    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
84272        unsafe {
84273            ::qt_core::Receiver::new(
84274                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
84275                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
84276                    b"1slot_(Qt3DRender::QPickingSettings::PickResultMode)\0",
84277                ),
84278            )
84279        }
84280    }
84281}
84282
84283/// Binds a Qt signal with arguments `crate::q_picking_settings::PickResultMode` to a Rust closure.
84284///
84285/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPickingSettings::PickResultMode```</span>).
84286///
84287/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
84288///
84289/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
84290///
84291/// If `set()` was not called, slot invocation has no effect.
84292#[repr(C)]
84293pub struct SlotOfPickResultMode {
84294    _unused: u8,
84295}
84296impl SlotOfPickResultMode {
84297    #[inline(always)]
84298    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
84299        let ffi_result = {
84300            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_metaObject(self as *const crate::SlotOfPickResultMode)
84301        };
84302        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84303    }
84304
84305    /// Creates a new object.
84306    #[inline(always)]
84307    pub unsafe fn new<T: FnMut(crate::q_picking_settings::PickResultMode) + 'static>(
84308        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
84309        callback: T,
84310    ) -> ::qt_core::QBox<crate::SlotOfPickResultMode> {
84311        let ffi_result = {
84312            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84313                unsafe {
84314                    let _ = Box::from_raw(data as *mut T);
84315                }
84316            }
84317            extern "C" fn ffi_callback<
84318                T: FnMut(crate::q_picking_settings::PickResultMode) + 'static,
84319            >(
84320                data: *mut ::std::ffi::c_void,
84321                arg0: crate::q_picking_settings::PickResultMode,
84322            ) {
84323                unsafe { (*(data as *mut T))(arg0) }
84324            }
84325            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84326            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84327        };
84328        ::qt_core::QBox::from_raw(ffi_result)
84329    }
84330
84331    #[inline(always)]
84332    pub unsafe fn qt_metacall(
84333        &self,
84334        arg1: ::qt_core::q_meta_object::Call,
84335        arg2: ::std::os::raw::c_int,
84336        arg3: *mut *mut ::std::ffi::c_void,
84337    ) -> ::std::os::raw::c_int {
84338        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_qt_metacall(self as *const crate::SlotOfPickResultMode as *mut crate::SlotOfPickResultMode, arg1, arg2, arg3)
84339    }
84340
84341    #[inline(always)]
84342    pub unsafe fn qt_metacast(
84343        &self,
84344        arg1: *const ::std::os::raw::c_char,
84345    ) -> *mut ::std::ffi::c_void {
84346        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_qt_metacast(self as *const crate::SlotOfPickResultMode as *mut crate::SlotOfPickResultMode, arg1)
84347    }
84348
84349    /// Assigns `callback` as the signal handler.
84350    ///
84351    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
84352    #[inline(always)]
84353    pub unsafe fn set<T: FnMut(crate::q_picking_settings::PickResultMode) + 'static>(
84354        &self,
84355        callback: T,
84356    ) {
84357        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84358            unsafe {
84359                let _ = Box::from_raw(data as *mut T);
84360            }
84361        }
84362        extern "C" fn ffi_callback<
84363            T: FnMut(crate::q_picking_settings::PickResultMode) + 'static,
84364        >(
84365            data: *mut ::std::ffi::c_void,
84366            arg0: crate::q_picking_settings::PickResultMode,
84367        ) {
84368            unsafe { (*(data as *mut T))(arg0) }
84369        }
84370        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84371        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_set(self as *const crate::SlotOfPickResultMode as *mut crate::SlotOfPickResultMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84372    }
84373
84374    /// Calls the slot directly, invoking the assigned handler (if any).
84375    #[inline(always)]
84376    pub unsafe fn slot(&self, arg0: crate::q_picking_settings::PickResultMode) {
84377        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_slot_(self as *const crate::SlotOfPickResultMode as *mut crate::SlotOfPickResultMode, arg0)
84378    }
84379
84380    #[inline(always)]
84381    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
84382        let ffi_result = {
84383            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_staticMetaObject()
84384        };
84385        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84386            .expect("attempted to construct a null Ref")
84387    }
84388
84389    #[inline(always)]
84390    pub unsafe fn tr(
84391        s: *const ::std::os::raw::c_char,
84392        c: *const ::std::os::raw::c_char,
84393        n: ::std::os::raw::c_int,
84394    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84395        let ffi_result = {
84396            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_tr(s, c, n)
84397        };
84398        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84399    }
84400
84401    #[inline(always)]
84402    pub unsafe fn tr_utf8(
84403        s: *const ::std::os::raw::c_char,
84404        c: *const ::std::os::raw::c_char,
84405        n: ::std::os::raw::c_int,
84406    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84407        let ffi_result = {
84408            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_trUtf8(s, c, n)
84409        };
84410        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84411    }
84412}
84413
84414impl ::qt_core::AsReceiver for crate::SlotOfQFrameGraphNode {
84415    type Arguments = (*mut crate::QFrameGraphNode,);
84416    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
84417        unsafe {
84418            ::qt_core::Receiver::new(
84419                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
84420                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
84421                    b"1slot_(Qt3DRender::QFrameGraphNode *)\0",
84422                ),
84423            )
84424        }
84425    }
84426}
84427
84428/// Binds a Qt signal with arguments `*mut crate::QFrameGraphNode` to a Rust closure.
84429///
84430/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QFrameGraphNode*```</span>).
84431///
84432/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
84433///
84434/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
84435///
84436/// If `set()` was not called, slot invocation has no effect.
84437#[repr(C)]
84438pub struct SlotOfQFrameGraphNode {
84439    _unused: u8,
84440}
84441impl SlotOfQFrameGraphNode {
84442    #[inline(always)]
84443    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
84444        let ffi_result = {
84445            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_metaObject(self as *const crate::SlotOfQFrameGraphNode)
84446        };
84447        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84448    }
84449
84450    /// Creates a new object.
84451    #[inline(always)]
84452    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QFrameGraphNode>) + 'static>(
84453        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
84454        callback: T,
84455    ) -> ::qt_core::QBox<crate::SlotOfQFrameGraphNode> {
84456        let ffi_result = {
84457            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84458                unsafe {
84459                    let _ = Box::from_raw(data as *mut T);
84460                }
84461            }
84462            extern "C" fn ffi_callback<
84463                T: FnMut(::qt_core::QPtr<crate::QFrameGraphNode>) + 'static,
84464            >(
84465                data: *mut ::std::ffi::c_void,
84466                arg0: *mut crate::QFrameGraphNode,
84467            ) {
84468                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
84469            }
84470            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84471            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84472        };
84473        ::qt_core::QBox::from_raw(ffi_result)
84474    }
84475
84476    #[inline(always)]
84477    pub unsafe fn qt_metacall(
84478        &self,
84479        arg1: ::qt_core::q_meta_object::Call,
84480        arg2: ::std::os::raw::c_int,
84481        arg3: *mut *mut ::std::ffi::c_void,
84482    ) -> ::std::os::raw::c_int {
84483        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_qt_metacall(self as *const crate::SlotOfQFrameGraphNode as *mut crate::SlotOfQFrameGraphNode, arg1, arg2, arg3)
84484    }
84485
84486    #[inline(always)]
84487    pub unsafe fn qt_metacast(
84488        &self,
84489        arg1: *const ::std::os::raw::c_char,
84490    ) -> *mut ::std::ffi::c_void {
84491        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_qt_metacast(self as *const crate::SlotOfQFrameGraphNode as *mut crate::SlotOfQFrameGraphNode, arg1)
84492    }
84493
84494    /// Assigns `callback` as the signal handler.
84495    ///
84496    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
84497    #[inline(always)]
84498    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QFrameGraphNode>) + 'static>(
84499        &self,
84500        callback: T,
84501    ) {
84502        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84503            unsafe {
84504                let _ = Box::from_raw(data as *mut T);
84505            }
84506        }
84507        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QFrameGraphNode>) + 'static>(
84508            data: *mut ::std::ffi::c_void,
84509            arg0: *mut crate::QFrameGraphNode,
84510        ) {
84511            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
84512        }
84513        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84514        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_set(self as *const crate::SlotOfQFrameGraphNode as *mut crate::SlotOfQFrameGraphNode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84515    }
84516
84517    /// Calls the slot directly, invoking the assigned handler (if any).
84518    #[inline(always)]
84519    pub unsafe fn slot(
84520        &self,
84521        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QFrameGraphNode>>,
84522    ) {
84523        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_slot_(self as *const crate::SlotOfQFrameGraphNode as *mut crate::SlotOfQFrameGraphNode, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QFrameGraphNode>>::cast_into(arg0).as_raw_ptr() as *mut crate::QFrameGraphNode)
84524    }
84525
84526    #[inline(always)]
84527    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
84528        let ffi_result = {
84529            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_staticMetaObject()
84530        };
84531        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84532            .expect("attempted to construct a null Ref")
84533    }
84534
84535    #[inline(always)]
84536    pub unsafe fn tr(
84537        s: *const ::std::os::raw::c_char,
84538        c: *const ::std::os::raw::c_char,
84539        n: ::std::os::raw::c_int,
84540    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84541        let ffi_result = {
84542            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_tr(s, c, n)
84543        };
84544        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84545    }
84546
84547    #[inline(always)]
84548    pub unsafe fn tr_utf8(
84549        s: *const ::std::os::raw::c_char,
84550        c: *const ::std::os::raw::c_char,
84551        n: ::std::os::raw::c_int,
84552    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84553        let ffi_result = {
84554            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_trUtf8(s, c, n)
84555        };
84556        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84557    }
84558}
84559
84560impl ::qt_core::AsReceiver for crate::SlotOfQVectorOfSortType {
84561    type Arguments = (*const crate::QVectorOfSortType,);
84562    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
84563        unsafe {
84564            ::qt_core::Receiver::new(
84565                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
84566                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
84567                    b"1slot_(QVector< Qt3DRender::QSortPolicy::SortType > const &)\0",
84568                ),
84569            )
84570        }
84571    }
84572}
84573
84574/// Binds a Qt signal with arguments `*const crate::QVectorOfSortType` to a Rust closure.
84575///
84576/// Corresponding C++ argument types: (<span style='color: green;'>```const QVector<Qt3DRender::QSortPolicy::SortType>&```</span>).
84577///
84578/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
84579///
84580/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
84581///
84582/// If `set()` was not called, slot invocation has no effect.
84583#[repr(C)]
84584pub struct SlotOfQVectorOfSortType {
84585    _unused: u8,
84586}
84587impl SlotOfQVectorOfSortType {
84588    #[inline(always)]
84589    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
84590        let ffi_result = {
84591            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_metaObject(self as *const crate::SlotOfQVectorOfSortType)
84592        };
84593        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84594    }
84595
84596    /// Creates a new object.
84597    #[inline(always)]
84598    pub unsafe fn new<T: FnMut(::cpp_core::Ref<crate::QVectorOfSortType>) + 'static>(
84599        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
84600        callback: T,
84601    ) -> ::qt_core::QBox<crate::SlotOfQVectorOfSortType> {
84602        let ffi_result = {
84603            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84604                unsafe {
84605                    let _ = Box::from_raw(data as *mut T);
84606                }
84607            }
84608            extern "C" fn ffi_callback<
84609                T: FnMut(::cpp_core::Ref<crate::QVectorOfSortType>) + 'static,
84610            >(
84611                data: *mut ::std::ffi::c_void,
84612                arg0: *const crate::QVectorOfSortType,
84613            ) {
84614                unsafe {
84615                    (*(data as *mut T))(
84616                        ::cpp_core::Ref::from_raw(arg0 as *mut crate::QVectorOfSortType)
84617                            .expect("attempted to construct a null Ref"),
84618                    )
84619                }
84620            }
84621            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84622            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84623        };
84624        ::qt_core::QBox::from_raw(ffi_result)
84625    }
84626
84627    #[inline(always)]
84628    pub unsafe fn qt_metacall(
84629        &self,
84630        arg1: ::qt_core::q_meta_object::Call,
84631        arg2: ::std::os::raw::c_int,
84632        arg3: *mut *mut ::std::ffi::c_void,
84633    ) -> ::std::os::raw::c_int {
84634        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_qt_metacall(self as *const crate::SlotOfQVectorOfSortType as *mut crate::SlotOfQVectorOfSortType, arg1, arg2, arg3)
84635    }
84636
84637    #[inline(always)]
84638    pub unsafe fn qt_metacast(
84639        &self,
84640        arg1: *const ::std::os::raw::c_char,
84641    ) -> *mut ::std::ffi::c_void {
84642        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_qt_metacast(self as *const crate::SlotOfQVectorOfSortType as *mut crate::SlotOfQVectorOfSortType, arg1)
84643    }
84644
84645    /// Assigns `callback` as the signal handler.
84646    ///
84647    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
84648    #[inline(always)]
84649    pub unsafe fn set<T: FnMut(::cpp_core::Ref<crate::QVectorOfSortType>) + 'static>(
84650        &self,
84651        callback: T,
84652    ) {
84653        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84654            unsafe {
84655                let _ = Box::from_raw(data as *mut T);
84656            }
84657        }
84658        extern "C" fn ffi_callback<
84659            T: FnMut(::cpp_core::Ref<crate::QVectorOfSortType>) + 'static,
84660        >(
84661            data: *mut ::std::ffi::c_void,
84662            arg0: *const crate::QVectorOfSortType,
84663        ) {
84664            unsafe {
84665                (*(data as *mut T))(
84666                    ::cpp_core::Ref::from_raw(arg0 as *mut crate::QVectorOfSortType)
84667                        .expect("attempted to construct a null Ref"),
84668                )
84669            }
84670        }
84671        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84672        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_set(self as *const crate::SlotOfQVectorOfSortType as *mut crate::SlotOfQVectorOfSortType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84673    }
84674
84675    /// Calls the slot directly, invoking the assigned handler (if any).
84676    #[inline(always)]
84677    pub unsafe fn slot(
84678        &self,
84679        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
84680    ) {
84681        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_slot_(self as *const crate::SlotOfQVectorOfSortType as *mut crate::SlotOfQVectorOfSortType, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(arg0).as_raw_ptr())
84682    }
84683
84684    #[inline(always)]
84685    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
84686        let ffi_result = {
84687            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_staticMetaObject()
84688        };
84689        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84690            .expect("attempted to construct a null Ref")
84691    }
84692
84693    #[inline(always)]
84694    pub unsafe fn tr(
84695        s: *const ::std::os::raw::c_char,
84696        c: *const ::std::os::raw::c_char,
84697        n: ::std::os::raw::c_int,
84698    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84699        let ffi_result = {
84700            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_tr(s, c, n)
84701        };
84702        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84703    }
84704
84705    #[inline(always)]
84706    pub unsafe fn tr_utf8(
84707        s: *const ::std::os::raw::c_char,
84708        c: *const ::std::os::raw::c_char,
84709        n: ::std::os::raw::c_int,
84710    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84711        let ffi_result = {
84712            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_trUtf8(s, c, n)
84713        };
84714        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84715    }
84716}
84717
84718impl ::qt_core::AsReceiver for crate::SlotOfQVectorOfInt {
84719    type Arguments = (*const ::qt_core::QVectorOfInt,);
84720    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
84721        unsafe {
84722            ::qt_core::Receiver::new(
84723                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
84724                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
84725                    b"1slot_(QVector< int > const &)\0",
84726                ),
84727            )
84728        }
84729    }
84730}
84731
84732/// Binds a Qt signal with arguments `*const ::qt_core::QVectorOfInt` to a Rust closure.
84733///
84734/// Corresponding C++ argument types: (<span style='color: green;'>```const QVector<int>&```</span>).
84735///
84736/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
84737///
84738/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
84739///
84740/// If `set()` was not called, slot invocation has no effect.
84741#[repr(C)]
84742pub struct SlotOfQVectorOfInt {
84743    _unused: u8,
84744}
84745impl SlotOfQVectorOfInt {
84746    #[inline(always)]
84747    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
84748        let ffi_result = {
84749            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_metaObject(self as *const crate::SlotOfQVectorOfInt)
84750        };
84751        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84752    }
84753
84754    /// Creates a new object.
84755    #[inline(always)]
84756    pub unsafe fn new<T: FnMut(::cpp_core::Ref<::qt_core::QVectorOfInt>) + 'static>(
84757        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
84758        callback: T,
84759    ) -> ::qt_core::QBox<crate::SlotOfQVectorOfInt> {
84760        let ffi_result = {
84761            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84762                unsafe {
84763                    let _ = Box::from_raw(data as *mut T);
84764                }
84765            }
84766            extern "C" fn ffi_callback<
84767                T: FnMut(::cpp_core::Ref<::qt_core::QVectorOfInt>) + 'static,
84768            >(
84769                data: *mut ::std::ffi::c_void,
84770                arg0: *const ::qt_core::QVectorOfInt,
84771            ) {
84772                unsafe {
84773                    (*(data as *mut T))(
84774                        ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QVectorOfInt)
84775                            .expect("attempted to construct a null Ref"),
84776                    )
84777                }
84778            }
84779            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84780            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84781        };
84782        ::qt_core::QBox::from_raw(ffi_result)
84783    }
84784
84785    #[inline(always)]
84786    pub unsafe fn qt_metacall(
84787        &self,
84788        arg1: ::qt_core::q_meta_object::Call,
84789        arg2: ::std::os::raw::c_int,
84790        arg3: *mut *mut ::std::ffi::c_void,
84791    ) -> ::std::os::raw::c_int {
84792        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_qt_metacall(self as *const crate::SlotOfQVectorOfInt as *mut crate::SlotOfQVectorOfInt, arg1, arg2, arg3)
84793    }
84794
84795    #[inline(always)]
84796    pub unsafe fn qt_metacast(
84797        &self,
84798        arg1: *const ::std::os::raw::c_char,
84799    ) -> *mut ::std::ffi::c_void {
84800        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_qt_metacast(self as *const crate::SlotOfQVectorOfInt as *mut crate::SlotOfQVectorOfInt, arg1)
84801    }
84802
84803    /// Assigns `callback` as the signal handler.
84804    ///
84805    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
84806    #[inline(always)]
84807    pub unsafe fn set<T: FnMut(::cpp_core::Ref<::qt_core::QVectorOfInt>) + 'static>(
84808        &self,
84809        callback: T,
84810    ) {
84811        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84812            unsafe {
84813                let _ = Box::from_raw(data as *mut T);
84814            }
84815        }
84816        extern "C" fn ffi_callback<T: FnMut(::cpp_core::Ref<::qt_core::QVectorOfInt>) + 'static>(
84817            data: *mut ::std::ffi::c_void,
84818            arg0: *const ::qt_core::QVectorOfInt,
84819        ) {
84820            unsafe {
84821                (*(data as *mut T))(
84822                    ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QVectorOfInt)
84823                        .expect("attempted to construct a null Ref"),
84824                )
84825            }
84826        }
84827        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84828        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_set(self as *const crate::SlotOfQVectorOfInt as *mut crate::SlotOfQVectorOfInt, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84829    }
84830
84831    /// Calls the slot directly, invoking the assigned handler (if any).
84832    #[inline(always)]
84833    pub unsafe fn slot(
84834        &self,
84835        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QVectorOfInt>>,
84836    ) {
84837        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_slot_(self as *const crate::SlotOfQVectorOfInt as *mut crate::SlotOfQVectorOfInt, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QVectorOfInt>>::cast_into(arg0).as_raw_ptr())
84838    }
84839
84840    #[inline(always)]
84841    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
84842        let ffi_result = {
84843            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_staticMetaObject()
84844        };
84845        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84846            .expect("attempted to construct a null Ref")
84847    }
84848
84849    #[inline(always)]
84850    pub unsafe fn tr(
84851        s: *const ::std::os::raw::c_char,
84852        c: *const ::std::os::raw::c_char,
84853        n: ::std::os::raw::c_int,
84854    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84855        let ffi_result = {
84856            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_tr(s, c, n)
84857        };
84858        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84859    }
84860
84861    #[inline(always)]
84862    pub unsafe fn tr_utf8(
84863        s: *const ::std::os::raw::c_char,
84864        c: *const ::std::os::raw::c_char,
84865        n: ::std::os::raw::c_int,
84866    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84867        let ffi_result = {
84868            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_trUtf8(s, c, n)
84869        };
84870        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84871    }
84872}
84873
84874impl ::qt_core::AsReceiver for crate::SlotOfStatus3 {
84875    type Arguments = (crate::q_scene_loader::Status,);
84876    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
84877        unsafe {
84878            ::qt_core::Receiver::new(
84879                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
84880                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
84881                    b"1slot_(Qt3DRender::QSceneLoader::Status)\0",
84882                ),
84883            )
84884        }
84885    }
84886}
84887
84888/// Binds a Qt signal with arguments `crate::q_scene_loader::Status` to a Rust closure.
84889///
84890/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QSceneLoader::Status```</span>).
84891///
84892/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
84893///
84894/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
84895///
84896/// If `set()` was not called, slot invocation has no effect.
84897#[repr(C)]
84898pub struct SlotOfStatus3 {
84899    _unused: u8,
84900}
84901impl SlotOfStatus3 {
84902    #[inline(always)]
84903    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
84904        let ffi_result = {
84905            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_metaObject(self as *const crate::SlotOfStatus3)
84906        };
84907        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84908    }
84909
84910    /// Creates a new object.
84911    #[inline(always)]
84912    pub unsafe fn new<T: FnMut(crate::q_scene_loader::Status) + 'static>(
84913        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
84914        callback: T,
84915    ) -> ::qt_core::QBox<crate::SlotOfStatus3> {
84916        let ffi_result = {
84917            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84918                unsafe {
84919                    let _ = Box::from_raw(data as *mut T);
84920                }
84921            }
84922            extern "C" fn ffi_callback<T: FnMut(crate::q_scene_loader::Status) + 'static>(
84923                data: *mut ::std::ffi::c_void,
84924                arg0: crate::q_scene_loader::Status,
84925            ) {
84926                unsafe { (*(data as *mut T))(arg0) }
84927            }
84928            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84929            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84930        };
84931        ::qt_core::QBox::from_raw(ffi_result)
84932    }
84933
84934    #[inline(always)]
84935    pub unsafe fn qt_metacall(
84936        &self,
84937        arg1: ::qt_core::q_meta_object::Call,
84938        arg2: ::std::os::raw::c_int,
84939        arg3: *mut *mut ::std::ffi::c_void,
84940    ) -> ::std::os::raw::c_int {
84941        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_qt_metacall(self as *const crate::SlotOfStatus3 as *mut crate::SlotOfStatus3, arg1, arg2, arg3)
84942    }
84943
84944    #[inline(always)]
84945    pub unsafe fn qt_metacast(
84946        &self,
84947        arg1: *const ::std::os::raw::c_char,
84948    ) -> *mut ::std::ffi::c_void {
84949        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_qt_metacast(self as *const crate::SlotOfStatus3 as *mut crate::SlotOfStatus3, arg1)
84950    }
84951
84952    /// Assigns `callback` as the signal handler.
84953    ///
84954    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
84955    #[inline(always)]
84956    pub unsafe fn set<T: FnMut(crate::q_scene_loader::Status) + 'static>(&self, callback: T) {
84957        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
84958            unsafe {
84959                let _ = Box::from_raw(data as *mut T);
84960            }
84961        }
84962        extern "C" fn ffi_callback<T: FnMut(crate::q_scene_loader::Status) + 'static>(
84963            data: *mut ::std::ffi::c_void,
84964            arg0: crate::q_scene_loader::Status,
84965        ) {
84966            unsafe { (*(data as *mut T))(arg0) }
84967        }
84968        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
84969        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_set(self as *const crate::SlotOfStatus3 as *mut crate::SlotOfStatus3, Some(ffi_callback::<T>), Some(deleter::<T>), data)
84970    }
84971
84972    /// Calls the slot directly, invoking the assigned handler (if any).
84973    #[inline(always)]
84974    pub unsafe fn slot(&self, arg0: crate::q_scene_loader::Status) {
84975        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_slot_(self as *const crate::SlotOfStatus3 as *mut crate::SlotOfStatus3, arg0)
84976    }
84977
84978    #[inline(always)]
84979    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
84980        let ffi_result = {
84981            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_staticMetaObject()
84982        };
84983        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
84984            .expect("attempted to construct a null Ref")
84985    }
84986
84987    #[inline(always)]
84988    pub unsafe fn tr(
84989        s: *const ::std::os::raw::c_char,
84990        c: *const ::std::os::raw::c_char,
84991        n: ::std::os::raw::c_int,
84992    ) -> ::cpp_core::CppBox<::qt_core::QString> {
84993        let ffi_result = {
84994            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_tr(s, c, n)
84995        };
84996        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
84997    }
84998
84999    #[inline(always)]
85000    pub unsafe fn tr_utf8(
85001        s: *const ::std::os::raw::c_char,
85002        c: *const ::std::os::raw::c_char,
85003        n: ::std::os::raw::c_int,
85004    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85005        let ffi_result = {
85006            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_trUtf8(s, c, n)
85007        };
85008        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85009    }
85010}
85011
85012#[cfg_attr(
85013    feature = "ritual_rustdoc_nightly",
85014    doc(cfg(cpp_lib_version = "5.14.0"))
85015)]
85016#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85017
85018impl ::qt_core::AsReceiver for crate::SlotOfImageFormat {
85019    type Arguments = (crate::q_shader_image::ImageFormat,);
85020    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
85021        unsafe {
85022            ::qt_core::Receiver::new(
85023                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
85024                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
85025                    b"1slot_(Qt3DRender::QShaderImage::ImageFormat)\0",
85026                ),
85027            )
85028        }
85029    }
85030}
85031
85032/// Binds a Qt signal with arguments `crate::q_shader_image::ImageFormat` to a Rust closure.
85033///
85034/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QShaderImage::ImageFormat```</span>).
85035///
85036/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
85037///
85038/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
85039///
85040/// If `set()` was not called, slot invocation has no effect.
85041#[repr(C)]
85042pub struct SlotOfImageFormat {
85043    _unused: u8,
85044}
85045impl SlotOfImageFormat {
85046    #[inline(always)]
85047    #[cfg_attr(
85048        feature = "ritual_rustdoc_nightly",
85049        doc(cfg(cpp_lib_version = "5.14.0"))
85050    )]
85051    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85052    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
85053        let ffi_result = {
85054            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_metaObject(self as *const crate::SlotOfImageFormat)
85055        };
85056        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85057    }
85058
85059    /// Creates a new object.
85060    #[inline(always)]
85061    #[cfg_attr(
85062        feature = "ritual_rustdoc_nightly",
85063        doc(cfg(cpp_lib_version = "5.14.0"))
85064    )]
85065    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85066    pub unsafe fn new<T: FnMut(crate::q_shader_image::ImageFormat) + 'static>(
85067        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
85068        callback: T,
85069    ) -> ::qt_core::QBox<crate::SlotOfImageFormat> {
85070        let ffi_result = {
85071            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85072                unsafe {
85073                    let _ = Box::from_raw(data as *mut T);
85074                }
85075            }
85076            extern "C" fn ffi_callback<T: FnMut(crate::q_shader_image::ImageFormat) + 'static>(
85077                data: *mut ::std::ffi::c_void,
85078                arg0: crate::q_shader_image::ImageFormat,
85079            ) {
85080                unsafe { (*(data as *mut T))(arg0) }
85081            }
85082            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85083            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85084        };
85085        ::qt_core::QBox::from_raw(ffi_result)
85086    }
85087
85088    #[inline(always)]
85089    #[cfg_attr(
85090        feature = "ritual_rustdoc_nightly",
85091        doc(cfg(cpp_lib_version = "5.14.0"))
85092    )]
85093    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85094    pub unsafe fn qt_metacall(
85095        &self,
85096        arg1: ::qt_core::q_meta_object::Call,
85097        arg2: ::std::os::raw::c_int,
85098        arg3: *mut *mut ::std::ffi::c_void,
85099    ) -> ::std::os::raw::c_int {
85100        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_qt_metacall(self as *const crate::SlotOfImageFormat as *mut crate::SlotOfImageFormat, arg1, arg2, arg3)
85101    }
85102
85103    #[inline(always)]
85104    #[cfg_attr(
85105        feature = "ritual_rustdoc_nightly",
85106        doc(cfg(cpp_lib_version = "5.14.0"))
85107    )]
85108    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85109    pub unsafe fn qt_metacast(
85110        &self,
85111        arg1: *const ::std::os::raw::c_char,
85112    ) -> *mut ::std::ffi::c_void {
85113        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_qt_metacast(self as *const crate::SlotOfImageFormat as *mut crate::SlotOfImageFormat, arg1)
85114    }
85115
85116    /// Assigns `callback` as the signal handler.
85117    ///
85118    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
85119    #[inline(always)]
85120    #[cfg_attr(
85121        feature = "ritual_rustdoc_nightly",
85122        doc(cfg(cpp_lib_version = "5.14.0"))
85123    )]
85124    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85125    pub unsafe fn set<T: FnMut(crate::q_shader_image::ImageFormat) + 'static>(&self, callback: T) {
85126        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85127            unsafe {
85128                let _ = Box::from_raw(data as *mut T);
85129            }
85130        }
85131        extern "C" fn ffi_callback<T: FnMut(crate::q_shader_image::ImageFormat) + 'static>(
85132            data: *mut ::std::ffi::c_void,
85133            arg0: crate::q_shader_image::ImageFormat,
85134        ) {
85135            unsafe { (*(data as *mut T))(arg0) }
85136        }
85137        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85138        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_set(self as *const crate::SlotOfImageFormat as *mut crate::SlotOfImageFormat, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85139    }
85140
85141    /// Calls the slot directly, invoking the assigned handler (if any).
85142    #[inline(always)]
85143    #[cfg_attr(
85144        feature = "ritual_rustdoc_nightly",
85145        doc(cfg(cpp_lib_version = "5.14.0"))
85146    )]
85147    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85148    pub unsafe fn slot(&self, arg0: crate::q_shader_image::ImageFormat) {
85149        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_slot_(self as *const crate::SlotOfImageFormat as *mut crate::SlotOfImageFormat, arg0)
85150    }
85151
85152    #[inline(always)]
85153    #[cfg_attr(
85154        feature = "ritual_rustdoc_nightly",
85155        doc(cfg(cpp_lib_version = "5.14.0"))
85156    )]
85157    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85158    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
85159        let ffi_result = {
85160            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_staticMetaObject()
85161        };
85162        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85163            .expect("attempted to construct a null Ref")
85164    }
85165
85166    #[inline(always)]
85167    #[cfg_attr(
85168        feature = "ritual_rustdoc_nightly",
85169        doc(cfg(cpp_lib_version = "5.14.0"))
85170    )]
85171    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85172    pub unsafe fn tr(
85173        s: *const ::std::os::raw::c_char,
85174        c: *const ::std::os::raw::c_char,
85175        n: ::std::os::raw::c_int,
85176    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85177        let ffi_result = {
85178            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_tr(s, c, n)
85179        };
85180        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85181    }
85182
85183    #[inline(always)]
85184    #[cfg_attr(
85185        feature = "ritual_rustdoc_nightly",
85186        doc(cfg(cpp_lib_version = "5.14.0"))
85187    )]
85188    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
85189    pub unsafe fn tr_utf8(
85190        s: *const ::std::os::raw::c_char,
85191        c: *const ::std::os::raw::c_char,
85192        n: ::std::os::raw::c_int,
85193    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85194        let ffi_result = {
85195            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_trUtf8(s, c, n)
85196        };
85197        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85198    }
85199}
85200
85201impl ::qt_core::AsReceiver for crate::SlotOfTextureFormat {
85202    type Arguments = (crate::q_abstract_texture::TextureFormat,);
85203    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
85204        unsafe {
85205            ::qt_core::Receiver::new(
85206                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
85207                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
85208                    b"1slot_(Qt3DRender::QAbstractTexture::TextureFormat)\0",
85209                ),
85210            )
85211        }
85212    }
85213}
85214
85215/// Binds a Qt signal with arguments `crate::q_abstract_texture::TextureFormat` to a Rust closure.
85216///
85217/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::TextureFormat```</span>).
85218///
85219/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
85220///
85221/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
85222///
85223/// If `set()` was not called, slot invocation has no effect.
85224#[repr(C)]
85225pub struct SlotOfTextureFormat {
85226    _unused: u8,
85227}
85228impl SlotOfTextureFormat {
85229    #[inline(always)]
85230    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
85231        let ffi_result = {
85232            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_metaObject(self as *const crate::SlotOfTextureFormat)
85233        };
85234        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85235    }
85236
85237    /// Creates a new object.
85238    #[inline(always)]
85239    pub unsafe fn new<T: FnMut(crate::q_abstract_texture::TextureFormat) + 'static>(
85240        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
85241        callback: T,
85242    ) -> ::qt_core::QBox<crate::SlotOfTextureFormat> {
85243        let ffi_result = {
85244            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85245                unsafe {
85246                    let _ = Box::from_raw(data as *mut T);
85247                }
85248            }
85249            extern "C" fn ffi_callback<
85250                T: FnMut(crate::q_abstract_texture::TextureFormat) + 'static,
85251            >(
85252                data: *mut ::std::ffi::c_void,
85253                arg0: crate::q_abstract_texture::TextureFormat,
85254            ) {
85255                unsafe { (*(data as *mut T))(arg0) }
85256            }
85257            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85258            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85259        };
85260        ::qt_core::QBox::from_raw(ffi_result)
85261    }
85262
85263    #[inline(always)]
85264    pub unsafe fn qt_metacall(
85265        &self,
85266        arg1: ::qt_core::q_meta_object::Call,
85267        arg2: ::std::os::raw::c_int,
85268        arg3: *mut *mut ::std::ffi::c_void,
85269    ) -> ::std::os::raw::c_int {
85270        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_qt_metacall(self as *const crate::SlotOfTextureFormat as *mut crate::SlotOfTextureFormat, arg1, arg2, arg3)
85271    }
85272
85273    #[inline(always)]
85274    pub unsafe fn qt_metacast(
85275        &self,
85276        arg1: *const ::std::os::raw::c_char,
85277    ) -> *mut ::std::ffi::c_void {
85278        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_qt_metacast(self as *const crate::SlotOfTextureFormat as *mut crate::SlotOfTextureFormat, arg1)
85279    }
85280
85281    /// Assigns `callback` as the signal handler.
85282    ///
85283    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
85284    #[inline(always)]
85285    pub unsafe fn set<T: FnMut(crate::q_abstract_texture::TextureFormat) + 'static>(
85286        &self,
85287        callback: T,
85288    ) {
85289        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85290            unsafe {
85291                let _ = Box::from_raw(data as *mut T);
85292            }
85293        }
85294        extern "C" fn ffi_callback<T: FnMut(crate::q_abstract_texture::TextureFormat) + 'static>(
85295            data: *mut ::std::ffi::c_void,
85296            arg0: crate::q_abstract_texture::TextureFormat,
85297        ) {
85298            unsafe { (*(data as *mut T))(arg0) }
85299        }
85300        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85301        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_set(self as *const crate::SlotOfTextureFormat as *mut crate::SlotOfTextureFormat, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85302    }
85303
85304    /// Calls the slot directly, invoking the assigned handler (if any).
85305    #[inline(always)]
85306    pub unsafe fn slot(&self, arg0: crate::q_abstract_texture::TextureFormat) {
85307        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_slot_(self as *const crate::SlotOfTextureFormat as *mut crate::SlotOfTextureFormat, arg0)
85308    }
85309
85310    #[inline(always)]
85311    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
85312        let ffi_result = {
85313            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_staticMetaObject()
85314        };
85315        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85316            .expect("attempted to construct a null Ref")
85317    }
85318
85319    #[inline(always)]
85320    pub unsafe fn tr(
85321        s: *const ::std::os::raw::c_char,
85322        c: *const ::std::os::raw::c_char,
85323        n: ::std::os::raw::c_int,
85324    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85325        let ffi_result = {
85326            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_tr(s, c, n)
85327        };
85328        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85329    }
85330
85331    #[inline(always)]
85332    pub unsafe fn tr_utf8(
85333        s: *const ::std::os::raw::c_char,
85334        c: *const ::std::os::raw::c_char,
85335        n: ::std::os::raw::c_int,
85336    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85337        let ffi_result = {
85338            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_trUtf8(s, c, n)
85339        };
85340        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85341    }
85342}
85343
85344impl ::qt_core::AsReceiver for crate::SlotOfBlending {
85345    type Arguments = (crate::q_blend_equation_arguments::Blending,);
85346    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
85347        unsafe {
85348            ::qt_core::Receiver::new(
85349                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
85350                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
85351                    b"1slot_(Qt3DRender::QBlendEquationArguments::Blending)\0",
85352                ),
85353            )
85354        }
85355    }
85356}
85357
85358/// Binds a Qt signal with arguments `crate::q_blend_equation_arguments::Blending` to a Rust closure.
85359///
85360/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBlendEquationArguments::Blending```</span>).
85361///
85362/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
85363///
85364/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
85365///
85366/// If `set()` was not called, slot invocation has no effect.
85367#[repr(C)]
85368pub struct SlotOfBlending {
85369    _unused: u8,
85370}
85371impl SlotOfBlending {
85372    #[inline(always)]
85373    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
85374        let ffi_result = {
85375            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_metaObject(self as *const crate::SlotOfBlending)
85376        };
85377        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85378    }
85379
85380    /// Creates a new object.
85381    #[inline(always)]
85382    pub unsafe fn new<T: FnMut(crate::q_blend_equation_arguments::Blending) + 'static>(
85383        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
85384        callback: T,
85385    ) -> ::qt_core::QBox<crate::SlotOfBlending> {
85386        let ffi_result = {
85387            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85388                unsafe {
85389                    let _ = Box::from_raw(data as *mut T);
85390                }
85391            }
85392            extern "C" fn ffi_callback<
85393                T: FnMut(crate::q_blend_equation_arguments::Blending) + 'static,
85394            >(
85395                data: *mut ::std::ffi::c_void,
85396                arg0: crate::q_blend_equation_arguments::Blending,
85397            ) {
85398                unsafe { (*(data as *mut T))(arg0) }
85399            }
85400            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85401            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85402        };
85403        ::qt_core::QBox::from_raw(ffi_result)
85404    }
85405
85406    #[inline(always)]
85407    pub unsafe fn qt_metacall(
85408        &self,
85409        arg1: ::qt_core::q_meta_object::Call,
85410        arg2: ::std::os::raw::c_int,
85411        arg3: *mut *mut ::std::ffi::c_void,
85412    ) -> ::std::os::raw::c_int {
85413        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_qt_metacall(self as *const crate::SlotOfBlending as *mut crate::SlotOfBlending, arg1, arg2, arg3)
85414    }
85415
85416    #[inline(always)]
85417    pub unsafe fn qt_metacast(
85418        &self,
85419        arg1: *const ::std::os::raw::c_char,
85420    ) -> *mut ::std::ffi::c_void {
85421        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_qt_metacast(self as *const crate::SlotOfBlending as *mut crate::SlotOfBlending, arg1)
85422    }
85423
85424    /// Assigns `callback` as the signal handler.
85425    ///
85426    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
85427    #[inline(always)]
85428    pub unsafe fn set<T: FnMut(crate::q_blend_equation_arguments::Blending) + 'static>(
85429        &self,
85430        callback: T,
85431    ) {
85432        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85433            unsafe {
85434                let _ = Box::from_raw(data as *mut T);
85435            }
85436        }
85437        extern "C" fn ffi_callback<
85438            T: FnMut(crate::q_blend_equation_arguments::Blending) + 'static,
85439        >(
85440            data: *mut ::std::ffi::c_void,
85441            arg0: crate::q_blend_equation_arguments::Blending,
85442        ) {
85443            unsafe { (*(data as *mut T))(arg0) }
85444        }
85445        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85446        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_set(self as *const crate::SlotOfBlending as *mut crate::SlotOfBlending, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85447    }
85448
85449    /// Calls the slot directly, invoking the assigned handler (if any).
85450    #[inline(always)]
85451    pub unsafe fn slot(&self, arg0: crate::q_blend_equation_arguments::Blending) {
85452        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_slot_(self as *const crate::SlotOfBlending as *mut crate::SlotOfBlending, arg0)
85453    }
85454
85455    #[inline(always)]
85456    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
85457        let ffi_result = {
85458            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_staticMetaObject()
85459        };
85460        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85461            .expect("attempted to construct a null Ref")
85462    }
85463
85464    #[inline(always)]
85465    pub unsafe fn tr(
85466        s: *const ::std::os::raw::c_char,
85467        c: *const ::std::os::raw::c_char,
85468        n: ::std::os::raw::c_int,
85469    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85470        let ffi_result = {
85471            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_tr(s, c, n)
85472        };
85473        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85474    }
85475
85476    #[inline(always)]
85477    pub unsafe fn tr_utf8(
85478        s: *const ::std::os::raw::c_char,
85479        c: *const ::std::os::raw::c_char,
85480        n: ::std::os::raw::c_int,
85481    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85482        let ffi_result = {
85483            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_trUtf8(s, c, n)
85484        };
85485        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85486    }
85487}
85488
85489impl ::qt_core::AsReceiver for crate::SlotOfOperation {
85490    type Arguments = (crate::q_stencil_operation_arguments::Operation,);
85491    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
85492        unsafe {
85493            ::qt_core::Receiver::new(
85494                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
85495                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
85496                    b"1slot_(Qt3DRender::QStencilOperationArguments::Operation)\0",
85497                ),
85498            )
85499        }
85500    }
85501}
85502
85503/// Binds a Qt signal with arguments `crate::q_stencil_operation_arguments::Operation` to a Rust closure.
85504///
85505/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QStencilOperationArguments::Operation```</span>).
85506///
85507/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
85508///
85509/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
85510///
85511/// If `set()` was not called, slot invocation has no effect.
85512#[repr(C)]
85513pub struct SlotOfOperation {
85514    _unused: u8,
85515}
85516impl SlotOfOperation {
85517    #[inline(always)]
85518    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
85519        let ffi_result = {
85520            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_metaObject(self as *const crate::SlotOfOperation)
85521        };
85522        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85523    }
85524
85525    /// Creates a new object.
85526    #[inline(always)]
85527    pub unsafe fn new<T: FnMut(crate::q_stencil_operation_arguments::Operation) + 'static>(
85528        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
85529        callback: T,
85530    ) -> ::qt_core::QBox<crate::SlotOfOperation> {
85531        let ffi_result = {
85532            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85533                unsafe {
85534                    let _ = Box::from_raw(data as *mut T);
85535                }
85536            }
85537            extern "C" fn ffi_callback<
85538                T: FnMut(crate::q_stencil_operation_arguments::Operation) + 'static,
85539            >(
85540                data: *mut ::std::ffi::c_void,
85541                arg0: crate::q_stencil_operation_arguments::Operation,
85542            ) {
85543                unsafe { (*(data as *mut T))(arg0) }
85544            }
85545            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85546            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85547        };
85548        ::qt_core::QBox::from_raw(ffi_result)
85549    }
85550
85551    #[inline(always)]
85552    pub unsafe fn qt_metacall(
85553        &self,
85554        arg1: ::qt_core::q_meta_object::Call,
85555        arg2: ::std::os::raw::c_int,
85556        arg3: *mut *mut ::std::ffi::c_void,
85557    ) -> ::std::os::raw::c_int {
85558        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_qt_metacall(self as *const crate::SlotOfOperation as *mut crate::SlotOfOperation, arg1, arg2, arg3)
85559    }
85560
85561    #[inline(always)]
85562    pub unsafe fn qt_metacast(
85563        &self,
85564        arg1: *const ::std::os::raw::c_char,
85565    ) -> *mut ::std::ffi::c_void {
85566        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_qt_metacast(self as *const crate::SlotOfOperation as *mut crate::SlotOfOperation, arg1)
85567    }
85568
85569    /// Assigns `callback` as the signal handler.
85570    ///
85571    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
85572    #[inline(always)]
85573    pub unsafe fn set<T: FnMut(crate::q_stencil_operation_arguments::Operation) + 'static>(
85574        &self,
85575        callback: T,
85576    ) {
85577        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85578            unsafe {
85579                let _ = Box::from_raw(data as *mut T);
85580            }
85581        }
85582        extern "C" fn ffi_callback<
85583            T: FnMut(crate::q_stencil_operation_arguments::Operation) + 'static,
85584        >(
85585            data: *mut ::std::ffi::c_void,
85586            arg0: crate::q_stencil_operation_arguments::Operation,
85587        ) {
85588            unsafe { (*(data as *mut T))(arg0) }
85589        }
85590        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85591        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_set(self as *const crate::SlotOfOperation as *mut crate::SlotOfOperation, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85592    }
85593
85594    /// Calls the slot directly, invoking the assigned handler (if any).
85595    #[inline(always)]
85596    pub unsafe fn slot(&self, arg0: crate::q_stencil_operation_arguments::Operation) {
85597        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_slot_(self as *const crate::SlotOfOperation as *mut crate::SlotOfOperation, arg0)
85598    }
85599
85600    #[inline(always)]
85601    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
85602        let ffi_result = {
85603            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_staticMetaObject()
85604        };
85605        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85606            .expect("attempted to construct a null Ref")
85607    }
85608
85609    #[inline(always)]
85610    pub unsafe fn tr(
85611        s: *const ::std::os::raw::c_char,
85612        c: *const ::std::os::raw::c_char,
85613        n: ::std::os::raw::c_int,
85614    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85615        let ffi_result = {
85616            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_tr(s, c, n)
85617        };
85618        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85619    }
85620
85621    #[inline(always)]
85622    pub unsafe fn tr_utf8(
85623        s: *const ::std::os::raw::c_char,
85624        c: *const ::std::os::raw::c_char,
85625        n: ::std::os::raw::c_int,
85626    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85627        let ffi_result = {
85628            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_trUtf8(s, c, n)
85629        };
85630        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85631    }
85632}
85633
85634#[cfg_attr(
85635    feature = "ritual_rustdoc_nightly",
85636    doc(cfg(any(
85637        cpp_lib_version = "5.14.0",
85638        cpp_lib_version = "5.11.3",
85639        cpp_lib_version = "5.12.2",
85640        cpp_lib_version = "5.13.0"
85641    )))
85642)]
85643#[cfg(any(
85644    any(
85645        cpp_lib_version = "5.14.0",
85646        cpp_lib_version = "5.11.3",
85647        cpp_lib_version = "5.12.2",
85648        cpp_lib_version = "5.13.0"
85649    ),
85650    feature = "ritual_rustdoc"
85651))]
85652
85653impl ::qt_core::AsReceiver for crate::SlotOfQVectorOfQRayCasterHit {
85654    type Arguments = (*const crate::QVectorOfQRayCasterHit,);
85655    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
85656        unsafe {
85657            ::qt_core::Receiver::new(
85658                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
85659                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
85660                    b"1slot_(QVector< Qt3DRender::QRayCasterHit > const &)\0",
85661                ),
85662            )
85663        }
85664    }
85665}
85666
85667/// Binds a Qt signal with arguments `*const crate::QVectorOfQRayCasterHit` to a Rust closure.
85668///
85669/// Corresponding C++ argument types: (<span style='color: green;'>```const QVector<Qt3DRender::QRayCasterHit>&```</span>).
85670///
85671/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
85672///
85673/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
85674///
85675/// If `set()` was not called, slot invocation has no effect.
85676#[repr(C)]
85677pub struct SlotOfQVectorOfQRayCasterHit {
85678    _unused: u8,
85679}
85680impl SlotOfQVectorOfQRayCasterHit {
85681    #[inline(always)]
85682    #[cfg_attr(
85683        feature = "ritual_rustdoc_nightly",
85684        doc(cfg(any(
85685            cpp_lib_version = "5.14.0",
85686            cpp_lib_version = "5.11.3",
85687            cpp_lib_version = "5.12.2",
85688            cpp_lib_version = "5.13.0"
85689        )))
85690    )]
85691    #[cfg(any(
85692        any(
85693            cpp_lib_version = "5.14.0",
85694            cpp_lib_version = "5.11.3",
85695            cpp_lib_version = "5.12.2",
85696            cpp_lib_version = "5.13.0"
85697        ),
85698        feature = "ritual_rustdoc"
85699    ))]
85700    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
85701        let ffi_result = {
85702            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_metaObject(self as *const crate::SlotOfQVectorOfQRayCasterHit)
85703        };
85704        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85705    }
85706
85707    /// Creates a new object.
85708    #[inline(always)]
85709    #[cfg_attr(
85710        feature = "ritual_rustdoc_nightly",
85711        doc(cfg(any(
85712            cpp_lib_version = "5.14.0",
85713            cpp_lib_version = "5.11.3",
85714            cpp_lib_version = "5.12.2",
85715            cpp_lib_version = "5.13.0"
85716        )))
85717    )]
85718    #[cfg(any(
85719        any(
85720            cpp_lib_version = "5.14.0",
85721            cpp_lib_version = "5.11.3",
85722            cpp_lib_version = "5.12.2",
85723            cpp_lib_version = "5.13.0"
85724        ),
85725        feature = "ritual_rustdoc"
85726    ))]
85727    pub unsafe fn new<T: FnMut(::cpp_core::Ref<crate::QVectorOfQRayCasterHit>) + 'static>(
85728        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
85729        callback: T,
85730    ) -> ::qt_core::QBox<crate::SlotOfQVectorOfQRayCasterHit> {
85731        let ffi_result = {
85732            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85733                unsafe {
85734                    let _ = Box::from_raw(data as *mut T);
85735                }
85736            }
85737            extern "C" fn ffi_callback<
85738                T: FnMut(::cpp_core::Ref<crate::QVectorOfQRayCasterHit>) + 'static,
85739            >(
85740                data: *mut ::std::ffi::c_void,
85741                arg0: *const crate::QVectorOfQRayCasterHit,
85742            ) {
85743                unsafe {
85744                    (*(data as *mut T))(
85745                        ::cpp_core::Ref::from_raw(arg0 as *mut crate::QVectorOfQRayCasterHit)
85746                            .expect("attempted to construct a null Ref"),
85747                    )
85748                }
85749            }
85750            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85751            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85752        };
85753        ::qt_core::QBox::from_raw(ffi_result)
85754    }
85755
85756    #[inline(always)]
85757    #[cfg_attr(
85758        feature = "ritual_rustdoc_nightly",
85759        doc(cfg(any(
85760            cpp_lib_version = "5.14.0",
85761            cpp_lib_version = "5.11.3",
85762            cpp_lib_version = "5.12.2",
85763            cpp_lib_version = "5.13.0"
85764        )))
85765    )]
85766    #[cfg(any(
85767        any(
85768            cpp_lib_version = "5.14.0",
85769            cpp_lib_version = "5.11.3",
85770            cpp_lib_version = "5.12.2",
85771            cpp_lib_version = "5.13.0"
85772        ),
85773        feature = "ritual_rustdoc"
85774    ))]
85775    pub unsafe fn qt_metacall(
85776        &self,
85777        arg1: ::qt_core::q_meta_object::Call,
85778        arg2: ::std::os::raw::c_int,
85779        arg3: *mut *mut ::std::ffi::c_void,
85780    ) -> ::std::os::raw::c_int {
85781        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_qt_metacall(self as *const crate::SlotOfQVectorOfQRayCasterHit as *mut crate::SlotOfQVectorOfQRayCasterHit, arg1, arg2, arg3)
85782    }
85783
85784    #[inline(always)]
85785    #[cfg_attr(
85786        feature = "ritual_rustdoc_nightly",
85787        doc(cfg(any(
85788            cpp_lib_version = "5.14.0",
85789            cpp_lib_version = "5.11.3",
85790            cpp_lib_version = "5.12.2",
85791            cpp_lib_version = "5.13.0"
85792        )))
85793    )]
85794    #[cfg(any(
85795        any(
85796            cpp_lib_version = "5.14.0",
85797            cpp_lib_version = "5.11.3",
85798            cpp_lib_version = "5.12.2",
85799            cpp_lib_version = "5.13.0"
85800        ),
85801        feature = "ritual_rustdoc"
85802    ))]
85803    pub unsafe fn qt_metacast(
85804        &self,
85805        arg1: *const ::std::os::raw::c_char,
85806    ) -> *mut ::std::ffi::c_void {
85807        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_qt_metacast(self as *const crate::SlotOfQVectorOfQRayCasterHit as *mut crate::SlotOfQVectorOfQRayCasterHit, arg1)
85808    }
85809
85810    /// Assigns `callback` as the signal handler.
85811    ///
85812    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
85813    #[inline(always)]
85814    #[cfg_attr(
85815        feature = "ritual_rustdoc_nightly",
85816        doc(cfg(any(
85817            cpp_lib_version = "5.14.0",
85818            cpp_lib_version = "5.11.3",
85819            cpp_lib_version = "5.12.2",
85820            cpp_lib_version = "5.13.0"
85821        )))
85822    )]
85823    #[cfg(any(
85824        any(
85825            cpp_lib_version = "5.14.0",
85826            cpp_lib_version = "5.11.3",
85827            cpp_lib_version = "5.12.2",
85828            cpp_lib_version = "5.13.0"
85829        ),
85830        feature = "ritual_rustdoc"
85831    ))]
85832    pub unsafe fn set<T: FnMut(::cpp_core::Ref<crate::QVectorOfQRayCasterHit>) + 'static>(
85833        &self,
85834        callback: T,
85835    ) {
85836        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
85837            unsafe {
85838                let _ = Box::from_raw(data as *mut T);
85839            }
85840        }
85841        extern "C" fn ffi_callback<
85842            T: FnMut(::cpp_core::Ref<crate::QVectorOfQRayCasterHit>) + 'static,
85843        >(
85844            data: *mut ::std::ffi::c_void,
85845            arg0: *const crate::QVectorOfQRayCasterHit,
85846        ) {
85847            unsafe {
85848                (*(data as *mut T))(
85849                    ::cpp_core::Ref::from_raw(arg0 as *mut crate::QVectorOfQRayCasterHit)
85850                        .expect("attempted to construct a null Ref"),
85851                )
85852            }
85853        }
85854        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
85855        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_set(self as *const crate::SlotOfQVectorOfQRayCasterHit as *mut crate::SlotOfQVectorOfQRayCasterHit, Some(ffi_callback::<T>), Some(deleter::<T>), data)
85856    }
85857
85858    /// Calls the slot directly, invoking the assigned handler (if any).
85859    #[inline(always)]
85860    #[cfg_attr(
85861        feature = "ritual_rustdoc_nightly",
85862        doc(cfg(any(
85863            cpp_lib_version = "5.14.0",
85864            cpp_lib_version = "5.11.3",
85865            cpp_lib_version = "5.12.2",
85866            cpp_lib_version = "5.13.0"
85867        )))
85868    )]
85869    #[cfg(any(
85870        any(
85871            cpp_lib_version = "5.14.0",
85872            cpp_lib_version = "5.11.3",
85873            cpp_lib_version = "5.12.2",
85874            cpp_lib_version = "5.13.0"
85875        ),
85876        feature = "ritual_rustdoc"
85877    ))]
85878    pub unsafe fn slot(
85879        &self,
85880        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>,
85881    ) {
85882        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_slot_(self as *const crate::SlotOfQVectorOfQRayCasterHit as *mut crate::SlotOfQVectorOfQRayCasterHit, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>::cast_into(arg0).as_raw_ptr())
85883    }
85884
85885    #[inline(always)]
85886    #[cfg_attr(
85887        feature = "ritual_rustdoc_nightly",
85888        doc(cfg(any(
85889            cpp_lib_version = "5.14.0",
85890            cpp_lib_version = "5.11.3",
85891            cpp_lib_version = "5.12.2",
85892            cpp_lib_version = "5.13.0"
85893        )))
85894    )]
85895    #[cfg(any(
85896        any(
85897            cpp_lib_version = "5.14.0",
85898            cpp_lib_version = "5.11.3",
85899            cpp_lib_version = "5.12.2",
85900            cpp_lib_version = "5.13.0"
85901        ),
85902        feature = "ritual_rustdoc"
85903    ))]
85904    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
85905        let ffi_result = {
85906            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_staticMetaObject()
85907        };
85908        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
85909            .expect("attempted to construct a null Ref")
85910    }
85911
85912    #[inline(always)]
85913    #[cfg_attr(
85914        feature = "ritual_rustdoc_nightly",
85915        doc(cfg(any(
85916            cpp_lib_version = "5.14.0",
85917            cpp_lib_version = "5.11.3",
85918            cpp_lib_version = "5.12.2",
85919            cpp_lib_version = "5.13.0"
85920        )))
85921    )]
85922    #[cfg(any(
85923        any(
85924            cpp_lib_version = "5.14.0",
85925            cpp_lib_version = "5.11.3",
85926            cpp_lib_version = "5.12.2",
85927            cpp_lib_version = "5.13.0"
85928        ),
85929        feature = "ritual_rustdoc"
85930    ))]
85931    pub unsafe fn tr(
85932        s: *const ::std::os::raw::c_char,
85933        c: *const ::std::os::raw::c_char,
85934        n: ::std::os::raw::c_int,
85935    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85936        let ffi_result = {
85937            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_tr(s, c, n)
85938        };
85939        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85940    }
85941
85942    #[inline(always)]
85943    #[cfg_attr(
85944        feature = "ritual_rustdoc_nightly",
85945        doc(cfg(any(
85946            cpp_lib_version = "5.14.0",
85947            cpp_lib_version = "5.11.3",
85948            cpp_lib_version = "5.12.2",
85949            cpp_lib_version = "5.13.0"
85950        )))
85951    )]
85952    #[cfg(any(
85953        any(
85954            cpp_lib_version = "5.14.0",
85955            cpp_lib_version = "5.11.3",
85956            cpp_lib_version = "5.12.2",
85957            cpp_lib_version = "5.13.0"
85958        ),
85959        feature = "ritual_rustdoc"
85960    ))]
85961    pub unsafe fn tr_utf8(
85962        s: *const ::std::os::raw::c_char,
85963        c: *const ::std::os::raw::c_char,
85964        n: ::std::os::raw::c_int,
85965    ) -> ::cpp_core::CppBox<::qt_core::QString> {
85966        let ffi_result = {
85967            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_trUtf8(s, c, n)
85968        };
85969        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
85970    }
85971}
85972
85973impl ::qt_core::AsReceiver for crate::SlotOfQAbstractTexture {
85974    type Arguments = (*mut crate::QAbstractTexture,);
85975    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
85976        unsafe {
85977            ::qt_core::Receiver::new(
85978                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
85979                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
85980                    b"1slot_(Qt3DRender::QAbstractTexture *)\0",
85981                ),
85982            )
85983        }
85984    }
85985}
85986
85987/// Binds a Qt signal with arguments `*mut crate::QAbstractTexture` to a Rust closure.
85988///
85989/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture*```</span>).
85990///
85991/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
85992///
85993/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
85994///
85995/// If `set()` was not called, slot invocation has no effect.
85996#[repr(C)]
85997pub struct SlotOfQAbstractTexture {
85998    _unused: u8,
85999}
86000impl SlotOfQAbstractTexture {
86001    #[inline(always)]
86002    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
86003        let ffi_result = {
86004            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_metaObject(self as *const crate::SlotOfQAbstractTexture)
86005        };
86006        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86007    }
86008
86009    /// Creates a new object.
86010    #[inline(always)]
86011    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QAbstractTexture>) + 'static>(
86012        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
86013        callback: T,
86014    ) -> ::qt_core::QBox<crate::SlotOfQAbstractTexture> {
86015        let ffi_result = {
86016            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86017                unsafe {
86018                    let _ = Box::from_raw(data as *mut T);
86019                }
86020            }
86021            extern "C" fn ffi_callback<
86022                T: FnMut(::qt_core::QPtr<crate::QAbstractTexture>) + 'static,
86023            >(
86024                data: *mut ::std::ffi::c_void,
86025                arg0: *mut crate::QAbstractTexture,
86026            ) {
86027                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
86028            }
86029            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86030            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86031        };
86032        ::qt_core::QBox::from_raw(ffi_result)
86033    }
86034
86035    #[inline(always)]
86036    pub unsafe fn qt_metacall(
86037        &self,
86038        arg1: ::qt_core::q_meta_object::Call,
86039        arg2: ::std::os::raw::c_int,
86040        arg3: *mut *mut ::std::ffi::c_void,
86041    ) -> ::std::os::raw::c_int {
86042        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_qt_metacall(self as *const crate::SlotOfQAbstractTexture as *mut crate::SlotOfQAbstractTexture, arg1, arg2, arg3)
86043    }
86044
86045    #[inline(always)]
86046    pub unsafe fn qt_metacast(
86047        &self,
86048        arg1: *const ::std::os::raw::c_char,
86049    ) -> *mut ::std::ffi::c_void {
86050        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_qt_metacast(self as *const crate::SlotOfQAbstractTexture as *mut crate::SlotOfQAbstractTexture, arg1)
86051    }
86052
86053    /// Assigns `callback` as the signal handler.
86054    ///
86055    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
86056    #[inline(always)]
86057    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QAbstractTexture>) + 'static>(
86058        &self,
86059        callback: T,
86060    ) {
86061        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86062            unsafe {
86063                let _ = Box::from_raw(data as *mut T);
86064            }
86065        }
86066        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QAbstractTexture>) + 'static>(
86067            data: *mut ::std::ffi::c_void,
86068            arg0: *mut crate::QAbstractTexture,
86069        ) {
86070            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
86071        }
86072        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86073        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_set(self as *const crate::SlotOfQAbstractTexture as *mut crate::SlotOfQAbstractTexture, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86074    }
86075
86076    /// Calls the slot directly, invoking the assigned handler (if any).
86077    #[inline(always)]
86078    pub unsafe fn slot(
86079        &self,
86080        arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAbstractTexture>>,
86081    ) {
86082        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_slot_(self as *const crate::SlotOfQAbstractTexture as *mut crate::SlotOfQAbstractTexture, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAbstractTexture>>::cast_into(arg0).as_raw_ptr() as *mut crate::QAbstractTexture)
86083    }
86084
86085    #[inline(always)]
86086    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
86087        let ffi_result = {
86088            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_staticMetaObject()
86089        };
86090        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86091            .expect("attempted to construct a null Ref")
86092    }
86093
86094    #[inline(always)]
86095    pub unsafe fn tr(
86096        s: *const ::std::os::raw::c_char,
86097        c: *const ::std::os::raw::c_char,
86098        n: ::std::os::raw::c_int,
86099    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86100        let ffi_result = {
86101            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_tr(s, c, n)
86102        };
86103        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86104    }
86105
86106    #[inline(always)]
86107    pub unsafe fn tr_utf8(
86108        s: *const ::std::os::raw::c_char,
86109        c: *const ::std::os::raw::c_char,
86110        n: ::std::os::raw::c_int,
86111    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86112        let ffi_result = {
86113            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_trUtf8(s, c, n)
86114        };
86115        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86116    }
86117}
86118
86119impl ::qt_core::AsReceiver for crate::SlotOfQPickEvent {
86120    type Arguments = (*mut crate::QPickEvent,);
86121    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
86122        unsafe {
86123            ::qt_core::Receiver::new(
86124                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
86125                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
86126                    b"1slot_(Qt3DRender::QPickEvent *)\0",
86127                ),
86128            )
86129        }
86130    }
86131}
86132
86133/// Binds a Qt signal with arguments `*mut crate::QPickEvent` to a Rust closure.
86134///
86135/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QPickEvent*```</span>).
86136///
86137/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
86138///
86139/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
86140///
86141/// If `set()` was not called, slot invocation has no effect.
86142#[repr(C)]
86143pub struct SlotOfQPickEvent {
86144    _unused: u8,
86145}
86146impl SlotOfQPickEvent {
86147    #[inline(always)]
86148    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
86149        let ffi_result = {
86150            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_metaObject(self as *const crate::SlotOfQPickEvent)
86151        };
86152        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86153    }
86154
86155    /// Creates a new object.
86156    #[inline(always)]
86157    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QPickEvent>) + 'static>(
86158        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
86159        callback: T,
86160    ) -> ::qt_core::QBox<crate::SlotOfQPickEvent> {
86161        let ffi_result = {
86162            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86163                unsafe {
86164                    let _ = Box::from_raw(data as *mut T);
86165                }
86166            }
86167            extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QPickEvent>) + 'static>(
86168                data: *mut ::std::ffi::c_void,
86169                arg0: *mut crate::QPickEvent,
86170            ) {
86171                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
86172            }
86173            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86174            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86175        };
86176        ::qt_core::QBox::from_raw(ffi_result)
86177    }
86178
86179    #[inline(always)]
86180    pub unsafe fn qt_metacall(
86181        &self,
86182        arg1: ::qt_core::q_meta_object::Call,
86183        arg2: ::std::os::raw::c_int,
86184        arg3: *mut *mut ::std::ffi::c_void,
86185    ) -> ::std::os::raw::c_int {
86186        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_qt_metacall(self as *const crate::SlotOfQPickEvent as *mut crate::SlotOfQPickEvent, arg1, arg2, arg3)
86187    }
86188
86189    #[inline(always)]
86190    pub unsafe fn qt_metacast(
86191        &self,
86192        arg1: *const ::std::os::raw::c_char,
86193    ) -> *mut ::std::ffi::c_void {
86194        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_qt_metacast(self as *const crate::SlotOfQPickEvent as *mut crate::SlotOfQPickEvent, arg1)
86195    }
86196
86197    /// Assigns `callback` as the signal handler.
86198    ///
86199    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
86200    #[inline(always)]
86201    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QPickEvent>) + 'static>(&self, callback: T) {
86202        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86203            unsafe {
86204                let _ = Box::from_raw(data as *mut T);
86205            }
86206        }
86207        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QPickEvent>) + 'static>(
86208            data: *mut ::std::ffi::c_void,
86209            arg0: *mut crate::QPickEvent,
86210        ) {
86211            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
86212        }
86213        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86214        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_set(self as *const crate::SlotOfQPickEvent as *mut crate::SlotOfQPickEvent, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86215    }
86216
86217    /// Calls the slot directly, invoking the assigned handler (if any).
86218    #[inline(always)]
86219    pub unsafe fn slot(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QPickEvent>>) {
86220        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_slot_(self as *const crate::SlotOfQPickEvent as *mut crate::SlotOfQPickEvent, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QPickEvent>>::cast_into(arg0).as_raw_ptr() as *mut crate::QPickEvent)
86221    }
86222
86223    #[inline(always)]
86224    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
86225        let ffi_result = {
86226            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_staticMetaObject()
86227        };
86228        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86229            .expect("attempted to construct a null Ref")
86230    }
86231
86232    #[inline(always)]
86233    pub unsafe fn tr(
86234        s: *const ::std::os::raw::c_char,
86235        c: *const ::std::os::raw::c_char,
86236        n: ::std::os::raw::c_int,
86237    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86238        let ffi_result = {
86239            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_tr(s, c, n)
86240        };
86241        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86242    }
86243
86244    #[inline(always)]
86245    pub unsafe fn tr_utf8(
86246        s: *const ::std::os::raw::c_char,
86247        c: *const ::std::os::raw::c_char,
86248        n: ::std::os::raw::c_int,
86249    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86250        let ffi_result = {
86251            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_trUtf8(s, c, n)
86252        };
86253        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86254    }
86255}
86256
86257#[cfg_attr(
86258    feature = "ritual_rustdoc_nightly",
86259    doc(cfg(any(
86260        cpp_lib_version = "5.14.0",
86261        cpp_lib_version = "5.11.3",
86262        cpp_lib_version = "5.12.2",
86263        cpp_lib_version = "5.13.0"
86264    )))
86265)]
86266#[cfg(any(
86267    any(
86268        cpp_lib_version = "5.14.0",
86269        cpp_lib_version = "5.11.3",
86270        cpp_lib_version = "5.12.2",
86271        cpp_lib_version = "5.13.0"
86272    ),
86273    feature = "ritual_rustdoc"
86274))]
86275
86276impl ::qt_core::AsReceiver for crate::SlotOfRunMode {
86277    type Arguments = (crate::q_abstract_ray_caster::RunMode,);
86278    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
86279        unsafe {
86280            ::qt_core::Receiver::new(
86281                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
86282                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
86283                    b"1slot_(Qt3DRender::QAbstractRayCaster::RunMode)\0",
86284                ),
86285            )
86286        }
86287    }
86288}
86289
86290/// Binds a Qt signal with arguments `crate::q_abstract_ray_caster::RunMode` to a Rust closure.
86291///
86292/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractRayCaster::RunMode```</span>).
86293///
86294/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
86295///
86296/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
86297///
86298/// If `set()` was not called, slot invocation has no effect.
86299#[repr(C)]
86300pub struct SlotOfRunMode {
86301    _unused: u8,
86302}
86303impl SlotOfRunMode {
86304    #[inline(always)]
86305    #[cfg_attr(
86306        feature = "ritual_rustdoc_nightly",
86307        doc(cfg(any(
86308            cpp_lib_version = "5.14.0",
86309            cpp_lib_version = "5.11.3",
86310            cpp_lib_version = "5.12.2",
86311            cpp_lib_version = "5.13.0"
86312        )))
86313    )]
86314    #[cfg(any(
86315        any(
86316            cpp_lib_version = "5.14.0",
86317            cpp_lib_version = "5.11.3",
86318            cpp_lib_version = "5.12.2",
86319            cpp_lib_version = "5.13.0"
86320        ),
86321        feature = "ritual_rustdoc"
86322    ))]
86323    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
86324        let ffi_result = {
86325            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_metaObject(self as *const crate::SlotOfRunMode)
86326        };
86327        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86328    }
86329
86330    /// Creates a new object.
86331    #[inline(always)]
86332    #[cfg_attr(
86333        feature = "ritual_rustdoc_nightly",
86334        doc(cfg(any(
86335            cpp_lib_version = "5.14.0",
86336            cpp_lib_version = "5.11.3",
86337            cpp_lib_version = "5.12.2",
86338            cpp_lib_version = "5.13.0"
86339        )))
86340    )]
86341    #[cfg(any(
86342        any(
86343            cpp_lib_version = "5.14.0",
86344            cpp_lib_version = "5.11.3",
86345            cpp_lib_version = "5.12.2",
86346            cpp_lib_version = "5.13.0"
86347        ),
86348        feature = "ritual_rustdoc"
86349    ))]
86350    pub unsafe fn new<T: FnMut(crate::q_abstract_ray_caster::RunMode) + 'static>(
86351        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
86352        callback: T,
86353    ) -> ::qt_core::QBox<crate::SlotOfRunMode> {
86354        let ffi_result = {
86355            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86356                unsafe {
86357                    let _ = Box::from_raw(data as *mut T);
86358                }
86359            }
86360            extern "C" fn ffi_callback<
86361                T: FnMut(crate::q_abstract_ray_caster::RunMode) + 'static,
86362            >(
86363                data: *mut ::std::ffi::c_void,
86364                arg0: crate::q_abstract_ray_caster::RunMode,
86365            ) {
86366                unsafe { (*(data as *mut T))(arg0) }
86367            }
86368            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86369            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86370        };
86371        ::qt_core::QBox::from_raw(ffi_result)
86372    }
86373
86374    #[inline(always)]
86375    #[cfg_attr(
86376        feature = "ritual_rustdoc_nightly",
86377        doc(cfg(any(
86378            cpp_lib_version = "5.14.0",
86379            cpp_lib_version = "5.11.3",
86380            cpp_lib_version = "5.12.2",
86381            cpp_lib_version = "5.13.0"
86382        )))
86383    )]
86384    #[cfg(any(
86385        any(
86386            cpp_lib_version = "5.14.0",
86387            cpp_lib_version = "5.11.3",
86388            cpp_lib_version = "5.12.2",
86389            cpp_lib_version = "5.13.0"
86390        ),
86391        feature = "ritual_rustdoc"
86392    ))]
86393    pub unsafe fn qt_metacall(
86394        &self,
86395        arg1: ::qt_core::q_meta_object::Call,
86396        arg2: ::std::os::raw::c_int,
86397        arg3: *mut *mut ::std::ffi::c_void,
86398    ) -> ::std::os::raw::c_int {
86399        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_qt_metacall(self as *const crate::SlotOfRunMode as *mut crate::SlotOfRunMode, arg1, arg2, arg3)
86400    }
86401
86402    #[inline(always)]
86403    #[cfg_attr(
86404        feature = "ritual_rustdoc_nightly",
86405        doc(cfg(any(
86406            cpp_lib_version = "5.14.0",
86407            cpp_lib_version = "5.11.3",
86408            cpp_lib_version = "5.12.2",
86409            cpp_lib_version = "5.13.0"
86410        )))
86411    )]
86412    #[cfg(any(
86413        any(
86414            cpp_lib_version = "5.14.0",
86415            cpp_lib_version = "5.11.3",
86416            cpp_lib_version = "5.12.2",
86417            cpp_lib_version = "5.13.0"
86418        ),
86419        feature = "ritual_rustdoc"
86420    ))]
86421    pub unsafe fn qt_metacast(
86422        &self,
86423        arg1: *const ::std::os::raw::c_char,
86424    ) -> *mut ::std::ffi::c_void {
86425        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_qt_metacast(self as *const crate::SlotOfRunMode as *mut crate::SlotOfRunMode, arg1)
86426    }
86427
86428    /// Assigns `callback` as the signal handler.
86429    ///
86430    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
86431    #[inline(always)]
86432    #[cfg_attr(
86433        feature = "ritual_rustdoc_nightly",
86434        doc(cfg(any(
86435            cpp_lib_version = "5.14.0",
86436            cpp_lib_version = "5.11.3",
86437            cpp_lib_version = "5.12.2",
86438            cpp_lib_version = "5.13.0"
86439        )))
86440    )]
86441    #[cfg(any(
86442        any(
86443            cpp_lib_version = "5.14.0",
86444            cpp_lib_version = "5.11.3",
86445            cpp_lib_version = "5.12.2",
86446            cpp_lib_version = "5.13.0"
86447        ),
86448        feature = "ritual_rustdoc"
86449    ))]
86450    pub unsafe fn set<T: FnMut(crate::q_abstract_ray_caster::RunMode) + 'static>(
86451        &self,
86452        callback: T,
86453    ) {
86454        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86455            unsafe {
86456                let _ = Box::from_raw(data as *mut T);
86457            }
86458        }
86459        extern "C" fn ffi_callback<T: FnMut(crate::q_abstract_ray_caster::RunMode) + 'static>(
86460            data: *mut ::std::ffi::c_void,
86461            arg0: crate::q_abstract_ray_caster::RunMode,
86462        ) {
86463            unsafe { (*(data as *mut T))(arg0) }
86464        }
86465        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86466        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_set(self as *const crate::SlotOfRunMode as *mut crate::SlotOfRunMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86467    }
86468
86469    /// Calls the slot directly, invoking the assigned handler (if any).
86470    #[inline(always)]
86471    #[cfg_attr(
86472        feature = "ritual_rustdoc_nightly",
86473        doc(cfg(any(
86474            cpp_lib_version = "5.14.0",
86475            cpp_lib_version = "5.11.3",
86476            cpp_lib_version = "5.12.2",
86477            cpp_lib_version = "5.13.0"
86478        )))
86479    )]
86480    #[cfg(any(
86481        any(
86482            cpp_lib_version = "5.14.0",
86483            cpp_lib_version = "5.11.3",
86484            cpp_lib_version = "5.12.2",
86485            cpp_lib_version = "5.13.0"
86486        ),
86487        feature = "ritual_rustdoc"
86488    ))]
86489    pub unsafe fn slot(&self, arg0: crate::q_abstract_ray_caster::RunMode) {
86490        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_slot_(self as *const crate::SlotOfRunMode as *mut crate::SlotOfRunMode, arg0)
86491    }
86492
86493    #[inline(always)]
86494    #[cfg_attr(
86495        feature = "ritual_rustdoc_nightly",
86496        doc(cfg(any(
86497            cpp_lib_version = "5.14.0",
86498            cpp_lib_version = "5.11.3",
86499            cpp_lib_version = "5.12.2",
86500            cpp_lib_version = "5.13.0"
86501        )))
86502    )]
86503    #[cfg(any(
86504        any(
86505            cpp_lib_version = "5.14.0",
86506            cpp_lib_version = "5.11.3",
86507            cpp_lib_version = "5.12.2",
86508            cpp_lib_version = "5.13.0"
86509        ),
86510        feature = "ritual_rustdoc"
86511    ))]
86512    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
86513        let ffi_result = {
86514            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_staticMetaObject()
86515        };
86516        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86517            .expect("attempted to construct a null Ref")
86518    }
86519
86520    #[inline(always)]
86521    #[cfg_attr(
86522        feature = "ritual_rustdoc_nightly",
86523        doc(cfg(any(
86524            cpp_lib_version = "5.14.0",
86525            cpp_lib_version = "5.11.3",
86526            cpp_lib_version = "5.12.2",
86527            cpp_lib_version = "5.13.0"
86528        )))
86529    )]
86530    #[cfg(any(
86531        any(
86532            cpp_lib_version = "5.14.0",
86533            cpp_lib_version = "5.11.3",
86534            cpp_lib_version = "5.12.2",
86535            cpp_lib_version = "5.13.0"
86536        ),
86537        feature = "ritual_rustdoc"
86538    ))]
86539    pub unsafe fn tr(
86540        s: *const ::std::os::raw::c_char,
86541        c: *const ::std::os::raw::c_char,
86542        n: ::std::os::raw::c_int,
86543    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86544        let ffi_result = {
86545            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_tr(s, c, n)
86546        };
86547        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86548    }
86549
86550    #[inline(always)]
86551    #[cfg_attr(
86552        feature = "ritual_rustdoc_nightly",
86553        doc(cfg(any(
86554            cpp_lib_version = "5.14.0",
86555            cpp_lib_version = "5.11.3",
86556            cpp_lib_version = "5.12.2",
86557            cpp_lib_version = "5.13.0"
86558        )))
86559    )]
86560    #[cfg(any(
86561        any(
86562            cpp_lib_version = "5.14.0",
86563            cpp_lib_version = "5.11.3",
86564            cpp_lib_version = "5.12.2",
86565            cpp_lib_version = "5.13.0"
86566        ),
86567        feature = "ritual_rustdoc"
86568    ))]
86569    pub unsafe fn tr_utf8(
86570        s: *const ::std::os::raw::c_char,
86571        c: *const ::std::os::raw::c_char,
86572        n: ::std::os::raw::c_int,
86573    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86574        let ffi_result = {
86575            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_trUtf8(s, c, n)
86576        };
86577        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86578    }
86579}
86580
86581impl ::qt_core::AsReceiver for crate::SlotOfProjectionType {
86582    type Arguments = (crate::q_camera_lens::ProjectionType,);
86583    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
86584        unsafe {
86585            ::qt_core::Receiver::new(
86586                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
86587                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
86588                    b"1slot_(Qt3DRender::QCameraLens::ProjectionType)\0",
86589                ),
86590            )
86591        }
86592    }
86593}
86594
86595/// Binds a Qt signal with arguments `crate::q_camera_lens::ProjectionType` to a Rust closure.
86596///
86597/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QCameraLens::ProjectionType```</span>).
86598///
86599/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
86600///
86601/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
86602///
86603/// If `set()` was not called, slot invocation has no effect.
86604#[repr(C)]
86605pub struct SlotOfProjectionType {
86606    _unused: u8,
86607}
86608impl SlotOfProjectionType {
86609    #[inline(always)]
86610    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
86611        let ffi_result = {
86612            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_metaObject(self as *const crate::SlotOfProjectionType)
86613        };
86614        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86615    }
86616
86617    /// Creates a new object.
86618    #[inline(always)]
86619    pub unsafe fn new<T: FnMut(crate::q_camera_lens::ProjectionType) + 'static>(
86620        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
86621        callback: T,
86622    ) -> ::qt_core::QBox<crate::SlotOfProjectionType> {
86623        let ffi_result = {
86624            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86625                unsafe {
86626                    let _ = Box::from_raw(data as *mut T);
86627                }
86628            }
86629            extern "C" fn ffi_callback<T: FnMut(crate::q_camera_lens::ProjectionType) + 'static>(
86630                data: *mut ::std::ffi::c_void,
86631                arg0: crate::q_camera_lens::ProjectionType,
86632            ) {
86633                unsafe { (*(data as *mut T))(arg0) }
86634            }
86635            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86636            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86637        };
86638        ::qt_core::QBox::from_raw(ffi_result)
86639    }
86640
86641    #[inline(always)]
86642    pub unsafe fn qt_metacall(
86643        &self,
86644        arg1: ::qt_core::q_meta_object::Call,
86645        arg2: ::std::os::raw::c_int,
86646        arg3: *mut *mut ::std::ffi::c_void,
86647    ) -> ::std::os::raw::c_int {
86648        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_qt_metacall(self as *const crate::SlotOfProjectionType as *mut crate::SlotOfProjectionType, arg1, arg2, arg3)
86649    }
86650
86651    #[inline(always)]
86652    pub unsafe fn qt_metacast(
86653        &self,
86654        arg1: *const ::std::os::raw::c_char,
86655    ) -> *mut ::std::ffi::c_void {
86656        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_qt_metacast(self as *const crate::SlotOfProjectionType as *mut crate::SlotOfProjectionType, arg1)
86657    }
86658
86659    /// Assigns `callback` as the signal handler.
86660    ///
86661    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
86662    #[inline(always)]
86663    pub unsafe fn set<T: FnMut(crate::q_camera_lens::ProjectionType) + 'static>(
86664        &self,
86665        callback: T,
86666    ) {
86667        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86668            unsafe {
86669                let _ = Box::from_raw(data as *mut T);
86670            }
86671        }
86672        extern "C" fn ffi_callback<T: FnMut(crate::q_camera_lens::ProjectionType) + 'static>(
86673            data: *mut ::std::ffi::c_void,
86674            arg0: crate::q_camera_lens::ProjectionType,
86675        ) {
86676            unsafe { (*(data as *mut T))(arg0) }
86677        }
86678        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86679        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_set(self as *const crate::SlotOfProjectionType as *mut crate::SlotOfProjectionType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86680    }
86681
86682    /// Calls the slot directly, invoking the assigned handler (if any).
86683    #[inline(always)]
86684    pub unsafe fn slot(&self, arg0: crate::q_camera_lens::ProjectionType) {
86685        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_slot_(self as *const crate::SlotOfProjectionType as *mut crate::SlotOfProjectionType, arg0)
86686    }
86687
86688    #[inline(always)]
86689    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
86690        let ffi_result = {
86691            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_staticMetaObject()
86692        };
86693        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86694            .expect("attempted to construct a null Ref")
86695    }
86696
86697    #[inline(always)]
86698    pub unsafe fn tr(
86699        s: *const ::std::os::raw::c_char,
86700        c: *const ::std::os::raw::c_char,
86701        n: ::std::os::raw::c_int,
86702    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86703        let ffi_result = {
86704            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_tr(s, c, n)
86705        };
86706        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86707    }
86708
86709    #[inline(always)]
86710    pub unsafe fn tr_utf8(
86711        s: *const ::std::os::raw::c_char,
86712        c: *const ::std::os::raw::c_char,
86713        n: ::std::os::raw::c_int,
86714    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86715        let ffi_result = {
86716            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_trUtf8(s, c, n)
86717        };
86718        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86719    }
86720}
86721
86722impl ::qt_core::AsReceiver for crate::SlotOfQAttribute {
86723    type Arguments = (*mut crate::QAttribute,);
86724    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
86725        unsafe {
86726            ::qt_core::Receiver::new(
86727                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
86728                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
86729                    b"1slot_(Qt3DRender::QAttribute *)\0",
86730                ),
86731            )
86732        }
86733    }
86734}
86735
86736/// Binds a Qt signal with arguments `*mut crate::QAttribute` to a Rust closure.
86737///
86738/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAttribute*```</span>).
86739///
86740/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
86741///
86742/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
86743///
86744/// If `set()` was not called, slot invocation has no effect.
86745#[repr(C)]
86746pub struct SlotOfQAttribute {
86747    _unused: u8,
86748}
86749impl SlotOfQAttribute {
86750    #[inline(always)]
86751    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
86752        let ffi_result = {
86753            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_metaObject(self as *const crate::SlotOfQAttribute)
86754        };
86755        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86756    }
86757
86758    /// Creates a new object.
86759    #[inline(always)]
86760    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QAttribute>) + 'static>(
86761        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
86762        callback: T,
86763    ) -> ::qt_core::QBox<crate::SlotOfQAttribute> {
86764        let ffi_result = {
86765            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86766                unsafe {
86767                    let _ = Box::from_raw(data as *mut T);
86768                }
86769            }
86770            extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QAttribute>) + 'static>(
86771                data: *mut ::std::ffi::c_void,
86772                arg0: *mut crate::QAttribute,
86773            ) {
86774                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
86775            }
86776            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86777            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86778        };
86779        ::qt_core::QBox::from_raw(ffi_result)
86780    }
86781
86782    #[inline(always)]
86783    pub unsafe fn qt_metacall(
86784        &self,
86785        arg1: ::qt_core::q_meta_object::Call,
86786        arg2: ::std::os::raw::c_int,
86787        arg3: *mut *mut ::std::ffi::c_void,
86788    ) -> ::std::os::raw::c_int {
86789        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_qt_metacall(self as *const crate::SlotOfQAttribute as *mut crate::SlotOfQAttribute, arg1, arg2, arg3)
86790    }
86791
86792    #[inline(always)]
86793    pub unsafe fn qt_metacast(
86794        &self,
86795        arg1: *const ::std::os::raw::c_char,
86796    ) -> *mut ::std::ffi::c_void {
86797        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_qt_metacast(self as *const crate::SlotOfQAttribute as *mut crate::SlotOfQAttribute, arg1)
86798    }
86799
86800    /// Assigns `callback` as the signal handler.
86801    ///
86802    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
86803    #[inline(always)]
86804    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QAttribute>) + 'static>(&self, callback: T) {
86805        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86806            unsafe {
86807                let _ = Box::from_raw(data as *mut T);
86808            }
86809        }
86810        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QAttribute>) + 'static>(
86811            data: *mut ::std::ffi::c_void,
86812            arg0: *mut crate::QAttribute,
86813        ) {
86814            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
86815        }
86816        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86817        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_set(self as *const crate::SlotOfQAttribute as *mut crate::SlotOfQAttribute, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86818    }
86819
86820    /// Calls the slot directly, invoking the assigned handler (if any).
86821    #[inline(always)]
86822    pub unsafe fn slot(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QAttribute>>) {
86823        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_slot_(self as *const crate::SlotOfQAttribute as *mut crate::SlotOfQAttribute, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QAttribute>>::cast_into(arg0).as_raw_ptr() as *mut crate::QAttribute)
86824    }
86825
86826    #[inline(always)]
86827    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
86828        let ffi_result = {
86829            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_staticMetaObject()
86830        };
86831        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86832            .expect("attempted to construct a null Ref")
86833    }
86834
86835    #[inline(always)]
86836    pub unsafe fn tr(
86837        s: *const ::std::os::raw::c_char,
86838        c: *const ::std::os::raw::c_char,
86839        n: ::std::os::raw::c_int,
86840    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86841        let ffi_result = {
86842            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_tr(s, c, n)
86843        };
86844        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86845    }
86846
86847    #[inline(always)]
86848    pub unsafe fn tr_utf8(
86849        s: *const ::std::os::raw::c_char,
86850        c: *const ::std::os::raw::c_char,
86851        n: ::std::os::raw::c_int,
86852    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86853        let ffi_result = {
86854            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_trUtf8(s, c, n)
86855        };
86856        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86857    }
86858}
86859
86860impl ::qt_core::AsReceiver for crate::SlotOfQBuffer {
86861    type Arguments = (*mut crate::QBuffer,);
86862    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
86863        unsafe {
86864            ::qt_core::Receiver::new(
86865                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
86866                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(Qt3DRender::QBuffer *)\0"),
86867            )
86868        }
86869    }
86870}
86871
86872/// Binds a Qt signal with arguments `*mut crate::QBuffer` to a Rust closure.
86873///
86874/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBuffer*```</span>).
86875///
86876/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
86877///
86878/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
86879///
86880/// If `set()` was not called, slot invocation has no effect.
86881#[repr(C)]
86882pub struct SlotOfQBuffer {
86883    _unused: u8,
86884}
86885impl SlotOfQBuffer {
86886    #[inline(always)]
86887    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
86888        let ffi_result = {
86889            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_metaObject(self as *const crate::SlotOfQBuffer)
86890        };
86891        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86892    }
86893
86894    /// Creates a new object.
86895    #[inline(always)]
86896    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QBuffer>) + 'static>(
86897        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
86898        callback: T,
86899    ) -> ::qt_core::QBox<crate::SlotOfQBuffer> {
86900        let ffi_result = {
86901            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86902                unsafe {
86903                    let _ = Box::from_raw(data as *mut T);
86904                }
86905            }
86906            extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QBuffer>) + 'static>(
86907                data: *mut ::std::ffi::c_void,
86908                arg0: *mut crate::QBuffer,
86909            ) {
86910                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
86911            }
86912            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86913            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86914        };
86915        ::qt_core::QBox::from_raw(ffi_result)
86916    }
86917
86918    #[inline(always)]
86919    pub unsafe fn qt_metacall(
86920        &self,
86921        arg1: ::qt_core::q_meta_object::Call,
86922        arg2: ::std::os::raw::c_int,
86923        arg3: *mut *mut ::std::ffi::c_void,
86924    ) -> ::std::os::raw::c_int {
86925        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_qt_metacall(self as *const crate::SlotOfQBuffer as *mut crate::SlotOfQBuffer, arg1, arg2, arg3)
86926    }
86927
86928    #[inline(always)]
86929    pub unsafe fn qt_metacast(
86930        &self,
86931        arg1: *const ::std::os::raw::c_char,
86932    ) -> *mut ::std::ffi::c_void {
86933        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_qt_metacast(self as *const crate::SlotOfQBuffer as *mut crate::SlotOfQBuffer, arg1)
86934    }
86935
86936    /// Assigns `callback` as the signal handler.
86937    ///
86938    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
86939    #[inline(always)]
86940    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QBuffer>) + 'static>(&self, callback: T) {
86941        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
86942            unsafe {
86943                let _ = Box::from_raw(data as *mut T);
86944            }
86945        }
86946        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QBuffer>) + 'static>(
86947            data: *mut ::std::ffi::c_void,
86948            arg0: *mut crate::QBuffer,
86949        ) {
86950            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
86951        }
86952        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
86953        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_set(self as *const crate::SlotOfQBuffer as *mut crate::SlotOfQBuffer, Some(ffi_callback::<T>), Some(deleter::<T>), data)
86954    }
86955
86956    /// Calls the slot directly, invoking the assigned handler (if any).
86957    #[inline(always)]
86958    pub unsafe fn slot(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QBuffer>>) {
86959        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_slot_(self as *const crate::SlotOfQBuffer as *mut crate::SlotOfQBuffer, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QBuffer>>::cast_into(arg0).as_raw_ptr() as *mut crate::QBuffer)
86960    }
86961
86962    #[inline(always)]
86963    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
86964        let ffi_result = {
86965            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_staticMetaObject()
86966        };
86967        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
86968            .expect("attempted to construct a null Ref")
86969    }
86970
86971    #[inline(always)]
86972    pub unsafe fn tr(
86973        s: *const ::std::os::raw::c_char,
86974        c: *const ::std::os::raw::c_char,
86975        n: ::std::os::raw::c_int,
86976    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86977        let ffi_result = {
86978            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_tr(s, c, n)
86979        };
86980        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86981    }
86982
86983    #[inline(always)]
86984    pub unsafe fn tr_utf8(
86985        s: *const ::std::os::raw::c_char,
86986        c: *const ::std::os::raw::c_char,
86987        n: ::std::os::raw::c_int,
86988    ) -> ::cpp_core::CppBox<::qt_core::QString> {
86989        let ffi_result = {
86990            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_trUtf8(s, c, n)
86991        };
86992        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
86993    }
86994}
86995
86996impl ::qt_core::AsReceiver for crate::SlotOfStatus4 {
86997    type Arguments = (crate::q_abstract_texture::Status,);
86998    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
86999        unsafe {
87000            ::qt_core::Receiver::new(
87001                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
87002                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
87003                    b"1slot_(Qt3DRender::QAbstractTexture::Status)\0",
87004                ),
87005            )
87006        }
87007    }
87008}
87009
87010/// Binds a Qt signal with arguments `crate::q_abstract_texture::Status` to a Rust closure.
87011///
87012/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAbstractTexture::Status```</span>).
87013///
87014/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
87015///
87016/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
87017///
87018/// If `set()` was not called, slot invocation has no effect.
87019#[repr(C)]
87020pub struct SlotOfStatus4 {
87021    _unused: u8,
87022}
87023impl SlotOfStatus4 {
87024    #[inline(always)]
87025    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
87026        let ffi_result = {
87027            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_metaObject(self as *const crate::SlotOfStatus4)
87028        };
87029        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87030    }
87031
87032    /// Creates a new object.
87033    #[inline(always)]
87034    pub unsafe fn new<T: FnMut(crate::q_abstract_texture::Status) + 'static>(
87035        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
87036        callback: T,
87037    ) -> ::qt_core::QBox<crate::SlotOfStatus4> {
87038        let ffi_result = {
87039            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87040                unsafe {
87041                    let _ = Box::from_raw(data as *mut T);
87042                }
87043            }
87044            extern "C" fn ffi_callback<T: FnMut(crate::q_abstract_texture::Status) + 'static>(
87045                data: *mut ::std::ffi::c_void,
87046                arg0: crate::q_abstract_texture::Status,
87047            ) {
87048                unsafe { (*(data as *mut T))(arg0) }
87049            }
87050            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87051            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87052        };
87053        ::qt_core::QBox::from_raw(ffi_result)
87054    }
87055
87056    #[inline(always)]
87057    pub unsafe fn qt_metacall(
87058        &self,
87059        arg1: ::qt_core::q_meta_object::Call,
87060        arg2: ::std::os::raw::c_int,
87061        arg3: *mut *mut ::std::ffi::c_void,
87062    ) -> ::std::os::raw::c_int {
87063        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_qt_metacall(self as *const crate::SlotOfStatus4 as *mut crate::SlotOfStatus4, arg1, arg2, arg3)
87064    }
87065
87066    #[inline(always)]
87067    pub unsafe fn qt_metacast(
87068        &self,
87069        arg1: *const ::std::os::raw::c_char,
87070    ) -> *mut ::std::ffi::c_void {
87071        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_qt_metacast(self as *const crate::SlotOfStatus4 as *mut crate::SlotOfStatus4, arg1)
87072    }
87073
87074    /// Assigns `callback` as the signal handler.
87075    ///
87076    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
87077    #[inline(always)]
87078    pub unsafe fn set<T: FnMut(crate::q_abstract_texture::Status) + 'static>(&self, callback: T) {
87079        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87080            unsafe {
87081                let _ = Box::from_raw(data as *mut T);
87082            }
87083        }
87084        extern "C" fn ffi_callback<T: FnMut(crate::q_abstract_texture::Status) + 'static>(
87085            data: *mut ::std::ffi::c_void,
87086            arg0: crate::q_abstract_texture::Status,
87087        ) {
87088            unsafe { (*(data as *mut T))(arg0) }
87089        }
87090        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87091        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_set(self as *const crate::SlotOfStatus4 as *mut crate::SlotOfStatus4, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87092    }
87093
87094    /// Calls the slot directly, invoking the assigned handler (if any).
87095    #[inline(always)]
87096    pub unsafe fn slot(&self, arg0: crate::q_abstract_texture::Status) {
87097        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_slot_(self as *const crate::SlotOfStatus4 as *mut crate::SlotOfStatus4, arg0)
87098    }
87099
87100    #[inline(always)]
87101    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
87102        let ffi_result = {
87103            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_staticMetaObject()
87104        };
87105        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87106            .expect("attempted to construct a null Ref")
87107    }
87108
87109    #[inline(always)]
87110    pub unsafe fn tr(
87111        s: *const ::std::os::raw::c_char,
87112        c: *const ::std::os::raw::c_char,
87113        n: ::std::os::raw::c_int,
87114    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87115        let ffi_result = {
87116            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_tr(s, c, n)
87117        };
87118        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87119    }
87120
87121    #[inline(always)]
87122    pub unsafe fn tr_utf8(
87123        s: *const ::std::os::raw::c_char,
87124        c: *const ::std::os::raw::c_char,
87125        n: ::std::os::raw::c_int,
87126    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87127        let ffi_result = {
87128            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_trUtf8(s, c, n)
87129        };
87130        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87131    }
87132}
87133
87134impl ::qt_core::AsReceiver for crate::SlotOfBufferType2 {
87135    type Arguments = (crate::q_buffer::BufferType,);
87136    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
87137        unsafe {
87138            ::qt_core::Receiver::new(
87139                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
87140                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
87141                    b"1slot_(Qt3DRender::QBuffer::BufferType)\0",
87142                ),
87143            )
87144        }
87145    }
87146}
87147
87148/// Binds a Qt signal with arguments `crate::q_buffer::BufferType` to a Rust closure.
87149///
87150/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QBuffer::BufferType```</span>).
87151///
87152/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
87153///
87154/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
87155///
87156/// If `set()` was not called, slot invocation has no effect.
87157#[repr(C)]
87158pub struct SlotOfBufferType2 {
87159    _unused: u8,
87160}
87161impl SlotOfBufferType2 {
87162    #[inline(always)]
87163    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
87164        let ffi_result = {
87165            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_metaObject(self as *const crate::SlotOfBufferType2)
87166        };
87167        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87168    }
87169
87170    /// Creates a new object.
87171    #[inline(always)]
87172    pub unsafe fn new<T: FnMut(crate::q_buffer::BufferType) + 'static>(
87173        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
87174        callback: T,
87175    ) -> ::qt_core::QBox<crate::SlotOfBufferType2> {
87176        let ffi_result = {
87177            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87178                unsafe {
87179                    let _ = Box::from_raw(data as *mut T);
87180                }
87181            }
87182            extern "C" fn ffi_callback<T: FnMut(crate::q_buffer::BufferType) + 'static>(
87183                data: *mut ::std::ffi::c_void,
87184                arg0: crate::q_buffer::BufferType,
87185            ) {
87186                unsafe { (*(data as *mut T))(arg0) }
87187            }
87188            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87189            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87190        };
87191        ::qt_core::QBox::from_raw(ffi_result)
87192    }
87193
87194    #[inline(always)]
87195    pub unsafe fn qt_metacall(
87196        &self,
87197        arg1: ::qt_core::q_meta_object::Call,
87198        arg2: ::std::os::raw::c_int,
87199        arg3: *mut *mut ::std::ffi::c_void,
87200    ) -> ::std::os::raw::c_int {
87201        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_qt_metacall(self as *const crate::SlotOfBufferType2 as *mut crate::SlotOfBufferType2, arg1, arg2, arg3)
87202    }
87203
87204    #[inline(always)]
87205    pub unsafe fn qt_metacast(
87206        &self,
87207        arg1: *const ::std::os::raw::c_char,
87208    ) -> *mut ::std::ffi::c_void {
87209        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_qt_metacast(self as *const crate::SlotOfBufferType2 as *mut crate::SlotOfBufferType2, arg1)
87210    }
87211
87212    /// Assigns `callback` as the signal handler.
87213    ///
87214    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
87215    #[inline(always)]
87216    pub unsafe fn set<T: FnMut(crate::q_buffer::BufferType) + 'static>(&self, callback: T) {
87217        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87218            unsafe {
87219                let _ = Box::from_raw(data as *mut T);
87220            }
87221        }
87222        extern "C" fn ffi_callback<T: FnMut(crate::q_buffer::BufferType) + 'static>(
87223            data: *mut ::std::ffi::c_void,
87224            arg0: crate::q_buffer::BufferType,
87225        ) {
87226            unsafe { (*(data as *mut T))(arg0) }
87227        }
87228        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87229        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_set(self as *const crate::SlotOfBufferType2 as *mut crate::SlotOfBufferType2, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87230    }
87231
87232    /// Calls the slot directly, invoking the assigned handler (if any).
87233    #[inline(always)]
87234    pub unsafe fn slot(&self, arg0: crate::q_buffer::BufferType) {
87235        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_slot_(self as *const crate::SlotOfBufferType2 as *mut crate::SlotOfBufferType2, arg0)
87236    }
87237
87238    #[inline(always)]
87239    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
87240        let ffi_result = {
87241            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_staticMetaObject()
87242        };
87243        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87244            .expect("attempted to construct a null Ref")
87245    }
87246
87247    #[inline(always)]
87248    pub unsafe fn tr(
87249        s: *const ::std::os::raw::c_char,
87250        c: *const ::std::os::raw::c_char,
87251        n: ::std::os::raw::c_int,
87252    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87253        let ffi_result = {
87254            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_tr(s, c, n)
87255        };
87256        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87257    }
87258
87259    #[inline(always)]
87260    pub unsafe fn tr_utf8(
87261        s: *const ::std::os::raw::c_char,
87262        c: *const ::std::os::raw::c_char,
87263        n: ::std::os::raw::c_int,
87264    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87265        let ffi_result = {
87266            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_trUtf8(s, c, n)
87267        };
87268        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87269    }
87270}
87271
87272impl ::qt_core::AsReceiver for crate::SlotOfQSize {
87273    type Arguments = (*const ::qt_core::QSize,);
87274    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
87275        unsafe {
87276            ::qt_core::Receiver::new(
87277                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
87278                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(QSize)\0"),
87279            )
87280        }
87281    }
87282}
87283
87284/// Binds a Qt signal with arguments `*const ::qt_core::QSize` to a Rust closure.
87285///
87286/// Corresponding C++ argument types: (<span style='color: green;'>```QSize```</span>).
87287///
87288/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
87289///
87290/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
87291///
87292/// If `set()` was not called, slot invocation has no effect.
87293#[repr(C)]
87294pub struct SlotOfQSize {
87295    _unused: u8,
87296}
87297impl SlotOfQSize {
87298    #[inline(always)]
87299    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
87300        let ffi_result = {
87301            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QSize_metaObject(
87302                self as *const crate::SlotOfQSize,
87303            )
87304        };
87305        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87306    }
87307
87308    #[inline(always)]
87309    pub unsafe fn qt_metacall(
87310        &self,
87311        arg1: ::qt_core::q_meta_object::Call,
87312        arg2: ::std::os::raw::c_int,
87313        arg3: *mut *mut ::std::ffi::c_void,
87314    ) -> ::std::os::raw::c_int {
87315        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QSize_qt_metacall(
87316            self as *const crate::SlotOfQSize as *mut crate::SlotOfQSize,
87317            arg1,
87318            arg2,
87319            arg3,
87320        )
87321    }
87322
87323    #[inline(always)]
87324    pub unsafe fn qt_metacast(
87325        &self,
87326        arg1: *const ::std::os::raw::c_char,
87327    ) -> *mut ::std::ffi::c_void {
87328        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QSize_qt_metacast(
87329            self as *const crate::SlotOfQSize as *mut crate::SlotOfQSize,
87330            arg1,
87331        )
87332    }
87333
87334    /// Calls the slot directly, invoking the assigned handler (if any).
87335    #[inline(always)]
87336    pub unsafe fn slot(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QSize>>) {
87337        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QSize_slot_(
87338            self as *const crate::SlotOfQSize as *mut crate::SlotOfQSize,
87339            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QSize>>::cast_into(arg0).as_raw_ptr(),
87340        )
87341    }
87342
87343    #[inline(always)]
87344    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
87345        let ffi_result = {
87346            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QSize_staticMetaObject()
87347        };
87348        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87349            .expect("attempted to construct a null Ref")
87350    }
87351
87352    #[inline(always)]
87353    pub unsafe fn tr(
87354        s: *const ::std::os::raw::c_char,
87355        c: *const ::std::os::raw::c_char,
87356        n: ::std::os::raw::c_int,
87357    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87358        let ffi_result = {
87359            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QSize_tr(s, c, n)
87360        };
87361        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87362    }
87363
87364    #[inline(always)]
87365    pub unsafe fn tr_utf8(
87366        s: *const ::std::os::raw::c_char,
87367        c: *const ::std::os::raw::c_char,
87368        n: ::std::os::raw::c_int,
87369    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87370        let ffi_result = {
87371            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QSize_trUtf8(
87372                s, c, n,
87373            )
87374        };
87375        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87376    }
87377}
87378
87379impl ::qt_core::AsReceiver for crate::SlotOfQLevelOfDetailBoundingSphere {
87380    type Arguments = (*const crate::QLevelOfDetailBoundingSphere,);
87381    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
87382        unsafe {
87383            ::qt_core::Receiver::new(
87384                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
87385                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
87386                    b"1slot_(Qt3DRender::QLevelOfDetailBoundingSphere const &)\0",
87387                ),
87388            )
87389        }
87390    }
87391}
87392
87393/// Binds a Qt signal with arguments `*const crate::QLevelOfDetailBoundingSphere` to a Rust closure.
87394///
87395/// Corresponding C++ argument types: (<span style='color: green;'>```const Qt3DRender::QLevelOfDetailBoundingSphere&```</span>).
87396///
87397/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
87398///
87399/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
87400///
87401/// If `set()` was not called, slot invocation has no effect.
87402#[repr(C)]
87403pub struct SlotOfQLevelOfDetailBoundingSphere {
87404    _unused: u8,
87405}
87406impl SlotOfQLevelOfDetailBoundingSphere {
87407    #[inline(always)]
87408    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
87409        let ffi_result = {
87410            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_metaObject(self as *const crate::SlotOfQLevelOfDetailBoundingSphere)
87411        };
87412        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87413    }
87414
87415    /// Creates a new object.
87416    #[inline(always)]
87417    pub unsafe fn new<T: FnMut(::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>) + 'static>(
87418        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
87419        callback: T,
87420    ) -> ::qt_core::QBox<crate::SlotOfQLevelOfDetailBoundingSphere> {
87421        let ffi_result = {
87422            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87423                unsafe {
87424                    let _ = Box::from_raw(data as *mut T);
87425                }
87426            }
87427            extern "C" fn ffi_callback<
87428                T: FnMut(::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>) + 'static,
87429            >(
87430                data: *mut ::std::ffi::c_void,
87431                arg0: *const crate::QLevelOfDetailBoundingSphere,
87432            ) {
87433                unsafe {
87434                    (*(data as *mut T))(
87435                        ::cpp_core::Ref::from_raw(arg0 as *mut crate::QLevelOfDetailBoundingSphere)
87436                            .expect("attempted to construct a null Ref"),
87437                    )
87438                }
87439            }
87440            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87441            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87442        };
87443        ::qt_core::QBox::from_raw(ffi_result)
87444    }
87445
87446    #[inline(always)]
87447    pub unsafe fn qt_metacall(
87448        &self,
87449        arg1: ::qt_core::q_meta_object::Call,
87450        arg2: ::std::os::raw::c_int,
87451        arg3: *mut *mut ::std::ffi::c_void,
87452    ) -> ::std::os::raw::c_int {
87453        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_qt_metacall(self as *const crate::SlotOfQLevelOfDetailBoundingSphere as *mut crate::SlotOfQLevelOfDetailBoundingSphere, arg1, arg2, arg3)
87454    }
87455
87456    #[inline(always)]
87457    pub unsafe fn qt_metacast(
87458        &self,
87459        arg1: *const ::std::os::raw::c_char,
87460    ) -> *mut ::std::ffi::c_void {
87461        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_qt_metacast(self as *const crate::SlotOfQLevelOfDetailBoundingSphere as *mut crate::SlotOfQLevelOfDetailBoundingSphere, arg1)
87462    }
87463
87464    /// Assigns `callback` as the signal handler.
87465    ///
87466    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
87467    #[inline(always)]
87468    pub unsafe fn set<T: FnMut(::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>) + 'static>(
87469        &self,
87470        callback: T,
87471    ) {
87472        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87473            unsafe {
87474                let _ = Box::from_raw(data as *mut T);
87475            }
87476        }
87477        extern "C" fn ffi_callback<
87478            T: FnMut(::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>) + 'static,
87479        >(
87480            data: *mut ::std::ffi::c_void,
87481            arg0: *const crate::QLevelOfDetailBoundingSphere,
87482        ) {
87483            unsafe {
87484                (*(data as *mut T))(
87485                    ::cpp_core::Ref::from_raw(arg0 as *mut crate::QLevelOfDetailBoundingSphere)
87486                        .expect("attempted to construct a null Ref"),
87487                )
87488            }
87489        }
87490        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87491        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_set(self as *const crate::SlotOfQLevelOfDetailBoundingSphere as *mut crate::SlotOfQLevelOfDetailBoundingSphere, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87492    }
87493
87494    /// Calls the slot directly, invoking the assigned handler (if any).
87495    #[inline(always)]
87496    pub unsafe fn slot(
87497        &self,
87498        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>,
87499    ) {
87500        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_slot_(self as *const crate::SlotOfQLevelOfDetailBoundingSphere as *mut crate::SlotOfQLevelOfDetailBoundingSphere, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>::cast_into(arg0).as_raw_ptr())
87501    }
87502
87503    #[inline(always)]
87504    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
87505        let ffi_result = {
87506            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_staticMetaObject()
87507        };
87508        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87509            .expect("attempted to construct a null Ref")
87510    }
87511
87512    #[inline(always)]
87513    pub unsafe fn tr(
87514        s: *const ::std::os::raw::c_char,
87515        c: *const ::std::os::raw::c_char,
87516        n: ::std::os::raw::c_int,
87517    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87518        let ffi_result = {
87519            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_tr(s, c, n)
87520        };
87521        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87522    }
87523
87524    #[inline(always)]
87525    pub unsafe fn tr_utf8(
87526        s: *const ::std::os::raw::c_char,
87527        c: *const ::std::os::raw::c_char,
87528        n: ::std::os::raw::c_int,
87529    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87530        let ffi_result = {
87531            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_trUtf8(s, c, n)
87532        };
87533        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87534    }
87535}
87536
87537impl ::qt_core::AsReceiver for crate::SlotOfOpenglProfile {
87538    type Arguments = (crate::q_graphics_api_filter::OpenGLProfile,);
87539    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
87540        unsafe {
87541            ::qt_core::Receiver::new(
87542                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
87543                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
87544                    b"1slot_(Qt3DRender::QGraphicsApiFilter::OpenGLProfile)\0",
87545                ),
87546            )
87547        }
87548    }
87549}
87550
87551/// Binds a Qt signal with arguments `crate::q_graphics_api_filter::OpenGLProfile` to a Rust closure.
87552///
87553/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QGraphicsApiFilter::OpenGLProfile```</span>).
87554///
87555/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
87556///
87557/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
87558///
87559/// If `set()` was not called, slot invocation has no effect.
87560#[repr(C)]
87561pub struct SlotOfOpenglProfile {
87562    _unused: u8,
87563}
87564impl SlotOfOpenglProfile {
87565    #[inline(always)]
87566    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
87567        let ffi_result = {
87568            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_metaObject(self as *const crate::SlotOfOpenglProfile)
87569        };
87570        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87571    }
87572
87573    /// Creates a new object.
87574    #[inline(always)]
87575    pub unsafe fn new<T: FnMut(crate::q_graphics_api_filter::OpenGLProfile) + 'static>(
87576        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
87577        callback: T,
87578    ) -> ::qt_core::QBox<crate::SlotOfOpenglProfile> {
87579        let ffi_result = {
87580            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87581                unsafe {
87582                    let _ = Box::from_raw(data as *mut T);
87583                }
87584            }
87585            extern "C" fn ffi_callback<
87586                T: FnMut(crate::q_graphics_api_filter::OpenGLProfile) + 'static,
87587            >(
87588                data: *mut ::std::ffi::c_void,
87589                arg0: crate::q_graphics_api_filter::OpenGLProfile,
87590            ) {
87591                unsafe { (*(data as *mut T))(arg0) }
87592            }
87593            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87594            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87595        };
87596        ::qt_core::QBox::from_raw(ffi_result)
87597    }
87598
87599    #[inline(always)]
87600    pub unsafe fn qt_metacall(
87601        &self,
87602        arg1: ::qt_core::q_meta_object::Call,
87603        arg2: ::std::os::raw::c_int,
87604        arg3: *mut *mut ::std::ffi::c_void,
87605    ) -> ::std::os::raw::c_int {
87606        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_qt_metacall(self as *const crate::SlotOfOpenglProfile as *mut crate::SlotOfOpenglProfile, arg1, arg2, arg3)
87607    }
87608
87609    #[inline(always)]
87610    pub unsafe fn qt_metacast(
87611        &self,
87612        arg1: *const ::std::os::raw::c_char,
87613    ) -> *mut ::std::ffi::c_void {
87614        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_qt_metacast(self as *const crate::SlotOfOpenglProfile as *mut crate::SlotOfOpenglProfile, arg1)
87615    }
87616
87617    /// Assigns `callback` as the signal handler.
87618    ///
87619    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
87620    #[inline(always)]
87621    pub unsafe fn set<T: FnMut(crate::q_graphics_api_filter::OpenGLProfile) + 'static>(
87622        &self,
87623        callback: T,
87624    ) {
87625        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87626            unsafe {
87627                let _ = Box::from_raw(data as *mut T);
87628            }
87629        }
87630        extern "C" fn ffi_callback<
87631            T: FnMut(crate::q_graphics_api_filter::OpenGLProfile) + 'static,
87632        >(
87633            data: *mut ::std::ffi::c_void,
87634            arg0: crate::q_graphics_api_filter::OpenGLProfile,
87635        ) {
87636            unsafe { (*(data as *mut T))(arg0) }
87637        }
87638        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87639        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_set(self as *const crate::SlotOfOpenglProfile as *mut crate::SlotOfOpenglProfile, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87640    }
87641
87642    /// Calls the slot directly, invoking the assigned handler (if any).
87643    #[inline(always)]
87644    pub unsafe fn slot(&self, arg0: crate::q_graphics_api_filter::OpenGLProfile) {
87645        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_slot_(self as *const crate::SlotOfOpenglProfile as *mut crate::SlotOfOpenglProfile, arg0)
87646    }
87647
87648    #[inline(always)]
87649    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
87650        let ffi_result = {
87651            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_staticMetaObject()
87652        };
87653        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87654            .expect("attempted to construct a null Ref")
87655    }
87656
87657    #[inline(always)]
87658    pub unsafe fn tr(
87659        s: *const ::std::os::raw::c_char,
87660        c: *const ::std::os::raw::c_char,
87661        n: ::std::os::raw::c_int,
87662    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87663        let ffi_result = {
87664            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_tr(s, c, n)
87665        };
87666        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87667    }
87668
87669    #[inline(always)]
87670    pub unsafe fn tr_utf8(
87671        s: *const ::std::os::raw::c_char,
87672        c: *const ::std::os::raw::c_char,
87673        n: ::std::os::raw::c_int,
87674    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87675        let ffi_result = {
87676            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_trUtf8(s, c, n)
87677        };
87678        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87679    }
87680}
87681
87682impl ::qt_core::AsReceiver for crate::SlotOfQStringList {
87683    type Arguments = (*const ::qt_core::QStringList,);
87684    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
87685        unsafe {
87686            ::qt_core::Receiver::new(
87687                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
87688                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(QStringList const &)\0"),
87689            )
87690        }
87691    }
87692}
87693
87694/// Binds a Qt signal with arguments `*const ::qt_core::QStringList` to a Rust closure.
87695///
87696/// Corresponding C++ argument types: (<span style='color: green;'>```const QStringList&```</span>).
87697///
87698/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
87699///
87700/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
87701///
87702/// If `set()` was not called, slot invocation has no effect.
87703#[repr(C)]
87704pub struct SlotOfQStringList {
87705    _unused: u8,
87706}
87707impl SlotOfQStringList {
87708    #[inline(always)]
87709    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
87710        let ffi_result = {
87711            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_metaObject(self as *const crate::SlotOfQStringList)
87712        };
87713        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87714    }
87715
87716    /// Creates a new object.
87717    #[inline(always)]
87718    pub unsafe fn new<T: FnMut(::cpp_core::Ref<::qt_core::QStringList>) + 'static>(
87719        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
87720        callback: T,
87721    ) -> ::qt_core::QBox<crate::SlotOfQStringList> {
87722        let ffi_result = {
87723            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87724                unsafe {
87725                    let _ = Box::from_raw(data as *mut T);
87726                }
87727            }
87728            extern "C" fn ffi_callback<
87729                T: FnMut(::cpp_core::Ref<::qt_core::QStringList>) + 'static,
87730            >(
87731                data: *mut ::std::ffi::c_void,
87732                arg0: *const ::qt_core::QStringList,
87733            ) {
87734                unsafe {
87735                    (*(data as *mut T))(
87736                        ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QStringList)
87737                            .expect("attempted to construct a null Ref"),
87738                    )
87739                }
87740            }
87741            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87742            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87743        };
87744        ::qt_core::QBox::from_raw(ffi_result)
87745    }
87746
87747    #[inline(always)]
87748    pub unsafe fn qt_metacall(
87749        &self,
87750        arg1: ::qt_core::q_meta_object::Call,
87751        arg2: ::std::os::raw::c_int,
87752        arg3: *mut *mut ::std::ffi::c_void,
87753    ) -> ::std::os::raw::c_int {
87754        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_qt_metacall(self as *const crate::SlotOfQStringList as *mut crate::SlotOfQStringList, arg1, arg2, arg3)
87755    }
87756
87757    #[inline(always)]
87758    pub unsafe fn qt_metacast(
87759        &self,
87760        arg1: *const ::std::os::raw::c_char,
87761    ) -> *mut ::std::ffi::c_void {
87762        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_qt_metacast(self as *const crate::SlotOfQStringList as *mut crate::SlotOfQStringList, arg1)
87763    }
87764
87765    /// Assigns `callback` as the signal handler.
87766    ///
87767    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
87768    #[inline(always)]
87769    pub unsafe fn set<T: FnMut(::cpp_core::Ref<::qt_core::QStringList>) + 'static>(
87770        &self,
87771        callback: T,
87772    ) {
87773        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87774            unsafe {
87775                let _ = Box::from_raw(data as *mut T);
87776            }
87777        }
87778        extern "C" fn ffi_callback<T: FnMut(::cpp_core::Ref<::qt_core::QStringList>) + 'static>(
87779            data: *mut ::std::ffi::c_void,
87780            arg0: *const ::qt_core::QStringList,
87781        ) {
87782            unsafe {
87783                (*(data as *mut T))(
87784                    ::cpp_core::Ref::from_raw(arg0 as *mut ::qt_core::QStringList)
87785                        .expect("attempted to construct a null Ref"),
87786                )
87787            }
87788        }
87789        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87790        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_set(self as *const crate::SlotOfQStringList as *mut crate::SlotOfQStringList, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87791    }
87792
87793    /// Calls the slot directly, invoking the assigned handler (if any).
87794    #[inline(always)]
87795    pub unsafe fn slot(
87796        &self,
87797        arg0: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QStringList>>,
87798    ) {
87799        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_slot_(self as *const crate::SlotOfQStringList as *mut crate::SlotOfQStringList, ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QStringList>>::cast_into(arg0).as_raw_ptr())
87800    }
87801
87802    #[inline(always)]
87803    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
87804        let ffi_result = {
87805            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_staticMetaObject()
87806        };
87807        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87808            .expect("attempted to construct a null Ref")
87809    }
87810
87811    #[inline(always)]
87812    pub unsafe fn tr(
87813        s: *const ::std::os::raw::c_char,
87814        c: *const ::std::os::raw::c_char,
87815        n: ::std::os::raw::c_int,
87816    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87817        let ffi_result = {
87818            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_tr(s, c, n)
87819        };
87820        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87821    }
87822
87823    #[inline(always)]
87824    pub unsafe fn tr_utf8(
87825        s: *const ::std::os::raw::c_char,
87826        c: *const ::std::os::raw::c_char,
87827        n: ::std::os::raw::c_int,
87828    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87829        let ffi_result = {
87830            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_trUtf8(s, c, n)
87831        };
87832        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87833    }
87834}
87835
87836impl ::qt_core::AsReceiver for crate::SlotOfPrimitiveType {
87837    type Arguments = (crate::q_geometry_renderer::PrimitiveType,);
87838    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
87839        unsafe {
87840            ::qt_core::Receiver::new(
87841                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
87842                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
87843                    b"1slot_(Qt3DRender::QGeometryRenderer::PrimitiveType)\0",
87844                ),
87845            )
87846        }
87847    }
87848}
87849
87850/// Binds a Qt signal with arguments `crate::q_geometry_renderer::PrimitiveType` to a Rust closure.
87851///
87852/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QGeometryRenderer::PrimitiveType```</span>).
87853///
87854/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
87855///
87856/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
87857///
87858/// If `set()` was not called, slot invocation has no effect.
87859#[repr(C)]
87860pub struct SlotOfPrimitiveType {
87861    _unused: u8,
87862}
87863impl SlotOfPrimitiveType {
87864    #[inline(always)]
87865    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
87866        let ffi_result = {
87867            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_metaObject(self as *const crate::SlotOfPrimitiveType)
87868        };
87869        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87870    }
87871
87872    /// Creates a new object.
87873    #[inline(always)]
87874    pub unsafe fn new<T: FnMut(crate::q_geometry_renderer::PrimitiveType) + 'static>(
87875        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
87876        callback: T,
87877    ) -> ::qt_core::QBox<crate::SlotOfPrimitiveType> {
87878        let ffi_result = {
87879            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87880                unsafe {
87881                    let _ = Box::from_raw(data as *mut T);
87882                }
87883            }
87884            extern "C" fn ffi_callback<
87885                T: FnMut(crate::q_geometry_renderer::PrimitiveType) + 'static,
87886            >(
87887                data: *mut ::std::ffi::c_void,
87888                arg0: crate::q_geometry_renderer::PrimitiveType,
87889            ) {
87890                unsafe { (*(data as *mut T))(arg0) }
87891            }
87892            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87893            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87894        };
87895        ::qt_core::QBox::from_raw(ffi_result)
87896    }
87897
87898    #[inline(always)]
87899    pub unsafe fn qt_metacall(
87900        &self,
87901        arg1: ::qt_core::q_meta_object::Call,
87902        arg2: ::std::os::raw::c_int,
87903        arg3: *mut *mut ::std::ffi::c_void,
87904    ) -> ::std::os::raw::c_int {
87905        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_qt_metacall(self as *const crate::SlotOfPrimitiveType as *mut crate::SlotOfPrimitiveType, arg1, arg2, arg3)
87906    }
87907
87908    #[inline(always)]
87909    pub unsafe fn qt_metacast(
87910        &self,
87911        arg1: *const ::std::os::raw::c_char,
87912    ) -> *mut ::std::ffi::c_void {
87913        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_qt_metacast(self as *const crate::SlotOfPrimitiveType as *mut crate::SlotOfPrimitiveType, arg1)
87914    }
87915
87916    /// Assigns `callback` as the signal handler.
87917    ///
87918    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
87919    #[inline(always)]
87920    pub unsafe fn set<T: FnMut(crate::q_geometry_renderer::PrimitiveType) + 'static>(
87921        &self,
87922        callback: T,
87923    ) {
87924        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
87925            unsafe {
87926                let _ = Box::from_raw(data as *mut T);
87927            }
87928        }
87929        extern "C" fn ffi_callback<
87930            T: FnMut(crate::q_geometry_renderer::PrimitiveType) + 'static,
87931        >(
87932            data: *mut ::std::ffi::c_void,
87933            arg0: crate::q_geometry_renderer::PrimitiveType,
87934        ) {
87935            unsafe { (*(data as *mut T))(arg0) }
87936        }
87937        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
87938        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_set(self as *const crate::SlotOfPrimitiveType as *mut crate::SlotOfPrimitiveType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
87939    }
87940
87941    /// Calls the slot directly, invoking the assigned handler (if any).
87942    #[inline(always)]
87943    pub unsafe fn slot(&self, arg0: crate::q_geometry_renderer::PrimitiveType) {
87944        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_slot_(self as *const crate::SlotOfPrimitiveType as *mut crate::SlotOfPrimitiveType, arg0)
87945    }
87946
87947    #[inline(always)]
87948    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
87949        let ffi_result = {
87950            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_staticMetaObject()
87951        };
87952        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
87953            .expect("attempted to construct a null Ref")
87954    }
87955
87956    #[inline(always)]
87957    pub unsafe fn tr(
87958        s: *const ::std::os::raw::c_char,
87959        c: *const ::std::os::raw::c_char,
87960        n: ::std::os::raw::c_int,
87961    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87962        let ffi_result = {
87963            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_tr(s, c, n)
87964        };
87965        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87966    }
87967
87968    #[inline(always)]
87969    pub unsafe fn tr_utf8(
87970        s: *const ::std::os::raw::c_char,
87971        c: *const ::std::os::raw::c_char,
87972        n: ::std::os::raw::c_int,
87973    ) -> ::cpp_core::CppBox<::qt_core::QString> {
87974        let ffi_result = {
87975            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_trUtf8(s, c, n)
87976        };
87977        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
87978    }
87979}
87980
87981impl ::qt_core::AsReceiver for crate::SlotOfAttachmentPoint {
87982    type Arguments = (crate::q_render_target_output::AttachmentPoint,);
87983    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
87984        unsafe {
87985            ::qt_core::Receiver::new(
87986                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
87987                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
87988                    b"1slot_(Qt3DRender::QRenderTargetOutput::AttachmentPoint)\0",
87989                ),
87990            )
87991        }
87992    }
87993}
87994
87995/// Binds a Qt signal with arguments `crate::q_render_target_output::AttachmentPoint` to a Rust closure.
87996///
87997/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint```</span>).
87998///
87999/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
88000///
88001/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
88002///
88003/// If `set()` was not called, slot invocation has no effect.
88004#[repr(C)]
88005pub struct SlotOfAttachmentPoint {
88006    _unused: u8,
88007}
88008impl SlotOfAttachmentPoint {
88009    #[inline(always)]
88010    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
88011        let ffi_result = {
88012            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_metaObject(self as *const crate::SlotOfAttachmentPoint)
88013        };
88014        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88015    }
88016
88017    /// Creates a new object.
88018    #[inline(always)]
88019    pub unsafe fn new<T: FnMut(crate::q_render_target_output::AttachmentPoint) + 'static>(
88020        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
88021        callback: T,
88022    ) -> ::qt_core::QBox<crate::SlotOfAttachmentPoint> {
88023        let ffi_result = {
88024            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88025                unsafe {
88026                    let _ = Box::from_raw(data as *mut T);
88027                }
88028            }
88029            extern "C" fn ffi_callback<
88030                T: FnMut(crate::q_render_target_output::AttachmentPoint) + 'static,
88031            >(
88032                data: *mut ::std::ffi::c_void,
88033                arg0: crate::q_render_target_output::AttachmentPoint,
88034            ) {
88035                unsafe { (*(data as *mut T))(arg0) }
88036            }
88037            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88038            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88039        };
88040        ::qt_core::QBox::from_raw(ffi_result)
88041    }
88042
88043    #[inline(always)]
88044    pub unsafe fn qt_metacall(
88045        &self,
88046        arg1: ::qt_core::q_meta_object::Call,
88047        arg2: ::std::os::raw::c_int,
88048        arg3: *mut *mut ::std::ffi::c_void,
88049    ) -> ::std::os::raw::c_int {
88050        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_qt_metacall(self as *const crate::SlotOfAttachmentPoint as *mut crate::SlotOfAttachmentPoint, arg1, arg2, arg3)
88051    }
88052
88053    #[inline(always)]
88054    pub unsafe fn qt_metacast(
88055        &self,
88056        arg1: *const ::std::os::raw::c_char,
88057    ) -> *mut ::std::ffi::c_void {
88058        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_qt_metacast(self as *const crate::SlotOfAttachmentPoint as *mut crate::SlotOfAttachmentPoint, arg1)
88059    }
88060
88061    /// Assigns `callback` as the signal handler.
88062    ///
88063    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
88064    #[inline(always)]
88065    pub unsafe fn set<T: FnMut(crate::q_render_target_output::AttachmentPoint) + 'static>(
88066        &self,
88067        callback: T,
88068    ) {
88069        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88070            unsafe {
88071                let _ = Box::from_raw(data as *mut T);
88072            }
88073        }
88074        extern "C" fn ffi_callback<
88075            T: FnMut(crate::q_render_target_output::AttachmentPoint) + 'static,
88076        >(
88077            data: *mut ::std::ffi::c_void,
88078            arg0: crate::q_render_target_output::AttachmentPoint,
88079        ) {
88080            unsafe { (*(data as *mut T))(arg0) }
88081        }
88082        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88083        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_set(self as *const crate::SlotOfAttachmentPoint as *mut crate::SlotOfAttachmentPoint, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88084    }
88085
88086    /// Calls the slot directly, invoking the assigned handler (if any).
88087    #[inline(always)]
88088    pub unsafe fn slot(&self, arg0: crate::q_render_target_output::AttachmentPoint) {
88089        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_slot_(self as *const crate::SlotOfAttachmentPoint as *mut crate::SlotOfAttachmentPoint, arg0)
88090    }
88091
88092    #[inline(always)]
88093    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
88094        let ffi_result = {
88095            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_staticMetaObject()
88096        };
88097        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88098            .expect("attempted to construct a null Ref")
88099    }
88100
88101    #[inline(always)]
88102    pub unsafe fn tr(
88103        s: *const ::std::os::raw::c_char,
88104        c: *const ::std::os::raw::c_char,
88105        n: ::std::os::raw::c_int,
88106    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88107        let ffi_result = {
88108            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_tr(s, c, n)
88109        };
88110        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88111    }
88112
88113    #[inline(always)]
88114    pub unsafe fn tr_utf8(
88115        s: *const ::std::os::raw::c_char,
88116        c: *const ::std::os::raw::c_char,
88117        n: ::std::os::raw::c_int,
88118    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88119        let ffi_result = {
88120            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_trUtf8(s, c, n)
88121        };
88122        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88123    }
88124}
88125
88126impl ::qt_core::AsReceiver for crate::SlotOfQCamera {
88127    type Arguments = (*mut crate::QCamera,);
88128    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
88129        unsafe {
88130            ::qt_core::Receiver::new(
88131                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
88132                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(Qt3DRender::QCamera *)\0"),
88133            )
88134        }
88135    }
88136}
88137
88138/// Binds a Qt signal with arguments `*mut crate::QCamera` to a Rust closure.
88139///
88140/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QCamera*```</span>).
88141///
88142/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
88143///
88144/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
88145///
88146/// If `set()` was not called, slot invocation has no effect.
88147#[repr(C)]
88148pub struct SlotOfQCamera {
88149    _unused: u8,
88150}
88151impl SlotOfQCamera {
88152    #[inline(always)]
88153    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
88154        let ffi_result = {
88155            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_metaObject(self as *const crate::SlotOfQCamera)
88156        };
88157        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88158    }
88159
88160    /// Creates a new object.
88161    #[inline(always)]
88162    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QCamera>) + 'static>(
88163        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
88164        callback: T,
88165    ) -> ::qt_core::QBox<crate::SlotOfQCamera> {
88166        let ffi_result = {
88167            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88168                unsafe {
88169                    let _ = Box::from_raw(data as *mut T);
88170                }
88171            }
88172            extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QCamera>) + 'static>(
88173                data: *mut ::std::ffi::c_void,
88174                arg0: *mut crate::QCamera,
88175            ) {
88176                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
88177            }
88178            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88179            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88180        };
88181        ::qt_core::QBox::from_raw(ffi_result)
88182    }
88183
88184    #[inline(always)]
88185    pub unsafe fn qt_metacall(
88186        &self,
88187        arg1: ::qt_core::q_meta_object::Call,
88188        arg2: ::std::os::raw::c_int,
88189        arg3: *mut *mut ::std::ffi::c_void,
88190    ) -> ::std::os::raw::c_int {
88191        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_qt_metacall(self as *const crate::SlotOfQCamera as *mut crate::SlotOfQCamera, arg1, arg2, arg3)
88192    }
88193
88194    #[inline(always)]
88195    pub unsafe fn qt_metacast(
88196        &self,
88197        arg1: *const ::std::os::raw::c_char,
88198    ) -> *mut ::std::ffi::c_void {
88199        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_qt_metacast(self as *const crate::SlotOfQCamera as *mut crate::SlotOfQCamera, arg1)
88200    }
88201
88202    /// Assigns `callback` as the signal handler.
88203    ///
88204    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
88205    #[inline(always)]
88206    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QCamera>) + 'static>(&self, callback: T) {
88207        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88208            unsafe {
88209                let _ = Box::from_raw(data as *mut T);
88210            }
88211        }
88212        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QCamera>) + 'static>(
88213            data: *mut ::std::ffi::c_void,
88214            arg0: *mut crate::QCamera,
88215        ) {
88216            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
88217        }
88218        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88219        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_set(self as *const crate::SlotOfQCamera as *mut crate::SlotOfQCamera, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88220    }
88221
88222    /// Calls the slot directly, invoking the assigned handler (if any).
88223    #[inline(always)]
88224    pub unsafe fn slot(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QCamera>>) {
88225        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_slot_(self as *const crate::SlotOfQCamera as *mut crate::SlotOfQCamera, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QCamera>>::cast_into(arg0).as_raw_ptr() as *mut crate::QCamera)
88226    }
88227
88228    #[inline(always)]
88229    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
88230        let ffi_result = {
88231            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_staticMetaObject()
88232        };
88233        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88234            .expect("attempted to construct a null Ref")
88235    }
88236
88237    #[inline(always)]
88238    pub unsafe fn tr(
88239        s: *const ::std::os::raw::c_char,
88240        c: *const ::std::os::raw::c_char,
88241        n: ::std::os::raw::c_int,
88242    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88243        let ffi_result = {
88244            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_tr(s, c, n)
88245        };
88246        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88247    }
88248
88249    #[inline(always)]
88250    pub unsafe fn tr_utf8(
88251        s: *const ::std::os::raw::c_char,
88252        c: *const ::std::os::raw::c_char,
88253        n: ::std::os::raw::c_int,
88254    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88255        let ffi_result = {
88256            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_trUtf8(s, c, n)
88257        };
88258        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88259    }
88260}
88261
88262impl ::qt_core::AsReceiver for crate::SlotOfWindingDirection {
88263    type Arguments = (crate::q_front_face::WindingDirection,);
88264    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
88265        unsafe {
88266            ::qt_core::Receiver::new(
88267                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
88268                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
88269                    b"1slot_(Qt3DRender::QFrontFace::WindingDirection)\0",
88270                ),
88271            )
88272        }
88273    }
88274}
88275
88276/// Binds a Qt signal with arguments `crate::q_front_face::WindingDirection` to a Rust closure.
88277///
88278/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QFrontFace::WindingDirection```</span>).
88279///
88280/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
88281///
88282/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
88283///
88284/// If `set()` was not called, slot invocation has no effect.
88285#[repr(C)]
88286pub struct SlotOfWindingDirection {
88287    _unused: u8,
88288}
88289impl SlotOfWindingDirection {
88290    #[inline(always)]
88291    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
88292        let ffi_result = {
88293            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_metaObject(self as *const crate::SlotOfWindingDirection)
88294        };
88295        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88296    }
88297
88298    /// Creates a new object.
88299    #[inline(always)]
88300    pub unsafe fn new<T: FnMut(crate::q_front_face::WindingDirection) + 'static>(
88301        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
88302        callback: T,
88303    ) -> ::qt_core::QBox<crate::SlotOfWindingDirection> {
88304        let ffi_result = {
88305            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88306                unsafe {
88307                    let _ = Box::from_raw(data as *mut T);
88308                }
88309            }
88310            extern "C" fn ffi_callback<
88311                T: FnMut(crate::q_front_face::WindingDirection) + 'static,
88312            >(
88313                data: *mut ::std::ffi::c_void,
88314                arg0: crate::q_front_face::WindingDirection,
88315            ) {
88316                unsafe { (*(data as *mut T))(arg0) }
88317            }
88318            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88319            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88320        };
88321        ::qt_core::QBox::from_raw(ffi_result)
88322    }
88323
88324    #[inline(always)]
88325    pub unsafe fn qt_metacall(
88326        &self,
88327        arg1: ::qt_core::q_meta_object::Call,
88328        arg2: ::std::os::raw::c_int,
88329        arg3: *mut *mut ::std::ffi::c_void,
88330    ) -> ::std::os::raw::c_int {
88331        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_qt_metacall(self as *const crate::SlotOfWindingDirection as *mut crate::SlotOfWindingDirection, arg1, arg2, arg3)
88332    }
88333
88334    #[inline(always)]
88335    pub unsafe fn qt_metacast(
88336        &self,
88337        arg1: *const ::std::os::raw::c_char,
88338    ) -> *mut ::std::ffi::c_void {
88339        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_qt_metacast(self as *const crate::SlotOfWindingDirection as *mut crate::SlotOfWindingDirection, arg1)
88340    }
88341
88342    /// Assigns `callback` as the signal handler.
88343    ///
88344    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
88345    #[inline(always)]
88346    pub unsafe fn set<T: FnMut(crate::q_front_face::WindingDirection) + 'static>(
88347        &self,
88348        callback: T,
88349    ) {
88350        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88351            unsafe {
88352                let _ = Box::from_raw(data as *mut T);
88353            }
88354        }
88355        extern "C" fn ffi_callback<T: FnMut(crate::q_front_face::WindingDirection) + 'static>(
88356            data: *mut ::std::ffi::c_void,
88357            arg0: crate::q_front_face::WindingDirection,
88358        ) {
88359            unsafe { (*(data as *mut T))(arg0) }
88360        }
88361        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88362        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_set(self as *const crate::SlotOfWindingDirection as *mut crate::SlotOfWindingDirection, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88363    }
88364
88365    /// Calls the slot directly, invoking the assigned handler (if any).
88366    #[inline(always)]
88367    pub unsafe fn slot(&self, arg0: crate::q_front_face::WindingDirection) {
88368        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_slot_(self as *const crate::SlotOfWindingDirection as *mut crate::SlotOfWindingDirection, arg0)
88369    }
88370
88371    #[inline(always)]
88372    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
88373        let ffi_result = {
88374            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_staticMetaObject()
88375        };
88376        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88377            .expect("attempted to construct a null Ref")
88378    }
88379
88380    #[inline(always)]
88381    pub unsafe fn tr(
88382        s: *const ::std::os::raw::c_char,
88383        c: *const ::std::os::raw::c_char,
88384        n: ::std::os::raw::c_int,
88385    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88386        let ffi_result = {
88387            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_tr(s, c, n)
88388        };
88389        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88390    }
88391
88392    #[inline(always)]
88393    pub unsafe fn tr_utf8(
88394        s: *const ::std::os::raw::c_char,
88395        c: *const ::std::os::raw::c_char,
88396        n: ::std::os::raw::c_int,
88397    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88398        let ffi_result = {
88399            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_trUtf8(s, c, n)
88400        };
88401        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88402    }
88403}
88404
88405impl ::qt_core::AsReceiver for crate::SlotOfQEffect {
88406    type Arguments = (*mut crate::QEffect,);
88407    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
88408        unsafe {
88409            ::qt_core::Receiver::new(
88410                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
88411                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(Qt3DRender::QEffect *)\0"),
88412            )
88413        }
88414    }
88415}
88416
88417/// Binds a Qt signal with arguments `*mut crate::QEffect` to a Rust closure.
88418///
88419/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QEffect*```</span>).
88420///
88421/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
88422///
88423/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
88424///
88425/// If `set()` was not called, slot invocation has no effect.
88426#[repr(C)]
88427pub struct SlotOfQEffect {
88428    _unused: u8,
88429}
88430impl SlotOfQEffect {
88431    #[inline(always)]
88432    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
88433        let ffi_result = {
88434            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_metaObject(self as *const crate::SlotOfQEffect)
88435        };
88436        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88437    }
88438
88439    /// Creates a new object.
88440    #[inline(always)]
88441    pub unsafe fn new<T: FnMut(::qt_core::QPtr<crate::QEffect>) + 'static>(
88442        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
88443        callback: T,
88444    ) -> ::qt_core::QBox<crate::SlotOfQEffect> {
88445        let ffi_result = {
88446            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88447                unsafe {
88448                    let _ = Box::from_raw(data as *mut T);
88449                }
88450            }
88451            extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QEffect>) + 'static>(
88452                data: *mut ::std::ffi::c_void,
88453                arg0: *mut crate::QEffect,
88454            ) {
88455                unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
88456            }
88457            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88458            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88459        };
88460        ::qt_core::QBox::from_raw(ffi_result)
88461    }
88462
88463    #[inline(always)]
88464    pub unsafe fn qt_metacall(
88465        &self,
88466        arg1: ::qt_core::q_meta_object::Call,
88467        arg2: ::std::os::raw::c_int,
88468        arg3: *mut *mut ::std::ffi::c_void,
88469    ) -> ::std::os::raw::c_int {
88470        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_qt_metacall(self as *const crate::SlotOfQEffect as *mut crate::SlotOfQEffect, arg1, arg2, arg3)
88471    }
88472
88473    #[inline(always)]
88474    pub unsafe fn qt_metacast(
88475        &self,
88476        arg1: *const ::std::os::raw::c_char,
88477    ) -> *mut ::std::ffi::c_void {
88478        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_qt_metacast(self as *const crate::SlotOfQEffect as *mut crate::SlotOfQEffect, arg1)
88479    }
88480
88481    /// Assigns `callback` as the signal handler.
88482    ///
88483    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
88484    #[inline(always)]
88485    pub unsafe fn set<T: FnMut(::qt_core::QPtr<crate::QEffect>) + 'static>(&self, callback: T) {
88486        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88487            unsafe {
88488                let _ = Box::from_raw(data as *mut T);
88489            }
88490        }
88491        extern "C" fn ffi_callback<T: FnMut(::qt_core::QPtr<crate::QEffect>) + 'static>(
88492            data: *mut ::std::ffi::c_void,
88493            arg0: *mut crate::QEffect,
88494        ) {
88495            unsafe { (*(data as *mut T))(::qt_core::QPtr::from_raw(arg0)) }
88496        }
88497        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88498        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_set(self as *const crate::SlotOfQEffect as *mut crate::SlotOfQEffect, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88499    }
88500
88501    /// Calls the slot directly, invoking the assigned handler (if any).
88502    #[inline(always)]
88503    pub unsafe fn slot(&self, arg0: impl ::cpp_core::CastInto<::cpp_core::Ptr<crate::QEffect>>) {
88504        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_slot_(self as *const crate::SlotOfQEffect as *mut crate::SlotOfQEffect, ::cpp_core::CastInto::<::cpp_core::Ptr<crate::QEffect>>::cast_into(arg0).as_raw_ptr() as *mut crate::QEffect)
88505    }
88506
88507    #[inline(always)]
88508    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
88509        let ffi_result = {
88510            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_staticMetaObject()
88511        };
88512        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88513            .expect("attempted to construct a null Ref")
88514    }
88515
88516    #[inline(always)]
88517    pub unsafe fn tr(
88518        s: *const ::std::os::raw::c_char,
88519        c: *const ::std::os::raw::c_char,
88520        n: ::std::os::raw::c_int,
88521    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88522        let ffi_result = {
88523            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_tr(s, c, n)
88524        };
88525        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88526    }
88527
88528    #[inline(always)]
88529    pub unsafe fn tr_utf8(
88530        s: *const ::std::os::raw::c_char,
88531        c: *const ::std::os::raw::c_char,
88532        n: ::std::os::raw::c_int,
88533    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88534        let ffi_result = {
88535            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_trUtf8(s, c, n)
88536        };
88537        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88538    }
88539}
88540
88541impl ::qt_core::AsReceiver for crate::SlotOfStencilFaceMode {
88542    type Arguments = (crate::q_stencil_test_arguments::StencilFaceMode,);
88543    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
88544        unsafe {
88545            ::qt_core::Receiver::new(
88546                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
88547                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
88548                    b"1slot_(Qt3DRender::QStencilTestArguments::StencilFaceMode)\0",
88549                ),
88550            )
88551        }
88552    }
88553}
88554
88555/// Binds a Qt signal with arguments `crate::q_stencil_test_arguments::StencilFaceMode` to a Rust closure.
88556///
88557/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QStencilTestArguments::StencilFaceMode```</span>).
88558///
88559/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
88560///
88561/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
88562///
88563/// If `set()` was not called, slot invocation has no effect.
88564#[repr(C)]
88565pub struct SlotOfStencilFaceMode {
88566    _unused: u8,
88567}
88568impl SlotOfStencilFaceMode {
88569    #[inline(always)]
88570    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
88571        let ffi_result = {
88572            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_metaObject(self as *const crate::SlotOfStencilFaceMode)
88573        };
88574        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88575    }
88576
88577    /// Creates a new object.
88578    #[inline(always)]
88579    pub unsafe fn new<T: FnMut(crate::q_stencil_test_arguments::StencilFaceMode) + 'static>(
88580        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
88581        callback: T,
88582    ) -> ::qt_core::QBox<crate::SlotOfStencilFaceMode> {
88583        let ffi_result = {
88584            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88585                unsafe {
88586                    let _ = Box::from_raw(data as *mut T);
88587                }
88588            }
88589            extern "C" fn ffi_callback<
88590                T: FnMut(crate::q_stencil_test_arguments::StencilFaceMode) + 'static,
88591            >(
88592                data: *mut ::std::ffi::c_void,
88593                arg0: crate::q_stencil_test_arguments::StencilFaceMode,
88594            ) {
88595                unsafe { (*(data as *mut T))(arg0) }
88596            }
88597            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88598            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88599        };
88600        ::qt_core::QBox::from_raw(ffi_result)
88601    }
88602
88603    #[inline(always)]
88604    pub unsafe fn qt_metacall(
88605        &self,
88606        arg1: ::qt_core::q_meta_object::Call,
88607        arg2: ::std::os::raw::c_int,
88608        arg3: *mut *mut ::std::ffi::c_void,
88609    ) -> ::std::os::raw::c_int {
88610        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_qt_metacall(self as *const crate::SlotOfStencilFaceMode as *mut crate::SlotOfStencilFaceMode, arg1, arg2, arg3)
88611    }
88612
88613    #[inline(always)]
88614    pub unsafe fn qt_metacast(
88615        &self,
88616        arg1: *const ::std::os::raw::c_char,
88617    ) -> *mut ::std::ffi::c_void {
88618        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_qt_metacast(self as *const crate::SlotOfStencilFaceMode as *mut crate::SlotOfStencilFaceMode, arg1)
88619    }
88620
88621    /// Assigns `callback` as the signal handler.
88622    ///
88623    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
88624    #[inline(always)]
88625    pub unsafe fn set<T: FnMut(crate::q_stencil_test_arguments::StencilFaceMode) + 'static>(
88626        &self,
88627        callback: T,
88628    ) {
88629        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88630            unsafe {
88631                let _ = Box::from_raw(data as *mut T);
88632            }
88633        }
88634        extern "C" fn ffi_callback<
88635            T: FnMut(crate::q_stencil_test_arguments::StencilFaceMode) + 'static,
88636        >(
88637            data: *mut ::std::ffi::c_void,
88638            arg0: crate::q_stencil_test_arguments::StencilFaceMode,
88639        ) {
88640            unsafe { (*(data as *mut T))(arg0) }
88641        }
88642        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88643        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_set(self as *const crate::SlotOfStencilFaceMode as *mut crate::SlotOfStencilFaceMode, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88644    }
88645
88646    /// Calls the slot directly, invoking the assigned handler (if any).
88647    #[inline(always)]
88648    pub unsafe fn slot(&self, arg0: crate::q_stencil_test_arguments::StencilFaceMode) {
88649        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_slot_(self as *const crate::SlotOfStencilFaceMode as *mut crate::SlotOfStencilFaceMode, arg0)
88650    }
88651
88652    #[inline(always)]
88653    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
88654        let ffi_result = {
88655            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_staticMetaObject()
88656        };
88657        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88658            .expect("attempted to construct a null Ref")
88659    }
88660
88661    #[inline(always)]
88662    pub unsafe fn tr(
88663        s: *const ::std::os::raw::c_char,
88664        c: *const ::std::os::raw::c_char,
88665        n: ::std::os::raw::c_int,
88666    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88667        let ffi_result = {
88668            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_tr(s, c, n)
88669        };
88670        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88671    }
88672
88673    #[inline(always)]
88674    pub unsafe fn tr_utf8(
88675        s: *const ::std::os::raw::c_char,
88676        c: *const ::std::os::raw::c_char,
88677        n: ::std::os::raw::c_int,
88678    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88679        let ffi_result = {
88680            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_trUtf8(s, c, n)
88681        };
88682        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88683    }
88684}
88685
88686#[cfg_attr(
88687    feature = "ritual_rustdoc_nightly",
88688    doc(cfg(cpp_lib_version = "5.14.0"))
88689)]
88690#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88691
88692impl ::qt_core::AsReceiver for crate::SlotOfFaceMode2 {
88693    type Arguments = (crate::q_raster_mode::FaceMode,);
88694    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
88695        unsafe {
88696            ::qt_core::Receiver::new(
88697                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
88698                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
88699                    b"1slot_(Qt3DRender::QRasterMode::FaceMode)\0",
88700                ),
88701            )
88702        }
88703    }
88704}
88705
88706/// Binds a Qt signal with arguments `crate::q_raster_mode::FaceMode` to a Rust closure.
88707///
88708/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QRasterMode::FaceMode```</span>).
88709///
88710/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
88711///
88712/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
88713///
88714/// If `set()` was not called, slot invocation has no effect.
88715#[repr(C)]
88716pub struct SlotOfFaceMode2 {
88717    _unused: u8,
88718}
88719impl SlotOfFaceMode2 {
88720    #[inline(always)]
88721    #[cfg_attr(
88722        feature = "ritual_rustdoc_nightly",
88723        doc(cfg(cpp_lib_version = "5.14.0"))
88724    )]
88725    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88726    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
88727        let ffi_result = {
88728            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_metaObject(self as *const crate::SlotOfFaceMode2)
88729        };
88730        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88731    }
88732
88733    /// Creates a new object.
88734    #[inline(always)]
88735    #[cfg_attr(
88736        feature = "ritual_rustdoc_nightly",
88737        doc(cfg(cpp_lib_version = "5.14.0"))
88738    )]
88739    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88740    pub unsafe fn new<T: FnMut(crate::q_raster_mode::FaceMode) + 'static>(
88741        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
88742        callback: T,
88743    ) -> ::qt_core::QBox<crate::SlotOfFaceMode2> {
88744        let ffi_result = {
88745            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88746                unsafe {
88747                    let _ = Box::from_raw(data as *mut T);
88748                }
88749            }
88750            extern "C" fn ffi_callback<T: FnMut(crate::q_raster_mode::FaceMode) + 'static>(
88751                data: *mut ::std::ffi::c_void,
88752                arg0: crate::q_raster_mode::FaceMode,
88753            ) {
88754                unsafe { (*(data as *mut T))(arg0) }
88755            }
88756            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88757            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88758        };
88759        ::qt_core::QBox::from_raw(ffi_result)
88760    }
88761
88762    #[inline(always)]
88763    #[cfg_attr(
88764        feature = "ritual_rustdoc_nightly",
88765        doc(cfg(cpp_lib_version = "5.14.0"))
88766    )]
88767    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88768    pub unsafe fn qt_metacall(
88769        &self,
88770        arg1: ::qt_core::q_meta_object::Call,
88771        arg2: ::std::os::raw::c_int,
88772        arg3: *mut *mut ::std::ffi::c_void,
88773    ) -> ::std::os::raw::c_int {
88774        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_qt_metacall(self as *const crate::SlotOfFaceMode2 as *mut crate::SlotOfFaceMode2, arg1, arg2, arg3)
88775    }
88776
88777    #[inline(always)]
88778    #[cfg_attr(
88779        feature = "ritual_rustdoc_nightly",
88780        doc(cfg(cpp_lib_version = "5.14.0"))
88781    )]
88782    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88783    pub unsafe fn qt_metacast(
88784        &self,
88785        arg1: *const ::std::os::raw::c_char,
88786    ) -> *mut ::std::ffi::c_void {
88787        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_qt_metacast(self as *const crate::SlotOfFaceMode2 as *mut crate::SlotOfFaceMode2, arg1)
88788    }
88789
88790    /// Assigns `callback` as the signal handler.
88791    ///
88792    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
88793    #[inline(always)]
88794    #[cfg_attr(
88795        feature = "ritual_rustdoc_nightly",
88796        doc(cfg(cpp_lib_version = "5.14.0"))
88797    )]
88798    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88799    pub unsafe fn set<T: FnMut(crate::q_raster_mode::FaceMode) + 'static>(&self, callback: T) {
88800        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88801            unsafe {
88802                let _ = Box::from_raw(data as *mut T);
88803            }
88804        }
88805        extern "C" fn ffi_callback<T: FnMut(crate::q_raster_mode::FaceMode) + 'static>(
88806            data: *mut ::std::ffi::c_void,
88807            arg0: crate::q_raster_mode::FaceMode,
88808        ) {
88809            unsafe { (*(data as *mut T))(arg0) }
88810        }
88811        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88812        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_set(self as *const crate::SlotOfFaceMode2 as *mut crate::SlotOfFaceMode2, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88813    }
88814
88815    /// Calls the slot directly, invoking the assigned handler (if any).
88816    #[inline(always)]
88817    #[cfg_attr(
88818        feature = "ritual_rustdoc_nightly",
88819        doc(cfg(cpp_lib_version = "5.14.0"))
88820    )]
88821    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88822    pub unsafe fn slot(&self, arg0: crate::q_raster_mode::FaceMode) {
88823        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_slot_(self as *const crate::SlotOfFaceMode2 as *mut crate::SlotOfFaceMode2, arg0)
88824    }
88825
88826    #[inline(always)]
88827    #[cfg_attr(
88828        feature = "ritual_rustdoc_nightly",
88829        doc(cfg(cpp_lib_version = "5.14.0"))
88830    )]
88831    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88832    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
88833        let ffi_result = {
88834            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_staticMetaObject()
88835        };
88836        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88837            .expect("attempted to construct a null Ref")
88838    }
88839
88840    #[inline(always)]
88841    #[cfg_attr(
88842        feature = "ritual_rustdoc_nightly",
88843        doc(cfg(cpp_lib_version = "5.14.0"))
88844    )]
88845    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88846    pub unsafe fn tr(
88847        s: *const ::std::os::raw::c_char,
88848        c: *const ::std::os::raw::c_char,
88849        n: ::std::os::raw::c_int,
88850    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88851        let ffi_result = {
88852            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_tr(s, c, n)
88853        };
88854        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88855    }
88856
88857    #[inline(always)]
88858    #[cfg_attr(
88859        feature = "ritual_rustdoc_nightly",
88860        doc(cfg(cpp_lib_version = "5.14.0"))
88861    )]
88862    #[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
88863    pub unsafe fn tr_utf8(
88864        s: *const ::std::os::raw::c_char,
88865        c: *const ::std::os::raw::c_char,
88866        n: ::std::os::raw::c_int,
88867    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88868        let ffi_result = {
88869            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_trUtf8(s, c, n)
88870        };
88871        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88872    }
88873}
88874
88875impl ::qt_core::AsReceiver for crate::SlotOfAttributeType {
88876    type Arguments = (crate::q_attribute::AttributeType,);
88877    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
88878        unsafe {
88879            ::qt_core::Receiver::new(
88880                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
88881                ::std::ffi::CStr::from_bytes_with_nul_unchecked(
88882                    b"1slot_(Qt3DRender::QAttribute::AttributeType)\0",
88883                ),
88884            )
88885        }
88886    }
88887}
88888
88889/// Binds a Qt signal with arguments `crate::q_attribute::AttributeType` to a Rust closure.
88890///
88891/// Corresponding C++ argument types: (<span style='color: green;'>```Qt3DRender::QAttribute::AttributeType```</span>).
88892///
88893/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
88894///
88895/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
88896///
88897/// If `set()` was not called, slot invocation has no effect.
88898#[repr(C)]
88899pub struct SlotOfAttributeType {
88900    _unused: u8,
88901}
88902impl SlotOfAttributeType {
88903    #[inline(always)]
88904    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
88905        let ffi_result = {
88906            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_metaObject(self as *const crate::SlotOfAttributeType)
88907        };
88908        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88909    }
88910
88911    /// Creates a new object.
88912    #[inline(always)]
88913    pub unsafe fn new<T: FnMut(crate::q_attribute::AttributeType) + 'static>(
88914        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
88915        callback: T,
88916    ) -> ::qt_core::QBox<crate::SlotOfAttributeType> {
88917        let ffi_result = {
88918            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88919                unsafe {
88920                    let _ = Box::from_raw(data as *mut T);
88921                }
88922            }
88923            extern "C" fn ffi_callback<T: FnMut(crate::q_attribute::AttributeType) + 'static>(
88924                data: *mut ::std::ffi::c_void,
88925                arg0: crate::q_attribute::AttributeType,
88926            ) {
88927                unsafe { (*(data as *mut T))(arg0) }
88928            }
88929            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88930            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88931        };
88932        ::qt_core::QBox::from_raw(ffi_result)
88933    }
88934
88935    #[inline(always)]
88936    pub unsafe fn qt_metacall(
88937        &self,
88938        arg1: ::qt_core::q_meta_object::Call,
88939        arg2: ::std::os::raw::c_int,
88940        arg3: *mut *mut ::std::ffi::c_void,
88941    ) -> ::std::os::raw::c_int {
88942        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_qt_metacall(self as *const crate::SlotOfAttributeType as *mut crate::SlotOfAttributeType, arg1, arg2, arg3)
88943    }
88944
88945    #[inline(always)]
88946    pub unsafe fn qt_metacast(
88947        &self,
88948        arg1: *const ::std::os::raw::c_char,
88949    ) -> *mut ::std::ffi::c_void {
88950        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_qt_metacast(self as *const crate::SlotOfAttributeType as *mut crate::SlotOfAttributeType, arg1)
88951    }
88952
88953    /// Assigns `callback` as the signal handler.
88954    ///
88955    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
88956    #[inline(always)]
88957    pub unsafe fn set<T: FnMut(crate::q_attribute::AttributeType) + 'static>(&self, callback: T) {
88958        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
88959            unsafe {
88960                let _ = Box::from_raw(data as *mut T);
88961            }
88962        }
88963        extern "C" fn ffi_callback<T: FnMut(crate::q_attribute::AttributeType) + 'static>(
88964            data: *mut ::std::ffi::c_void,
88965            arg0: crate::q_attribute::AttributeType,
88966        ) {
88967            unsafe { (*(data as *mut T))(arg0) }
88968        }
88969        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
88970        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_set(self as *const crate::SlotOfAttributeType as *mut crate::SlotOfAttributeType, Some(ffi_callback::<T>), Some(deleter::<T>), data)
88971    }
88972
88973    /// Calls the slot directly, invoking the assigned handler (if any).
88974    #[inline(always)]
88975    pub unsafe fn slot(&self, arg0: crate::q_attribute::AttributeType) {
88976        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_slot_(self as *const crate::SlotOfAttributeType as *mut crate::SlotOfAttributeType, arg0)
88977    }
88978
88979    #[inline(always)]
88980    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
88981        let ffi_result = {
88982            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_staticMetaObject()
88983        };
88984        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
88985            .expect("attempted to construct a null Ref")
88986    }
88987
88988    #[inline(always)]
88989    pub unsafe fn tr(
88990        s: *const ::std::os::raw::c_char,
88991        c: *const ::std::os::raw::c_char,
88992        n: ::std::os::raw::c_int,
88993    ) -> ::cpp_core::CppBox<::qt_core::QString> {
88994        let ffi_result = {
88995            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_tr(s, c, n)
88996        };
88997        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
88998    }
88999
89000    #[inline(always)]
89001    pub unsafe fn tr_utf8(
89002        s: *const ::std::os::raw::c_char,
89003        c: *const ::std::os::raw::c_char,
89004        n: ::std::os::raw::c_int,
89005    ) -> ::cpp_core::CppBox<::qt_core::QString> {
89006        let ffi_result = {
89007            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_trUtf8(s, c, n)
89008        };
89009        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
89010    }
89011}
89012
89013impl ::qt_core::AsReceiver for crate::SlotOfUint {
89014    type Arguments = (::std::os::raw::c_uint,);
89015    fn as_receiver(&self) -> ::qt_core::Receiver<Self::Arguments> {
89016        unsafe {
89017            ::qt_core::Receiver::new(
89018                ::cpp_core::Ref::from_raw(self).expect("attempted to construct a null Ref"),
89019                ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"1slot_(unsigned int)\0"),
89020            )
89021        }
89022    }
89023}
89024
89025/// Binds a Qt signal with arguments `::std::os::raw::c_uint` to a Rust closure.
89026///
89027/// Corresponding C++ argument types: (<span style='color: green;'>```unsigned int```</span>).
89028///
89029/// Create an object using `new()` and bind your closure using `set()`. The closure will be called with the signal's arguments when the slot is invoked. Use `connect()` method of a `qt_core::Signal` object to connect the signal to this slot. The closure will be executed each time the slot is invoked until source signals are disconnected or the slot object is destroyed.
89030///
89031/// The slot object takes ownership of the passed closure. If `set()` is called again, previously set closure is dropped. Make sure that the slot object does not outlive objects referenced by the closure.
89032///
89033/// If `set()` was not called, slot invocation has no effect.
89034#[repr(C)]
89035pub struct SlotOfUint {
89036    _unused: u8,
89037}
89038impl SlotOfUint {
89039    #[inline(always)]
89040    pub unsafe fn meta_object(&self) -> ::cpp_core::Ptr<::qt_core::QMetaObject> {
89041        let ffi_result = {
89042            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_metaObject(self as *const crate::SlotOfUint)
89043        };
89044        ::cpp_core::Ptr::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
89045    }
89046
89047    /// Creates a new object.
89048    #[inline(always)]
89049    pub unsafe fn new<T: FnMut(::std::os::raw::c_uint) + 'static>(
89050        parent: impl ::cpp_core::CastInto<::cpp_core::Ptr<::qt_core::QObject>>,
89051        callback: T,
89052    ) -> ::qt_core::QBox<crate::SlotOfUint> {
89053        let ffi_result = {
89054            extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
89055                unsafe {
89056                    let _ = Box::from_raw(data as *mut T);
89057                }
89058            }
89059            extern "C" fn ffi_callback<T: FnMut(::std::os::raw::c_uint) + 'static>(
89060                data: *mut ::std::ffi::c_void,
89061                arg0: ::std::os::raw::c_uint,
89062            ) {
89063                unsafe { (*(data as *mut T))(arg0) }
89064            }
89065            let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
89066            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int(::cpp_core::CastInto::<::cpp_core::Ptr<::qt_core::QObject>>::cast_into(parent).as_raw_ptr() as *mut ::qt_core::QObject, Some(ffi_callback::<T>), Some(deleter::<T>), data)
89067        };
89068        ::qt_core::QBox::from_raw(ffi_result)
89069    }
89070
89071    #[inline(always)]
89072    pub unsafe fn qt_metacall(
89073        &self,
89074        arg1: ::qt_core::q_meta_object::Call,
89075        arg2: ::std::os::raw::c_int,
89076        arg3: *mut *mut ::std::ffi::c_void,
89077    ) -> ::std::os::raw::c_int {
89078        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_qt_metacall(self as *const crate::SlotOfUint as *mut crate::SlotOfUint, arg1, arg2, arg3)
89079    }
89080
89081    #[inline(always)]
89082    pub unsafe fn qt_metacast(
89083        &self,
89084        arg1: *const ::std::os::raw::c_char,
89085    ) -> *mut ::std::ffi::c_void {
89086        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_qt_metacast(self as *const crate::SlotOfUint as *mut crate::SlotOfUint, arg1)
89087    }
89088
89089    /// Assigns `callback` as the signal handler.
89090    ///
89091    /// `func` will be called each time a connected signal is emitted. Any previously assigned function will be deregistered. Passing `None` will deregister the handler without setting a new one.
89092    #[inline(always)]
89093    pub unsafe fn set<T: FnMut(::std::os::raw::c_uint) + 'static>(&self, callback: T) {
89094        extern "C" fn deleter<T>(data: *mut ::std::ffi::c_void) {
89095            unsafe {
89096                let _ = Box::from_raw(data as *mut T);
89097            }
89098        }
89099        extern "C" fn ffi_callback<T: FnMut(::std::os::raw::c_uint) + 'static>(
89100            data: *mut ::std::ffi::c_void,
89101            arg0: ::std::os::raw::c_uint,
89102        ) {
89103            unsafe { (*(data as *mut T))(arg0) }
89104        }
89105        let data = Box::into_raw(Box::new(callback)) as *mut ::std::ffi::c_void;
89106        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_set(
89107            self as *const crate::SlotOfUint as *mut crate::SlotOfUint,
89108            Some(ffi_callback::<T>),
89109            Some(deleter::<T>),
89110            data,
89111        )
89112    }
89113
89114    /// Calls the slot directly, invoking the assigned handler (if any).
89115    #[inline(always)]
89116    pub unsafe fn slot(&self, arg0: ::std::os::raw::c_uint) {
89117        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_slot_(
89118            self as *const crate::SlotOfUint as *mut crate::SlotOfUint,
89119            arg0,
89120        )
89121    }
89122
89123    #[inline(always)]
89124    pub unsafe fn static_meta_object() -> ::cpp_core::Ref<::qt_core::QMetaObject> {
89125        let ffi_result = {
89126            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_staticMetaObject()
89127        };
89128        ::cpp_core::Ref::from_raw(ffi_result as *mut ::qt_core::QMetaObject)
89129            .expect("attempted to construct a null Ref")
89130    }
89131
89132    #[inline(always)]
89133    pub unsafe fn tr(
89134        s: *const ::std::os::raw::c_char,
89135        c: *const ::std::os::raw::c_char,
89136        n: ::std::os::raw::c_int,
89137    ) -> ::cpp_core::CppBox<::qt_core::QString> {
89138        let ffi_result = {
89139            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_tr(
89140                s, c, n,
89141            )
89142        };
89143        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
89144    }
89145
89146    #[inline(always)]
89147    pub unsafe fn tr_utf8(
89148        s: *const ::std::os::raw::c_char,
89149        c: *const ::std::os::raw::c_char,
89150        n: ::std::os::raw::c_int,
89151    ) -> ::cpp_core::CppBox<::qt_core::QString> {
89152        let ffi_result = {
89153            crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_trUtf8(
89154                s, c, n,
89155            )
89156        };
89157        ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
89158    }
89159}
89160
89161impl ::cpp_core::CppDeletable for crate::QAbstractFunctor {
89162    /// <p>Desctructor</p>
89163    ///
89164    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QAbstractFunctor::~QAbstractFunctor()```</span>.
89165    ///
89166    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractfunctor.html#dtor.QAbstractFunctor">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Desctructor</p></div>
89167    #[inline(always)]
89168    unsafe fn delete(&self) {
89169        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractFunctor_dQAbstractFunctor(
89170            self as *const crate::QAbstractFunctor as *mut crate::QAbstractFunctor,
89171        )
89172    }
89173}
89174
89175impl ::cpp_core::CppDeletable for crate::QAbstractLight {
89176    /// <p>Destroys the instance of QAbstractLight.</p>
89177    ///
89178    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QAbstractLight::~QAbstractLight()```</span>.
89179    ///
89180    /// <a href="http://doc.qt.io/qt-5/qt3drender-qabstractlight.html#dtor.QAbstractLight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QAbstractLight.</p></div>
89181    #[inline(always)]
89182    unsafe fn delete(&self) {
89183        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractLight_dQAbstractLight(
89184            self as *const crate::QAbstractLight as *mut crate::QAbstractLight,
89185        )
89186    }
89187}
89188
89189impl ::cpp_core::CppDeletable for crate::QTextureImageData {
89190    /// Calls C++ function: <span style='color: green;'>```[destructor] void Qt3DRender::QTextureImageData::~QTextureImageData()```</span>.
89191    #[inline(always)]
89192    unsafe fn delete(&self) {
89193        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageData_dQTextureImageData(
89194            self as *const crate::QTextureImageData as *mut crate::QTextureImageData,
89195        )
89196    }
89197}
89198
89199impl ::cpp_core::CppDeletable for crate::QAbstractTexture {
89200    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QAbstractTexture::~QAbstractTexture()```</span>.
89201    #[inline(always)]
89202    unsafe fn delete(&self) {
89203        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTexture_dQAbstractTexture(
89204            self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
89205        )
89206    }
89207}
89208
89209impl ::cpp_core::CppDeletable for crate::QTextureImageDataGenerator {
89210    /// <p>Destroys the instance of QTextureImageDataGenerator. The destructor is virtual.</p>
89211    ///
89212    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTextureImageDataGenerator::~QTextureImageDataGenerator()```</span>.
89213    ///
89214    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html#dtor.QTextureImageDataGenerator">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QTextureImageDataGenerator. The destructor is virtual.</p></div>
89215    #[inline(always)]
89216    unsafe fn delete(&self) {
89217        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageDataGenerator_dQTextureImageDataGenerator(self as *const crate::QTextureImageDataGenerator as *mut crate::QTextureImageDataGenerator)
89218    }
89219}
89220
89221impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QTextureImageDataGenerator>>
89222    for crate::QTextureImageDataGenerator
89223{
89224    /// <p>Implement the method to compare this texture data generator to <i>other</i>. Returns a boolean that indicates whether the <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a> needs to reload the <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">QTextureImageData</a>.</p>
89225    ///
89226    /// Calls C++ function: <span style='color: green;'>```pure virtual bool Qt3DRender::QTextureImageDataGenerator::operator==(const Qt3DRender::QTextureImageDataGenerator& other) const```</span>.
89227    ///
89228    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedatagenerator.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Implement the method to compare this texture data generator to <i>other</i>. Returns a boolean that indicates whether the <a href="http://doc.qt.io/qt-5/qt3drender-qabstracttextureimage.html">QAbstractTextureImage</a> needs to reload the <a href="http://doc.qt.io/qt-5/qt3drender-qtextureimagedata.html">QTextureImageData</a>.</p></div>
89229    #[inline(always)]
89230    fn eq(&self, other: &::cpp_core::Ref<crate::QTextureImageDataGenerator>) -> bool {
89231        unsafe {
89232            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImageDataGenerator_operator__1(
89233                self as *const crate::QTextureImageDataGenerator,
89234                other.as_raw_ptr(),
89235            )
89236        }
89237    }
89238}
89239
89240impl ::cpp_core::CppDeletable for crate::QAbstractTextureImage {
89241    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QAbstractTextureImage::~QAbstractTextureImage()```</span>.
89242    #[inline(always)]
89243    unsafe fn delete(&self) {
89244        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractTextureImage_dQAbstractTextureImage(
89245            self as *const crate::QAbstractTextureImage as *mut crate::QAbstractTextureImage,
89246        )
89247    }
89248}
89249
89250impl ::cpp_core::CppDeletable for crate::QRenderState {
89251    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderState::~QRenderState()```</span>.
89252    #[inline(always)]
89253    unsafe fn delete(&self) {
89254        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderState_dQRenderState(
89255            self as *const crate::QRenderState as *mut crate::QRenderState,
89256        )
89257    }
89258}
89259
89260impl ::cpp_core::CppDeletable for crate::QAlphaCoverage {
89261    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QAlphaCoverage::~QAlphaCoverage()```</span>.
89262    #[inline(always)]
89263    unsafe fn delete(&self) {
89264        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaCoverage_dQAlphaCoverage(
89265            self as *const crate::QAlphaCoverage as *mut crate::QAlphaCoverage,
89266        )
89267    }
89268}
89269
89270impl ::cpp_core::CppDeletable for crate::QAlphaTest {
89271    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QAlphaTest::~QAlphaTest()```</span>.
89272    #[inline(always)]
89273    unsafe fn delete(&self) {
89274        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAlphaTest_dQAlphaTest(
89275            self as *const crate::QAlphaTest as *mut crate::QAlphaTest,
89276        )
89277    }
89278}
89279
89280impl ::cpp_core::CppDeletable for crate::QAttribute {
89281    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QAttribute::~QAttribute()```</span>.
89282    #[inline(always)]
89283    unsafe fn delete(&self) {
89284        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAttribute_dQAttribute(
89285            self as *const crate::QAttribute as *mut crate::QAttribute,
89286        )
89287    }
89288}
89289
89290impl ::cpp_core::CppDeletable for crate::QBlendEquation {
89291    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QBlendEquation::~QBlendEquation()```</span>.
89292    #[inline(always)]
89293    unsafe fn delete(&self) {
89294        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquation_dQBlendEquation(
89295            self as *const crate::QBlendEquation as *mut crate::QBlendEquation,
89296        )
89297    }
89298}
89299
89300impl ::cpp_core::CppDeletable for crate::QBlendEquationArguments {
89301    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QBlendEquationArguments::~QBlendEquationArguments()```</span>.
89302    #[inline(always)]
89303    unsafe fn delete(&self) {
89304        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlendEquationArguments_dQBlendEquationArguments(self as *const crate::QBlendEquationArguments as *mut crate::QBlendEquationArguments)
89305    }
89306}
89307
89308impl ::cpp_core::CppDeletable for crate::QBuffer {
89309    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QBuffer::~QBuffer()```</span>.
89310    #[inline(always)]
89311    unsafe fn delete(&self) {
89312        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBuffer_dQBuffer(
89313            self as *const crate::QBuffer as *mut crate::QBuffer,
89314        )
89315    }
89316}
89317
89318impl ::cpp_core::CppDeletable for crate::QFrameGraphNode {
89319    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QFrameGraphNode::~QFrameGraphNode()```</span>.
89320    #[inline(always)]
89321    unsafe fn delete(&self) {
89322        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNode_dQFrameGraphNode(
89323            self as *const crate::QFrameGraphNode as *mut crate::QFrameGraphNode,
89324        )
89325    }
89326}
89327
89328impl ::cpp_core::CppDeletable for crate::QBufferCapture {
89329    /// <p>Destroys the instance of QBufferCapture.</p>
89330    ///
89331    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QBufferCapture::~QBufferCapture()```</span>.
89332    ///
89333    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbuffercapture.html#dtor.QBufferCapture">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QBufferCapture.</p></div>
89334    #[inline(always)]
89335    unsafe fn delete(&self) {
89336        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferCapture_dQBufferCapture(
89337            self as *const crate::QBufferCapture as *mut crate::QBufferCapture,
89338        )
89339    }
89340}
89341
89342impl ::cpp_core::CppDeletable for crate::QBufferDataGenerator {
89343    /// <p>Destroys the instance of QBufferDataGenerator. The destructor is virtual.</p>
89344    ///
89345    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QBufferDataGenerator::~QBufferDataGenerator()```</span>.
89346    ///
89347    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html#dtor.QBufferDataGenerator">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QBufferDataGenerator. The destructor is virtual.</p></div>
89348    #[inline(always)]
89349    unsafe fn delete(&self) {
89350        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferDataGenerator_dQBufferDataGenerator(
89351            self as *const crate::QBufferDataGenerator as *mut crate::QBufferDataGenerator,
89352        )
89353    }
89354}
89355
89356impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QBufferDataGenerator>>
89357    for crate::QBufferDataGenerator
89358{
89359    /// <p>Should be reimplemented to return true when two generators (the one you are comparing against and the <i>other</i> generator) are identical, false otherwise.</p>
89360    ///
89361    /// Calls C++ function: <span style='color: green;'>```pure virtual bool Qt3DRender::QBufferDataGenerator::operator==(const Qt3DRender::QBufferDataGenerator& other) const```</span>.
89362    ///
89363    /// <a href="http://doc.qt.io/qt-5/qt3drender-qbufferdatagenerator.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Should be reimplemented to return true when two generators (the one you are comparing against and the <i>other</i> generator) are identical, false otherwise.</p>
89364    /// <p><b>Note: </b>The renderer uses this comparison to decide whether data for a buffer needs to be reuploaded or not when the functor on a <a href="http://doc.qt.io/qt-5/qt3drender-qbuffer.html">Qt3DRender::QBuffer</a> changes.</p></div>
89365    #[inline(always)]
89366    fn eq(&self, other: &::cpp_core::Ref<crate::QBufferDataGenerator>) -> bool {
89367        unsafe {
89368            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBufferDataGenerator_operator__1(
89369                self as *const crate::QBufferDataGenerator,
89370                other.as_raw_ptr(),
89371            )
89372        }
89373    }
89374}
89375
89376impl ::cpp_core::CppDeletable for crate::QCameraLens {
89377    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QCameraLens::~QCameraLens()```</span>.
89378    #[inline(always)]
89379    unsafe fn delete(&self) {
89380        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraLens_dQCameraLens(
89381            self as *const crate::QCameraLens as *mut crate::QCameraLens,
89382        )
89383    }
89384}
89385
89386impl ::cpp_core::CppDeletable for crate::QCamera {
89387    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QCamera::~QCamera()```</span>.
89388    #[inline(always)]
89389    unsafe fn delete(&self) {
89390        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCamera_dQCamera(
89391            self as *const crate::QCamera as *mut crate::QCamera,
89392        )
89393    }
89394}
89395
89396impl ::cpp_core::CppDeletable for crate::QCameraSelector {
89397    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QCameraSelector::~QCameraSelector()```</span>.
89398    #[inline(always)]
89399    unsafe fn delete(&self) {
89400        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCameraSelector_dQCameraSelector(
89401            self as *const crate::QCameraSelector as *mut crate::QCameraSelector,
89402        )
89403    }
89404}
89405
89406impl ::cpp_core::CppDeletable for crate::QRenderTargetOutput {
89407    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderTargetOutput::~QRenderTargetOutput()```</span>.
89408    #[inline(always)]
89409    unsafe fn delete(&self) {
89410        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetOutput_dQRenderTargetOutput(
89411            self as *const crate::QRenderTargetOutput as *mut crate::QRenderTargetOutput,
89412        )
89413    }
89414}
89415
89416impl ::cpp_core::CppDeletable for crate::QClearBuffers {
89417    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QClearBuffers::~QClearBuffers()```</span>.
89418    #[inline(always)]
89419    unsafe fn delete(&self) {
89420        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClearBuffers_dQClearBuffers(
89421            self as *const crate::QClearBuffers as *mut crate::QClearBuffers,
89422        )
89423    }
89424}
89425
89426impl ::cpp_core::CppDeletable for crate::QClipPlane {
89427    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QClipPlane::~QClipPlane()```</span>.
89428    #[inline(always)]
89429    unsafe fn delete(&self) {
89430        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QClipPlane_dQClipPlane(
89431            self as *const crate::QClipPlane as *mut crate::QClipPlane,
89432        )
89433    }
89434}
89435
89436impl ::cpp_core::CppDeletable for crate::QColorMask {
89437    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QColorMask::~QColorMask()```</span>.
89438    #[inline(always)]
89439    unsafe fn delete(&self) {
89440        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QColorMask_dQColorMask(
89441            self as *const crate::QColorMask as *mut crate::QColorMask,
89442        )
89443    }
89444}
89445
89446impl ::cpp_core::CppDeletable for crate::QComputeCommand {
89447    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QComputeCommand::~QComputeCommand()```</span>.
89448    #[inline(always)]
89449    unsafe fn delete(&self) {
89450        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QComputeCommand_dQComputeCommand(
89451            self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
89452        )
89453    }
89454}
89455
89456impl ::cpp_core::CppDeletable for crate::QCullFace {
89457    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QCullFace::~QCullFace()```</span>.
89458    #[inline(always)]
89459    unsafe fn delete(&self) {
89460        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QCullFace_dQCullFace(
89461            self as *const crate::QCullFace as *mut crate::QCullFace,
89462        )
89463    }
89464}
89465
89466impl ::cpp_core::CppDeletable for crate::QDepthTest {
89467    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QDepthTest::~QDepthTest()```</span>.
89468    #[inline(always)]
89469    unsafe fn delete(&self) {
89470        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthTest_dQDepthTest(
89471            self as *const crate::QDepthTest as *mut crate::QDepthTest,
89472        )
89473    }
89474}
89475
89476impl ::cpp_core::CppDeletable for crate::QDirectionalLight {
89477    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QDirectionalLight::~QDirectionalLight()```</span>.
89478    #[inline(always)]
89479    unsafe fn delete(&self) {
89480        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDirectionalLight_dQDirectionalLight(
89481            self as *const crate::QDirectionalLight as *mut crate::QDirectionalLight,
89482        )
89483    }
89484}
89485
89486impl ::cpp_core::CppDeletable for crate::QDispatchCompute {
89487    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QDispatchCompute::~QDispatchCompute()```</span>.
89488    #[inline(always)]
89489    unsafe fn delete(&self) {
89490        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDispatchCompute_dQDispatchCompute(
89491            self as *const crate::QDispatchCompute as *mut crate::QDispatchCompute,
89492        )
89493    }
89494}
89495
89496impl ::cpp_core::CppDeletable for crate::QDithering {
89497    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QDithering::~QDithering()```</span>.
89498    #[inline(always)]
89499    unsafe fn delete(&self) {
89500        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDithering_dQDithering(
89501            self as *const crate::QDithering as *mut crate::QDithering,
89502        )
89503    }
89504}
89505
89506impl ::cpp_core::CppDeletable for crate::QEffect {
89507    /// <p>Destroys the instance of QEffect.</p>
89508    ///
89509    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QEffect::~QEffect()```</span>.
89510    ///
89511    /// <a href="http://doc.qt.io/qt-5/qt3drender-qeffect.html#dtor.QEffect">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QEffect.</p></div>
89512    #[inline(always)]
89513    unsafe fn delete(&self) {
89514        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEffect_dQEffect(
89515            self as *const crate::QEffect as *mut crate::QEffect,
89516        )
89517    }
89518}
89519
89520impl ::cpp_core::CppDeletable for crate::QEnvironmentLight {
89521    /// <p>Destroys the instance of QEnvironmentLight.</p>
89522    ///
89523    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QEnvironmentLight::~QEnvironmentLight()```</span>.
89524    ///
89525    /// <a href="http://doc.qt.io/qt-5/qt3drender-qenvironmentlight.html#dtor.QEnvironmentLight">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QEnvironmentLight.</p></div>
89526    #[inline(always)]
89527    unsafe fn delete(&self) {
89528        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QEnvironmentLight_dQEnvironmentLight(
89529            self as *const crate::QEnvironmentLight as *mut crate::QEnvironmentLight,
89530        )
89531    }
89532}
89533
89534impl ::cpp_core::CppDeletable for crate::QFilterKey {
89535    /// <p>Destroys the instance of QFilterKey.</p>
89536    ///
89537    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QFilterKey::~QFilterKey()```</span>.
89538    ///
89539    /// <a href="http://doc.qt.io/qt-5/qt3drender-qfilterkey.html#dtor.QFilterKey">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QFilterKey.</p></div>
89540    #[inline(always)]
89541    unsafe fn delete(&self) {
89542        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFilterKey_dQFilterKey(
89543            self as *const crate::QFilterKey as *mut crate::QFilterKey,
89544        )
89545    }
89546}
89547
89548impl ::cpp_core::CppDeletable for crate::QFrameGraphNodeCreatedChangeBase {
89549    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QFrameGraphNodeCreatedChangeBase::~QFrameGraphNodeCreatedChangeBase()```</span>.
89550    #[inline(always)]
89551    unsafe fn delete(&self) {
89552        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrameGraphNodeCreatedChangeBase_dQFrameGraphNodeCreatedChangeBase(self as *const crate::QFrameGraphNodeCreatedChangeBase as *mut crate::QFrameGraphNodeCreatedChangeBase)
89553    }
89554}
89555
89556impl ::cpp_core::CppDeletable for crate::QFrontFace {
89557    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QFrontFace::~QFrontFace()```</span>.
89558    #[inline(always)]
89559    unsafe fn delete(&self) {
89560        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrontFace_dQFrontFace(
89561            self as *const crate::QFrontFace as *mut crate::QFrontFace,
89562        )
89563    }
89564}
89565
89566impl ::cpp_core::CppDeletable for crate::QFrustumCulling {
89567    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QFrustumCulling::~QFrustumCulling()```</span>.
89568    #[inline(always)]
89569    unsafe fn delete(&self) {
89570        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QFrustumCulling_dQFrustumCulling(
89571            self as *const crate::QFrustumCulling as *mut crate::QFrustumCulling,
89572        )
89573    }
89574}
89575
89576impl ::cpp_core::CppDeletable for crate::QGeometry {
89577    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QGeometry::~QGeometry()```</span>.
89578    #[inline(always)]
89579    unsafe fn delete(&self) {
89580        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometry_dQGeometry(
89581            self as *const crate::QGeometry as *mut crate::QGeometry,
89582        )
89583    }
89584}
89585
89586impl ::cpp_core::CppDeletable for crate::QGeometryFactory {
89587    /// <p>Destroys the instance of QGeometryFactory. The destructor is virtual.</p>
89588    ///
89589    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QGeometryFactory::~QGeometryFactory()```</span>.
89590    ///
89591    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryfactory.html#dtor.QGeometryFactory">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QGeometryFactory. The destructor is virtual.</p></div>
89592    #[inline(always)]
89593    unsafe fn delete(&self) {
89594        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryFactory_dQGeometryFactory(
89595            self as *const crate::QGeometryFactory as *mut crate::QGeometryFactory,
89596        )
89597    }
89598}
89599
89600impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QGeometryFactory>> for crate::QGeometryFactory {
89601    /// <p>Compares the factory with the factory specified in <i>other</i>. Returns true if they are equal.</p>
89602    ///
89603    /// Calls C++ function: <span style='color: green;'>```pure virtual bool Qt3DRender::QGeometryFactory::operator==(const Qt3DRender::QGeometryFactory& other) const```</span>.
89604    ///
89605    /// <a href="http://doc.qt.io/qt-5/qt3drender-qgeometryfactory.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Compares the factory with the factory specified in <i>other</i>. Returns true if they are equal.</p></div>
89606    #[inline(always)]
89607    fn eq(&self, other: &::cpp_core::Ref<crate::QGeometryFactory>) -> bool {
89608        unsafe {
89609            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryFactory_operator__1(
89610                self as *const crate::QGeometryFactory,
89611                other.as_raw_ptr(),
89612            )
89613        }
89614    }
89615}
89616
89617impl ::cpp_core::CppDeletable for crate::QGeometryRenderer {
89618    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QGeometryRenderer::~QGeometryRenderer()```</span>.
89619    #[inline(always)]
89620    unsafe fn delete(&self) {
89621        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGeometryRenderer_dQGeometryRenderer(
89622            self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
89623        )
89624    }
89625}
89626
89627impl ::cpp_core::CppDeletable for crate::QGraphicsApiFilter {
89628    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QGraphicsApiFilter::~QGraphicsApiFilter()```</span>.
89629    #[inline(always)]
89630    unsafe fn delete(&self) {
89631        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QGraphicsApiFilter_dQGraphicsApiFilter(
89632            self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
89633        )
89634    }
89635}
89636
89637impl ::cpp_core::CppDeletable for crate::QLayer {
89638    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QLayer::~QLayer()```</span>.
89639    #[inline(always)]
89640    unsafe fn delete(&self) {
89641        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayer_dQLayer(
89642            self as *const crate::QLayer as *mut crate::QLayer,
89643        )
89644    }
89645}
89646
89647impl ::cpp_core::CppDeletable for crate::QLayerFilter {
89648    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QLayerFilter::~QLayerFilter()```</span>.
89649    #[inline(always)]
89650    unsafe fn delete(&self) {
89651        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLayerFilter_dQLayerFilter(
89652            self as *const crate::QLayerFilter as *mut crate::QLayerFilter,
89653        )
89654    }
89655}
89656
89657impl ::cpp_core::CppDeletable for crate::QLevelOfDetailBoundingSphere {
89658    /// <p>Destroys the instance of QLevelOfDetailBoundingSphere.</p>
89659    ///
89660    /// Calls C++ function: <span style='color: green;'>```[destructor] void Qt3DRender::QLevelOfDetailBoundingSphere::~QLevelOfDetailBoundingSphere()```</span>.
89661    ///
89662    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlevelofdetailboundingsphere.html#dtor.QLevelOfDetailBoundingSphere">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QLevelOfDetailBoundingSphere.</p></div>
89663    #[inline(always)]
89664    unsafe fn delete(&self) {
89665        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_dQLevelOfDetailBoundingSphere(self as *const crate::QLevelOfDetailBoundingSphere as *mut crate::QLevelOfDetailBoundingSphere)
89666    }
89667}
89668
89669impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>>
89670    for crate::QLevelOfDetailBoundingSphere
89671{
89672    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::QLevelOfDetailBoundingSphere::operator==(const Qt3DRender::QLevelOfDetailBoundingSphere& other) const```</span>.
89673    #[inline(always)]
89674    fn eq(&self, other: &::cpp_core::Ref<crate::QLevelOfDetailBoundingSphere>) -> bool {
89675        unsafe {
89676            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailBoundingSphere_operator__(
89677                self as *const crate::QLevelOfDetailBoundingSphere,
89678                other.as_raw_ptr(),
89679            )
89680        }
89681    }
89682}
89683
89684impl ::cpp_core::CppDeletable for crate::QLevelOfDetail {
89685    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QLevelOfDetail::~QLevelOfDetail()```</span>.
89686    #[inline(always)]
89687    unsafe fn delete(&self) {
89688        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetail_dQLevelOfDetail(
89689            self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail,
89690        )
89691    }
89692}
89693
89694impl ::cpp_core::CppDeletable for crate::QLevelOfDetailSwitch {
89695    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QLevelOfDetailSwitch::~QLevelOfDetailSwitch()```</span>.
89696    #[inline(always)]
89697    unsafe fn delete(&self) {
89698        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLevelOfDetailSwitch_dQLevelOfDetailSwitch(
89699            self as *const crate::QLevelOfDetailSwitch as *mut crate::QLevelOfDetailSwitch,
89700        )
89701    }
89702}
89703
89704impl ::cpp_core::CppDeletable for crate::QMaterial {
89705    /// <p>Destroys the instance of QMaterial.</p>
89706    ///
89707    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QMaterial::~QMaterial()```</span>.
89708    ///
89709    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmaterial.html#dtor.QMaterial">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QMaterial.</p></div>
89710    #[inline(always)]
89711    unsafe fn delete(&self) {
89712        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMaterial_dQMaterial(
89713            self as *const crate::QMaterial as *mut crate::QMaterial,
89714        )
89715    }
89716}
89717
89718impl ::cpp_core::CppDeletable for crate::QMemoryBarrier {
89719    /// <p>Destroys the instance of QMemoryBarrier.</p>
89720    ///
89721    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QMemoryBarrier::~QMemoryBarrier()```</span>.
89722    ///
89723    /// <a href="http://doc.qt.io/qt-5/qt3drender-qmemorybarrier.html#dtor.QMemoryBarrier">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QMemoryBarrier.</p></div>
89724    #[inline(always)]
89725    unsafe fn delete(&self) {
89726        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMemoryBarrier_dQMemoryBarrier(
89727            self as *const crate::QMemoryBarrier as *mut crate::QMemoryBarrier,
89728        )
89729    }
89730}
89731
89732impl ::cpp_core::CppDeletable for crate::QMesh {
89733    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QMesh::~QMesh()```</span>.
89734    #[inline(always)]
89735    unsafe fn delete(&self) {
89736        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMesh_dQMesh(
89737            self as *const crate::QMesh as *mut crate::QMesh,
89738        )
89739    }
89740}
89741
89742impl ::cpp_core::CppDeletable for crate::QMultiSampleAntiAliasing {
89743    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QMultiSampleAntiAliasing::~QMultiSampleAntiAliasing()```</span>.
89744    #[inline(always)]
89745    unsafe fn delete(&self) {
89746        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QMultiSampleAntiAliasing_dQMultiSampleAntiAliasing(self as *const crate::QMultiSampleAntiAliasing as *mut crate::QMultiSampleAntiAliasing)
89747    }
89748}
89749
89750impl ::cpp_core::CppDeletable for crate::QNoDepthMask {
89751    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QNoDepthMask::~QNoDepthMask()```</span>.
89752    #[inline(always)]
89753    unsafe fn delete(&self) {
89754        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDepthMask_dQNoDepthMask(
89755            self as *const crate::QNoDepthMask as *mut crate::QNoDepthMask,
89756        )
89757    }
89758}
89759
89760impl ::cpp_core::CppDeletable for crate::QNoDraw {
89761    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QNoDraw::~QNoDraw()```</span>.
89762    #[inline(always)]
89763    unsafe fn delete(&self) {
89764        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoDraw_dQNoDraw(
89765            self as *const crate::QNoDraw as *mut crate::QNoDraw,
89766        )
89767    }
89768}
89769
89770impl ::cpp_core::CppDeletable for crate::QObjectPicker {
89771    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QObjectPicker::~QObjectPicker()```</span>.
89772    #[inline(always)]
89773    unsafe fn delete(&self) {
89774        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QObjectPicker_dQObjectPicker(
89775            self as *const crate::QObjectPicker as *mut crate::QObjectPicker,
89776        )
89777    }
89778}
89779
89780impl ::cpp_core::CppDeletable for crate::QPaintedTextureImage {
89781    /// <p>Destroys the instance of QPaintedTextureImage.</p>
89782    ///
89783    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QPaintedTextureImage::~QPaintedTextureImage()```</span>.
89784    ///
89785    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#dtor.QPaintedTextureImage">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QPaintedTextureImage.</p></div>
89786    #[inline(always)]
89787    unsafe fn delete(&self) {
89788        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_dQPaintedTextureImage(
89789            self as *const crate::QPaintedTextureImage as *mut crate::QPaintedTextureImage,
89790        )
89791    }
89792}
89793
89794impl ::cpp_core::vector_ops::Size for crate::QPaintedTextureImage {
89795    /// <p>This property holds the size of the texture image.</p>
89796    ///
89797    /// Calls C++ function: <span style='color: green;'>```QSize Qt3DRender::QPaintedTextureImage::size() const```</span>.
89798    ///
89799    /// <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#size-prop">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This property holds the size of the texture image.</p>
89800    /// <p><b>Access functions:</b></p>
89801    /// <div class="table"><table class="alignedsummary">
89802    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> QSize </td><td class="memItemRight bottomAlign"><span class="name"><b>size</b></span>() const</td></tr>
89803    /// <tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#setSize">setSize</a></b></span>(QSize <i>size</i>)</td></tr>
89804    /// </tbody></table></div>
89805    /// <p><b>Notifier signal:</b></p>
89806    /// <div class="table"><table class="alignedsummary">
89807    /// <tbody><tr><td class="memItemLeft topAlign rightAlign"> void </td><td class="memItemRight bottomAlign"><span class="name"><b>sizeChanged</b></span>(QSize <i>size</i>)</td></tr>
89808    /// </tbody></table></div>
89809    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#height-prop">height</a> and <a href="http://doc.qt.io/qt-5/qt3drender-qpaintedtextureimage.html#width-prop">width</a>.</p></div>
89810    #[inline(always)]
89811    unsafe fn size(&self) -> usize {
89812        let ffi_result = {
89813            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPaintedTextureImage_size(
89814                self as *const crate::QPaintedTextureImage,
89815            )
89816        };
89817        ffi_result as usize
89818    }
89819}
89820
89821impl ::cpp_core::CppDeletable for crate::QParameter {
89822    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QParameter::~QParameter()```</span>.
89823    #[inline(always)]
89824    unsafe fn delete(&self) {
89825        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QParameter_dQParameter(
89826            self as *const crate::QParameter as *mut crate::QParameter,
89827        )
89828    }
89829}
89830
89831impl ::cpp_core::CppDeletable for crate::QPickEvent {
89832    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QPickEvent::~QPickEvent()```</span>.
89833    #[inline(always)]
89834    unsafe fn delete(&self) {
89835        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickEvent_dQPickEvent(
89836            self as *const crate::QPickEvent as *mut crate::QPickEvent,
89837        )
89838    }
89839}
89840
89841impl ::cpp_core::CppDeletable for crate::QPickingSettings {
89842    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QPickingSettings::~QPickingSettings()```</span>.
89843    #[inline(always)]
89844    unsafe fn delete(&self) {
89845        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickingSettings_dQPickingSettings(
89846            self as *const crate::QPickingSettings as *mut crate::QPickingSettings,
89847        )
89848    }
89849}
89850
89851impl ::cpp_core::CppDeletable for crate::QPickTriangleEvent {
89852    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QPickTriangleEvent::~QPickTriangleEvent()```</span>.
89853    #[inline(always)]
89854    unsafe fn delete(&self) {
89855        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickTriangleEvent_dQPickTriangleEvent(
89856            self as *const crate::QPickTriangleEvent as *mut crate::QPickTriangleEvent,
89857        )
89858    }
89859}
89860
89861impl ::cpp_core::CppDeletable for crate::QPointLight {
89862    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QPointLight::~QPointLight()```</span>.
89863    #[inline(always)]
89864    unsafe fn delete(&self) {
89865        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointLight_dQPointLight(
89866            self as *const crate::QPointLight as *mut crate::QPointLight,
89867        )
89868    }
89869}
89870
89871impl ::cpp_core::CppDeletable for crate::QPointSize {
89872    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QPointSize::~QPointSize()```</span>.
89873    #[inline(always)]
89874    unsafe fn delete(&self) {
89875        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPointSize_dQPointSize(
89876            self as *const crate::QPointSize as *mut crate::QPointSize,
89877        )
89878    }
89879}
89880
89881impl ::cpp_core::CppDeletable for crate::QPolygonOffset {
89882    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QPolygonOffset::~QPolygonOffset()```</span>.
89883    #[inline(always)]
89884    unsafe fn delete(&self) {
89885        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPolygonOffset_dQPolygonOffset(
89886            self as *const crate::QPolygonOffset as *mut crate::QPolygonOffset,
89887        )
89888    }
89889}
89890
89891impl ::cpp_core::CppDeletable for crate::QRenderAspect {
89892    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderAspect::~QRenderAspect()```</span>.
89893    #[inline(always)]
89894    unsafe fn delete(&self) {
89895        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderAspect_dQRenderAspect(
89896            self as *const crate::QRenderAspect as *mut crate::QRenderAspect,
89897        )
89898    }
89899}
89900
89901impl ::cpp_core::CppDeletable for crate::QShaderProgram {
89902    /// <p>Destroys the instance of QShaderProgram.</p>
89903    ///
89904    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QShaderProgram::~QShaderProgram()```</span>.
89905    ///
89906    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogram.html#dtor.QShaderProgram">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QShaderProgram.</p></div>
89907    #[inline(always)]
89908    unsafe fn delete(&self) {
89909        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgram_dQShaderProgram(
89910            self as *const crate::QShaderProgram as *mut crate::QShaderProgram,
89911        )
89912    }
89913}
89914
89915impl ::cpp_core::CppDeletable for crate::QRenderPass {
89916    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderPass::~QRenderPass()```</span>.
89917    #[inline(always)]
89918    unsafe fn delete(&self) {
89919        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPass_dQRenderPass(
89920            self as *const crate::QRenderPass as *mut crate::QRenderPass,
89921        )
89922    }
89923}
89924
89925impl ::cpp_core::CppDeletable for crate::QRenderPassFilter {
89926    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderPassFilter::~QRenderPassFilter()```</span>.
89927    #[inline(always)]
89928    unsafe fn delete(&self) {
89929        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderPassFilter_dQRenderPassFilter(
89930            self as *const crate::QRenderPassFilter as *mut crate::QRenderPassFilter,
89931        )
89932    }
89933}
89934
89935impl ::cpp_core::CppDeletable for crate::QRenderSettings {
89936    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderSettings::~QRenderSettings()```</span>.
89937    #[inline(always)]
89938    unsafe fn delete(&self) {
89939        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSettings_dQRenderSettings(
89940            self as *const crate::QRenderSettings as *mut crate::QRenderSettings,
89941        )
89942    }
89943}
89944
89945impl ::cpp_core::CppDeletable for crate::QRenderStateSet {
89946    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderStateSet::~QRenderStateSet()```</span>.
89947    #[inline(always)]
89948    unsafe fn delete(&self) {
89949        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderStateSet_dQRenderStateSet(
89950            self as *const crate::QRenderStateSet as *mut crate::QRenderStateSet,
89951        )
89952    }
89953}
89954
89955impl ::cpp_core::CppDeletable for crate::QRenderSurfaceSelector {
89956    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderSurfaceSelector::~QRenderSurfaceSelector()```</span>.
89957    #[inline(always)]
89958    unsafe fn delete(&self) {
89959        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderSurfaceSelector_dQRenderSurfaceSelector(
89960            self as *const crate::QRenderSurfaceSelector as *mut crate::QRenderSurfaceSelector,
89961        )
89962    }
89963}
89964
89965impl ::cpp_core::CppDeletable for crate::QRenderTarget {
89966    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderTarget::~QRenderTarget()```</span>.
89967    #[inline(always)]
89968    unsafe fn delete(&self) {
89969        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTarget_dQRenderTarget(
89970            self as *const crate::QRenderTarget as *mut crate::QRenderTarget,
89971        )
89972    }
89973}
89974
89975impl ::cpp_core::CppDeletable for crate::QRenderTargetSelector {
89976    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRenderTargetSelector::~QRenderTargetSelector()```</span>.
89977    #[inline(always)]
89978    unsafe fn delete(&self) {
89979        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderTargetSelector_dQRenderTargetSelector(
89980            self as *const crate::QRenderTargetSelector as *mut crate::QRenderTargetSelector,
89981        )
89982    }
89983}
89984
89985impl ::cpp_core::CppDeletable for crate::QSceneLoader {
89986    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QSceneLoader::~QSceneLoader()```</span>.
89987    #[inline(always)]
89988    unsafe fn delete(&self) {
89989        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSceneLoader_dQSceneLoader(
89990            self as *const crate::QSceneLoader as *mut crate::QSceneLoader,
89991        )
89992    }
89993}
89994
89995impl ::cpp_core::CppDeletable for crate::QScissorTest {
89996    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QScissorTest::~QScissorTest()```</span>.
89997    #[inline(always)]
89998    unsafe fn delete(&self) {
89999        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScissorTest_dQScissorTest(
90000            self as *const crate::QScissorTest as *mut crate::QScissorTest,
90001        )
90002    }
90003}
90004
90005impl ::cpp_core::CppDeletable for crate::QSeamlessCubemap {
90006    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QSeamlessCubemap::~QSeamlessCubemap()```</span>.
90007    #[inline(always)]
90008    unsafe fn delete(&self) {
90009        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSeamlessCubemap_dQSeamlessCubemap(
90010            self as *const crate::QSeamlessCubemap as *mut crate::QSeamlessCubemap,
90011        )
90012    }
90013}
90014
90015impl ::cpp_core::CppDeletable for crate::PropertyReaderInterface {
90016    /// <p>Destroys the instance of PropertyReaderInterface. The destructor is virtual.</p>
90017    ///
90018    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::PropertyReaderInterface::~PropertyReaderInterface()```</span>.
90019    ///
90020    /// <a href="http://doc.qt.io/qt-5/qt3drender-propertyreaderinterface.html#dtor.PropertyReaderInterface">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of PropertyReaderInterface. The destructor is virtual.</p></div>
90021    #[inline(always)]
90022    unsafe fn delete(&self) {
90023        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_PropertyReaderInterface_dPropertyReaderInterface(self as *const crate::PropertyReaderInterface as *mut crate::PropertyReaderInterface)
90024    }
90025}
90026
90027impl ::cpp_core::CppDeletable for crate::QShaderData {
90028    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QShaderData::~QShaderData()```</span>.
90029    #[inline(always)]
90030    unsafe fn delete(&self) {
90031        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderData_dQShaderData(
90032            self as *const crate::QShaderData as *mut crate::QShaderData,
90033        )
90034    }
90035}
90036
90037impl ::cpp_core::CppDeletable for crate::QSortPolicy {
90038    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QSortPolicy::~QSortPolicy()```</span>.
90039    #[inline(always)]
90040    unsafe fn delete(&self) {
90041        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSortPolicy_dQSortPolicy(
90042            self as *const crate::QSortPolicy as *mut crate::QSortPolicy,
90043        )
90044    }
90045}
90046
90047impl ::cpp_core::CppDeletable for crate::QSpotLight {
90048    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QSpotLight::~QSpotLight()```</span>.
90049    #[inline(always)]
90050    unsafe fn delete(&self) {
90051        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSpotLight_dQSpotLight(
90052            self as *const crate::QSpotLight as *mut crate::QSpotLight,
90053        )
90054    }
90055}
90056
90057impl ::cpp_core::CppDeletable for crate::QStencilMask {
90058    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QStencilMask::~QStencilMask()```</span>.
90059    #[inline(always)]
90060    unsafe fn delete(&self) {
90061        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilMask_dQStencilMask(
90062            self as *const crate::QStencilMask as *mut crate::QStencilMask,
90063        )
90064    }
90065}
90066
90067impl ::cpp_core::CppDeletable for crate::QStencilOperation {
90068    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QStencilOperation::~QStencilOperation()```</span>.
90069    #[inline(always)]
90070    unsafe fn delete(&self) {
90071        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperation_dQStencilOperation(
90072            self as *const crate::QStencilOperation as *mut crate::QStencilOperation,
90073        )
90074    }
90075}
90076
90077impl ::cpp_core::CppDeletable for crate::QStencilOperationArguments {
90078    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QStencilOperationArguments::~QStencilOperationArguments()```</span>.
90079    #[inline(always)]
90080    unsafe fn delete(&self) {
90081        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilOperationArguments_dQStencilOperationArguments(self as *const crate::QStencilOperationArguments as *mut crate::QStencilOperationArguments)
90082    }
90083}
90084
90085impl ::cpp_core::CppDeletable for crate::QStencilTest {
90086    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QStencilTest::~QStencilTest()```</span>.
90087    #[inline(always)]
90088    unsafe fn delete(&self) {
90089        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTest_dQStencilTest(
90090            self as *const crate::QStencilTest as *mut crate::QStencilTest,
90091        )
90092    }
90093}
90094
90095impl ::cpp_core::CppDeletable for crate::QStencilTestArguments {
90096    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QStencilTestArguments::~QStencilTestArguments()```</span>.
90097    #[inline(always)]
90098    unsafe fn delete(&self) {
90099        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QStencilTestArguments_dQStencilTestArguments(
90100            self as *const crate::QStencilTestArguments as *mut crate::QStencilTestArguments,
90101        )
90102    }
90103}
90104
90105impl ::cpp_core::CppDeletable for crate::QTechnique {
90106    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTechnique::~QTechnique()```</span>.
90107    #[inline(always)]
90108    unsafe fn delete(&self) {
90109        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechnique_dQTechnique(
90110            self as *const crate::QTechnique as *mut crate::QTechnique,
90111        )
90112    }
90113}
90114
90115impl ::cpp_core::CppDeletable for crate::QTechniqueFilter {
90116    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTechniqueFilter::~QTechniqueFilter()```</span>.
90117    #[inline(always)]
90118    unsafe fn delete(&self) {
90119        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTechniqueFilter_dQTechniqueFilter(
90120            self as *const crate::QTechniqueFilter as *mut crate::QTechniqueFilter,
90121        )
90122    }
90123}
90124
90125impl ::cpp_core::CppDeletable for crate::QTextureWrapMode {
90126    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTextureWrapMode::~QTextureWrapMode()```</span>.
90127    #[inline(always)]
90128    unsafe fn delete(&self) {
90129        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureWrapMode_dQTextureWrapMode(
90130            self as *const crate::QTextureWrapMode as *mut crate::QTextureWrapMode,
90131        )
90132    }
90133}
90134
90135impl ::cpp_core::CppDeletable for crate::QTextureImage {
90136    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTextureImage::~QTextureImage()```</span>.
90137    #[inline(always)]
90138    unsafe fn delete(&self) {
90139        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureImage_dQTextureImage(
90140            self as *const crate::QTextureImage as *mut crate::QTextureImage,
90141        )
90142    }
90143}
90144
90145impl ::cpp_core::CppDeletable for crate::QTexture1D {
90146    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTexture1D::~QTexture1D()```</span>.
90147    #[inline(always)]
90148    unsafe fn delete(&self) {
90149        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1D_dQTexture1D(
90150            self as *const crate::QTexture1D as *mut crate::QTexture1D,
90151        )
90152    }
90153}
90154
90155impl ::cpp_core::CppDeletable for crate::QTexture1DArray {
90156    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTexture1DArray::~QTexture1DArray()```</span>.
90157    #[inline(always)]
90158    unsafe fn delete(&self) {
90159        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture1DArray_dQTexture1DArray(
90160            self as *const crate::QTexture1DArray as *mut crate::QTexture1DArray,
90161        )
90162    }
90163}
90164
90165impl ::cpp_core::CppDeletable for crate::QTexture2D {
90166    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTexture2D::~QTexture2D()```</span>.
90167    #[inline(always)]
90168    unsafe fn delete(&self) {
90169        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2D_dQTexture2D(
90170            self as *const crate::QTexture2D as *mut crate::QTexture2D,
90171        )
90172    }
90173}
90174
90175impl ::cpp_core::CppDeletable for crate::QTexture2DArray {
90176    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTexture2DArray::~QTexture2DArray()```</span>.
90177    #[inline(always)]
90178    unsafe fn delete(&self) {
90179        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DArray_dQTexture2DArray(
90180            self as *const crate::QTexture2DArray as *mut crate::QTexture2DArray,
90181        )
90182    }
90183}
90184
90185impl ::cpp_core::CppDeletable for crate::QTexture3D {
90186    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTexture3D::~QTexture3D()```</span>.
90187    #[inline(always)]
90188    unsafe fn delete(&self) {
90189        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture3D_dQTexture3D(
90190            self as *const crate::QTexture3D as *mut crate::QTexture3D,
90191        )
90192    }
90193}
90194
90195impl ::cpp_core::CppDeletable for crate::QTextureCubeMap {
90196    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTextureCubeMap::~QTextureCubeMap()```</span>.
90197    #[inline(always)]
90198    unsafe fn delete(&self) {
90199        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMap_dQTextureCubeMap(
90200            self as *const crate::QTextureCubeMap as *mut crate::QTextureCubeMap,
90201        )
90202    }
90203}
90204
90205impl ::cpp_core::CppDeletable for crate::QTextureCubeMapArray {
90206    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTextureCubeMapArray::~QTextureCubeMapArray()```</span>.
90207    #[inline(always)]
90208    unsafe fn delete(&self) {
90209        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureCubeMapArray_dQTextureCubeMapArray(
90210            self as *const crate::QTextureCubeMapArray as *mut crate::QTextureCubeMapArray,
90211        )
90212    }
90213}
90214
90215impl ::cpp_core::CppDeletable for crate::QTexture2DMultisample {
90216    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTexture2DMultisample::~QTexture2DMultisample()```</span>.
90217    #[inline(always)]
90218    unsafe fn delete(&self) {
90219        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisample_dQTexture2DMultisample(
90220            self as *const crate::QTexture2DMultisample as *mut crate::QTexture2DMultisample,
90221        )
90222    }
90223}
90224
90225impl ::cpp_core::CppDeletable for crate::QTexture2DMultisampleArray {
90226    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTexture2DMultisampleArray::~QTexture2DMultisampleArray()```</span>.
90227    #[inline(always)]
90228    unsafe fn delete(&self) {
90229        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTexture2DMultisampleArray_dQTexture2DMultisampleArray(self as *const crate::QTexture2DMultisampleArray as *mut crate::QTexture2DMultisampleArray)
90230    }
90231}
90232
90233impl ::cpp_core::CppDeletable for crate::QTextureRectangle {
90234    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTextureRectangle::~QTextureRectangle()```</span>.
90235    #[inline(always)]
90236    unsafe fn delete(&self) {
90237        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureRectangle_dQTextureRectangle(
90238            self as *const crate::QTextureRectangle as *mut crate::QTextureRectangle,
90239        )
90240    }
90241}
90242
90243impl ::cpp_core::CppDeletable for crate::QTextureBuffer {
90244    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTextureBuffer::~QTextureBuffer()```</span>.
90245    #[inline(always)]
90246    unsafe fn delete(&self) {
90247        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureBuffer_dQTextureBuffer(
90248            self as *const crate::QTextureBuffer as *mut crate::QTextureBuffer,
90249        )
90250    }
90251}
90252
90253impl ::cpp_core::CppDeletable for crate::QTextureLoader {
90254    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTextureLoader::~QTextureLoader()```</span>.
90255    #[inline(always)]
90256    unsafe fn delete(&self) {
90257        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureLoader_dQTextureLoader(
90258            self as *const crate::QTextureLoader as *mut crate::QTextureLoader,
90259        )
90260    }
90261}
90262
90263impl ::cpp_core::CppDeletable for crate::QTextureData {
90264    /// Calls C++ function: <span style='color: green;'>```[destructor] void Qt3DRender::QTextureData::~QTextureData()```</span>.
90265    #[inline(always)]
90266    unsafe fn delete(&self) {
90267        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureData_dQTextureData(
90268            self as *const crate::QTextureData as *mut crate::QTextureData,
90269        )
90270    }
90271}
90272
90273impl ::cpp_core::CppDeletable for crate::QTextureGenerator {
90274    /// <p>Destroys the instance of QTextureGenerator. The destructor is virtual.</p>
90275    ///
90276    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QTextureGenerator::~QTextureGenerator()```</span>.
90277    ///
90278    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturegenerator.html#dtor.QTextureGenerator">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QTextureGenerator. The destructor is virtual.</p></div>
90279    #[inline(always)]
90280    unsafe fn delete(&self) {
90281        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureGenerator_dQTextureGenerator(
90282            self as *const crate::QTextureGenerator as *mut crate::QTextureGenerator,
90283        )
90284    }
90285}
90286
90287impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QTextureGenerator>> for crate::QTextureGenerator {
90288    /// <p>Compare these texture data to <i>other</i>. Returns <code>true</code> if both are equal.</p>
90289    ///
90290    /// Calls C++ function: <span style='color: green;'>```pure virtual bool Qt3DRender::QTextureGenerator::operator==(const Qt3DRender::QTextureGenerator& other) const```</span>.
90291    ///
90292    /// <a href="http://doc.qt.io/qt-5/qt3drender-qtexturegenerator.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Compare these texture data to <i>other</i>. Returns <code>true</code> if both are equal.</p></div>
90293    #[inline(always)]
90294    fn eq(&self, other: &::cpp_core::Ref<crate::QTextureGenerator>) -> bool {
90295        unsafe {
90296            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureGenerator_operator__1(
90297                self as *const crate::QTextureGenerator,
90298                other.as_raw_ptr(),
90299            )
90300        }
90301    }
90302}
90303
90304impl ::cpp_core::CppDeletable for crate::QViewport {
90305    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QViewport::~QViewport()```</span>.
90306    #[inline(always)]
90307    unsafe fn delete(&self) {
90308        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QViewport_dQViewport(
90309            self as *const crate::QViewport as *mut crate::QViewport,
90310        )
90311    }
90312}
90313
90314impl ::cpp_core::CppDeletable for crate::QRenderCaptureReply {
90315    /// <p>Receives the result of render capture request.</p>
90316    ///
90317    /// Calls C++ function: <span style='color: green;'>```[destructor] void Qt3DRender::QRenderCaptureReply::~QRenderCaptureReply()```</span>.
90318    ///
90319    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapturereply.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Receives the result of render capture request.</p>
90320    /// <p>An object, which receives the image from <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html#requestCapture">QRenderCapture::requestCapture</a>.</p></div>
90321    #[inline(always)]
90322    unsafe fn delete(&self) {
90323        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCaptureReply_dQRenderCaptureReply(
90324            self as *const crate::QRenderCaptureReply as *mut crate::QRenderCaptureReply,
90325        )
90326    }
90327}
90328
90329impl ::cpp_core::CppDeletable for crate::QRenderCapture {
90330    /// <p>Frame graph node for render capture</p>
90331    ///
90332    /// Calls C++ function: <span style='color: green;'>```[destructor] void Qt3DRender::QRenderCapture::~QRenderCapture()```</span>.
90333    ///
90334    /// <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Frame graph node for render capture</p>
90335    /// <p>The <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html">QRenderCapture</a> is used to capture rendering into an image at any render stage. Capturing must be initiated by the user and one image is returned per capture request. User can issue multiple render capture requests simultaniously, but only one request is served per <a href="http://doc.qt.io/qt-5/qt3drender-qrendercapture.html">QRenderCapture</a> instance per frame.</p></div>
90336    #[inline(always)]
90337    unsafe fn delete(&self) {
90338        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRenderCapture_dQRenderCapture(
90339            self as *const crate::QRenderCapture as *mut crate::QRenderCapture,
90340        )
90341    }
90342}
90343
90344impl ::cpp_core::CppDeletable for crate::QVectorOfQAbstractTextureImage {
90345    /// <p>Destroys the vector.</p>
90346    ///
90347    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QAbstractTextureImage*>::~QVector()```</span>.
90348    ///
90349    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90350    #[inline(always)]
90351    unsafe fn delete(&self) {
90352        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_dQVector(
90353            self as *const crate::QVectorOfQAbstractTextureImage
90354                as *mut crate::QVectorOfQAbstractTextureImage,
90355        )
90356    }
90357}
90358
90359impl ::cpp_core::CppDeletable for crate::QVectorOfQParameter {
90360    /// <p>Destroys the vector.</p>
90361    ///
90362    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QParameter*>::~QVector()```</span>.
90363    ///
90364    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90365    #[inline(always)]
90366    unsafe fn delete(&self) {
90367        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_dQVector(
90368            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
90369        )
90370    }
90371}
90372
90373impl ::cpp_core::CppDeletable for crate::QVectorOfQTechnique {
90374    /// <p>Destroys the vector.</p>
90375    ///
90376    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QTechnique*>::~QVector()```</span>.
90377    ///
90378    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90379    #[inline(always)]
90380    unsafe fn delete(&self) {
90381        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_dQVector(
90382            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
90383        )
90384    }
90385}
90386
90387impl ::cpp_core::CppDeletable for crate::QVectorOfQAttribute {
90388    /// <p>Destroys the vector.</p>
90389    ///
90390    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QAttribute*>::~QVector()```</span>.
90391    ///
90392    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90393    #[inline(always)]
90394    unsafe fn delete(&self) {
90395        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_dQVector(
90396            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
90397        )
90398    }
90399}
90400
90401impl ::cpp_core::CppDeletable for crate::QVectorOfQLayer {
90402    /// <p>Destroys the vector.</p>
90403    ///
90404    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QLayer*>::~QVector()```</span>.
90405    ///
90406    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90407    #[inline(always)]
90408    unsafe fn delete(&self) {
90409        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_dQVector(
90410            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
90411        )
90412    }
90413}
90414
90415impl ::cpp_core::CppDeletable for crate::QVectorOfQFilterKey {
90416    /// <p>Destroys the vector.</p>
90417    ///
90418    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QFilterKey*>::~QVector()```</span>.
90419    ///
90420    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90421    #[inline(always)]
90422    unsafe fn delete(&self) {
90423        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_dQVector(
90424            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
90425        )
90426    }
90427}
90428
90429impl ::cpp_core::CppDeletable for crate::QVectorOfQRenderState {
90430    /// <p>Destroys the vector.</p>
90431    ///
90432    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QRenderState*>::~QVector()```</span>.
90433    ///
90434    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90435    #[inline(always)]
90436    unsafe fn delete(&self) {
90437        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_dQVector(
90438            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
90439        )
90440    }
90441}
90442
90443impl ::cpp_core::CppDeletable for crate::QVectorOfQRenderTargetOutput {
90444    /// <p>Destroys the vector.</p>
90445    ///
90446    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QRenderTargetOutput*>::~QVector()```</span>.
90447    ///
90448    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90449    #[inline(always)]
90450    unsafe fn delete(&self) {
90451        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_dQVector(
90452            self as *const crate::QVectorOfQRenderTargetOutput
90453                as *mut crate::QVectorOfQRenderTargetOutput,
90454        )
90455    }
90456}
90457
90458impl ::cpp_core::CppDeletable for crate::QVectorOfAttachmentPoint {
90459    /// <p>Destroys the vector.</p>
90460    ///
90461    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::~QVector()```</span>.
90462    ///
90463    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90464    #[inline(always)]
90465    unsafe fn delete(&self) {
90466        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_dQVector(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
90467    }
90468}
90469
90470impl ::cpp_core::CppDeletable for crate::QVectorOfSortType {
90471    /// <p>Destroys the vector.</p>
90472    ///
90473    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QSortPolicy::SortType>::~QVector()```</span>.
90474    ///
90475    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90476    #[inline(always)]
90477    unsafe fn delete(&self) {
90478        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_dQVector(
90479            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
90480        )
90481    }
90482}
90483
90484impl ::cpp_core::CppDeletable for crate::QVectorOfQRenderPass {
90485    /// <p>Destroys the vector.</p>
90486    ///
90487    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QRenderPass*>::~QVector()```</span>.
90488    ///
90489    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
90490    #[inline(always)]
90491    unsafe fn delete(&self) {
90492        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_dQVector(
90493            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
90494        )
90495    }
90496}
90497
90498impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>
90499    for crate::QVectorOfQAbstractTextureImage
90500{
90501    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90502    ///
90503    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAbstractTextureImage*>::operator==(const QVector<Qt3DRender::QAbstractTextureImage*>& v) const```</span>.
90504    ///
90505    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90506    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90507    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90508    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90509    #[inline(always)]
90510    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>) -> bool {
90511        unsafe {
90512            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_operator__(self as *const crate::QVectorOfQAbstractTextureImage, v.as_raw_ptr())
90513        }
90514    }
90515}
90516
90517impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfQParameter>>
90518    for crate::QVectorOfQParameter
90519{
90520    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90521    ///
90522    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QParameter*>::operator==(const QVector<Qt3DRender::QParameter*>& v) const```</span>.
90523    ///
90524    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90525    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90526    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90527    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90528    #[inline(always)]
90529    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfQParameter>) -> bool {
90530        unsafe {
90531            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_operator__(
90532                self as *const crate::QVectorOfQParameter,
90533                v.as_raw_ptr(),
90534            )
90535        }
90536    }
90537}
90538
90539impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfQTechnique>>
90540    for crate::QVectorOfQTechnique
90541{
90542    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90543    ///
90544    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QTechnique*>::operator==(const QVector<Qt3DRender::QTechnique*>& v) const```</span>.
90545    ///
90546    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90547    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90548    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90549    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90550    #[inline(always)]
90551    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfQTechnique>) -> bool {
90552        unsafe {
90553            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_operator__(
90554                self as *const crate::QVectorOfQTechnique,
90555                v.as_raw_ptr(),
90556            )
90557        }
90558    }
90559}
90560
90561impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfQAttribute>>
90562    for crate::QVectorOfQAttribute
90563{
90564    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90565    ///
90566    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QAttribute*>::operator==(const QVector<Qt3DRender::QAttribute*>& v) const```</span>.
90567    ///
90568    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90569    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90570    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90571    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90572    #[inline(always)]
90573    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfQAttribute>) -> bool {
90574        unsafe {
90575            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_operator__(
90576                self as *const crate::QVectorOfQAttribute,
90577                v.as_raw_ptr(),
90578            )
90579        }
90580    }
90581}
90582
90583impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfQLayer>> for crate::QVectorOfQLayer {
90584    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90585    ///
90586    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QLayer*>::operator==(const QVector<Qt3DRender::QLayer*>& v) const```</span>.
90587    ///
90588    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90589    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90590    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90591    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90592    #[inline(always)]
90593    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfQLayer>) -> bool {
90594        unsafe {
90595            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_operator__(
90596                self as *const crate::QVectorOfQLayer,
90597                v.as_raw_ptr(),
90598            )
90599        }
90600    }
90601}
90602
90603impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfQFilterKey>>
90604    for crate::QVectorOfQFilterKey
90605{
90606    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90607    ///
90608    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QFilterKey*>::operator==(const QVector<Qt3DRender::QFilterKey*>& v) const```</span>.
90609    ///
90610    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90611    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90612    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90613    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90614    #[inline(always)]
90615    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfQFilterKey>) -> bool {
90616        unsafe {
90617            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_operator__(
90618                self as *const crate::QVectorOfQFilterKey,
90619                v.as_raw_ptr(),
90620            )
90621        }
90622    }
90623}
90624
90625impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfQRenderState>>
90626    for crate::QVectorOfQRenderState
90627{
90628    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90629    ///
90630    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderState*>::operator==(const QVector<Qt3DRender::QRenderState*>& v) const```</span>.
90631    ///
90632    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90633    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90634    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90635    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90636    #[inline(always)]
90637    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfQRenderState>) -> bool {
90638        unsafe {
90639            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_operator__(
90640                self as *const crate::QVectorOfQRenderState,
90641                v.as_raw_ptr(),
90642            )
90643        }
90644    }
90645}
90646
90647impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>
90648    for crate::QVectorOfQRenderTargetOutput
90649{
90650    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90651    ///
90652    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput*>::operator==(const QVector<Qt3DRender::QRenderTargetOutput*>& v) const```</span>.
90653    ///
90654    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90655    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90656    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90657    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90658    #[inline(always)]
90659    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>) -> bool {
90660        unsafe {
90661            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_operator__(
90662                self as *const crate::QVectorOfQRenderTargetOutput,
90663                v.as_raw_ptr(),
90664            )
90665        }
90666    }
90667}
90668
90669impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>
90670    for crate::QVectorOfAttachmentPoint
90671{
90672    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90673    ///
90674    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::operator==(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& v) const```</span>.
90675    ///
90676    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90677    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90678    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90679    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90680    #[inline(always)]
90681    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfAttachmentPoint>) -> bool {
90682        unsafe {
90683            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_operator__(self as *const crate::QVectorOfAttachmentPoint, v.as_raw_ptr())
90684        }
90685    }
90686}
90687
90688impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfSortType>> for crate::QVectorOfSortType {
90689    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90690    ///
90691    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QSortPolicy::SortType>::operator==(const QVector<Qt3DRender::QSortPolicy::SortType>& v) const```</span>.
90692    ///
90693    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90694    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90695    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90696    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90697    #[inline(always)]
90698    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfSortType>) -> bool {
90699        unsafe {
90700            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_operator__(
90701                self as *const crate::QVectorOfSortType,
90702                v.as_raw_ptr(),
90703            )
90704        }
90705    }
90706}
90707
90708impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QVectorOfQRenderPass>>
90709    for crate::QVectorOfQRenderPass
90710{
90711    /// <p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90712    ///
90713    /// Calls C++ function: <span style='color: green;'>```bool QVector<Qt3DRender::QRenderPass*>::operator==(const QVector<Qt3DRender::QRenderPass*>& v) const```</span>.
90714    ///
90715    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-eq-eq">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if <i>other</i> is equal to this vector; otherwise returns <code>false</code>.</p>
90716    /// <p>Two vectors are considered equal if they contain the same values in the same order.</p>
90717    /// <p>This function requires the value type to have an implementation of <code>operator==()</code>.</p>
90718    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-not-eq">operator!=</a>().</p></div>
90719    #[inline(always)]
90720    fn eq(&self, v: &::cpp_core::Ref<crate::QVectorOfQRenderPass>) -> bool {
90721        unsafe {
90722            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_operator__(
90723                self as *const crate::QVectorOfQRenderPass,
90724                v.as_raw_ptr(),
90725            )
90726        }
90727    }
90728}
90729
90730impl ::cpp_core::vector_ops::Size for crate::QVectorOfQAbstractTextureImage {
90731    /// <p>Returns the number of items in the vector.</p>
90732    ///
90733    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAbstractTextureImage*>::size() const```</span>.
90734    ///
90735    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90736    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90737    #[inline(always)]
90738    unsafe fn size(&self) -> usize {
90739        let ffi_result = {
90740            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_size(
90741                self as *const crate::QVectorOfQAbstractTextureImage,
90742            )
90743        };
90744        ffi_result as usize
90745    }
90746}
90747
90748impl ::cpp_core::vector_ops::Size for crate::QVectorOfQParameter {
90749    /// <p>Returns the number of items in the vector.</p>
90750    ///
90751    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QParameter*>::size() const```</span>.
90752    ///
90753    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90754    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90755    #[inline(always)]
90756    unsafe fn size(&self) -> usize {
90757        let ffi_result = {
90758            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_size(
90759                self as *const crate::QVectorOfQParameter,
90760            )
90761        };
90762        ffi_result as usize
90763    }
90764}
90765
90766impl ::cpp_core::vector_ops::Size for crate::QVectorOfQTechnique {
90767    /// <p>Returns the number of items in the vector.</p>
90768    ///
90769    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QTechnique*>::size() const```</span>.
90770    ///
90771    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90772    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90773    #[inline(always)]
90774    unsafe fn size(&self) -> usize {
90775        let ffi_result = {
90776            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_size(
90777                self as *const crate::QVectorOfQTechnique,
90778            )
90779        };
90780        ffi_result as usize
90781    }
90782}
90783
90784impl ::cpp_core::vector_ops::Size for crate::QVectorOfQAttribute {
90785    /// <p>Returns the number of items in the vector.</p>
90786    ///
90787    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QAttribute*>::size() const```</span>.
90788    ///
90789    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90790    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90791    #[inline(always)]
90792    unsafe fn size(&self) -> usize {
90793        let ffi_result = {
90794            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_size(
90795                self as *const crate::QVectorOfQAttribute,
90796            )
90797        };
90798        ffi_result as usize
90799    }
90800}
90801
90802impl ::cpp_core::vector_ops::Size for crate::QVectorOfQLayer {
90803    /// <p>Returns the number of items in the vector.</p>
90804    ///
90805    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QLayer*>::size() const```</span>.
90806    ///
90807    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90808    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90809    #[inline(always)]
90810    unsafe fn size(&self) -> usize {
90811        let ffi_result = {
90812            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_size(
90813                self as *const crate::QVectorOfQLayer,
90814            )
90815        };
90816        ffi_result as usize
90817    }
90818}
90819
90820impl ::cpp_core::vector_ops::Size for crate::QVectorOfQFilterKey {
90821    /// <p>Returns the number of items in the vector.</p>
90822    ///
90823    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QFilterKey*>::size() const```</span>.
90824    ///
90825    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90826    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90827    #[inline(always)]
90828    unsafe fn size(&self) -> usize {
90829        let ffi_result = {
90830            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_size(
90831                self as *const crate::QVectorOfQFilterKey,
90832            )
90833        };
90834        ffi_result as usize
90835    }
90836}
90837
90838impl ::cpp_core::vector_ops::Size for crate::QVectorOfQRenderState {
90839    /// <p>Returns the number of items in the vector.</p>
90840    ///
90841    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderState*>::size() const```</span>.
90842    ///
90843    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90844    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90845    #[inline(always)]
90846    unsafe fn size(&self) -> usize {
90847        let ffi_result = {
90848            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_size(
90849                self as *const crate::QVectorOfQRenderState,
90850            )
90851        };
90852        ffi_result as usize
90853    }
90854}
90855
90856impl ::cpp_core::vector_ops::Size for crate::QVectorOfQRenderTargetOutput {
90857    /// <p>Returns the number of items in the vector.</p>
90858    ///
90859    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput*>::size() const```</span>.
90860    ///
90861    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90862    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90863    #[inline(always)]
90864    unsafe fn size(&self) -> usize {
90865        let ffi_result = {
90866            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_size(
90867                self as *const crate::QVectorOfQRenderTargetOutput,
90868            )
90869        };
90870        ffi_result as usize
90871    }
90872}
90873
90874impl ::cpp_core::vector_ops::Size for crate::QVectorOfAttachmentPoint {
90875    /// <p>Returns the number of items in the vector.</p>
90876    ///
90877    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::size() const```</span>.
90878    ///
90879    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90880    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90881    #[inline(always)]
90882    unsafe fn size(&self) -> usize {
90883        let ffi_result = {
90884            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_size(self as *const crate::QVectorOfAttachmentPoint)
90885        };
90886        ffi_result as usize
90887    }
90888}
90889
90890impl ::cpp_core::vector_ops::Size for crate::QVectorOfSortType {
90891    /// <p>Returns the number of items in the vector.</p>
90892    ///
90893    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QSortPolicy::SortType>::size() const```</span>.
90894    ///
90895    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90896    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90897    #[inline(always)]
90898    unsafe fn size(&self) -> usize {
90899        let ffi_result = {
90900            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_size(
90901                self as *const crate::QVectorOfSortType,
90902            )
90903        };
90904        ffi_result as usize
90905    }
90906}
90907
90908impl ::cpp_core::vector_ops::Size for crate::QVectorOfQRenderPass {
90909    /// <p>Returns the number of items in the vector.</p>
90910    ///
90911    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRenderPass*>::size() const```</span>.
90912    ///
90913    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
90914    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
90915    #[inline(always)]
90916    unsafe fn size(&self) -> usize {
90917        let ffi_result = {
90918            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_size(
90919                self as *const crate::QVectorOfQRenderPass,
90920            )
90921        };
90922        ffi_result as usize
90923    }
90924}
90925
90926impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQAbstractTextureImage {
90927    type Output = *mut *mut crate::QAbstractTextureImage;
90928    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
90929    ///
90930    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage** QVector<Qt3DRender::QAbstractTextureImage*>::data()```</span>.
90931    ///
90932    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
90933    /// <p>Example:</p>
90934    /// <pre class="cpp">
90935    ///
90936    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
90937    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
90938    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
90939    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
90940    ///
90941    /// </pre>
90942    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
90943    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
90944    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
90945    #[inline(always)]
90946    unsafe fn data_mut(&self) -> *mut *mut crate::QAbstractTextureImage {
90947        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_data(
90948            self as *const crate::QVectorOfQAbstractTextureImage
90949                as *mut crate::QVectorOfQAbstractTextureImage,
90950        )
90951    }
90952}
90953
90954impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQParameter {
90955    type Output = *mut *mut crate::QParameter;
90956    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
90957    ///
90958    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter** QVector<Qt3DRender::QParameter*>::data()```</span>.
90959    ///
90960    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
90961    /// <p>Example:</p>
90962    /// <pre class="cpp">
90963    ///
90964    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
90965    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
90966    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
90967    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
90968    ///
90969    /// </pre>
90970    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
90971    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
90972    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
90973    #[inline(always)]
90974    unsafe fn data_mut(&self) -> *mut *mut crate::QParameter {
90975        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_data(
90976            self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
90977        )
90978    }
90979}
90980
90981impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQTechnique {
90982    type Output = *mut *mut crate::QTechnique;
90983    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
90984    ///
90985    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique** QVector<Qt3DRender::QTechnique*>::data()```</span>.
90986    ///
90987    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
90988    /// <p>Example:</p>
90989    /// <pre class="cpp">
90990    ///
90991    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
90992    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
90993    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
90994    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
90995    ///
90996    /// </pre>
90997    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
90998    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
90999    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
91000    #[inline(always)]
91001    unsafe fn data_mut(&self) -> *mut *mut crate::QTechnique {
91002        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_data(
91003            self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
91004        )
91005    }
91006}
91007
91008impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQAttribute {
91009    type Output = *mut *mut crate::QAttribute;
91010    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91011    ///
91012    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute** QVector<Qt3DRender::QAttribute*>::data()```</span>.
91013    ///
91014    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91015    /// <p>Example:</p>
91016    /// <pre class="cpp">
91017    ///
91018    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
91019    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
91020    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
91021    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
91022    ///
91023    /// </pre>
91024    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
91025    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
91026    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
91027    #[inline(always)]
91028    unsafe fn data_mut(&self) -> *mut *mut crate::QAttribute {
91029        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_data(
91030            self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
91031        )
91032    }
91033}
91034
91035impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQLayer {
91036    type Output = *mut *mut crate::QLayer;
91037    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91038    ///
91039    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer** QVector<Qt3DRender::QLayer*>::data()```</span>.
91040    ///
91041    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91042    /// <p>Example:</p>
91043    /// <pre class="cpp">
91044    ///
91045    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
91046    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
91047    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
91048    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
91049    ///
91050    /// </pre>
91051    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
91052    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
91053    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
91054    #[inline(always)]
91055    unsafe fn data_mut(&self) -> *mut *mut crate::QLayer {
91056        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_data(
91057            self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
91058        )
91059    }
91060}
91061
91062impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQFilterKey {
91063    type Output = *mut *mut crate::QFilterKey;
91064    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91065    ///
91066    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey** QVector<Qt3DRender::QFilterKey*>::data()```</span>.
91067    ///
91068    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91069    /// <p>Example:</p>
91070    /// <pre class="cpp">
91071    ///
91072    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
91073    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
91074    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
91075    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
91076    ///
91077    /// </pre>
91078    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
91079    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
91080    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
91081    #[inline(always)]
91082    unsafe fn data_mut(&self) -> *mut *mut crate::QFilterKey {
91083        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_data(
91084            self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
91085        )
91086    }
91087}
91088
91089impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQRenderState {
91090    type Output = *mut *mut crate::QRenderState;
91091    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91092    ///
91093    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState** QVector<Qt3DRender::QRenderState*>::data()```</span>.
91094    ///
91095    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91096    /// <p>Example:</p>
91097    /// <pre class="cpp">
91098    ///
91099    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
91100    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
91101    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
91102    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
91103    ///
91104    /// </pre>
91105    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
91106    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
91107    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
91108    #[inline(always)]
91109    unsafe fn data_mut(&self) -> *mut *mut crate::QRenderState {
91110        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_data(
91111            self as *const crate::QVectorOfQRenderState as *mut crate::QVectorOfQRenderState,
91112        )
91113    }
91114}
91115
91116impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQRenderTargetOutput {
91117    type Output = *mut *mut crate::QRenderTargetOutput;
91118    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91119    ///
91120    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput** QVector<Qt3DRender::QRenderTargetOutput*>::data()```</span>.
91121    ///
91122    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91123    /// <p>Example:</p>
91124    /// <pre class="cpp">
91125    ///
91126    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
91127    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
91128    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
91129    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
91130    ///
91131    /// </pre>
91132    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
91133    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
91134    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
91135    #[inline(always)]
91136    unsafe fn data_mut(&self) -> *mut *mut crate::QRenderTargetOutput {
91137        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_data(
91138            self as *const crate::QVectorOfQRenderTargetOutput
91139                as *mut crate::QVectorOfQRenderTargetOutput,
91140        )
91141    }
91142}
91143
91144impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfAttachmentPoint {
91145    type Output = *mut crate::q_render_target_output::AttachmentPoint;
91146    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91147    ///
91148    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput::AttachmentPoint* QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::data()```</span>.
91149    ///
91150    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91151    /// <p>Example:</p>
91152    /// <pre class="cpp">
91153    ///
91154    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
91155    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
91156    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
91157    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
91158    ///
91159    /// </pre>
91160    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
91161    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
91162    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
91163    #[inline(always)]
91164    unsafe fn data_mut(&self) -> *mut crate::q_render_target_output::AttachmentPoint {
91165        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_data(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint)
91166    }
91167}
91168
91169impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfSortType {
91170    type Output = *mut crate::q_sort_policy::SortType;
91171    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91172    ///
91173    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy::SortType* QVector<Qt3DRender::QSortPolicy::SortType>::data()```</span>.
91174    ///
91175    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91176    /// <p>Example:</p>
91177    /// <pre class="cpp">
91178    ///
91179    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
91180    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
91181    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
91182    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
91183    ///
91184    /// </pre>
91185    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
91186    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
91187    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
91188    #[inline(always)]
91189    unsafe fn data_mut(&self) -> *mut crate::q_sort_policy::SortType {
91190        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_data(
91191            self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType,
91192        )
91193    }
91194}
91195
91196impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQRenderPass {
91197    type Output = *mut *mut crate::QRenderPass;
91198    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91199    ///
91200    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass** QVector<Qt3DRender::QRenderPass*>::data()```</span>.
91201    ///
91202    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
91203    /// <p>Example:</p>
91204    /// <pre class="cpp">
91205    ///
91206    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
91207    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
91208    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
91209    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
91210    ///
91211    /// </pre>
91212    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
91213    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
91214    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
91215    #[inline(always)]
91216    unsafe fn data_mut(&self) -> *mut *mut crate::QRenderPass {
91217        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_data(
91218            self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
91219        )
91220    }
91221}
91222
91223impl ::cpp_core::vector_ops::Data for crate::QVectorOfQAbstractTextureImage {
91224    type Output = *const *mut crate::QAbstractTextureImage;
91225    /// <p>This is an overloaded function.</p>
91226    ///
91227    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAbstractTextureImage** QVector<Qt3DRender::QAbstractTextureImage*>::data() const```</span>.
91228    ///
91229    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91230    #[inline(always)]
91231    unsafe fn data(&self) -> *const *mut crate::QAbstractTextureImage {
91232        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_data1(
91233            self as *const crate::QVectorOfQAbstractTextureImage,
91234        )
91235    }
91236}
91237
91238impl ::cpp_core::vector_ops::Data for crate::QVectorOfQParameter {
91239    type Output = *const *mut crate::QParameter;
91240    /// <p>This is an overloaded function.</p>
91241    ///
91242    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QParameter** QVector<Qt3DRender::QParameter*>::data() const```</span>.
91243    ///
91244    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91245    #[inline(always)]
91246    unsafe fn data(&self) -> *const *mut crate::QParameter {
91247        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_data1(
91248            self as *const crate::QVectorOfQParameter,
91249        )
91250    }
91251}
91252
91253impl ::cpp_core::vector_ops::Data for crate::QVectorOfQTechnique {
91254    type Output = *const *mut crate::QTechnique;
91255    /// <p>This is an overloaded function.</p>
91256    ///
91257    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QTechnique** QVector<Qt3DRender::QTechnique*>::data() const```</span>.
91258    ///
91259    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91260    #[inline(always)]
91261    unsafe fn data(&self) -> *const *mut crate::QTechnique {
91262        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_data1(
91263            self as *const crate::QVectorOfQTechnique,
91264        )
91265    }
91266}
91267
91268impl ::cpp_core::vector_ops::Data for crate::QVectorOfQAttribute {
91269    type Output = *const *mut crate::QAttribute;
91270    /// <p>This is an overloaded function.</p>
91271    ///
91272    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QAttribute** QVector<Qt3DRender::QAttribute*>::data() const```</span>.
91273    ///
91274    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91275    #[inline(always)]
91276    unsafe fn data(&self) -> *const *mut crate::QAttribute {
91277        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_data1(
91278            self as *const crate::QVectorOfQAttribute,
91279        )
91280    }
91281}
91282
91283impl ::cpp_core::vector_ops::Data for crate::QVectorOfQLayer {
91284    type Output = *const *mut crate::QLayer;
91285    /// <p>This is an overloaded function.</p>
91286    ///
91287    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QLayer** QVector<Qt3DRender::QLayer*>::data() const```</span>.
91288    ///
91289    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91290    #[inline(always)]
91291    unsafe fn data(&self) -> *const *mut crate::QLayer {
91292        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_data1(
91293            self as *const crate::QVectorOfQLayer,
91294        )
91295    }
91296}
91297
91298impl ::cpp_core::vector_ops::Data for crate::QVectorOfQFilterKey {
91299    type Output = *const *mut crate::QFilterKey;
91300    /// <p>This is an overloaded function.</p>
91301    ///
91302    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QFilterKey** QVector<Qt3DRender::QFilterKey*>::data() const```</span>.
91303    ///
91304    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91305    #[inline(always)]
91306    unsafe fn data(&self) -> *const *mut crate::QFilterKey {
91307        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_data1(
91308            self as *const crate::QVectorOfQFilterKey,
91309        )
91310    }
91311}
91312
91313impl ::cpp_core::vector_ops::Data for crate::QVectorOfQRenderState {
91314    type Output = *const *mut crate::QRenderState;
91315    /// <p>This is an overloaded function.</p>
91316    ///
91317    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderState** QVector<Qt3DRender::QRenderState*>::data() const```</span>.
91318    ///
91319    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91320    #[inline(always)]
91321    unsafe fn data(&self) -> *const *mut crate::QRenderState {
91322        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_data1(
91323            self as *const crate::QVectorOfQRenderState,
91324        )
91325    }
91326}
91327
91328impl ::cpp_core::vector_ops::Data for crate::QVectorOfQRenderTargetOutput {
91329    type Output = *const *mut crate::QRenderTargetOutput;
91330    /// <p>This is an overloaded function.</p>
91331    ///
91332    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput** QVector<Qt3DRender::QRenderTargetOutput*>::data() const```</span>.
91333    ///
91334    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91335    #[inline(always)]
91336    unsafe fn data(&self) -> *const *mut crate::QRenderTargetOutput {
91337        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_data1(
91338            self as *const crate::QVectorOfQRenderTargetOutput,
91339        )
91340    }
91341}
91342
91343impl ::cpp_core::vector_ops::Data for crate::QVectorOfAttachmentPoint {
91344    type Output = *const crate::q_render_target_output::AttachmentPoint;
91345    /// <p>This is an overloaded function.</p>
91346    ///
91347    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderTargetOutput::AttachmentPoint* QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::data() const```</span>.
91348    ///
91349    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91350    #[inline(always)]
91351    unsafe fn data(&self) -> *const crate::q_render_target_output::AttachmentPoint {
91352        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_data1(self as *const crate::QVectorOfAttachmentPoint)
91353    }
91354}
91355
91356impl ::cpp_core::vector_ops::Data for crate::QVectorOfSortType {
91357    type Output = *const crate::q_sort_policy::SortType;
91358    /// <p>This is an overloaded function.</p>
91359    ///
91360    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QSortPolicy::SortType* QVector<Qt3DRender::QSortPolicy::SortType>::data() const```</span>.
91361    ///
91362    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91363    #[inline(always)]
91364    unsafe fn data(&self) -> *const crate::q_sort_policy::SortType {
91365        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_data1(
91366            self as *const crate::QVectorOfSortType,
91367        )
91368    }
91369}
91370
91371impl ::cpp_core::vector_ops::Data for crate::QVectorOfQRenderPass {
91372    type Output = *const *mut crate::QRenderPass;
91373    /// <p>This is an overloaded function.</p>
91374    ///
91375    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRenderPass** QVector<Qt3DRender::QRenderPass*>::data() const```</span>.
91376    ///
91377    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
91378    #[inline(always)]
91379    unsafe fn data(&self) -> *const *mut crate::QRenderPass {
91380        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_data1(
91381            self as *const crate::QVectorOfQRenderPass,
91382        )
91383    }
91384}
91385
91386impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>
91387    for &crate::QVectorOfQAbstractTextureImage
91388{
91389    type Output = ::cpp_core::CppBox<crate::QVectorOfQAbstractTextureImage>;
91390    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91391    ///
91392    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*> QVector<Qt3DRender::QAbstractTextureImage*>::operator+(const QVector<Qt3DRender::QAbstractTextureImage*>& l) const```</span>.
91393    ///
91394    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91395    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91396    #[inline(always)]
91397    fn add(
91398        self,
91399        l: ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>,
91400    ) -> ::cpp_core::CppBox<crate::QVectorOfQAbstractTextureImage> {
91401        let ffi_result = {
91402            unsafe {
91403                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_operator_2(self as *const crate::QVectorOfQAbstractTextureImage, l.as_raw_ptr())
91404            }
91405        };
91406        unsafe {
91407            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91408        }
91409    }
91410}
91411
91412impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQParameter>> for &crate::QVectorOfQParameter {
91413    type Output = ::cpp_core::CppBox<crate::QVectorOfQParameter>;
91414    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91415    ///
91416    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*> QVector<Qt3DRender::QParameter*>::operator+(const QVector<Qt3DRender::QParameter*>& l) const```</span>.
91417    ///
91418    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91419    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91420    #[inline(always)]
91421    fn add(
91422        self,
91423        l: ::cpp_core::Ref<crate::QVectorOfQParameter>,
91424    ) -> ::cpp_core::CppBox<crate::QVectorOfQParameter> {
91425        let ffi_result = {
91426            unsafe {
91427                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_operator_2(
91428                    self as *const crate::QVectorOfQParameter,
91429                    l.as_raw_ptr(),
91430                )
91431            }
91432        };
91433        unsafe {
91434            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91435        }
91436    }
91437}
91438
91439impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQTechnique>> for &crate::QVectorOfQTechnique {
91440    type Output = ::cpp_core::CppBox<crate::QVectorOfQTechnique>;
91441    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91442    ///
91443    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*> QVector<Qt3DRender::QTechnique*>::operator+(const QVector<Qt3DRender::QTechnique*>& l) const```</span>.
91444    ///
91445    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91446    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91447    #[inline(always)]
91448    fn add(
91449        self,
91450        l: ::cpp_core::Ref<crate::QVectorOfQTechnique>,
91451    ) -> ::cpp_core::CppBox<crate::QVectorOfQTechnique> {
91452        let ffi_result = {
91453            unsafe {
91454                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_operator_2(
91455                    self as *const crate::QVectorOfQTechnique,
91456                    l.as_raw_ptr(),
91457                )
91458            }
91459        };
91460        unsafe {
91461            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91462        }
91463    }
91464}
91465
91466impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQAttribute>> for &crate::QVectorOfQAttribute {
91467    type Output = ::cpp_core::CppBox<crate::QVectorOfQAttribute>;
91468    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91469    ///
91470    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*> QVector<Qt3DRender::QAttribute*>::operator+(const QVector<Qt3DRender::QAttribute*>& l) const```</span>.
91471    ///
91472    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91473    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91474    #[inline(always)]
91475    fn add(
91476        self,
91477        l: ::cpp_core::Ref<crate::QVectorOfQAttribute>,
91478    ) -> ::cpp_core::CppBox<crate::QVectorOfQAttribute> {
91479        let ffi_result = {
91480            unsafe {
91481                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_operator_2(
91482                    self as *const crate::QVectorOfQAttribute,
91483                    l.as_raw_ptr(),
91484                )
91485            }
91486        };
91487        unsafe {
91488            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91489        }
91490    }
91491}
91492
91493impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQLayer>> for &crate::QVectorOfQLayer {
91494    type Output = ::cpp_core::CppBox<crate::QVectorOfQLayer>;
91495    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91496    ///
91497    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*> QVector<Qt3DRender::QLayer*>::operator+(const QVector<Qt3DRender::QLayer*>& l) const```</span>.
91498    ///
91499    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91500    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91501    #[inline(always)]
91502    fn add(
91503        self,
91504        l: ::cpp_core::Ref<crate::QVectorOfQLayer>,
91505    ) -> ::cpp_core::CppBox<crate::QVectorOfQLayer> {
91506        let ffi_result = {
91507            unsafe {
91508                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_operator_2(
91509                    self as *const crate::QVectorOfQLayer,
91510                    l.as_raw_ptr(),
91511                )
91512            }
91513        };
91514        unsafe {
91515            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91516        }
91517    }
91518}
91519
91520impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQFilterKey>> for &crate::QVectorOfQFilterKey {
91521    type Output = ::cpp_core::CppBox<crate::QVectorOfQFilterKey>;
91522    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91523    ///
91524    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*> QVector<Qt3DRender::QFilterKey*>::operator+(const QVector<Qt3DRender::QFilterKey*>& l) const```</span>.
91525    ///
91526    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91527    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91528    #[inline(always)]
91529    fn add(
91530        self,
91531        l: ::cpp_core::Ref<crate::QVectorOfQFilterKey>,
91532    ) -> ::cpp_core::CppBox<crate::QVectorOfQFilterKey> {
91533        let ffi_result = {
91534            unsafe {
91535                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_operator_2(
91536                    self as *const crate::QVectorOfQFilterKey,
91537                    l.as_raw_ptr(),
91538                )
91539            }
91540        };
91541        unsafe {
91542            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91543        }
91544    }
91545}
91546
91547impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQRenderState>>
91548    for &crate::QVectorOfQRenderState
91549{
91550    type Output = ::cpp_core::CppBox<crate::QVectorOfQRenderState>;
91551    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91552    ///
91553    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*> QVector<Qt3DRender::QRenderState*>::operator+(const QVector<Qt3DRender::QRenderState*>& l) const```</span>.
91554    ///
91555    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91556    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91557    #[inline(always)]
91558    fn add(
91559        self,
91560        l: ::cpp_core::Ref<crate::QVectorOfQRenderState>,
91561    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderState> {
91562        let ffi_result = {
91563            unsafe {
91564                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_operator_2(
91565                    self as *const crate::QVectorOfQRenderState,
91566                    l.as_raw_ptr(),
91567                )
91568            }
91569        };
91570        unsafe {
91571            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91572        }
91573    }
91574}
91575
91576impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>
91577    for &crate::QVectorOfQRenderTargetOutput
91578{
91579    type Output = ::cpp_core::CppBox<crate::QVectorOfQRenderTargetOutput>;
91580    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91581    ///
91582    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*> QVector<Qt3DRender::QRenderTargetOutput*>::operator+(const QVector<Qt3DRender::QRenderTargetOutput*>& l) const```</span>.
91583    ///
91584    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91585    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91586    #[inline(always)]
91587    fn add(
91588        self,
91589        l: ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>,
91590    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderTargetOutput> {
91591        let ffi_result = {
91592            unsafe {
91593                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_operator_2(self as *const crate::QVectorOfQRenderTargetOutput, l.as_raw_ptr())
91594            }
91595        };
91596        unsafe {
91597            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91598        }
91599    }
91600}
91601
91602impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>
91603    for &crate::QVectorOfAttachmentPoint
91604{
91605    type Output = ::cpp_core::CppBox<crate::QVectorOfAttachmentPoint>;
91606    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91607    ///
91608    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint> QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::operator+(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& l) const```</span>.
91609    ///
91610    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91611    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91612    #[inline(always)]
91613    fn add(
91614        self,
91615        l: ::cpp_core::Ref<crate::QVectorOfAttachmentPoint>,
91616    ) -> ::cpp_core::CppBox<crate::QVectorOfAttachmentPoint> {
91617        let ffi_result = {
91618            unsafe {
91619                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_operator_2(self as *const crate::QVectorOfAttachmentPoint, l.as_raw_ptr())
91620            }
91621        };
91622        unsafe {
91623            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91624        }
91625    }
91626}
91627
91628impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfSortType>> for &crate::QVectorOfSortType {
91629    type Output = ::cpp_core::CppBox<crate::QVectorOfSortType>;
91630    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91631    ///
91632    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType> QVector<Qt3DRender::QSortPolicy::SortType>::operator+(const QVector<Qt3DRender::QSortPolicy::SortType>& l) const```</span>.
91633    ///
91634    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91635    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91636    #[inline(always)]
91637    fn add(
91638        self,
91639        l: ::cpp_core::Ref<crate::QVectorOfSortType>,
91640    ) -> ::cpp_core::CppBox<crate::QVectorOfSortType> {
91641        let ffi_result = {
91642            unsafe {
91643                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_operator_2(self as *const crate::QVectorOfSortType, l.as_raw_ptr())
91644            }
91645        };
91646        unsafe {
91647            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91648        }
91649    }
91650}
91651
91652impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQRenderPass>>
91653    for &crate::QVectorOfQRenderPass
91654{
91655    type Output = ::cpp_core::CppBox<crate::QVectorOfQRenderPass>;
91656    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91657    ///
91658    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*> QVector<Qt3DRender::QRenderPass*>::operator+(const QVector<Qt3DRender::QRenderPass*>& l) const```</span>.
91659    ///
91660    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
91661    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91662    #[inline(always)]
91663    fn add(
91664        self,
91665        l: ::cpp_core::Ref<crate::QVectorOfQRenderPass>,
91666    ) -> ::cpp_core::CppBox<crate::QVectorOfQRenderPass> {
91667        let ffi_result = {
91668            unsafe {
91669                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_operator_2(
91670                    self as *const crate::QVectorOfQRenderPass,
91671                    l.as_raw_ptr(),
91672                )
91673            }
91674        };
91675        unsafe {
91676            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
91677        }
91678    }
91679}
91680
91681impl ::std::ops::Shl<*const *mut crate::QAbstractTextureImage>
91682    for &crate::QVectorOfQAbstractTextureImage
91683{
91684    type Output = ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>;
91685    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91686    ///
91687    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*>& QVector<Qt3DRender::QAbstractTextureImage*>::operator<<(const Qt3DRender::QAbstractTextureImage*& t)```</span>.
91688    ///
91689    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91690    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91691    #[inline(always)]
91692    fn shl(
91693        self,
91694        t: *const *mut crate::QAbstractTextureImage,
91695    ) -> ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage> {
91696        let ffi_result = {
91697            unsafe {
91698                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_operator__6(self as *const crate::QVectorOfQAbstractTextureImage as *mut crate::QVectorOfQAbstractTextureImage, t)
91699            }
91700        };
91701        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91702    }
91703}
91704
91705impl ::std::ops::Shl<*const *mut crate::QParameter> for &crate::QVectorOfQParameter {
91706    type Output = ::cpp_core::Ref<crate::QVectorOfQParameter>;
91707    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91708    ///
91709    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*>& QVector<Qt3DRender::QParameter*>::operator<<(const Qt3DRender::QParameter*& t)```</span>.
91710    ///
91711    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91712    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91713    #[inline(always)]
91714    fn shl(self, t: *const *mut crate::QParameter) -> ::cpp_core::Ref<crate::QVectorOfQParameter> {
91715        let ffi_result = {
91716            unsafe {
91717                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_operator__6(
91718                    self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
91719                    t,
91720                )
91721            }
91722        };
91723        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91724    }
91725}
91726
91727impl ::std::ops::Shl<*const *mut crate::QTechnique> for &crate::QVectorOfQTechnique {
91728    type Output = ::cpp_core::Ref<crate::QVectorOfQTechnique>;
91729    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91730    ///
91731    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*>& QVector<Qt3DRender::QTechnique*>::operator<<(const Qt3DRender::QTechnique*& t)```</span>.
91732    ///
91733    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91734    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91735    #[inline(always)]
91736    fn shl(self, t: *const *mut crate::QTechnique) -> ::cpp_core::Ref<crate::QVectorOfQTechnique> {
91737        let ffi_result = {
91738            unsafe {
91739                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_operator__6(
91740                    self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
91741                    t,
91742                )
91743            }
91744        };
91745        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91746    }
91747}
91748
91749impl ::std::ops::Shl<*const *mut crate::QAttribute> for &crate::QVectorOfQAttribute {
91750    type Output = ::cpp_core::Ref<crate::QVectorOfQAttribute>;
91751    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91752    ///
91753    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*>& QVector<Qt3DRender::QAttribute*>::operator<<(const Qt3DRender::QAttribute*& t)```</span>.
91754    ///
91755    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91756    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91757    #[inline(always)]
91758    fn shl(self, t: *const *mut crate::QAttribute) -> ::cpp_core::Ref<crate::QVectorOfQAttribute> {
91759        let ffi_result = {
91760            unsafe {
91761                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_operator__6(
91762                    self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
91763                    t,
91764                )
91765            }
91766        };
91767        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91768    }
91769}
91770
91771impl ::std::ops::Shl<*const *mut crate::QLayer> for &crate::QVectorOfQLayer {
91772    type Output = ::cpp_core::Ref<crate::QVectorOfQLayer>;
91773    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91774    ///
91775    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*>& QVector<Qt3DRender::QLayer*>::operator<<(const Qt3DRender::QLayer*& t)```</span>.
91776    ///
91777    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91778    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91779    #[inline(always)]
91780    fn shl(self, t: *const *mut crate::QLayer) -> ::cpp_core::Ref<crate::QVectorOfQLayer> {
91781        let ffi_result = {
91782            unsafe {
91783                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_operator__6(
91784                    self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
91785                    t,
91786                )
91787            }
91788        };
91789        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91790    }
91791}
91792
91793impl ::std::ops::Shl<*const *mut crate::QFilterKey> for &crate::QVectorOfQFilterKey {
91794    type Output = ::cpp_core::Ref<crate::QVectorOfQFilterKey>;
91795    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91796    ///
91797    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*>& QVector<Qt3DRender::QFilterKey*>::operator<<(const Qt3DRender::QFilterKey*& t)```</span>.
91798    ///
91799    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91800    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91801    #[inline(always)]
91802    fn shl(self, t: *const *mut crate::QFilterKey) -> ::cpp_core::Ref<crate::QVectorOfQFilterKey> {
91803        let ffi_result = {
91804            unsafe {
91805                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_operator__6(
91806                    self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
91807                    t,
91808                )
91809            }
91810        };
91811        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91812    }
91813}
91814
91815impl ::std::ops::Shl<*const *mut crate::QRenderState> for &crate::QVectorOfQRenderState {
91816    type Output = ::cpp_core::Ref<crate::QVectorOfQRenderState>;
91817    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91818    ///
91819    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*>& QVector<Qt3DRender::QRenderState*>::operator<<(const Qt3DRender::QRenderState*& t)```</span>.
91820    ///
91821    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91822    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91823    #[inline(always)]
91824    fn shl(
91825        self,
91826        t: *const *mut crate::QRenderState,
91827    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderState> {
91828        let ffi_result = {
91829            unsafe {
91830                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_operator__6(
91831                    self as *const crate::QVectorOfQRenderState
91832                        as *mut crate::QVectorOfQRenderState,
91833                    t,
91834                )
91835            }
91836        };
91837        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91838    }
91839}
91840
91841impl ::std::ops::Shl<*const *mut crate::QRenderTargetOutput>
91842    for &crate::QVectorOfQRenderTargetOutput
91843{
91844    type Output = ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>;
91845    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91846    ///
91847    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*>& QVector<Qt3DRender::QRenderTargetOutput*>::operator<<(const Qt3DRender::QRenderTargetOutput*& t)```</span>.
91848    ///
91849    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91850    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91851    #[inline(always)]
91852    fn shl(
91853        self,
91854        t: *const *mut crate::QRenderTargetOutput,
91855    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput> {
91856        let ffi_result = {
91857            unsafe {
91858                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_operator__6(self as *const crate::QVectorOfQRenderTargetOutput as *mut crate::QVectorOfQRenderTargetOutput, t)
91859            }
91860        };
91861        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91862    }
91863}
91864
91865impl ::std::ops::Shl<*const crate::q_render_target_output::AttachmentPoint>
91866    for &crate::QVectorOfAttachmentPoint
91867{
91868    type Output = ::cpp_core::Ref<crate::QVectorOfAttachmentPoint>;
91869    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91870    ///
91871    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::operator<<(const Qt3DRender::QRenderTargetOutput::AttachmentPoint& t)```</span>.
91872    ///
91873    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91874    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91875    #[inline(always)]
91876    fn shl(
91877        self,
91878        t: *const crate::q_render_target_output::AttachmentPoint,
91879    ) -> ::cpp_core::Ref<crate::QVectorOfAttachmentPoint> {
91880        let ffi_result = {
91881            unsafe {
91882                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_operator__6(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, t)
91883            }
91884        };
91885        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91886    }
91887}
91888
91889impl ::std::ops::Shl<*const crate::q_sort_policy::SortType> for &crate::QVectorOfSortType {
91890    type Output = ::cpp_core::Ref<crate::QVectorOfSortType>;
91891    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91892    ///
91893    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType>& QVector<Qt3DRender::QSortPolicy::SortType>::operator<<(const Qt3DRender::QSortPolicy::SortType& t)```</span>.
91894    ///
91895    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91896    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91897    #[inline(always)]
91898    fn shl(
91899        self,
91900        t: *const crate::q_sort_policy::SortType,
91901    ) -> ::cpp_core::Ref<crate::QVectorOfSortType> {
91902        let ffi_result = {
91903            unsafe {
91904                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_operator__6(self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType, t)
91905            }
91906        };
91907        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91908    }
91909}
91910
91911impl ::std::ops::Shl<*const *mut crate::QRenderPass> for &crate::QVectorOfQRenderPass {
91912    type Output = ::cpp_core::Ref<crate::QVectorOfQRenderPass>;
91913    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91914    ///
91915    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*>& QVector<Qt3DRender::QRenderPass*>::operator<<(const Qt3DRender::QRenderPass*& t)```</span>.
91916    ///
91917    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
91918    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
91919    #[inline(always)]
91920    fn shl(
91921        self,
91922        t: *const *mut crate::QRenderPass,
91923    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderPass> {
91924        let ffi_result = {
91925            unsafe {
91926                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_operator__6(
91927                    self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
91928                    t,
91929                )
91930            }
91931        };
91932        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91933    }
91934}
91935
91936impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>
91937    for &crate::QVectorOfQAbstractTextureImage
91938{
91939    type Output = ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>;
91940    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
91941    ///
91942    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAbstractTextureImage*>& QVector<Qt3DRender::QAbstractTextureImage*>::operator<<(const QVector<Qt3DRender::QAbstractTextureImage*>& l)```</span>.
91943    ///
91944    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
91945    #[inline(always)]
91946    fn shl(
91947        self,
91948        l: ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>,
91949    ) -> ::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage> {
91950        let ffi_result = {
91951            unsafe {
91952                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAbstractTextureImage_ptr_operator__7(self as *const crate::QVectorOfQAbstractTextureImage as *mut crate::QVectorOfQAbstractTextureImage, l.as_raw_ptr())
91953            }
91954        };
91955        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91956    }
91957}
91958
91959impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQParameter>> for &crate::QVectorOfQParameter {
91960    type Output = ::cpp_core::Ref<crate::QVectorOfQParameter>;
91961    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
91962    ///
91963    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QParameter*>& QVector<Qt3DRender::QParameter*>::operator<<(const QVector<Qt3DRender::QParameter*>& l)```</span>.
91964    ///
91965    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
91966    #[inline(always)]
91967    fn shl(
91968        self,
91969        l: ::cpp_core::Ref<crate::QVectorOfQParameter>,
91970    ) -> ::cpp_core::Ref<crate::QVectorOfQParameter> {
91971        let ffi_result = {
91972            unsafe {
91973                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QParameter_ptr_operator__7(
91974                    self as *const crate::QVectorOfQParameter as *mut crate::QVectorOfQParameter,
91975                    l.as_raw_ptr(),
91976                )
91977            }
91978        };
91979        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
91980    }
91981}
91982
91983impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQTechnique>> for &crate::QVectorOfQTechnique {
91984    type Output = ::cpp_core::Ref<crate::QVectorOfQTechnique>;
91985    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
91986    ///
91987    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QTechnique*>& QVector<Qt3DRender::QTechnique*>::operator<<(const QVector<Qt3DRender::QTechnique*>& l)```</span>.
91988    ///
91989    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
91990    #[inline(always)]
91991    fn shl(
91992        self,
91993        l: ::cpp_core::Ref<crate::QVectorOfQTechnique>,
91994    ) -> ::cpp_core::Ref<crate::QVectorOfQTechnique> {
91995        let ffi_result = {
91996            unsafe {
91997                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QTechnique_ptr_operator__7(
91998                    self as *const crate::QVectorOfQTechnique as *mut crate::QVectorOfQTechnique,
91999                    l.as_raw_ptr(),
92000                )
92001            }
92002        };
92003        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
92004    }
92005}
92006
92007impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQAttribute>> for &crate::QVectorOfQAttribute {
92008    type Output = ::cpp_core::Ref<crate::QVectorOfQAttribute>;
92009    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
92010    ///
92011    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QAttribute*>& QVector<Qt3DRender::QAttribute*>::operator<<(const QVector<Qt3DRender::QAttribute*>& l)```</span>.
92012    ///
92013    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
92014    #[inline(always)]
92015    fn shl(
92016        self,
92017        l: ::cpp_core::Ref<crate::QVectorOfQAttribute>,
92018    ) -> ::cpp_core::Ref<crate::QVectorOfQAttribute> {
92019        let ffi_result = {
92020            unsafe {
92021                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QAttribute_ptr_operator__7(
92022                    self as *const crate::QVectorOfQAttribute as *mut crate::QVectorOfQAttribute,
92023                    l.as_raw_ptr(),
92024                )
92025            }
92026        };
92027        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
92028    }
92029}
92030
92031impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQLayer>> for &crate::QVectorOfQLayer {
92032    type Output = ::cpp_core::Ref<crate::QVectorOfQLayer>;
92033    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
92034    ///
92035    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QLayer*>& QVector<Qt3DRender::QLayer*>::operator<<(const QVector<Qt3DRender::QLayer*>& l)```</span>.
92036    ///
92037    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
92038    #[inline(always)]
92039    fn shl(
92040        self,
92041        l: ::cpp_core::Ref<crate::QVectorOfQLayer>,
92042    ) -> ::cpp_core::Ref<crate::QVectorOfQLayer> {
92043        let ffi_result = {
92044            unsafe {
92045                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QLayer_ptr_operator__7(
92046                    self as *const crate::QVectorOfQLayer as *mut crate::QVectorOfQLayer,
92047                    l.as_raw_ptr(),
92048                )
92049            }
92050        };
92051        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
92052    }
92053}
92054
92055impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQFilterKey>> for &crate::QVectorOfQFilterKey {
92056    type Output = ::cpp_core::Ref<crate::QVectorOfQFilterKey>;
92057    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
92058    ///
92059    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QFilterKey*>& QVector<Qt3DRender::QFilterKey*>::operator<<(const QVector<Qt3DRender::QFilterKey*>& l)```</span>.
92060    ///
92061    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
92062    #[inline(always)]
92063    fn shl(
92064        self,
92065        l: ::cpp_core::Ref<crate::QVectorOfQFilterKey>,
92066    ) -> ::cpp_core::Ref<crate::QVectorOfQFilterKey> {
92067        let ffi_result = {
92068            unsafe {
92069                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QFilterKey_ptr_operator__7(
92070                    self as *const crate::QVectorOfQFilterKey as *mut crate::QVectorOfQFilterKey,
92071                    l.as_raw_ptr(),
92072                )
92073            }
92074        };
92075        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
92076    }
92077}
92078
92079impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQRenderState>>
92080    for &crate::QVectorOfQRenderState
92081{
92082    type Output = ::cpp_core::Ref<crate::QVectorOfQRenderState>;
92083    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
92084    ///
92085    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderState*>& QVector<Qt3DRender::QRenderState*>::operator<<(const QVector<Qt3DRender::QRenderState*>& l)```</span>.
92086    ///
92087    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
92088    #[inline(always)]
92089    fn shl(
92090        self,
92091        l: ::cpp_core::Ref<crate::QVectorOfQRenderState>,
92092    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderState> {
92093        let ffi_result = {
92094            unsafe {
92095                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderState_ptr_operator__7(
92096                    self as *const crate::QVectorOfQRenderState
92097                        as *mut crate::QVectorOfQRenderState,
92098                    l.as_raw_ptr(),
92099                )
92100            }
92101        };
92102        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
92103    }
92104}
92105
92106impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>
92107    for &crate::QVectorOfQRenderTargetOutput
92108{
92109    type Output = ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>;
92110    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
92111    ///
92112    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput*>& QVector<Qt3DRender::QRenderTargetOutput*>::operator<<(const QVector<Qt3DRender::QRenderTargetOutput*>& l)```</span>.
92113    ///
92114    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
92115    #[inline(always)]
92116    fn shl(
92117        self,
92118        l: ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>,
92119    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput> {
92120        let ffi_result = {
92121            unsafe {
92122                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_ptr_operator__7(self as *const crate::QVectorOfQRenderTargetOutput as *mut crate::QVectorOfQRenderTargetOutput, l.as_raw_ptr())
92123            }
92124        };
92125        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
92126    }
92127}
92128
92129impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>
92130    for &crate::QVectorOfAttachmentPoint
92131{
92132    type Output = ::cpp_core::Ref<crate::QVectorOfAttachmentPoint>;
92133    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
92134    ///
92135    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>::operator<<(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& l)```</span>.
92136    ///
92137    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
92138    #[inline(always)]
92139    fn shl(
92140        self,
92141        l: ::cpp_core::Ref<crate::QVectorOfAttachmentPoint>,
92142    ) -> ::cpp_core::Ref<crate::QVectorOfAttachmentPoint> {
92143        let ffi_result = {
92144            unsafe {
92145                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderTargetOutput_AttachmentPoint_operator__7(self as *const crate::QVectorOfAttachmentPoint as *mut crate::QVectorOfAttachmentPoint, l.as_raw_ptr())
92146            }
92147        };
92148        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
92149    }
92150}
92151
92152impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfSortType>> for &crate::QVectorOfSortType {
92153    type Output = ::cpp_core::Ref<crate::QVectorOfSortType>;
92154    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
92155    ///
92156    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QSortPolicy::SortType>& QVector<Qt3DRender::QSortPolicy::SortType>::operator<<(const QVector<Qt3DRender::QSortPolicy::SortType>& l)```</span>.
92157    ///
92158    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
92159    #[inline(always)]
92160    fn shl(
92161        self,
92162        l: ::cpp_core::Ref<crate::QVectorOfSortType>,
92163    ) -> ::cpp_core::Ref<crate::QVectorOfSortType> {
92164        let ffi_result = {
92165            unsafe {
92166                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QSortPolicy_SortType_operator__7(self as *const crate::QVectorOfSortType as *mut crate::QVectorOfSortType, l.as_raw_ptr())
92167            }
92168        };
92169        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
92170    }
92171}
92172
92173impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQRenderPass>>
92174    for &crate::QVectorOfQRenderPass
92175{
92176    type Output = ::cpp_core::Ref<crate::QVectorOfQRenderPass>;
92177    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
92178    ///
92179    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRenderPass*>& QVector<Qt3DRender::QRenderPass*>::operator<<(const QVector<Qt3DRender::QRenderPass*>& l)```</span>.
92180    ///
92181    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
92182    #[inline(always)]
92183    fn shl(
92184        self,
92185        l: ::cpp_core::Ref<crate::QVectorOfQRenderPass>,
92186    ) -> ::cpp_core::Ref<crate::QVectorOfQRenderPass> {
92187        let ffi_result = {
92188            unsafe {
92189                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRenderPass_ptr_operator__7(
92190                    self as *const crate::QVectorOfQRenderPass as *mut crate::QVectorOfQRenderPass,
92191                    l.as_raw_ptr(),
92192                )
92193            }
92194        };
92195        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
92196    }
92197}
92198
92199impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>
92200    for crate::QVectorOfQAbstractTextureImage
92201{
92202    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QAbstractTextureImage*>& lhs, const QVector<Qt3DRender::QAbstractTextureImage*>& rhs)```</span>.
92203    #[inline(always)]
92204    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>) -> bool {
92205        crate::__ffi::ctr_qt_3d_render_ffi_operator_(
92206            self as *const crate::QVectorOfQAbstractTextureImage,
92207            rhs.as_raw_ptr(),
92208        )
92209    }
92210}
92211
92212impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfQParameter>>
92213    for crate::QVectorOfQParameter
92214{
92215    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QParameter*>& lhs, const QVector<Qt3DRender::QParameter*>& rhs)```</span>.
92216    #[inline(always)]
92217    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQParameter>) -> bool {
92218        crate::__ffi::ctr_qt_3d_render_ffi_operator_1(
92219            self as *const crate::QVectorOfQParameter,
92220            rhs.as_raw_ptr(),
92221        )
92222    }
92223}
92224
92225impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfQTechnique>>
92226    for crate::QVectorOfQTechnique
92227{
92228    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QTechnique*>& lhs, const QVector<Qt3DRender::QTechnique*>& rhs)```</span>.
92229    #[inline(always)]
92230    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQTechnique>) -> bool {
92231        crate::__ffi::ctr_qt_3d_render_ffi_operator_2(
92232            self as *const crate::QVectorOfQTechnique,
92233            rhs.as_raw_ptr(),
92234        )
92235    }
92236}
92237
92238impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfQAttribute>>
92239    for crate::QVectorOfQAttribute
92240{
92241    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QAttribute*>& lhs, const QVector<Qt3DRender::QAttribute*>& rhs)```</span>.
92242    #[inline(always)]
92243    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQAttribute>) -> bool {
92244        crate::__ffi::ctr_qt_3d_render_ffi_operator_3(
92245            self as *const crate::QVectorOfQAttribute,
92246            rhs.as_raw_ptr(),
92247        )
92248    }
92249}
92250
92251impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfQLayer>> for crate::QVectorOfQLayer {
92252    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QLayer*>& lhs, const QVector<Qt3DRender::QLayer*>& rhs)```</span>.
92253    #[inline(always)]
92254    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQLayer>) -> bool {
92255        crate::__ffi::ctr_qt_3d_render_ffi_operator_4(
92256            self as *const crate::QVectorOfQLayer,
92257            rhs.as_raw_ptr(),
92258        )
92259    }
92260}
92261
92262impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfQFilterKey>>
92263    for crate::QVectorOfQFilterKey
92264{
92265    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QFilterKey*>& lhs, const QVector<Qt3DRender::QFilterKey*>& rhs)```</span>.
92266    #[inline(always)]
92267    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQFilterKey>) -> bool {
92268        crate::__ffi::ctr_qt_3d_render_ffi_operator_5(
92269            self as *const crate::QVectorOfQFilterKey,
92270            rhs.as_raw_ptr(),
92271        )
92272    }
92273}
92274
92275impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfQRenderState>>
92276    for crate::QVectorOfQRenderState
92277{
92278    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QRenderState*>& lhs, const QVector<Qt3DRender::QRenderState*>& rhs)```</span>.
92279    #[inline(always)]
92280    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderState>) -> bool {
92281        crate::__ffi::ctr_qt_3d_render_ffi_operator_6(
92282            self as *const crate::QVectorOfQRenderState,
92283            rhs.as_raw_ptr(),
92284        )
92285    }
92286}
92287
92288impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>
92289    for crate::QVectorOfQRenderTargetOutput
92290{
92291    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QRenderTargetOutput*>& lhs, const QVector<Qt3DRender::QRenderTargetOutput*>& rhs)```</span>.
92292    #[inline(always)]
92293    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>) -> bool {
92294        crate::__ffi::ctr_qt_3d_render_ffi_operator_7(
92295            self as *const crate::QVectorOfQRenderTargetOutput,
92296            rhs.as_raw_ptr(),
92297        )
92298    }
92299}
92300
92301impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>
92302    for crate::QVectorOfAttachmentPoint
92303{
92304    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& lhs, const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& rhs)```</span>.
92305    #[inline(always)]
92306    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfAttachmentPoint>) -> bool {
92307        crate::__ffi::ctr_qt_3d_render_ffi_operator_8(
92308            self as *const crate::QVectorOfAttachmentPoint,
92309            rhs.as_raw_ptr(),
92310        )
92311    }
92312}
92313
92314impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfSortType>> for crate::QVectorOfSortType {
92315    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QSortPolicy::SortType>& lhs, const QVector<Qt3DRender::QSortPolicy::SortType>& rhs)```</span>.
92316    #[inline(always)]
92317    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfSortType>) -> bool {
92318        crate::__ffi::ctr_qt_3d_render_ffi_operator_9(
92319            self as *const crate::QVectorOfSortType,
92320            rhs.as_raw_ptr(),
92321        )
92322    }
92323}
92324
92325impl ::cpp_core::cmp::Lt<::cpp_core::Ref<crate::QVectorOfQRenderPass>>
92326    for crate::QVectorOfQRenderPass
92327{
92328    /// Calls C++ function: <span style='color: green;'>```bool operator<(const QVector<Qt3DRender::QRenderPass*>& lhs, const QVector<Qt3DRender::QRenderPass*>& rhs)```</span>.
92329    #[inline(always)]
92330    unsafe fn lt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderPass>) -> bool {
92331        crate::__ffi::ctr_qt_3d_render_ffi_operator_10(
92332            self as *const crate::QVectorOfQRenderPass,
92333            rhs.as_raw_ptr(),
92334        )
92335    }
92336}
92337
92338impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>
92339    for crate::QVectorOfQAbstractTextureImage
92340{
92341    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QAbstractTextureImage*>& lhs, const QVector<Qt3DRender::QAbstractTextureImage*>& rhs)```</span>.
92342    #[inline(always)]
92343    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>) -> bool {
92344        crate::__ffi::ctr_qt_3d_render_ffi_operator_11(
92345            self as *const crate::QVectorOfQAbstractTextureImage,
92346            rhs.as_raw_ptr(),
92347        )
92348    }
92349}
92350
92351impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfQParameter>>
92352    for crate::QVectorOfQParameter
92353{
92354    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QParameter*>& lhs, const QVector<Qt3DRender::QParameter*>& rhs)```</span>.
92355    #[inline(always)]
92356    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQParameter>) -> bool {
92357        crate::__ffi::ctr_qt_3d_render_ffi_operator_12(
92358            self as *const crate::QVectorOfQParameter,
92359            rhs.as_raw_ptr(),
92360        )
92361    }
92362}
92363
92364impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfQTechnique>>
92365    for crate::QVectorOfQTechnique
92366{
92367    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QTechnique*>& lhs, const QVector<Qt3DRender::QTechnique*>& rhs)```</span>.
92368    #[inline(always)]
92369    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQTechnique>) -> bool {
92370        crate::__ffi::ctr_qt_3d_render_ffi_operator_13(
92371            self as *const crate::QVectorOfQTechnique,
92372            rhs.as_raw_ptr(),
92373        )
92374    }
92375}
92376
92377impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfQAttribute>>
92378    for crate::QVectorOfQAttribute
92379{
92380    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QAttribute*>& lhs, const QVector<Qt3DRender::QAttribute*>& rhs)```</span>.
92381    #[inline(always)]
92382    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQAttribute>) -> bool {
92383        crate::__ffi::ctr_qt_3d_render_ffi_operator_14(
92384            self as *const crate::QVectorOfQAttribute,
92385            rhs.as_raw_ptr(),
92386        )
92387    }
92388}
92389
92390impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfQLayer>> for crate::QVectorOfQLayer {
92391    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QLayer*>& lhs, const QVector<Qt3DRender::QLayer*>& rhs)```</span>.
92392    #[inline(always)]
92393    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQLayer>) -> bool {
92394        crate::__ffi::ctr_qt_3d_render_ffi_operator_15(
92395            self as *const crate::QVectorOfQLayer,
92396            rhs.as_raw_ptr(),
92397        )
92398    }
92399}
92400
92401impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfQFilterKey>>
92402    for crate::QVectorOfQFilterKey
92403{
92404    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QFilterKey*>& lhs, const QVector<Qt3DRender::QFilterKey*>& rhs)```</span>.
92405    #[inline(always)]
92406    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQFilterKey>) -> bool {
92407        crate::__ffi::ctr_qt_3d_render_ffi_operator_16(
92408            self as *const crate::QVectorOfQFilterKey,
92409            rhs.as_raw_ptr(),
92410        )
92411    }
92412}
92413
92414impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfQRenderState>>
92415    for crate::QVectorOfQRenderState
92416{
92417    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QRenderState*>& lhs, const QVector<Qt3DRender::QRenderState*>& rhs)```</span>.
92418    #[inline(always)]
92419    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderState>) -> bool {
92420        crate::__ffi::ctr_qt_3d_render_ffi_operator_17(
92421            self as *const crate::QVectorOfQRenderState,
92422            rhs.as_raw_ptr(),
92423        )
92424    }
92425}
92426
92427impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>
92428    for crate::QVectorOfQRenderTargetOutput
92429{
92430    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QRenderTargetOutput*>& lhs, const QVector<Qt3DRender::QRenderTargetOutput*>& rhs)```</span>.
92431    #[inline(always)]
92432    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>) -> bool {
92433        crate::__ffi::ctr_qt_3d_render_ffi_operator_18(
92434            self as *const crate::QVectorOfQRenderTargetOutput,
92435            rhs.as_raw_ptr(),
92436        )
92437    }
92438}
92439
92440impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>
92441    for crate::QVectorOfAttachmentPoint
92442{
92443    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& lhs, const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& rhs)```</span>.
92444    #[inline(always)]
92445    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfAttachmentPoint>) -> bool {
92446        crate::__ffi::ctr_qt_3d_render_ffi_operator_19(
92447            self as *const crate::QVectorOfAttachmentPoint,
92448            rhs.as_raw_ptr(),
92449        )
92450    }
92451}
92452
92453impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfSortType>> for crate::QVectorOfSortType {
92454    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QSortPolicy::SortType>& lhs, const QVector<Qt3DRender::QSortPolicy::SortType>& rhs)```</span>.
92455    #[inline(always)]
92456    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfSortType>) -> bool {
92457        crate::__ffi::ctr_qt_3d_render_ffi_operator_20(
92458            self as *const crate::QVectorOfSortType,
92459            rhs.as_raw_ptr(),
92460        )
92461    }
92462}
92463
92464impl ::cpp_core::cmp::Gt<::cpp_core::Ref<crate::QVectorOfQRenderPass>>
92465    for crate::QVectorOfQRenderPass
92466{
92467    /// Calls C++ function: <span style='color: green;'>```bool operator>(const QVector<Qt3DRender::QRenderPass*>& lhs, const QVector<Qt3DRender::QRenderPass*>& rhs)```</span>.
92468    #[inline(always)]
92469    unsafe fn gt(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderPass>) -> bool {
92470        crate::__ffi::ctr_qt_3d_render_ffi_operator_21(
92471            self as *const crate::QVectorOfQRenderPass,
92472            rhs.as_raw_ptr(),
92473        )
92474    }
92475}
92476
92477impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>
92478    for crate::QVectorOfQAbstractTextureImage
92479{
92480    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92481    ///
92482    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QAbstractTextureImage*>& lhs, const QVector<Qt3DRender::QAbstractTextureImage*>& rhs)```</span>.
92483    ///
92484    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92485    #[inline(always)]
92486    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>) -> bool {
92487        crate::__ffi::ctr_qt_3d_render_ffi_operator__(
92488            self as *const crate::QVectorOfQAbstractTextureImage,
92489            rhs.as_raw_ptr(),
92490        )
92491    }
92492}
92493
92494impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfQParameter>>
92495    for crate::QVectorOfQParameter
92496{
92497    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92498    ///
92499    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QParameter*>& lhs, const QVector<Qt3DRender::QParameter*>& rhs)```</span>.
92500    ///
92501    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92502    #[inline(always)]
92503    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQParameter>) -> bool {
92504        crate::__ffi::ctr_qt_3d_render_ffi_operator__1(
92505            self as *const crate::QVectorOfQParameter,
92506            rhs.as_raw_ptr(),
92507        )
92508    }
92509}
92510
92511impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfQTechnique>>
92512    for crate::QVectorOfQTechnique
92513{
92514    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92515    ///
92516    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QTechnique*>& lhs, const QVector<Qt3DRender::QTechnique*>& rhs)```</span>.
92517    ///
92518    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92519    #[inline(always)]
92520    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQTechnique>) -> bool {
92521        crate::__ffi::ctr_qt_3d_render_ffi_operator__2(
92522            self as *const crate::QVectorOfQTechnique,
92523            rhs.as_raw_ptr(),
92524        )
92525    }
92526}
92527
92528impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfQAttribute>>
92529    for crate::QVectorOfQAttribute
92530{
92531    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92532    ///
92533    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QAttribute*>& lhs, const QVector<Qt3DRender::QAttribute*>& rhs)```</span>.
92534    ///
92535    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92536    #[inline(always)]
92537    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQAttribute>) -> bool {
92538        crate::__ffi::ctr_qt_3d_render_ffi_operator__3(
92539            self as *const crate::QVectorOfQAttribute,
92540            rhs.as_raw_ptr(),
92541        )
92542    }
92543}
92544
92545impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfQLayer>> for crate::QVectorOfQLayer {
92546    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92547    ///
92548    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QLayer*>& lhs, const QVector<Qt3DRender::QLayer*>& rhs)```</span>.
92549    ///
92550    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92551    #[inline(always)]
92552    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQLayer>) -> bool {
92553        crate::__ffi::ctr_qt_3d_render_ffi_operator__4(
92554            self as *const crate::QVectorOfQLayer,
92555            rhs.as_raw_ptr(),
92556        )
92557    }
92558}
92559
92560impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfQFilterKey>>
92561    for crate::QVectorOfQFilterKey
92562{
92563    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92564    ///
92565    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QFilterKey*>& lhs, const QVector<Qt3DRender::QFilterKey*>& rhs)```</span>.
92566    ///
92567    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92568    #[inline(always)]
92569    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQFilterKey>) -> bool {
92570        crate::__ffi::ctr_qt_3d_render_ffi_operator__5(
92571            self as *const crate::QVectorOfQFilterKey,
92572            rhs.as_raw_ptr(),
92573        )
92574    }
92575}
92576
92577impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfQRenderState>>
92578    for crate::QVectorOfQRenderState
92579{
92580    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92581    ///
92582    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QRenderState*>& lhs, const QVector<Qt3DRender::QRenderState*>& rhs)```</span>.
92583    ///
92584    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92585    #[inline(always)]
92586    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderState>) -> bool {
92587        crate::__ffi::ctr_qt_3d_render_ffi_operator__6(
92588            self as *const crate::QVectorOfQRenderState,
92589            rhs.as_raw_ptr(),
92590        )
92591    }
92592}
92593
92594impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>
92595    for crate::QVectorOfQRenderTargetOutput
92596{
92597    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92598    ///
92599    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QRenderTargetOutput*>& lhs, const QVector<Qt3DRender::QRenderTargetOutput*>& rhs)```</span>.
92600    ///
92601    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92602    #[inline(always)]
92603    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>) -> bool {
92604        crate::__ffi::ctr_qt_3d_render_ffi_operator__7(
92605            self as *const crate::QVectorOfQRenderTargetOutput,
92606            rhs.as_raw_ptr(),
92607        )
92608    }
92609}
92610
92611impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>
92612    for crate::QVectorOfAttachmentPoint
92613{
92614    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92615    ///
92616    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& lhs, const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& rhs)```</span>.
92617    ///
92618    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92619    #[inline(always)]
92620    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfAttachmentPoint>) -> bool {
92621        crate::__ffi::ctr_qt_3d_render_ffi_operator__8(
92622            self as *const crate::QVectorOfAttachmentPoint,
92623            rhs.as_raw_ptr(),
92624        )
92625    }
92626}
92627
92628impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfSortType>> for crate::QVectorOfSortType {
92629    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92630    ///
92631    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QSortPolicy::SortType>& lhs, const QVector<Qt3DRender::QSortPolicy::SortType>& rhs)```</span>.
92632    ///
92633    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92634    #[inline(always)]
92635    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfSortType>) -> bool {
92636        crate::__ffi::ctr_qt_3d_render_ffi_operator__9(
92637            self as *const crate::QVectorOfSortType,
92638            rhs.as_raw_ptr(),
92639        )
92640    }
92641}
92642
92643impl ::cpp_core::cmp::Le<::cpp_core::Ref<crate::QVectorOfQRenderPass>>
92644    for crate::QVectorOfQRenderPass
92645{
92646    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92647    ///
92648    /// Calls C++ function: <span style='color: green;'>```bool operator<=(const QVector<Qt3DRender::QRenderPass*>& lhs, const QVector<Qt3DRender::QRenderPass*>& rhs)```</span>.
92649    ///
92650    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-lt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator<=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is less than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92651    #[inline(always)]
92652    unsafe fn le(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderPass>) -> bool {
92653        crate::__ffi::ctr_qt_3d_render_ffi_operator__10(
92654            self as *const crate::QVectorOfQRenderPass,
92655            rhs.as_raw_ptr(),
92656        )
92657    }
92658}
92659
92660impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>
92661    for crate::QVectorOfQAbstractTextureImage
92662{
92663    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92664    ///
92665    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QAbstractTextureImage*>& lhs, const QVector<Qt3DRender::QAbstractTextureImage*>& rhs)```</span>.
92666    ///
92667    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92668    #[inline(always)]
92669    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>) -> bool {
92670        crate::__ffi::ctr_qt_3d_render_ffi_operator__11(
92671            self as *const crate::QVectorOfQAbstractTextureImage,
92672            rhs.as_raw_ptr(),
92673        )
92674    }
92675}
92676
92677impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfQParameter>>
92678    for crate::QVectorOfQParameter
92679{
92680    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92681    ///
92682    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QParameter*>& lhs, const QVector<Qt3DRender::QParameter*>& rhs)```</span>.
92683    ///
92684    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92685    #[inline(always)]
92686    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQParameter>) -> bool {
92687        crate::__ffi::ctr_qt_3d_render_ffi_operator__12(
92688            self as *const crate::QVectorOfQParameter,
92689            rhs.as_raw_ptr(),
92690        )
92691    }
92692}
92693
92694impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfQTechnique>>
92695    for crate::QVectorOfQTechnique
92696{
92697    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92698    ///
92699    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QTechnique*>& lhs, const QVector<Qt3DRender::QTechnique*>& rhs)```</span>.
92700    ///
92701    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92702    #[inline(always)]
92703    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQTechnique>) -> bool {
92704        crate::__ffi::ctr_qt_3d_render_ffi_operator__13(
92705            self as *const crate::QVectorOfQTechnique,
92706            rhs.as_raw_ptr(),
92707        )
92708    }
92709}
92710
92711impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfQAttribute>>
92712    for crate::QVectorOfQAttribute
92713{
92714    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92715    ///
92716    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QAttribute*>& lhs, const QVector<Qt3DRender::QAttribute*>& rhs)```</span>.
92717    ///
92718    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92719    #[inline(always)]
92720    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQAttribute>) -> bool {
92721        crate::__ffi::ctr_qt_3d_render_ffi_operator__14(
92722            self as *const crate::QVectorOfQAttribute,
92723            rhs.as_raw_ptr(),
92724        )
92725    }
92726}
92727
92728impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfQLayer>> for crate::QVectorOfQLayer {
92729    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92730    ///
92731    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QLayer*>& lhs, const QVector<Qt3DRender::QLayer*>& rhs)```</span>.
92732    ///
92733    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92734    #[inline(always)]
92735    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQLayer>) -> bool {
92736        crate::__ffi::ctr_qt_3d_render_ffi_operator__15(
92737            self as *const crate::QVectorOfQLayer,
92738            rhs.as_raw_ptr(),
92739        )
92740    }
92741}
92742
92743impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfQFilterKey>>
92744    for crate::QVectorOfQFilterKey
92745{
92746    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92747    ///
92748    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QFilterKey*>& lhs, const QVector<Qt3DRender::QFilterKey*>& rhs)```</span>.
92749    ///
92750    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92751    #[inline(always)]
92752    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQFilterKey>) -> bool {
92753        crate::__ffi::ctr_qt_3d_render_ffi_operator__16(
92754            self as *const crate::QVectorOfQFilterKey,
92755            rhs.as_raw_ptr(),
92756        )
92757    }
92758}
92759
92760impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfQRenderState>>
92761    for crate::QVectorOfQRenderState
92762{
92763    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92764    ///
92765    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QRenderState*>& lhs, const QVector<Qt3DRender::QRenderState*>& rhs)```</span>.
92766    ///
92767    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92768    #[inline(always)]
92769    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderState>) -> bool {
92770        crate::__ffi::ctr_qt_3d_render_ffi_operator__17(
92771            self as *const crate::QVectorOfQRenderState,
92772            rhs.as_raw_ptr(),
92773        )
92774    }
92775}
92776
92777impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>
92778    for crate::QVectorOfQRenderTargetOutput
92779{
92780    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92781    ///
92782    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QRenderTargetOutput*>& lhs, const QVector<Qt3DRender::QRenderTargetOutput*>& rhs)```</span>.
92783    ///
92784    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92785    #[inline(always)]
92786    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>) -> bool {
92787        crate::__ffi::ctr_qt_3d_render_ffi_operator__18(
92788            self as *const crate::QVectorOfQRenderTargetOutput,
92789            rhs.as_raw_ptr(),
92790        )
92791    }
92792}
92793
92794impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>
92795    for crate::QVectorOfAttachmentPoint
92796{
92797    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92798    ///
92799    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& lhs, const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& rhs)```</span>.
92800    ///
92801    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92802    #[inline(always)]
92803    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfAttachmentPoint>) -> bool {
92804        crate::__ffi::ctr_qt_3d_render_ffi_operator__19(
92805            self as *const crate::QVectorOfAttachmentPoint,
92806            rhs.as_raw_ptr(),
92807        )
92808    }
92809}
92810
92811impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfSortType>> for crate::QVectorOfSortType {
92812    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92813    ///
92814    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QSortPolicy::SortType>& lhs, const QVector<Qt3DRender::QSortPolicy::SortType>& rhs)```</span>.
92815    ///
92816    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92817    #[inline(always)]
92818    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfSortType>) -> bool {
92819        crate::__ffi::ctr_qt_3d_render_ffi_operator__20(
92820            self as *const crate::QVectorOfSortType,
92821            rhs.as_raw_ptr(),
92822        )
92823    }
92824}
92825
92826impl ::cpp_core::cmp::Ge<::cpp_core::Ref<crate::QVectorOfQRenderPass>>
92827    for crate::QVectorOfQRenderPass
92828{
92829    /// <p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p>
92830    ///
92831    /// Calls C++ function: <span style='color: green;'>```bool operator>=(const QVector<Qt3DRender::QRenderPass*>& lhs, const QVector<Qt3DRender::QRenderPass*>& rhs)```</span>.
92832    ///
92833    /// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qchar.html#operator-gt-eq">C++ documentation</a> for <span style='color: green;'>```bool operator>=(QChar c1, QChar c2)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns <code>true</code> if the numeric Unicode value of <i>c1</i> is greater than or equal to that of <i>c2</i>; otherwise returns <code>false</code>.</p></div>
92834    #[inline(always)]
92835    unsafe fn ge(&self, rhs: &::cpp_core::Ref<crate::QVectorOfQRenderPass>) -> bool {
92836        crate::__ffi::ctr_qt_3d_render_ffi_operator__21(
92837            self as *const crate::QVectorOfQRenderPass,
92838            rhs.as_raw_ptr(),
92839        )
92840    }
92841}
92842
92843impl ::cpp_core::StaticDowncast<crate::QAbstractLight> for ::qt_3d_core::QComponent {
92844    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* static_cast<Qt3DRender::QAbstractLight*>(Qt3DCore::QComponent* ptr)```</span>.
92845    #[inline(always)]
92846    unsafe fn static_downcast(
92847        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
92848    ) -> ::cpp_core::Ptr<crate::QAbstractLight> {
92849        let ffi_result = {
92850            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractLight_ptr(
92851                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
92852            )
92853        };
92854        ::cpp_core::Ptr::from_raw(ffi_result)
92855    }
92856}
92857
92858impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QAbstractLight {
92859    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QAbstractLight* ptr)```</span>.
92860    #[inline(always)]
92861    unsafe fn static_upcast(
92862        ptr: ::cpp_core::Ptr<crate::QAbstractLight>,
92863    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
92864        let ffi_result = {
92865            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr(
92866                ptr.as_raw_ptr() as *mut crate::QAbstractLight
92867            )
92868        };
92869        ::cpp_core::Ptr::from_raw(ffi_result)
92870    }
92871}
92872
92873impl ::std::ops::Deref for crate::QAbstractLight {
92874    type Target = ::qt_3d_core::QComponent;
92875    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QAbstractLight* ptr)```</span>.
92876    #[inline(always)]
92877    fn deref(&self) -> &::qt_3d_core::QComponent {
92878        let ffi_result = {
92879            unsafe {
92880                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr(
92881                    self as *const crate::QAbstractLight as *mut crate::QAbstractLight,
92882                )
92883            }
92884        };
92885        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
92886    }
92887}
92888
92889impl ::cpp_core::DynamicCast<crate::QAbstractLight> for ::qt_3d_core::QComponent {
92890    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* dynamic_cast<Qt3DRender::QAbstractLight*>(Qt3DCore::QComponent* ptr)```</span>.
92891    #[inline(always)]
92892    unsafe fn dynamic_cast(
92893        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
92894    ) -> ::cpp_core::Ptr<crate::QAbstractLight> {
92895        let ffi_result = {
92896            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractLight_ptr(
92897                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
92898            )
92899        };
92900        ::cpp_core::Ptr::from_raw(ffi_result)
92901    }
92902}
92903
92904impl ::cpp_core::StaticDowncast<crate::QAbstractLight> for ::qt_3d_core::QNode {
92905    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* static_cast<Qt3DRender::QAbstractLight*>(Qt3DCore::QNode* ptr)```</span>.
92906    #[inline(always)]
92907    unsafe fn static_downcast(
92908        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
92909    ) -> ::cpp_core::Ptr<crate::QAbstractLight> {
92910        let ffi_result = {
92911            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractLight_ptr1(
92912                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
92913            )
92914        };
92915        ::cpp_core::Ptr::from_raw(ffi_result)
92916    }
92917}
92918
92919impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QAbstractLight {
92920    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAbstractLight* ptr)```</span>.
92921    #[inline(always)]
92922    unsafe fn static_upcast(
92923        ptr: ::cpp_core::Ptr<crate::QAbstractLight>,
92924    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
92925        let ffi_result = {
92926            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr(
92927                ptr.as_raw_ptr() as *mut crate::QAbstractLight
92928            )
92929        };
92930        ::cpp_core::Ptr::from_raw(ffi_result)
92931    }
92932}
92933
92934impl ::cpp_core::DynamicCast<crate::QAbstractLight> for ::qt_3d_core::QNode {
92935    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* dynamic_cast<Qt3DRender::QAbstractLight*>(Qt3DCore::QNode* ptr)```</span>.
92936    #[inline(always)]
92937    unsafe fn dynamic_cast(
92938        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
92939    ) -> ::cpp_core::Ptr<crate::QAbstractLight> {
92940        let ffi_result = {
92941            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractLight_ptr1(
92942                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
92943            )
92944        };
92945        ::cpp_core::Ptr::from_raw(ffi_result)
92946    }
92947}
92948
92949impl ::cpp_core::StaticDowncast<crate::QAbstractLight> for ::qt_core::QObject {
92950    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* static_cast<Qt3DRender::QAbstractLight*>(QObject* ptr)```</span>.
92951    #[inline(always)]
92952    unsafe fn static_downcast(
92953        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
92954    ) -> ::cpp_core::Ptr<crate::QAbstractLight> {
92955        let ffi_result = {
92956            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractLight_ptr2(
92957                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
92958            )
92959        };
92960        ::cpp_core::Ptr::from_raw(ffi_result)
92961    }
92962}
92963
92964impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QAbstractLight {
92965    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QAbstractLight* ptr)```</span>.
92966    #[inline(always)]
92967    unsafe fn static_upcast(
92968        ptr: ::cpp_core::Ptr<crate::QAbstractLight>,
92969    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
92970        let ffi_result = {
92971            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr(
92972                ptr.as_raw_ptr() as *mut crate::QAbstractLight
92973            )
92974        };
92975        ::cpp_core::Ptr::from_raw(ffi_result)
92976    }
92977}
92978
92979impl ::cpp_core::DynamicCast<crate::QAbstractLight> for ::qt_core::QObject {
92980    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* dynamic_cast<Qt3DRender::QAbstractLight*>(QObject* ptr)```</span>.
92981    #[inline(always)]
92982    unsafe fn dynamic_cast(
92983        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
92984    ) -> ::cpp_core::Ptr<crate::QAbstractLight> {
92985        let ffi_result = {
92986            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractLight_ptr2(
92987                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
92988            )
92989        };
92990        ::cpp_core::Ptr::from_raw(ffi_result)
92991    }
92992}
92993
92994impl ::cpp_core::StaticDowncast<crate::QAbstractTexture> for ::qt_3d_core::QNode {
92995    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DCore::QNode* ptr)```</span>.
92996    #[inline(always)]
92997    unsafe fn static_downcast(
92998        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
92999    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
93000        let ffi_result = {
93001            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr(
93002                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93003            )
93004        };
93005        ::cpp_core::Ptr::from_raw(ffi_result)
93006    }
93007}
93008
93009impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QAbstractTexture {
93010    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
93011    #[inline(always)]
93012    unsafe fn static_upcast(
93013        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
93014    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
93015        let ffi_result = {
93016            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr1(
93017                ptr.as_raw_ptr() as *mut crate::QAbstractTexture
93018            )
93019        };
93020        ::cpp_core::Ptr::from_raw(ffi_result)
93021    }
93022}
93023
93024impl ::std::ops::Deref for crate::QAbstractTexture {
93025    type Target = ::qt_3d_core::QNode;
93026    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
93027    #[inline(always)]
93028    fn deref(&self) -> &::qt_3d_core::QNode {
93029        let ffi_result = {
93030            unsafe {
93031                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr1(
93032                    self as *const crate::QAbstractTexture as *mut crate::QAbstractTexture,
93033                )
93034            }
93035        };
93036        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
93037    }
93038}
93039
93040impl ::cpp_core::DynamicCast<crate::QAbstractTexture> for ::qt_3d_core::QNode {
93041    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* dynamic_cast<Qt3DRender::QAbstractTexture*>(Qt3DCore::QNode* ptr)```</span>.
93042    #[inline(always)]
93043    unsafe fn dynamic_cast(
93044        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93045    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
93046        let ffi_result = {
93047            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractTexture_ptr(
93048                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93049            )
93050        };
93051        ::cpp_core::Ptr::from_raw(ffi_result)
93052    }
93053}
93054
93055impl ::cpp_core::StaticDowncast<crate::QAbstractTexture> for ::qt_core::QObject {
93056    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(QObject* ptr)```</span>.
93057    #[inline(always)]
93058    unsafe fn static_downcast(
93059        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93060    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
93061        let ffi_result = {
93062            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr1(
93063                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93064            )
93065        };
93066        ::cpp_core::Ptr::from_raw(ffi_result)
93067    }
93068}
93069
93070impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QAbstractTexture {
93071    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
93072    #[inline(always)]
93073    unsafe fn static_upcast(
93074        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
93075    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
93076        let ffi_result = {
93077            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr1(
93078                ptr.as_raw_ptr() as *mut crate::QAbstractTexture
93079            )
93080        };
93081        ::cpp_core::Ptr::from_raw(ffi_result)
93082    }
93083}
93084
93085impl ::cpp_core::DynamicCast<crate::QAbstractTexture> for ::qt_core::QObject {
93086    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* dynamic_cast<Qt3DRender::QAbstractTexture*>(QObject* ptr)```</span>.
93087    #[inline(always)]
93088    unsafe fn dynamic_cast(
93089        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93090    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
93091        let ffi_result = {
93092            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractTexture_ptr1(
93093                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93094            )
93095        };
93096        ::cpp_core::Ptr::from_raw(ffi_result)
93097    }
93098}
93099
93100impl ::cpp_core::StaticDowncast<crate::QTextureImageDataGenerator> for crate::QAbstractFunctor {
93101    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImageDataGenerator* static_cast<Qt3DRender::QTextureImageDataGenerator*>(Qt3DRender::QAbstractFunctor* ptr)```</span>.
93102    #[inline(always)]
93103    unsafe fn static_downcast(
93104        ptr: ::cpp_core::Ptr<crate::QAbstractFunctor>,
93105    ) -> ::cpp_core::Ptr<crate::QTextureImageDataGenerator> {
93106        let ffi_result = {
93107            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureImageDataGenerator_ptr(
93108                ptr.as_raw_ptr() as *mut crate::QAbstractFunctor,
93109            )
93110        };
93111        ::cpp_core::Ptr::from_raw(ffi_result)
93112    }
93113}
93114
93115impl ::cpp_core::StaticUpcast<crate::QAbstractFunctor> for crate::QTextureImageDataGenerator {
93116    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractFunctor* static_cast<Qt3DRender::QAbstractFunctor*>(Qt3DRender::QTextureImageDataGenerator* ptr)```</span>.
93117    #[inline(always)]
93118    unsafe fn static_upcast(
93119        ptr: ::cpp_core::Ptr<crate::QTextureImageDataGenerator>,
93120    ) -> ::cpp_core::Ptr<crate::QAbstractFunctor> {
93121        let ffi_result = {
93122            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractFunctor_ptr(
93123                ptr.as_raw_ptr() as *mut crate::QTextureImageDataGenerator,
93124            )
93125        };
93126        ::cpp_core::Ptr::from_raw(ffi_result)
93127    }
93128}
93129
93130impl ::std::ops::Deref for crate::QTextureImageDataGenerator {
93131    type Target = crate::QAbstractFunctor;
93132    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractFunctor* static_cast<Qt3DRender::QAbstractFunctor*>(Qt3DRender::QTextureImageDataGenerator* ptr)```</span>.
93133    #[inline(always)]
93134    fn deref(&self) -> &crate::QAbstractFunctor {
93135        let ffi_result = {
93136            unsafe {
93137                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractFunctor_ptr(
93138                    self as *const crate::QTextureImageDataGenerator
93139                        as *mut crate::QTextureImageDataGenerator,
93140                )
93141            }
93142        };
93143        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
93144    }
93145}
93146
93147impl ::cpp_core::DynamicCast<crate::QTextureImageDataGenerator> for crate::QAbstractFunctor {
93148    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImageDataGenerator* dynamic_cast<Qt3DRender::QTextureImageDataGenerator*>(Qt3DRender::QAbstractFunctor* ptr)```</span>.
93149    #[inline(always)]
93150    unsafe fn dynamic_cast(
93151        ptr: ::cpp_core::Ptr<crate::QAbstractFunctor>,
93152    ) -> ::cpp_core::Ptr<crate::QTextureImageDataGenerator> {
93153        let ffi_result = {
93154            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureImageDataGenerator_ptr(ptr.as_raw_ptr() as *mut crate::QAbstractFunctor)
93155        };
93156        ::cpp_core::Ptr::from_raw(ffi_result)
93157    }
93158}
93159
93160impl ::cpp_core::StaticDowncast<crate::QAbstractTextureImage> for ::qt_3d_core::QNode {
93161    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* static_cast<Qt3DRender::QAbstractTextureImage*>(Qt3DCore::QNode* ptr)```</span>.
93162    #[inline(always)]
93163    unsafe fn static_downcast(
93164        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93165    ) -> ::cpp_core::Ptr<crate::QAbstractTextureImage> {
93166        let ffi_result = {
93167            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTextureImage_ptr(
93168                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93169            )
93170        };
93171        ::cpp_core::Ptr::from_raw(ffi_result)
93172    }
93173}
93174
93175impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QAbstractTextureImage {
93176    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAbstractTextureImage* ptr)```</span>.
93177    #[inline(always)]
93178    unsafe fn static_upcast(
93179        ptr: ::cpp_core::Ptr<crate::QAbstractTextureImage>,
93180    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
93181        let ffi_result = {
93182            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr2(
93183                ptr.as_raw_ptr() as *mut crate::QAbstractTextureImage
93184            )
93185        };
93186        ::cpp_core::Ptr::from_raw(ffi_result)
93187    }
93188}
93189
93190impl ::std::ops::Deref for crate::QAbstractTextureImage {
93191    type Target = ::qt_3d_core::QNode;
93192    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAbstractTextureImage* ptr)```</span>.
93193    #[inline(always)]
93194    fn deref(&self) -> &::qt_3d_core::QNode {
93195        let ffi_result = {
93196            unsafe {
93197                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr2(
93198                    self as *const crate::QAbstractTextureImage
93199                        as *mut crate::QAbstractTextureImage,
93200                )
93201            }
93202        };
93203        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
93204    }
93205}
93206
93207impl ::cpp_core::DynamicCast<crate::QAbstractTextureImage> for ::qt_3d_core::QNode {
93208    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* dynamic_cast<Qt3DRender::QAbstractTextureImage*>(Qt3DCore::QNode* ptr)```</span>.
93209    #[inline(always)]
93210    unsafe fn dynamic_cast(
93211        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93212    ) -> ::cpp_core::Ptr<crate::QAbstractTextureImage> {
93213        let ffi_result = {
93214            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractTextureImage_ptr(
93215                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93216            )
93217        };
93218        ::cpp_core::Ptr::from_raw(ffi_result)
93219    }
93220}
93221
93222impl ::cpp_core::StaticDowncast<crate::QAbstractTextureImage> for ::qt_core::QObject {
93223    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* static_cast<Qt3DRender::QAbstractTextureImage*>(QObject* ptr)```</span>.
93224    #[inline(always)]
93225    unsafe fn static_downcast(
93226        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93227    ) -> ::cpp_core::Ptr<crate::QAbstractTextureImage> {
93228        let ffi_result = {
93229            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTextureImage_ptr1(
93230                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93231            )
93232        };
93233        ::cpp_core::Ptr::from_raw(ffi_result)
93234    }
93235}
93236
93237impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QAbstractTextureImage {
93238    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QAbstractTextureImage* ptr)```</span>.
93239    #[inline(always)]
93240    unsafe fn static_upcast(
93241        ptr: ::cpp_core::Ptr<crate::QAbstractTextureImage>,
93242    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
93243        let ffi_result = {
93244            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr2(
93245                ptr.as_raw_ptr() as *mut crate::QAbstractTextureImage
93246            )
93247        };
93248        ::cpp_core::Ptr::from_raw(ffi_result)
93249    }
93250}
93251
93252impl ::cpp_core::DynamicCast<crate::QAbstractTextureImage> for ::qt_core::QObject {
93253    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* dynamic_cast<Qt3DRender::QAbstractTextureImage*>(QObject* ptr)```</span>.
93254    #[inline(always)]
93255    unsafe fn dynamic_cast(
93256        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93257    ) -> ::cpp_core::Ptr<crate::QAbstractTextureImage> {
93258        let ffi_result = {
93259            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractTextureImage_ptr1(
93260                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93261            )
93262        };
93263        ::cpp_core::Ptr::from_raw(ffi_result)
93264    }
93265}
93266
93267impl ::cpp_core::StaticDowncast<crate::QRenderState> for ::qt_3d_core::QNode {
93268    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DCore::QNode* ptr)```</span>.
93269    #[inline(always)]
93270    unsafe fn static_downcast(
93271        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93272    ) -> ::cpp_core::Ptr<crate::QRenderState> {
93273        let ffi_result = {
93274            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr(
93275                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93276            )
93277        };
93278        ::cpp_core::Ptr::from_raw(ffi_result)
93279    }
93280}
93281
93282impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderState {
93283    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderState* ptr)```</span>.
93284    #[inline(always)]
93285    unsafe fn static_upcast(
93286        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93287    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
93288        let ffi_result = {
93289            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr3(
93290                ptr.as_raw_ptr() as *mut crate::QRenderState
93291            )
93292        };
93293        ::cpp_core::Ptr::from_raw(ffi_result)
93294    }
93295}
93296
93297impl ::std::ops::Deref for crate::QRenderState {
93298    type Target = ::qt_3d_core::QNode;
93299    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderState* ptr)```</span>.
93300    #[inline(always)]
93301    fn deref(&self) -> &::qt_3d_core::QNode {
93302        let ffi_result = {
93303            unsafe {
93304                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr3(
93305                    self as *const crate::QRenderState as *mut crate::QRenderState,
93306                )
93307            }
93308        };
93309        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
93310    }
93311}
93312
93313impl ::cpp_core::DynamicCast<crate::QRenderState> for ::qt_3d_core::QNode {
93314    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* dynamic_cast<Qt3DRender::QRenderState*>(Qt3DCore::QNode* ptr)```</span>.
93315    #[inline(always)]
93316    unsafe fn dynamic_cast(
93317        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93318    ) -> ::cpp_core::Ptr<crate::QRenderState> {
93319        let ffi_result = {
93320            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderState_ptr(
93321                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93322            )
93323        };
93324        ::cpp_core::Ptr::from_raw(ffi_result)
93325    }
93326}
93327
93328impl ::cpp_core::StaticDowncast<crate::QRenderState> for ::qt_core::QObject {
93329    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(QObject* ptr)```</span>.
93330    #[inline(always)]
93331    unsafe fn static_downcast(
93332        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93333    ) -> ::cpp_core::Ptr<crate::QRenderState> {
93334        let ffi_result = {
93335            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr1(
93336                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93337            )
93338        };
93339        ::cpp_core::Ptr::from_raw(ffi_result)
93340    }
93341}
93342
93343impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderState {
93344    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderState* ptr)```</span>.
93345    #[inline(always)]
93346    unsafe fn static_upcast(
93347        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93348    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
93349        let ffi_result = {
93350            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr3(
93351                ptr.as_raw_ptr() as *mut crate::QRenderState
93352            )
93353        };
93354        ::cpp_core::Ptr::from_raw(ffi_result)
93355    }
93356}
93357
93358impl ::cpp_core::DynamicCast<crate::QRenderState> for ::qt_core::QObject {
93359    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* dynamic_cast<Qt3DRender::QRenderState*>(QObject* ptr)```</span>.
93360    #[inline(always)]
93361    unsafe fn dynamic_cast(
93362        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93363    ) -> ::cpp_core::Ptr<crate::QRenderState> {
93364        let ffi_result = {
93365            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderState_ptr1(
93366                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93367            )
93368        };
93369        ::cpp_core::Ptr::from_raw(ffi_result)
93370    }
93371}
93372
93373impl ::cpp_core::StaticDowncast<crate::QAlphaCoverage> for crate::QRenderState {
93374    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaCoverage* static_cast<Qt3DRender::QAlphaCoverage*>(Qt3DRender::QRenderState* ptr)```</span>.
93375    #[inline(always)]
93376    unsafe fn static_downcast(
93377        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93378    ) -> ::cpp_core::Ptr<crate::QAlphaCoverage> {
93379        let ffi_result = {
93380            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAlphaCoverage_ptr(
93381                ptr.as_raw_ptr() as *mut crate::QRenderState,
93382            )
93383        };
93384        ::cpp_core::Ptr::from_raw(ffi_result)
93385    }
93386}
93387
93388impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QAlphaCoverage {
93389    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QAlphaCoverage* ptr)```</span>.
93390    #[inline(always)]
93391    unsafe fn static_upcast(
93392        ptr: ::cpp_core::Ptr<crate::QAlphaCoverage>,
93393    ) -> ::cpp_core::Ptr<crate::QRenderState> {
93394        let ffi_result = {
93395            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr2(
93396                ptr.as_raw_ptr() as *mut crate::QAlphaCoverage,
93397            )
93398        };
93399        ::cpp_core::Ptr::from_raw(ffi_result)
93400    }
93401}
93402
93403impl ::std::ops::Deref for crate::QAlphaCoverage {
93404    type Target = crate::QRenderState;
93405    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QAlphaCoverage* ptr)```</span>.
93406    #[inline(always)]
93407    fn deref(&self) -> &crate::QRenderState {
93408        let ffi_result = {
93409            unsafe {
93410                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr2(
93411                    self as *const crate::QAlphaCoverage as *mut crate::QAlphaCoverage,
93412                )
93413            }
93414        };
93415        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
93416    }
93417}
93418
93419impl ::cpp_core::DynamicCast<crate::QAlphaCoverage> for crate::QRenderState {
93420    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaCoverage* dynamic_cast<Qt3DRender::QAlphaCoverage*>(Qt3DRender::QRenderState* ptr)```</span>.
93421    #[inline(always)]
93422    unsafe fn dynamic_cast(
93423        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93424    ) -> ::cpp_core::Ptr<crate::QAlphaCoverage> {
93425        let ffi_result = {
93426            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAlphaCoverage_ptr(
93427                ptr.as_raw_ptr() as *mut crate::QRenderState,
93428            )
93429        };
93430        ::cpp_core::Ptr::from_raw(ffi_result)
93431    }
93432}
93433
93434impl ::cpp_core::StaticDowncast<crate::QAlphaCoverage> for ::qt_3d_core::QNode {
93435    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaCoverage* static_cast<Qt3DRender::QAlphaCoverage*>(Qt3DCore::QNode* ptr)```</span>.
93436    #[inline(always)]
93437    unsafe fn static_downcast(
93438        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93439    ) -> ::cpp_core::Ptr<crate::QAlphaCoverage> {
93440        let ffi_result = {
93441            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAlphaCoverage_ptr1(
93442                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93443            )
93444        };
93445        ::cpp_core::Ptr::from_raw(ffi_result)
93446    }
93447}
93448
93449impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QAlphaCoverage {
93450    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAlphaCoverage* ptr)```</span>.
93451    #[inline(always)]
93452    unsafe fn static_upcast(
93453        ptr: ::cpp_core::Ptr<crate::QAlphaCoverage>,
93454    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
93455        let ffi_result = {
93456            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr4(
93457                ptr.as_raw_ptr() as *mut crate::QAlphaCoverage
93458            )
93459        };
93460        ::cpp_core::Ptr::from_raw(ffi_result)
93461    }
93462}
93463
93464impl ::cpp_core::DynamicCast<crate::QAlphaCoverage> for ::qt_3d_core::QNode {
93465    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaCoverage* dynamic_cast<Qt3DRender::QAlphaCoverage*>(Qt3DCore::QNode* ptr)```</span>.
93466    #[inline(always)]
93467    unsafe fn dynamic_cast(
93468        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93469    ) -> ::cpp_core::Ptr<crate::QAlphaCoverage> {
93470        let ffi_result = {
93471            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAlphaCoverage_ptr1(
93472                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93473            )
93474        };
93475        ::cpp_core::Ptr::from_raw(ffi_result)
93476    }
93477}
93478
93479impl ::cpp_core::StaticDowncast<crate::QAlphaCoverage> for ::qt_core::QObject {
93480    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaCoverage* static_cast<Qt3DRender::QAlphaCoverage*>(QObject* ptr)```</span>.
93481    #[inline(always)]
93482    unsafe fn static_downcast(
93483        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93484    ) -> ::cpp_core::Ptr<crate::QAlphaCoverage> {
93485        let ffi_result = {
93486            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAlphaCoverage_ptr2(
93487                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93488            )
93489        };
93490        ::cpp_core::Ptr::from_raw(ffi_result)
93491    }
93492}
93493
93494impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QAlphaCoverage {
93495    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QAlphaCoverage* ptr)```</span>.
93496    #[inline(always)]
93497    unsafe fn static_upcast(
93498        ptr: ::cpp_core::Ptr<crate::QAlphaCoverage>,
93499    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
93500        let ffi_result = {
93501            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr4(
93502                ptr.as_raw_ptr() as *mut crate::QAlphaCoverage
93503            )
93504        };
93505        ::cpp_core::Ptr::from_raw(ffi_result)
93506    }
93507}
93508
93509impl ::cpp_core::DynamicCast<crate::QAlphaCoverage> for ::qt_core::QObject {
93510    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaCoverage* dynamic_cast<Qt3DRender::QAlphaCoverage*>(QObject* ptr)```</span>.
93511    #[inline(always)]
93512    unsafe fn dynamic_cast(
93513        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93514    ) -> ::cpp_core::Ptr<crate::QAlphaCoverage> {
93515        let ffi_result = {
93516            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAlphaCoverage_ptr2(
93517                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93518            )
93519        };
93520        ::cpp_core::Ptr::from_raw(ffi_result)
93521    }
93522}
93523
93524impl ::cpp_core::StaticDowncast<crate::QAlphaTest> for crate::QRenderState {
93525    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaTest* static_cast<Qt3DRender::QAlphaTest*>(Qt3DRender::QRenderState* ptr)```</span>.
93526    #[inline(always)]
93527    unsafe fn static_downcast(
93528        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93529    ) -> ::cpp_core::Ptr<crate::QAlphaTest> {
93530        let ffi_result = {
93531            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAlphaTest_ptr(
93532                ptr.as_raw_ptr() as *mut crate::QRenderState,
93533            )
93534        };
93535        ::cpp_core::Ptr::from_raw(ffi_result)
93536    }
93537}
93538
93539impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QAlphaTest {
93540    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QAlphaTest* ptr)```</span>.
93541    #[inline(always)]
93542    unsafe fn static_upcast(
93543        ptr: ::cpp_core::Ptr<crate::QAlphaTest>,
93544    ) -> ::cpp_core::Ptr<crate::QRenderState> {
93545        let ffi_result = {
93546            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr3(
93547                ptr.as_raw_ptr() as *mut crate::QAlphaTest,
93548            )
93549        };
93550        ::cpp_core::Ptr::from_raw(ffi_result)
93551    }
93552}
93553
93554impl ::std::ops::Deref for crate::QAlphaTest {
93555    type Target = crate::QRenderState;
93556    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QAlphaTest* ptr)```</span>.
93557    #[inline(always)]
93558    fn deref(&self) -> &crate::QRenderState {
93559        let ffi_result = {
93560            unsafe {
93561                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr3(
93562                    self as *const crate::QAlphaTest as *mut crate::QAlphaTest,
93563                )
93564            }
93565        };
93566        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
93567    }
93568}
93569
93570impl ::cpp_core::DynamicCast<crate::QAlphaTest> for crate::QRenderState {
93571    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaTest* dynamic_cast<Qt3DRender::QAlphaTest*>(Qt3DRender::QRenderState* ptr)```</span>.
93572    #[inline(always)]
93573    unsafe fn dynamic_cast(
93574        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93575    ) -> ::cpp_core::Ptr<crate::QAlphaTest> {
93576        let ffi_result = {
93577            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAlphaTest_ptr(
93578                ptr.as_raw_ptr() as *mut crate::QRenderState,
93579            )
93580        };
93581        ::cpp_core::Ptr::from_raw(ffi_result)
93582    }
93583}
93584
93585impl ::cpp_core::StaticDowncast<crate::QAlphaTest> for ::qt_3d_core::QNode {
93586    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaTest* static_cast<Qt3DRender::QAlphaTest*>(Qt3DCore::QNode* ptr)```</span>.
93587    #[inline(always)]
93588    unsafe fn static_downcast(
93589        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93590    ) -> ::cpp_core::Ptr<crate::QAlphaTest> {
93591        let ffi_result = {
93592            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAlphaTest_ptr1(
93593                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93594            )
93595        };
93596        ::cpp_core::Ptr::from_raw(ffi_result)
93597    }
93598}
93599
93600impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QAlphaTest {
93601    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAlphaTest* ptr)```</span>.
93602    #[inline(always)]
93603    unsafe fn static_upcast(
93604        ptr: ::cpp_core::Ptr<crate::QAlphaTest>,
93605    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
93606        let ffi_result = {
93607            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr5(
93608                ptr.as_raw_ptr() as *mut crate::QAlphaTest
93609            )
93610        };
93611        ::cpp_core::Ptr::from_raw(ffi_result)
93612    }
93613}
93614
93615impl ::cpp_core::DynamicCast<crate::QAlphaTest> for ::qt_3d_core::QNode {
93616    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaTest* dynamic_cast<Qt3DRender::QAlphaTest*>(Qt3DCore::QNode* ptr)```</span>.
93617    #[inline(always)]
93618    unsafe fn dynamic_cast(
93619        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93620    ) -> ::cpp_core::Ptr<crate::QAlphaTest> {
93621        let ffi_result = {
93622            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAlphaTest_ptr1(
93623                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93624            )
93625        };
93626        ::cpp_core::Ptr::from_raw(ffi_result)
93627    }
93628}
93629
93630impl ::cpp_core::StaticDowncast<crate::QAlphaTest> for ::qt_core::QObject {
93631    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaTest* static_cast<Qt3DRender::QAlphaTest*>(QObject* ptr)```</span>.
93632    #[inline(always)]
93633    unsafe fn static_downcast(
93634        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93635    ) -> ::cpp_core::Ptr<crate::QAlphaTest> {
93636        let ffi_result = {
93637            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAlphaTest_ptr2(
93638                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93639            )
93640        };
93641        ::cpp_core::Ptr::from_raw(ffi_result)
93642    }
93643}
93644
93645impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QAlphaTest {
93646    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QAlphaTest* ptr)```</span>.
93647    #[inline(always)]
93648    unsafe fn static_upcast(
93649        ptr: ::cpp_core::Ptr<crate::QAlphaTest>,
93650    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
93651        let ffi_result = {
93652            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr5(
93653                ptr.as_raw_ptr() as *mut crate::QAlphaTest
93654            )
93655        };
93656        ::cpp_core::Ptr::from_raw(ffi_result)
93657    }
93658}
93659
93660impl ::cpp_core::DynamicCast<crate::QAlphaTest> for ::qt_core::QObject {
93661    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAlphaTest* dynamic_cast<Qt3DRender::QAlphaTest*>(QObject* ptr)```</span>.
93662    #[inline(always)]
93663    unsafe fn dynamic_cast(
93664        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93665    ) -> ::cpp_core::Ptr<crate::QAlphaTest> {
93666        let ffi_result = {
93667            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAlphaTest_ptr2(
93668                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93669            )
93670        };
93671        ::cpp_core::Ptr::from_raw(ffi_result)
93672    }
93673}
93674
93675impl ::cpp_core::StaticDowncast<crate::QAttribute> for ::qt_3d_core::QNode {
93676    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* static_cast<Qt3DRender::QAttribute*>(Qt3DCore::QNode* ptr)```</span>.
93677    #[inline(always)]
93678    unsafe fn static_downcast(
93679        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93680    ) -> ::cpp_core::Ptr<crate::QAttribute> {
93681        let ffi_result = {
93682            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAttribute_ptr(
93683                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93684            )
93685        };
93686        ::cpp_core::Ptr::from_raw(ffi_result)
93687    }
93688}
93689
93690impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QAttribute {
93691    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAttribute* ptr)```</span>.
93692    #[inline(always)]
93693    unsafe fn static_upcast(
93694        ptr: ::cpp_core::Ptr<crate::QAttribute>,
93695    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
93696        let ffi_result = {
93697            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr6(
93698                ptr.as_raw_ptr() as *mut crate::QAttribute
93699            )
93700        };
93701        ::cpp_core::Ptr::from_raw(ffi_result)
93702    }
93703}
93704
93705impl ::std::ops::Deref for crate::QAttribute {
93706    type Target = ::qt_3d_core::QNode;
93707    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAttribute* ptr)```</span>.
93708    #[inline(always)]
93709    fn deref(&self) -> &::qt_3d_core::QNode {
93710        let ffi_result = {
93711            unsafe {
93712                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr6(
93713                    self as *const crate::QAttribute as *mut crate::QAttribute,
93714                )
93715            }
93716        };
93717        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
93718    }
93719}
93720
93721impl ::cpp_core::DynamicCast<crate::QAttribute> for ::qt_3d_core::QNode {
93722    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* dynamic_cast<Qt3DRender::QAttribute*>(Qt3DCore::QNode* ptr)```</span>.
93723    #[inline(always)]
93724    unsafe fn dynamic_cast(
93725        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93726    ) -> ::cpp_core::Ptr<crate::QAttribute> {
93727        let ffi_result = {
93728            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAttribute_ptr(
93729                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93730            )
93731        };
93732        ::cpp_core::Ptr::from_raw(ffi_result)
93733    }
93734}
93735
93736impl ::cpp_core::StaticDowncast<crate::QAttribute> for ::qt_core::QObject {
93737    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* static_cast<Qt3DRender::QAttribute*>(QObject* ptr)```</span>.
93738    #[inline(always)]
93739    unsafe fn static_downcast(
93740        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93741    ) -> ::cpp_core::Ptr<crate::QAttribute> {
93742        let ffi_result = {
93743            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAttribute_ptr1(
93744                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93745            )
93746        };
93747        ::cpp_core::Ptr::from_raw(ffi_result)
93748    }
93749}
93750
93751impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QAttribute {
93752    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QAttribute* ptr)```</span>.
93753    #[inline(always)]
93754    unsafe fn static_upcast(
93755        ptr: ::cpp_core::Ptr<crate::QAttribute>,
93756    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
93757        let ffi_result = {
93758            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr6(
93759                ptr.as_raw_ptr() as *mut crate::QAttribute
93760            )
93761        };
93762        ::cpp_core::Ptr::from_raw(ffi_result)
93763    }
93764}
93765
93766impl ::cpp_core::DynamicCast<crate::QAttribute> for ::qt_core::QObject {
93767    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAttribute* dynamic_cast<Qt3DRender::QAttribute*>(QObject* ptr)```</span>.
93768    #[inline(always)]
93769    unsafe fn dynamic_cast(
93770        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93771    ) -> ::cpp_core::Ptr<crate::QAttribute> {
93772        let ffi_result = {
93773            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAttribute_ptr1(
93774                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93775            )
93776        };
93777        ::cpp_core::Ptr::from_raw(ffi_result)
93778    }
93779}
93780
93781impl ::cpp_core::StaticDowncast<crate::QBlendEquation> for crate::QRenderState {
93782    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquation* static_cast<Qt3DRender::QBlendEquation*>(Qt3DRender::QRenderState* ptr)```</span>.
93783    #[inline(always)]
93784    unsafe fn static_downcast(
93785        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93786    ) -> ::cpp_core::Ptr<crate::QBlendEquation> {
93787        let ffi_result = {
93788            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBlendEquation_ptr(
93789                ptr.as_raw_ptr() as *mut crate::QRenderState,
93790            )
93791        };
93792        ::cpp_core::Ptr::from_raw(ffi_result)
93793    }
93794}
93795
93796impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QBlendEquation {
93797    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QBlendEquation* ptr)```</span>.
93798    #[inline(always)]
93799    unsafe fn static_upcast(
93800        ptr: ::cpp_core::Ptr<crate::QBlendEquation>,
93801    ) -> ::cpp_core::Ptr<crate::QRenderState> {
93802        let ffi_result = {
93803            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr4(
93804                ptr.as_raw_ptr() as *mut crate::QBlendEquation,
93805            )
93806        };
93807        ::cpp_core::Ptr::from_raw(ffi_result)
93808    }
93809}
93810
93811impl ::std::ops::Deref for crate::QBlendEquation {
93812    type Target = crate::QRenderState;
93813    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QBlendEquation* ptr)```</span>.
93814    #[inline(always)]
93815    fn deref(&self) -> &crate::QRenderState {
93816        let ffi_result = {
93817            unsafe {
93818                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr4(
93819                    self as *const crate::QBlendEquation as *mut crate::QBlendEquation,
93820                )
93821            }
93822        };
93823        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
93824    }
93825}
93826
93827impl ::cpp_core::DynamicCast<crate::QBlendEquation> for crate::QRenderState {
93828    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquation* dynamic_cast<Qt3DRender::QBlendEquation*>(Qt3DRender::QRenderState* ptr)```</span>.
93829    #[inline(always)]
93830    unsafe fn dynamic_cast(
93831        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93832    ) -> ::cpp_core::Ptr<crate::QBlendEquation> {
93833        let ffi_result = {
93834            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBlendEquation_ptr(
93835                ptr.as_raw_ptr() as *mut crate::QRenderState,
93836            )
93837        };
93838        ::cpp_core::Ptr::from_raw(ffi_result)
93839    }
93840}
93841
93842impl ::cpp_core::StaticDowncast<crate::QBlendEquation> for ::qt_3d_core::QNode {
93843    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquation* static_cast<Qt3DRender::QBlendEquation*>(Qt3DCore::QNode* ptr)```</span>.
93844    #[inline(always)]
93845    unsafe fn static_downcast(
93846        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93847    ) -> ::cpp_core::Ptr<crate::QBlendEquation> {
93848        let ffi_result = {
93849            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBlendEquation_ptr1(
93850                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93851            )
93852        };
93853        ::cpp_core::Ptr::from_raw(ffi_result)
93854    }
93855}
93856
93857impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QBlendEquation {
93858    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QBlendEquation* ptr)```</span>.
93859    #[inline(always)]
93860    unsafe fn static_upcast(
93861        ptr: ::cpp_core::Ptr<crate::QBlendEquation>,
93862    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
93863        let ffi_result = {
93864            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr7(
93865                ptr.as_raw_ptr() as *mut crate::QBlendEquation
93866            )
93867        };
93868        ::cpp_core::Ptr::from_raw(ffi_result)
93869    }
93870}
93871
93872impl ::cpp_core::DynamicCast<crate::QBlendEquation> for ::qt_3d_core::QNode {
93873    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquation* dynamic_cast<Qt3DRender::QBlendEquation*>(Qt3DCore::QNode* ptr)```</span>.
93874    #[inline(always)]
93875    unsafe fn dynamic_cast(
93876        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93877    ) -> ::cpp_core::Ptr<crate::QBlendEquation> {
93878        let ffi_result = {
93879            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBlendEquation_ptr1(
93880                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
93881            )
93882        };
93883        ::cpp_core::Ptr::from_raw(ffi_result)
93884    }
93885}
93886
93887impl ::cpp_core::StaticDowncast<crate::QBlendEquation> for ::qt_core::QObject {
93888    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquation* static_cast<Qt3DRender::QBlendEquation*>(QObject* ptr)```</span>.
93889    #[inline(always)]
93890    unsafe fn static_downcast(
93891        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93892    ) -> ::cpp_core::Ptr<crate::QBlendEquation> {
93893        let ffi_result = {
93894            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBlendEquation_ptr2(
93895                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93896            )
93897        };
93898        ::cpp_core::Ptr::from_raw(ffi_result)
93899    }
93900}
93901
93902impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QBlendEquation {
93903    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QBlendEquation* ptr)```</span>.
93904    #[inline(always)]
93905    unsafe fn static_upcast(
93906        ptr: ::cpp_core::Ptr<crate::QBlendEquation>,
93907    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
93908        let ffi_result = {
93909            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr7(
93910                ptr.as_raw_ptr() as *mut crate::QBlendEquation
93911            )
93912        };
93913        ::cpp_core::Ptr::from_raw(ffi_result)
93914    }
93915}
93916
93917impl ::cpp_core::DynamicCast<crate::QBlendEquation> for ::qt_core::QObject {
93918    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquation* dynamic_cast<Qt3DRender::QBlendEquation*>(QObject* ptr)```</span>.
93919    #[inline(always)]
93920    unsafe fn dynamic_cast(
93921        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
93922    ) -> ::cpp_core::Ptr<crate::QBlendEquation> {
93923        let ffi_result = {
93924            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBlendEquation_ptr2(
93925                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
93926            )
93927        };
93928        ::cpp_core::Ptr::from_raw(ffi_result)
93929    }
93930}
93931
93932impl ::cpp_core::StaticDowncast<crate::QBlendEquationArguments> for crate::QRenderState {
93933    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments* static_cast<Qt3DRender::QBlendEquationArguments*>(Qt3DRender::QRenderState* ptr)```</span>.
93934    #[inline(always)]
93935    unsafe fn static_downcast(
93936        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93937    ) -> ::cpp_core::Ptr<crate::QBlendEquationArguments> {
93938        let ffi_result = {
93939            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBlendEquationArguments_ptr(
93940                ptr.as_raw_ptr() as *mut crate::QRenderState,
93941            )
93942        };
93943        ::cpp_core::Ptr::from_raw(ffi_result)
93944    }
93945}
93946
93947impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QBlendEquationArguments {
93948    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QBlendEquationArguments* ptr)```</span>.
93949    #[inline(always)]
93950    unsafe fn static_upcast(
93951        ptr: ::cpp_core::Ptr<crate::QBlendEquationArguments>,
93952    ) -> ::cpp_core::Ptr<crate::QRenderState> {
93953        let ffi_result = {
93954            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr5(
93955                ptr.as_raw_ptr() as *mut crate::QBlendEquationArguments,
93956            )
93957        };
93958        ::cpp_core::Ptr::from_raw(ffi_result)
93959    }
93960}
93961
93962impl ::std::ops::Deref for crate::QBlendEquationArguments {
93963    type Target = crate::QRenderState;
93964    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QBlendEquationArguments* ptr)```</span>.
93965    #[inline(always)]
93966    fn deref(&self) -> &crate::QRenderState {
93967        let ffi_result = {
93968            unsafe {
93969                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr5(
93970                    self as *const crate::QBlendEquationArguments
93971                        as *mut crate::QBlendEquationArguments,
93972                )
93973            }
93974        };
93975        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
93976    }
93977}
93978
93979impl ::cpp_core::DynamicCast<crate::QBlendEquationArguments> for crate::QRenderState {
93980    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments* dynamic_cast<Qt3DRender::QBlendEquationArguments*>(Qt3DRender::QRenderState* ptr)```</span>.
93981    #[inline(always)]
93982    unsafe fn dynamic_cast(
93983        ptr: ::cpp_core::Ptr<crate::QRenderState>,
93984    ) -> ::cpp_core::Ptr<crate::QBlendEquationArguments> {
93985        let ffi_result = {
93986            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBlendEquationArguments_ptr(
93987                ptr.as_raw_ptr() as *mut crate::QRenderState,
93988            )
93989        };
93990        ::cpp_core::Ptr::from_raw(ffi_result)
93991    }
93992}
93993
93994impl ::cpp_core::StaticDowncast<crate::QBlendEquationArguments> for ::qt_3d_core::QNode {
93995    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments* static_cast<Qt3DRender::QBlendEquationArguments*>(Qt3DCore::QNode* ptr)```</span>.
93996    #[inline(always)]
93997    unsafe fn static_downcast(
93998        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
93999    ) -> ::cpp_core::Ptr<crate::QBlendEquationArguments> {
94000        let ffi_result = {
94001            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBlendEquationArguments_ptr1(
94002                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94003            )
94004        };
94005        ::cpp_core::Ptr::from_raw(ffi_result)
94006    }
94007}
94008
94009impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QBlendEquationArguments {
94010    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QBlendEquationArguments* ptr)```</span>.
94011    #[inline(always)]
94012    unsafe fn static_upcast(
94013        ptr: ::cpp_core::Ptr<crate::QBlendEquationArguments>,
94014    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
94015        let ffi_result = {
94016            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr8(
94017                ptr.as_raw_ptr() as *mut crate::QBlendEquationArguments
94018            )
94019        };
94020        ::cpp_core::Ptr::from_raw(ffi_result)
94021    }
94022}
94023
94024impl ::cpp_core::DynamicCast<crate::QBlendEquationArguments> for ::qt_3d_core::QNode {
94025    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments* dynamic_cast<Qt3DRender::QBlendEquationArguments*>(Qt3DCore::QNode* ptr)```</span>.
94026    #[inline(always)]
94027    unsafe fn dynamic_cast(
94028        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94029    ) -> ::cpp_core::Ptr<crate::QBlendEquationArguments> {
94030        let ffi_result = {
94031            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBlendEquationArguments_ptr1(
94032                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94033            )
94034        };
94035        ::cpp_core::Ptr::from_raw(ffi_result)
94036    }
94037}
94038
94039impl ::cpp_core::StaticDowncast<crate::QBlendEquationArguments> for ::qt_core::QObject {
94040    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments* static_cast<Qt3DRender::QBlendEquationArguments*>(QObject* ptr)```</span>.
94041    #[inline(always)]
94042    unsafe fn static_downcast(
94043        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94044    ) -> ::cpp_core::Ptr<crate::QBlendEquationArguments> {
94045        let ffi_result = {
94046            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBlendEquationArguments_ptr2(
94047                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94048            )
94049        };
94050        ::cpp_core::Ptr::from_raw(ffi_result)
94051    }
94052}
94053
94054impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QBlendEquationArguments {
94055    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QBlendEquationArguments* ptr)```</span>.
94056    #[inline(always)]
94057    unsafe fn static_upcast(
94058        ptr: ::cpp_core::Ptr<crate::QBlendEquationArguments>,
94059    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
94060        let ffi_result = {
94061            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr8(
94062                ptr.as_raw_ptr() as *mut crate::QBlendEquationArguments
94063            )
94064        };
94065        ::cpp_core::Ptr::from_raw(ffi_result)
94066    }
94067}
94068
94069impl ::cpp_core::DynamicCast<crate::QBlendEquationArguments> for ::qt_core::QObject {
94070    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlendEquationArguments* dynamic_cast<Qt3DRender::QBlendEquationArguments*>(QObject* ptr)```</span>.
94071    #[inline(always)]
94072    unsafe fn dynamic_cast(
94073        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94074    ) -> ::cpp_core::Ptr<crate::QBlendEquationArguments> {
94075        let ffi_result = {
94076            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBlendEquationArguments_ptr2(
94077                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94078            )
94079        };
94080        ::cpp_core::Ptr::from_raw(ffi_result)
94081    }
94082}
94083
94084impl ::cpp_core::StaticDowncast<crate::QBuffer> for ::qt_3d_core::QNode {
94085    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBuffer* static_cast<Qt3DRender::QBuffer*>(Qt3DCore::QNode* ptr)```</span>.
94086    #[inline(always)]
94087    unsafe fn static_downcast(
94088        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94089    ) -> ::cpp_core::Ptr<crate::QBuffer> {
94090        let ffi_result = {
94091            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBuffer_ptr(
94092                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
94093            )
94094        };
94095        ::cpp_core::Ptr::from_raw(ffi_result)
94096    }
94097}
94098
94099impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QBuffer {
94100    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QBuffer* ptr)```</span>.
94101    #[inline(always)]
94102    unsafe fn static_upcast(
94103        ptr: ::cpp_core::Ptr<crate::QBuffer>,
94104    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
94105        let ffi_result = {
94106            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr9(
94107                ptr.as_raw_ptr() as *mut crate::QBuffer
94108            )
94109        };
94110        ::cpp_core::Ptr::from_raw(ffi_result)
94111    }
94112}
94113
94114impl ::std::ops::Deref for crate::QBuffer {
94115    type Target = ::qt_3d_core::QNode;
94116    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QBuffer* ptr)```</span>.
94117    #[inline(always)]
94118    fn deref(&self) -> &::qt_3d_core::QNode {
94119        let ffi_result = {
94120            unsafe {
94121                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr9(
94122                    self as *const crate::QBuffer as *mut crate::QBuffer,
94123                )
94124            }
94125        };
94126        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
94127    }
94128}
94129
94130impl ::cpp_core::DynamicCast<crate::QBuffer> for ::qt_3d_core::QNode {
94131    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBuffer* dynamic_cast<Qt3DRender::QBuffer*>(Qt3DCore::QNode* ptr)```</span>.
94132    #[inline(always)]
94133    unsafe fn dynamic_cast(
94134        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94135    ) -> ::cpp_core::Ptr<crate::QBuffer> {
94136        let ffi_result = {
94137            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBuffer_ptr(
94138                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
94139            )
94140        };
94141        ::cpp_core::Ptr::from_raw(ffi_result)
94142    }
94143}
94144
94145impl ::cpp_core::StaticDowncast<crate::QBuffer> for ::qt_core::QObject {
94146    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBuffer* static_cast<Qt3DRender::QBuffer*>(QObject* ptr)```</span>.
94147    #[inline(always)]
94148    unsafe fn static_downcast(
94149        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94150    ) -> ::cpp_core::Ptr<crate::QBuffer> {
94151        let ffi_result = {
94152            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBuffer_ptr1(
94153                ptr.as_raw_ptr() as *mut ::qt_core::QObject
94154            )
94155        };
94156        ::cpp_core::Ptr::from_raw(ffi_result)
94157    }
94158}
94159
94160impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QBuffer {
94161    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QBuffer* ptr)```</span>.
94162    #[inline(always)]
94163    unsafe fn static_upcast(
94164        ptr: ::cpp_core::Ptr<crate::QBuffer>,
94165    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
94166        let ffi_result = {
94167            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr9(
94168                ptr.as_raw_ptr() as *mut crate::QBuffer
94169            )
94170        };
94171        ::cpp_core::Ptr::from_raw(ffi_result)
94172    }
94173}
94174
94175impl ::cpp_core::DynamicCast<crate::QBuffer> for ::qt_core::QObject {
94176    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBuffer* dynamic_cast<Qt3DRender::QBuffer*>(QObject* ptr)```</span>.
94177    #[inline(always)]
94178    unsafe fn dynamic_cast(
94179        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94180    ) -> ::cpp_core::Ptr<crate::QBuffer> {
94181        let ffi_result = {
94182            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBuffer_ptr1(
94183                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94184            )
94185        };
94186        ::cpp_core::Ptr::from_raw(ffi_result)
94187    }
94188}
94189
94190impl ::cpp_core::StaticDowncast<crate::QFrameGraphNode> for ::qt_3d_core::QNode {
94191    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DCore::QNode* ptr)```</span>.
94192    #[inline(always)]
94193    unsafe fn static_downcast(
94194        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94195    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
94196        let ffi_result = {
94197            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr(
94198                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94199            )
94200        };
94201        ::cpp_core::Ptr::from_raw(ffi_result)
94202    }
94203}
94204
94205impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QFrameGraphNode {
94206    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
94207    #[inline(always)]
94208    unsafe fn static_upcast(
94209        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
94210    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
94211        let ffi_result = {
94212            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr10(
94213                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode
94214            )
94215        };
94216        ::cpp_core::Ptr::from_raw(ffi_result)
94217    }
94218}
94219
94220impl ::std::ops::Deref for crate::QFrameGraphNode {
94221    type Target = ::qt_3d_core::QNode;
94222    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
94223    #[inline(always)]
94224    fn deref(&self) -> &::qt_3d_core::QNode {
94225        let ffi_result = {
94226            unsafe {
94227                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr10(
94228                    self as *const crate::QFrameGraphNode as *mut crate::QFrameGraphNode,
94229                )
94230            }
94231        };
94232        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
94233    }
94234}
94235
94236impl ::cpp_core::DynamicCast<crate::QFrameGraphNode> for ::qt_3d_core::QNode {
94237    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* dynamic_cast<Qt3DRender::QFrameGraphNode*>(Qt3DCore::QNode* ptr)```</span>.
94238    #[inline(always)]
94239    unsafe fn dynamic_cast(
94240        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94241    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
94242        let ffi_result = {
94243            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrameGraphNode_ptr(
94244                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94245            )
94246        };
94247        ::cpp_core::Ptr::from_raw(ffi_result)
94248    }
94249}
94250
94251impl ::cpp_core::StaticDowncast<crate::QFrameGraphNode> for ::qt_core::QObject {
94252    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(QObject* ptr)```</span>.
94253    #[inline(always)]
94254    unsafe fn static_downcast(
94255        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94256    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
94257        let ffi_result = {
94258            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr1(
94259                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94260            )
94261        };
94262        ::cpp_core::Ptr::from_raw(ffi_result)
94263    }
94264}
94265
94266impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QFrameGraphNode {
94267    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
94268    #[inline(always)]
94269    unsafe fn static_upcast(
94270        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
94271    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
94272        let ffi_result = {
94273            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr10(
94274                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode
94275            )
94276        };
94277        ::cpp_core::Ptr::from_raw(ffi_result)
94278    }
94279}
94280
94281impl ::cpp_core::DynamicCast<crate::QFrameGraphNode> for ::qt_core::QObject {
94282    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* dynamic_cast<Qt3DRender::QFrameGraphNode*>(QObject* ptr)```</span>.
94283    #[inline(always)]
94284    unsafe fn dynamic_cast(
94285        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94286    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
94287        let ffi_result = {
94288            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrameGraphNode_ptr1(
94289                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94290            )
94291        };
94292        ::cpp_core::Ptr::from_raw(ffi_result)
94293    }
94294}
94295
94296impl ::cpp_core::StaticDowncast<crate::QBufferCapture> for crate::QFrameGraphNode {
94297    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBufferCapture* static_cast<Qt3DRender::QBufferCapture*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
94298    #[inline(always)]
94299    unsafe fn static_downcast(
94300        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
94301    ) -> ::cpp_core::Ptr<crate::QBufferCapture> {
94302        let ffi_result = {
94303            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBufferCapture_ptr(
94304                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
94305            )
94306        };
94307        ::cpp_core::Ptr::from_raw(ffi_result)
94308    }
94309}
94310
94311impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QBufferCapture {
94312    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QBufferCapture* ptr)```</span>.
94313    #[inline(always)]
94314    unsafe fn static_upcast(
94315        ptr: ::cpp_core::Ptr<crate::QBufferCapture>,
94316    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
94317        let ffi_result = {
94318            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr2(
94319                ptr.as_raw_ptr() as *mut crate::QBufferCapture,
94320            )
94321        };
94322        ::cpp_core::Ptr::from_raw(ffi_result)
94323    }
94324}
94325
94326impl ::std::ops::Deref for crate::QBufferCapture {
94327    type Target = crate::QFrameGraphNode;
94328    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QBufferCapture* ptr)```</span>.
94329    #[inline(always)]
94330    fn deref(&self) -> &crate::QFrameGraphNode {
94331        let ffi_result = {
94332            unsafe {
94333                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr2(
94334                    self as *const crate::QBufferCapture as *mut crate::QBufferCapture,
94335                )
94336            }
94337        };
94338        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
94339    }
94340}
94341
94342impl ::cpp_core::DynamicCast<crate::QBufferCapture> for crate::QFrameGraphNode {
94343    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBufferCapture* dynamic_cast<Qt3DRender::QBufferCapture*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
94344    #[inline(always)]
94345    unsafe fn dynamic_cast(
94346        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
94347    ) -> ::cpp_core::Ptr<crate::QBufferCapture> {
94348        let ffi_result = {
94349            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBufferCapture_ptr(
94350                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
94351            )
94352        };
94353        ::cpp_core::Ptr::from_raw(ffi_result)
94354    }
94355}
94356
94357impl ::cpp_core::StaticDowncast<crate::QBufferCapture> for ::qt_3d_core::QNode {
94358    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBufferCapture* static_cast<Qt3DRender::QBufferCapture*>(Qt3DCore::QNode* ptr)```</span>.
94359    #[inline(always)]
94360    unsafe fn static_downcast(
94361        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94362    ) -> ::cpp_core::Ptr<crate::QBufferCapture> {
94363        let ffi_result = {
94364            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBufferCapture_ptr1(
94365                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94366            )
94367        };
94368        ::cpp_core::Ptr::from_raw(ffi_result)
94369    }
94370}
94371
94372impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QBufferCapture {
94373    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QBufferCapture* ptr)```</span>.
94374    #[inline(always)]
94375    unsafe fn static_upcast(
94376        ptr: ::cpp_core::Ptr<crate::QBufferCapture>,
94377    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
94378        let ffi_result = {
94379            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr11(
94380                ptr.as_raw_ptr() as *mut crate::QBufferCapture
94381            )
94382        };
94383        ::cpp_core::Ptr::from_raw(ffi_result)
94384    }
94385}
94386
94387impl ::cpp_core::DynamicCast<crate::QBufferCapture> for ::qt_3d_core::QNode {
94388    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBufferCapture* dynamic_cast<Qt3DRender::QBufferCapture*>(Qt3DCore::QNode* ptr)```</span>.
94389    #[inline(always)]
94390    unsafe fn dynamic_cast(
94391        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94392    ) -> ::cpp_core::Ptr<crate::QBufferCapture> {
94393        let ffi_result = {
94394            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBufferCapture_ptr1(
94395                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94396            )
94397        };
94398        ::cpp_core::Ptr::from_raw(ffi_result)
94399    }
94400}
94401
94402impl ::cpp_core::StaticDowncast<crate::QBufferCapture> for ::qt_core::QObject {
94403    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBufferCapture* static_cast<Qt3DRender::QBufferCapture*>(QObject* ptr)```</span>.
94404    #[inline(always)]
94405    unsafe fn static_downcast(
94406        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94407    ) -> ::cpp_core::Ptr<crate::QBufferCapture> {
94408        let ffi_result = {
94409            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBufferCapture_ptr2(
94410                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94411            )
94412        };
94413        ::cpp_core::Ptr::from_raw(ffi_result)
94414    }
94415}
94416
94417impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QBufferCapture {
94418    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QBufferCapture* ptr)```</span>.
94419    #[inline(always)]
94420    unsafe fn static_upcast(
94421        ptr: ::cpp_core::Ptr<crate::QBufferCapture>,
94422    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
94423        let ffi_result = {
94424            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr11(
94425                ptr.as_raw_ptr() as *mut crate::QBufferCapture
94426            )
94427        };
94428        ::cpp_core::Ptr::from_raw(ffi_result)
94429    }
94430}
94431
94432impl ::cpp_core::DynamicCast<crate::QBufferCapture> for ::qt_core::QObject {
94433    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBufferCapture* dynamic_cast<Qt3DRender::QBufferCapture*>(QObject* ptr)```</span>.
94434    #[inline(always)]
94435    unsafe fn dynamic_cast(
94436        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94437    ) -> ::cpp_core::Ptr<crate::QBufferCapture> {
94438        let ffi_result = {
94439            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBufferCapture_ptr2(
94440                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94441            )
94442        };
94443        ::cpp_core::Ptr::from_raw(ffi_result)
94444    }
94445}
94446
94447impl ::cpp_core::StaticDowncast<crate::QBufferDataGenerator> for crate::QAbstractFunctor {
94448    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBufferDataGenerator* static_cast<Qt3DRender::QBufferDataGenerator*>(Qt3DRender::QAbstractFunctor* ptr)```</span>.
94449    #[inline(always)]
94450    unsafe fn static_downcast(
94451        ptr: ::cpp_core::Ptr<crate::QAbstractFunctor>,
94452    ) -> ::cpp_core::Ptr<crate::QBufferDataGenerator> {
94453        let ffi_result = {
94454            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBufferDataGenerator_ptr(
94455                ptr.as_raw_ptr() as *mut crate::QAbstractFunctor,
94456            )
94457        };
94458        ::cpp_core::Ptr::from_raw(ffi_result)
94459    }
94460}
94461
94462impl ::cpp_core::StaticUpcast<crate::QAbstractFunctor> for crate::QBufferDataGenerator {
94463    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractFunctor* static_cast<Qt3DRender::QAbstractFunctor*>(Qt3DRender::QBufferDataGenerator* ptr)```</span>.
94464    #[inline(always)]
94465    unsafe fn static_upcast(
94466        ptr: ::cpp_core::Ptr<crate::QBufferDataGenerator>,
94467    ) -> ::cpp_core::Ptr<crate::QAbstractFunctor> {
94468        let ffi_result = {
94469            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractFunctor_ptr1(
94470                ptr.as_raw_ptr() as *mut crate::QBufferDataGenerator,
94471            )
94472        };
94473        ::cpp_core::Ptr::from_raw(ffi_result)
94474    }
94475}
94476
94477impl ::std::ops::Deref for crate::QBufferDataGenerator {
94478    type Target = crate::QAbstractFunctor;
94479    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractFunctor* static_cast<Qt3DRender::QAbstractFunctor*>(Qt3DRender::QBufferDataGenerator* ptr)```</span>.
94480    #[inline(always)]
94481    fn deref(&self) -> &crate::QAbstractFunctor {
94482        let ffi_result = {
94483            unsafe {
94484                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractFunctor_ptr1(
94485                    self as *const crate::QBufferDataGenerator as *mut crate::QBufferDataGenerator,
94486                )
94487            }
94488        };
94489        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
94490    }
94491}
94492
94493impl ::cpp_core::DynamicCast<crate::QBufferDataGenerator> for crate::QAbstractFunctor {
94494    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBufferDataGenerator* dynamic_cast<Qt3DRender::QBufferDataGenerator*>(Qt3DRender::QAbstractFunctor* ptr)```</span>.
94495    #[inline(always)]
94496    unsafe fn dynamic_cast(
94497        ptr: ::cpp_core::Ptr<crate::QAbstractFunctor>,
94498    ) -> ::cpp_core::Ptr<crate::QBufferDataGenerator> {
94499        let ffi_result = {
94500            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBufferDataGenerator_ptr(
94501                ptr.as_raw_ptr() as *mut crate::QAbstractFunctor,
94502            )
94503        };
94504        ::cpp_core::Ptr::from_raw(ffi_result)
94505    }
94506}
94507
94508impl ::cpp_core::StaticDowncast<crate::QCameraLens> for ::qt_3d_core::QComponent {
94509    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraLens* static_cast<Qt3DRender::QCameraLens*>(Qt3DCore::QComponent* ptr)```</span>.
94510    #[inline(always)]
94511    unsafe fn static_downcast(
94512        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
94513    ) -> ::cpp_core::Ptr<crate::QCameraLens> {
94514        let ffi_result = {
94515            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCameraLens_ptr(
94516                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
94517            )
94518        };
94519        ::cpp_core::Ptr::from_raw(ffi_result)
94520    }
94521}
94522
94523impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QCameraLens {
94524    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QCameraLens* ptr)```</span>.
94525    #[inline(always)]
94526    unsafe fn static_upcast(
94527        ptr: ::cpp_core::Ptr<crate::QCameraLens>,
94528    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
94529        let ffi_result = {
94530            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr1(
94531                ptr.as_raw_ptr() as *mut crate::QCameraLens,
94532            )
94533        };
94534        ::cpp_core::Ptr::from_raw(ffi_result)
94535    }
94536}
94537
94538impl ::std::ops::Deref for crate::QCameraLens {
94539    type Target = ::qt_3d_core::QComponent;
94540    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QCameraLens* ptr)```</span>.
94541    #[inline(always)]
94542    fn deref(&self) -> &::qt_3d_core::QComponent {
94543        let ffi_result = {
94544            unsafe {
94545                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr1(
94546                    self as *const crate::QCameraLens as *mut crate::QCameraLens,
94547                )
94548            }
94549        };
94550        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
94551    }
94552}
94553
94554impl ::cpp_core::DynamicCast<crate::QCameraLens> for ::qt_3d_core::QComponent {
94555    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraLens* dynamic_cast<Qt3DRender::QCameraLens*>(Qt3DCore::QComponent* ptr)```</span>.
94556    #[inline(always)]
94557    unsafe fn dynamic_cast(
94558        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
94559    ) -> ::cpp_core::Ptr<crate::QCameraLens> {
94560        let ffi_result = {
94561            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCameraLens_ptr(
94562                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
94563            )
94564        };
94565        ::cpp_core::Ptr::from_raw(ffi_result)
94566    }
94567}
94568
94569impl ::cpp_core::StaticDowncast<crate::QCameraLens> for ::qt_3d_core::QNode {
94570    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraLens* static_cast<Qt3DRender::QCameraLens*>(Qt3DCore::QNode* ptr)```</span>.
94571    #[inline(always)]
94572    unsafe fn static_downcast(
94573        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94574    ) -> ::cpp_core::Ptr<crate::QCameraLens> {
94575        let ffi_result = {
94576            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCameraLens_ptr1(
94577                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94578            )
94579        };
94580        ::cpp_core::Ptr::from_raw(ffi_result)
94581    }
94582}
94583
94584impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QCameraLens {
94585    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QCameraLens* ptr)```</span>.
94586    #[inline(always)]
94587    unsafe fn static_upcast(
94588        ptr: ::cpp_core::Ptr<crate::QCameraLens>,
94589    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
94590        let ffi_result = {
94591            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr12(
94592                ptr.as_raw_ptr() as *mut crate::QCameraLens
94593            )
94594        };
94595        ::cpp_core::Ptr::from_raw(ffi_result)
94596    }
94597}
94598
94599impl ::cpp_core::DynamicCast<crate::QCameraLens> for ::qt_3d_core::QNode {
94600    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraLens* dynamic_cast<Qt3DRender::QCameraLens*>(Qt3DCore::QNode* ptr)```</span>.
94601    #[inline(always)]
94602    unsafe fn dynamic_cast(
94603        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94604    ) -> ::cpp_core::Ptr<crate::QCameraLens> {
94605        let ffi_result = {
94606            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCameraLens_ptr1(
94607                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94608            )
94609        };
94610        ::cpp_core::Ptr::from_raw(ffi_result)
94611    }
94612}
94613
94614impl ::cpp_core::StaticDowncast<crate::QCameraLens> for ::qt_core::QObject {
94615    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraLens* static_cast<Qt3DRender::QCameraLens*>(QObject* ptr)```</span>.
94616    #[inline(always)]
94617    unsafe fn static_downcast(
94618        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94619    ) -> ::cpp_core::Ptr<crate::QCameraLens> {
94620        let ffi_result = {
94621            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCameraLens_ptr2(
94622                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94623            )
94624        };
94625        ::cpp_core::Ptr::from_raw(ffi_result)
94626    }
94627}
94628
94629impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QCameraLens {
94630    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QCameraLens* ptr)```</span>.
94631    #[inline(always)]
94632    unsafe fn static_upcast(
94633        ptr: ::cpp_core::Ptr<crate::QCameraLens>,
94634    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
94635        let ffi_result = {
94636            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr12(
94637                ptr.as_raw_ptr() as *mut crate::QCameraLens
94638            )
94639        };
94640        ::cpp_core::Ptr::from_raw(ffi_result)
94641    }
94642}
94643
94644impl ::cpp_core::DynamicCast<crate::QCameraLens> for ::qt_core::QObject {
94645    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraLens* dynamic_cast<Qt3DRender::QCameraLens*>(QObject* ptr)```</span>.
94646    #[inline(always)]
94647    unsafe fn dynamic_cast(
94648        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94649    ) -> ::cpp_core::Ptr<crate::QCameraLens> {
94650        let ffi_result = {
94651            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCameraLens_ptr2(
94652                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94653            )
94654        };
94655        ::cpp_core::Ptr::from_raw(ffi_result)
94656    }
94657}
94658
94659impl ::cpp_core::StaticDowncast<crate::QCamera> for ::qt_3d_core::QEntity {
94660    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCamera* static_cast<Qt3DRender::QCamera*>(Qt3DCore::QEntity* ptr)```</span>.
94661    #[inline(always)]
94662    unsafe fn static_downcast(
94663        ptr: ::cpp_core::Ptr<::qt_3d_core::QEntity>,
94664    ) -> ::cpp_core::Ptr<crate::QCamera> {
94665        let ffi_result = {
94666            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCamera_ptr(
94667                ptr.as_raw_ptr() as *mut ::qt_3d_core::QEntity
94668            )
94669        };
94670        ::cpp_core::Ptr::from_raw(ffi_result)
94671    }
94672}
94673
94674impl ::cpp_core::StaticUpcast<::qt_3d_core::QEntity> for crate::QCamera {
94675    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QEntity* static_cast<Qt3DCore::QEntity*>(Qt3DRender::QCamera* ptr)```</span>.
94676    #[inline(always)]
94677    unsafe fn static_upcast(
94678        ptr: ::cpp_core::Ptr<crate::QCamera>,
94679    ) -> ::cpp_core::Ptr<::qt_3d_core::QEntity> {
94680        let ffi_result = {
94681            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QEntity_ptr(
94682                ptr.as_raw_ptr() as *mut crate::QCamera
94683            )
94684        };
94685        ::cpp_core::Ptr::from_raw(ffi_result)
94686    }
94687}
94688
94689impl ::std::ops::Deref for crate::QCamera {
94690    type Target = ::qt_3d_core::QEntity;
94691    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QEntity* static_cast<Qt3DCore::QEntity*>(Qt3DRender::QCamera* ptr)```</span>.
94692    #[inline(always)]
94693    fn deref(&self) -> &::qt_3d_core::QEntity {
94694        let ffi_result = {
94695            unsafe {
94696                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QEntity_ptr(
94697                    self as *const crate::QCamera as *mut crate::QCamera,
94698                )
94699            }
94700        };
94701        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
94702    }
94703}
94704
94705impl ::cpp_core::DynamicCast<crate::QCamera> for ::qt_3d_core::QEntity {
94706    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCamera* dynamic_cast<Qt3DRender::QCamera*>(Qt3DCore::QEntity* ptr)```</span>.
94707    #[inline(always)]
94708    unsafe fn dynamic_cast(
94709        ptr: ::cpp_core::Ptr<::qt_3d_core::QEntity>,
94710    ) -> ::cpp_core::Ptr<crate::QCamera> {
94711        let ffi_result = {
94712            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCamera_ptr(
94713                ptr.as_raw_ptr() as *mut ::qt_3d_core::QEntity
94714            )
94715        };
94716        ::cpp_core::Ptr::from_raw(ffi_result)
94717    }
94718}
94719
94720impl ::cpp_core::StaticDowncast<crate::QCamera> for ::qt_3d_core::QNode {
94721    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCamera* static_cast<Qt3DRender::QCamera*>(Qt3DCore::QNode* ptr)```</span>.
94722    #[inline(always)]
94723    unsafe fn static_downcast(
94724        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94725    ) -> ::cpp_core::Ptr<crate::QCamera> {
94726        let ffi_result = {
94727            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCamera_ptr1(
94728                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
94729            )
94730        };
94731        ::cpp_core::Ptr::from_raw(ffi_result)
94732    }
94733}
94734
94735impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QCamera {
94736    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QCamera* ptr)```</span>.
94737    #[inline(always)]
94738    unsafe fn static_upcast(
94739        ptr: ::cpp_core::Ptr<crate::QCamera>,
94740    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
94741        let ffi_result = {
94742            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr13(
94743                ptr.as_raw_ptr() as *mut crate::QCamera
94744            )
94745        };
94746        ::cpp_core::Ptr::from_raw(ffi_result)
94747    }
94748}
94749
94750impl ::cpp_core::DynamicCast<crate::QCamera> for ::qt_3d_core::QNode {
94751    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCamera* dynamic_cast<Qt3DRender::QCamera*>(Qt3DCore::QNode* ptr)```</span>.
94752    #[inline(always)]
94753    unsafe fn dynamic_cast(
94754        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94755    ) -> ::cpp_core::Ptr<crate::QCamera> {
94756        let ffi_result = {
94757            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCamera_ptr1(
94758                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94759            )
94760        };
94761        ::cpp_core::Ptr::from_raw(ffi_result)
94762    }
94763}
94764
94765impl ::cpp_core::StaticDowncast<crate::QCamera> for ::qt_core::QObject {
94766    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCamera* static_cast<Qt3DRender::QCamera*>(QObject* ptr)```</span>.
94767    #[inline(always)]
94768    unsafe fn static_downcast(
94769        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94770    ) -> ::cpp_core::Ptr<crate::QCamera> {
94771        let ffi_result = {
94772            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCamera_ptr2(
94773                ptr.as_raw_ptr() as *mut ::qt_core::QObject
94774            )
94775        };
94776        ::cpp_core::Ptr::from_raw(ffi_result)
94777    }
94778}
94779
94780impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QCamera {
94781    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QCamera* ptr)```</span>.
94782    #[inline(always)]
94783    unsafe fn static_upcast(
94784        ptr: ::cpp_core::Ptr<crate::QCamera>,
94785    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
94786        let ffi_result = {
94787            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr13(
94788                ptr.as_raw_ptr() as *mut crate::QCamera
94789            )
94790        };
94791        ::cpp_core::Ptr::from_raw(ffi_result)
94792    }
94793}
94794
94795impl ::cpp_core::DynamicCast<crate::QCamera> for ::qt_core::QObject {
94796    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCamera* dynamic_cast<Qt3DRender::QCamera*>(QObject* ptr)```</span>.
94797    #[inline(always)]
94798    unsafe fn dynamic_cast(
94799        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94800    ) -> ::cpp_core::Ptr<crate::QCamera> {
94801        let ffi_result = {
94802            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCamera_ptr2(
94803                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94804            )
94805        };
94806        ::cpp_core::Ptr::from_raw(ffi_result)
94807    }
94808}
94809
94810impl ::cpp_core::StaticDowncast<crate::QCameraSelector> for crate::QFrameGraphNode {
94811    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraSelector* static_cast<Qt3DRender::QCameraSelector*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
94812    #[inline(always)]
94813    unsafe fn static_downcast(
94814        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
94815    ) -> ::cpp_core::Ptr<crate::QCameraSelector> {
94816        let ffi_result = {
94817            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCameraSelector_ptr(
94818                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
94819            )
94820        };
94821        ::cpp_core::Ptr::from_raw(ffi_result)
94822    }
94823}
94824
94825impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QCameraSelector {
94826    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QCameraSelector* ptr)```</span>.
94827    #[inline(always)]
94828    unsafe fn static_upcast(
94829        ptr: ::cpp_core::Ptr<crate::QCameraSelector>,
94830    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
94831        let ffi_result = {
94832            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr3(
94833                ptr.as_raw_ptr() as *mut crate::QCameraSelector,
94834            )
94835        };
94836        ::cpp_core::Ptr::from_raw(ffi_result)
94837    }
94838}
94839
94840impl ::std::ops::Deref for crate::QCameraSelector {
94841    type Target = crate::QFrameGraphNode;
94842    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QCameraSelector* ptr)```</span>.
94843    #[inline(always)]
94844    fn deref(&self) -> &crate::QFrameGraphNode {
94845        let ffi_result = {
94846            unsafe {
94847                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr3(
94848                    self as *const crate::QCameraSelector as *mut crate::QCameraSelector,
94849                )
94850            }
94851        };
94852        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
94853    }
94854}
94855
94856impl ::cpp_core::DynamicCast<crate::QCameraSelector> for crate::QFrameGraphNode {
94857    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraSelector* dynamic_cast<Qt3DRender::QCameraSelector*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
94858    #[inline(always)]
94859    unsafe fn dynamic_cast(
94860        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
94861    ) -> ::cpp_core::Ptr<crate::QCameraSelector> {
94862        let ffi_result = {
94863            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCameraSelector_ptr(
94864                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
94865            )
94866        };
94867        ::cpp_core::Ptr::from_raw(ffi_result)
94868    }
94869}
94870
94871impl ::cpp_core::StaticDowncast<crate::QCameraSelector> for ::qt_3d_core::QNode {
94872    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraSelector* static_cast<Qt3DRender::QCameraSelector*>(Qt3DCore::QNode* ptr)```</span>.
94873    #[inline(always)]
94874    unsafe fn static_downcast(
94875        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94876    ) -> ::cpp_core::Ptr<crate::QCameraSelector> {
94877        let ffi_result = {
94878            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCameraSelector_ptr1(
94879                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94880            )
94881        };
94882        ::cpp_core::Ptr::from_raw(ffi_result)
94883    }
94884}
94885
94886impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QCameraSelector {
94887    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QCameraSelector* ptr)```</span>.
94888    #[inline(always)]
94889    unsafe fn static_upcast(
94890        ptr: ::cpp_core::Ptr<crate::QCameraSelector>,
94891    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
94892        let ffi_result = {
94893            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr14(
94894                ptr.as_raw_ptr() as *mut crate::QCameraSelector
94895            )
94896        };
94897        ::cpp_core::Ptr::from_raw(ffi_result)
94898    }
94899}
94900
94901impl ::cpp_core::DynamicCast<crate::QCameraSelector> for ::qt_3d_core::QNode {
94902    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraSelector* dynamic_cast<Qt3DRender::QCameraSelector*>(Qt3DCore::QNode* ptr)```</span>.
94903    #[inline(always)]
94904    unsafe fn dynamic_cast(
94905        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94906    ) -> ::cpp_core::Ptr<crate::QCameraSelector> {
94907        let ffi_result = {
94908            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCameraSelector_ptr1(
94909                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94910            )
94911        };
94912        ::cpp_core::Ptr::from_raw(ffi_result)
94913    }
94914}
94915
94916impl ::cpp_core::StaticDowncast<crate::QCameraSelector> for ::qt_core::QObject {
94917    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraSelector* static_cast<Qt3DRender::QCameraSelector*>(QObject* ptr)```</span>.
94918    #[inline(always)]
94919    unsafe fn static_downcast(
94920        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94921    ) -> ::cpp_core::Ptr<crate::QCameraSelector> {
94922        let ffi_result = {
94923            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCameraSelector_ptr2(
94924                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94925            )
94926        };
94927        ::cpp_core::Ptr::from_raw(ffi_result)
94928    }
94929}
94930
94931impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QCameraSelector {
94932    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QCameraSelector* ptr)```</span>.
94933    #[inline(always)]
94934    unsafe fn static_upcast(
94935        ptr: ::cpp_core::Ptr<crate::QCameraSelector>,
94936    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
94937        let ffi_result = {
94938            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr14(
94939                ptr.as_raw_ptr() as *mut crate::QCameraSelector
94940            )
94941        };
94942        ::cpp_core::Ptr::from_raw(ffi_result)
94943    }
94944}
94945
94946impl ::cpp_core::DynamicCast<crate::QCameraSelector> for ::qt_core::QObject {
94947    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCameraSelector* dynamic_cast<Qt3DRender::QCameraSelector*>(QObject* ptr)```</span>.
94948    #[inline(always)]
94949    unsafe fn dynamic_cast(
94950        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
94951    ) -> ::cpp_core::Ptr<crate::QCameraSelector> {
94952        let ffi_result = {
94953            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCameraSelector_ptr2(
94954                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
94955            )
94956        };
94957        ::cpp_core::Ptr::from_raw(ffi_result)
94958    }
94959}
94960
94961impl ::cpp_core::StaticDowncast<crate::QRenderTargetOutput> for ::qt_3d_core::QNode {
94962    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* static_cast<Qt3DRender::QRenderTargetOutput*>(Qt3DCore::QNode* ptr)```</span>.
94963    #[inline(always)]
94964    unsafe fn static_downcast(
94965        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
94966    ) -> ::cpp_core::Ptr<crate::QRenderTargetOutput> {
94967        let ffi_result = {
94968            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderTargetOutput_ptr(
94969                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
94970            )
94971        };
94972        ::cpp_core::Ptr::from_raw(ffi_result)
94973    }
94974}
94975
94976impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderTargetOutput {
94977    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderTargetOutput* ptr)```</span>.
94978    #[inline(always)]
94979    unsafe fn static_upcast(
94980        ptr: ::cpp_core::Ptr<crate::QRenderTargetOutput>,
94981    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
94982        let ffi_result = {
94983            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr15(
94984                ptr.as_raw_ptr() as *mut crate::QRenderTargetOutput
94985            )
94986        };
94987        ::cpp_core::Ptr::from_raw(ffi_result)
94988    }
94989}
94990
94991impl ::std::ops::Deref for crate::QRenderTargetOutput {
94992    type Target = ::qt_3d_core::QNode;
94993    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderTargetOutput* ptr)```</span>.
94994    #[inline(always)]
94995    fn deref(&self) -> &::qt_3d_core::QNode {
94996        let ffi_result = {
94997            unsafe {
94998                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr15(
94999                    self as *const crate::QRenderTargetOutput as *mut crate::QRenderTargetOutput,
95000                )
95001            }
95002        };
95003        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
95004    }
95005}
95006
95007impl ::cpp_core::DynamicCast<crate::QRenderTargetOutput> for ::qt_3d_core::QNode {
95008    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* dynamic_cast<Qt3DRender::QRenderTargetOutput*>(Qt3DCore::QNode* ptr)```</span>.
95009    #[inline(always)]
95010    unsafe fn dynamic_cast(
95011        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95012    ) -> ::cpp_core::Ptr<crate::QRenderTargetOutput> {
95013        let ffi_result = {
95014            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderTargetOutput_ptr(
95015                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95016            )
95017        };
95018        ::cpp_core::Ptr::from_raw(ffi_result)
95019    }
95020}
95021
95022impl ::cpp_core::StaticDowncast<crate::QRenderTargetOutput> for ::qt_core::QObject {
95023    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* static_cast<Qt3DRender::QRenderTargetOutput*>(QObject* ptr)```</span>.
95024    #[inline(always)]
95025    unsafe fn static_downcast(
95026        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95027    ) -> ::cpp_core::Ptr<crate::QRenderTargetOutput> {
95028        let ffi_result = {
95029            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderTargetOutput_ptr1(
95030                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95031            )
95032        };
95033        ::cpp_core::Ptr::from_raw(ffi_result)
95034    }
95035}
95036
95037impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderTargetOutput {
95038    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderTargetOutput* ptr)```</span>.
95039    #[inline(always)]
95040    unsafe fn static_upcast(
95041        ptr: ::cpp_core::Ptr<crate::QRenderTargetOutput>,
95042    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
95043        let ffi_result = {
95044            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr15(
95045                ptr.as_raw_ptr() as *mut crate::QRenderTargetOutput
95046            )
95047        };
95048        ::cpp_core::Ptr::from_raw(ffi_result)
95049    }
95050}
95051
95052impl ::cpp_core::DynamicCast<crate::QRenderTargetOutput> for ::qt_core::QObject {
95053    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetOutput* dynamic_cast<Qt3DRender::QRenderTargetOutput*>(QObject* ptr)```</span>.
95054    #[inline(always)]
95055    unsafe fn dynamic_cast(
95056        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95057    ) -> ::cpp_core::Ptr<crate::QRenderTargetOutput> {
95058        let ffi_result = {
95059            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderTargetOutput_ptr1(
95060                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95061            )
95062        };
95063        ::cpp_core::Ptr::from_raw(ffi_result)
95064    }
95065}
95066
95067impl ::cpp_core::StaticDowncast<crate::QClearBuffers> for crate::QFrameGraphNode {
95068    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClearBuffers* static_cast<Qt3DRender::QClearBuffers*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
95069    #[inline(always)]
95070    unsafe fn static_downcast(
95071        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
95072    ) -> ::cpp_core::Ptr<crate::QClearBuffers> {
95073        let ffi_result = {
95074            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QClearBuffers_ptr(
95075                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
95076            )
95077        };
95078        ::cpp_core::Ptr::from_raw(ffi_result)
95079    }
95080}
95081
95082impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QClearBuffers {
95083    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QClearBuffers* ptr)```</span>.
95084    #[inline(always)]
95085    unsafe fn static_upcast(
95086        ptr: ::cpp_core::Ptr<crate::QClearBuffers>,
95087    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
95088        let ffi_result = {
95089            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr4(
95090                ptr.as_raw_ptr() as *mut crate::QClearBuffers,
95091            )
95092        };
95093        ::cpp_core::Ptr::from_raw(ffi_result)
95094    }
95095}
95096
95097impl ::std::ops::Deref for crate::QClearBuffers {
95098    type Target = crate::QFrameGraphNode;
95099    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QClearBuffers* ptr)```</span>.
95100    #[inline(always)]
95101    fn deref(&self) -> &crate::QFrameGraphNode {
95102        let ffi_result = {
95103            unsafe {
95104                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr4(
95105                    self as *const crate::QClearBuffers as *mut crate::QClearBuffers,
95106                )
95107            }
95108        };
95109        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
95110    }
95111}
95112
95113impl ::cpp_core::DynamicCast<crate::QClearBuffers> for crate::QFrameGraphNode {
95114    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClearBuffers* dynamic_cast<Qt3DRender::QClearBuffers*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
95115    #[inline(always)]
95116    unsafe fn dynamic_cast(
95117        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
95118    ) -> ::cpp_core::Ptr<crate::QClearBuffers> {
95119        let ffi_result = {
95120            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QClearBuffers_ptr(
95121                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
95122            )
95123        };
95124        ::cpp_core::Ptr::from_raw(ffi_result)
95125    }
95126}
95127
95128impl ::cpp_core::StaticDowncast<crate::QClearBuffers> for ::qt_3d_core::QNode {
95129    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClearBuffers* static_cast<Qt3DRender::QClearBuffers*>(Qt3DCore::QNode* ptr)```</span>.
95130    #[inline(always)]
95131    unsafe fn static_downcast(
95132        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95133    ) -> ::cpp_core::Ptr<crate::QClearBuffers> {
95134        let ffi_result = {
95135            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QClearBuffers_ptr1(
95136                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95137            )
95138        };
95139        ::cpp_core::Ptr::from_raw(ffi_result)
95140    }
95141}
95142
95143impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QClearBuffers {
95144    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QClearBuffers* ptr)```</span>.
95145    #[inline(always)]
95146    unsafe fn static_upcast(
95147        ptr: ::cpp_core::Ptr<crate::QClearBuffers>,
95148    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
95149        let ffi_result = {
95150            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr16(
95151                ptr.as_raw_ptr() as *mut crate::QClearBuffers
95152            )
95153        };
95154        ::cpp_core::Ptr::from_raw(ffi_result)
95155    }
95156}
95157
95158impl ::cpp_core::DynamicCast<crate::QClearBuffers> for ::qt_3d_core::QNode {
95159    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClearBuffers* dynamic_cast<Qt3DRender::QClearBuffers*>(Qt3DCore::QNode* ptr)```</span>.
95160    #[inline(always)]
95161    unsafe fn dynamic_cast(
95162        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95163    ) -> ::cpp_core::Ptr<crate::QClearBuffers> {
95164        let ffi_result = {
95165            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QClearBuffers_ptr1(
95166                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95167            )
95168        };
95169        ::cpp_core::Ptr::from_raw(ffi_result)
95170    }
95171}
95172
95173impl ::cpp_core::StaticDowncast<crate::QClearBuffers> for ::qt_core::QObject {
95174    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClearBuffers* static_cast<Qt3DRender::QClearBuffers*>(QObject* ptr)```</span>.
95175    #[inline(always)]
95176    unsafe fn static_downcast(
95177        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95178    ) -> ::cpp_core::Ptr<crate::QClearBuffers> {
95179        let ffi_result = {
95180            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QClearBuffers_ptr2(
95181                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95182            )
95183        };
95184        ::cpp_core::Ptr::from_raw(ffi_result)
95185    }
95186}
95187
95188impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QClearBuffers {
95189    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QClearBuffers* ptr)```</span>.
95190    #[inline(always)]
95191    unsafe fn static_upcast(
95192        ptr: ::cpp_core::Ptr<crate::QClearBuffers>,
95193    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
95194        let ffi_result = {
95195            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr16(
95196                ptr.as_raw_ptr() as *mut crate::QClearBuffers
95197            )
95198        };
95199        ::cpp_core::Ptr::from_raw(ffi_result)
95200    }
95201}
95202
95203impl ::cpp_core::DynamicCast<crate::QClearBuffers> for ::qt_core::QObject {
95204    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClearBuffers* dynamic_cast<Qt3DRender::QClearBuffers*>(QObject* ptr)```</span>.
95205    #[inline(always)]
95206    unsafe fn dynamic_cast(
95207        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95208    ) -> ::cpp_core::Ptr<crate::QClearBuffers> {
95209        let ffi_result = {
95210            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QClearBuffers_ptr2(
95211                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95212            )
95213        };
95214        ::cpp_core::Ptr::from_raw(ffi_result)
95215    }
95216}
95217
95218impl ::cpp_core::StaticDowncast<crate::QClipPlane> for crate::QRenderState {
95219    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClipPlane* static_cast<Qt3DRender::QClipPlane*>(Qt3DRender::QRenderState* ptr)```</span>.
95220    #[inline(always)]
95221    unsafe fn static_downcast(
95222        ptr: ::cpp_core::Ptr<crate::QRenderState>,
95223    ) -> ::cpp_core::Ptr<crate::QClipPlane> {
95224        let ffi_result = {
95225            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QClipPlane_ptr(
95226                ptr.as_raw_ptr() as *mut crate::QRenderState,
95227            )
95228        };
95229        ::cpp_core::Ptr::from_raw(ffi_result)
95230    }
95231}
95232
95233impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QClipPlane {
95234    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QClipPlane* ptr)```</span>.
95235    #[inline(always)]
95236    unsafe fn static_upcast(
95237        ptr: ::cpp_core::Ptr<crate::QClipPlane>,
95238    ) -> ::cpp_core::Ptr<crate::QRenderState> {
95239        let ffi_result = {
95240            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr6(
95241                ptr.as_raw_ptr() as *mut crate::QClipPlane,
95242            )
95243        };
95244        ::cpp_core::Ptr::from_raw(ffi_result)
95245    }
95246}
95247
95248impl ::std::ops::Deref for crate::QClipPlane {
95249    type Target = crate::QRenderState;
95250    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QClipPlane* ptr)```</span>.
95251    #[inline(always)]
95252    fn deref(&self) -> &crate::QRenderState {
95253        let ffi_result = {
95254            unsafe {
95255                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr6(
95256                    self as *const crate::QClipPlane as *mut crate::QClipPlane,
95257                )
95258            }
95259        };
95260        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
95261    }
95262}
95263
95264impl ::cpp_core::DynamicCast<crate::QClipPlane> for crate::QRenderState {
95265    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClipPlane* dynamic_cast<Qt3DRender::QClipPlane*>(Qt3DRender::QRenderState* ptr)```</span>.
95266    #[inline(always)]
95267    unsafe fn dynamic_cast(
95268        ptr: ::cpp_core::Ptr<crate::QRenderState>,
95269    ) -> ::cpp_core::Ptr<crate::QClipPlane> {
95270        let ffi_result = {
95271            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QClipPlane_ptr(
95272                ptr.as_raw_ptr() as *mut crate::QRenderState,
95273            )
95274        };
95275        ::cpp_core::Ptr::from_raw(ffi_result)
95276    }
95277}
95278
95279impl ::cpp_core::StaticDowncast<crate::QClipPlane> for ::qt_3d_core::QNode {
95280    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClipPlane* static_cast<Qt3DRender::QClipPlane*>(Qt3DCore::QNode* ptr)```</span>.
95281    #[inline(always)]
95282    unsafe fn static_downcast(
95283        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95284    ) -> ::cpp_core::Ptr<crate::QClipPlane> {
95285        let ffi_result = {
95286            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QClipPlane_ptr1(
95287                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95288            )
95289        };
95290        ::cpp_core::Ptr::from_raw(ffi_result)
95291    }
95292}
95293
95294impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QClipPlane {
95295    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QClipPlane* ptr)```</span>.
95296    #[inline(always)]
95297    unsafe fn static_upcast(
95298        ptr: ::cpp_core::Ptr<crate::QClipPlane>,
95299    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
95300        let ffi_result = {
95301            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr17(
95302                ptr.as_raw_ptr() as *mut crate::QClipPlane
95303            )
95304        };
95305        ::cpp_core::Ptr::from_raw(ffi_result)
95306    }
95307}
95308
95309impl ::cpp_core::DynamicCast<crate::QClipPlane> for ::qt_3d_core::QNode {
95310    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClipPlane* dynamic_cast<Qt3DRender::QClipPlane*>(Qt3DCore::QNode* ptr)```</span>.
95311    #[inline(always)]
95312    unsafe fn dynamic_cast(
95313        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95314    ) -> ::cpp_core::Ptr<crate::QClipPlane> {
95315        let ffi_result = {
95316            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QClipPlane_ptr1(
95317                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95318            )
95319        };
95320        ::cpp_core::Ptr::from_raw(ffi_result)
95321    }
95322}
95323
95324impl ::cpp_core::StaticDowncast<crate::QClipPlane> for ::qt_core::QObject {
95325    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClipPlane* static_cast<Qt3DRender::QClipPlane*>(QObject* ptr)```</span>.
95326    #[inline(always)]
95327    unsafe fn static_downcast(
95328        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95329    ) -> ::cpp_core::Ptr<crate::QClipPlane> {
95330        let ffi_result = {
95331            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QClipPlane_ptr2(
95332                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95333            )
95334        };
95335        ::cpp_core::Ptr::from_raw(ffi_result)
95336    }
95337}
95338
95339impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QClipPlane {
95340    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QClipPlane* ptr)```</span>.
95341    #[inline(always)]
95342    unsafe fn static_upcast(
95343        ptr: ::cpp_core::Ptr<crate::QClipPlane>,
95344    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
95345        let ffi_result = {
95346            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr17(
95347                ptr.as_raw_ptr() as *mut crate::QClipPlane
95348            )
95349        };
95350        ::cpp_core::Ptr::from_raw(ffi_result)
95351    }
95352}
95353
95354impl ::cpp_core::DynamicCast<crate::QClipPlane> for ::qt_core::QObject {
95355    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QClipPlane* dynamic_cast<Qt3DRender::QClipPlane*>(QObject* ptr)```</span>.
95356    #[inline(always)]
95357    unsafe fn dynamic_cast(
95358        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95359    ) -> ::cpp_core::Ptr<crate::QClipPlane> {
95360        let ffi_result = {
95361            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QClipPlane_ptr2(
95362                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95363            )
95364        };
95365        ::cpp_core::Ptr::from_raw(ffi_result)
95366    }
95367}
95368
95369impl ::cpp_core::StaticDowncast<crate::QColorMask> for crate::QRenderState {
95370    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QColorMask* static_cast<Qt3DRender::QColorMask*>(Qt3DRender::QRenderState* ptr)```</span>.
95371    #[inline(always)]
95372    unsafe fn static_downcast(
95373        ptr: ::cpp_core::Ptr<crate::QRenderState>,
95374    ) -> ::cpp_core::Ptr<crate::QColorMask> {
95375        let ffi_result = {
95376            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QColorMask_ptr(
95377                ptr.as_raw_ptr() as *mut crate::QRenderState,
95378            )
95379        };
95380        ::cpp_core::Ptr::from_raw(ffi_result)
95381    }
95382}
95383
95384impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QColorMask {
95385    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QColorMask* ptr)```</span>.
95386    #[inline(always)]
95387    unsafe fn static_upcast(
95388        ptr: ::cpp_core::Ptr<crate::QColorMask>,
95389    ) -> ::cpp_core::Ptr<crate::QRenderState> {
95390        let ffi_result = {
95391            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr7(
95392                ptr.as_raw_ptr() as *mut crate::QColorMask,
95393            )
95394        };
95395        ::cpp_core::Ptr::from_raw(ffi_result)
95396    }
95397}
95398
95399impl ::std::ops::Deref for crate::QColorMask {
95400    type Target = crate::QRenderState;
95401    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QColorMask* ptr)```</span>.
95402    #[inline(always)]
95403    fn deref(&self) -> &crate::QRenderState {
95404        let ffi_result = {
95405            unsafe {
95406                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr7(
95407                    self as *const crate::QColorMask as *mut crate::QColorMask,
95408                )
95409            }
95410        };
95411        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
95412    }
95413}
95414
95415impl ::cpp_core::DynamicCast<crate::QColorMask> for crate::QRenderState {
95416    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QColorMask* dynamic_cast<Qt3DRender::QColorMask*>(Qt3DRender::QRenderState* ptr)```</span>.
95417    #[inline(always)]
95418    unsafe fn dynamic_cast(
95419        ptr: ::cpp_core::Ptr<crate::QRenderState>,
95420    ) -> ::cpp_core::Ptr<crate::QColorMask> {
95421        let ffi_result = {
95422            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QColorMask_ptr(
95423                ptr.as_raw_ptr() as *mut crate::QRenderState,
95424            )
95425        };
95426        ::cpp_core::Ptr::from_raw(ffi_result)
95427    }
95428}
95429
95430impl ::cpp_core::StaticDowncast<crate::QColorMask> for ::qt_3d_core::QNode {
95431    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QColorMask* static_cast<Qt3DRender::QColorMask*>(Qt3DCore::QNode* ptr)```</span>.
95432    #[inline(always)]
95433    unsafe fn static_downcast(
95434        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95435    ) -> ::cpp_core::Ptr<crate::QColorMask> {
95436        let ffi_result = {
95437            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QColorMask_ptr1(
95438                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95439            )
95440        };
95441        ::cpp_core::Ptr::from_raw(ffi_result)
95442    }
95443}
95444
95445impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QColorMask {
95446    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QColorMask* ptr)```</span>.
95447    #[inline(always)]
95448    unsafe fn static_upcast(
95449        ptr: ::cpp_core::Ptr<crate::QColorMask>,
95450    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
95451        let ffi_result = {
95452            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr18(
95453                ptr.as_raw_ptr() as *mut crate::QColorMask
95454            )
95455        };
95456        ::cpp_core::Ptr::from_raw(ffi_result)
95457    }
95458}
95459
95460impl ::cpp_core::DynamicCast<crate::QColorMask> for ::qt_3d_core::QNode {
95461    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QColorMask* dynamic_cast<Qt3DRender::QColorMask*>(Qt3DCore::QNode* ptr)```</span>.
95462    #[inline(always)]
95463    unsafe fn dynamic_cast(
95464        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95465    ) -> ::cpp_core::Ptr<crate::QColorMask> {
95466        let ffi_result = {
95467            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QColorMask_ptr1(
95468                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95469            )
95470        };
95471        ::cpp_core::Ptr::from_raw(ffi_result)
95472    }
95473}
95474
95475impl ::cpp_core::StaticDowncast<crate::QColorMask> for ::qt_core::QObject {
95476    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QColorMask* static_cast<Qt3DRender::QColorMask*>(QObject* ptr)```</span>.
95477    #[inline(always)]
95478    unsafe fn static_downcast(
95479        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95480    ) -> ::cpp_core::Ptr<crate::QColorMask> {
95481        let ffi_result = {
95482            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QColorMask_ptr2(
95483                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95484            )
95485        };
95486        ::cpp_core::Ptr::from_raw(ffi_result)
95487    }
95488}
95489
95490impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QColorMask {
95491    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QColorMask* ptr)```</span>.
95492    #[inline(always)]
95493    unsafe fn static_upcast(
95494        ptr: ::cpp_core::Ptr<crate::QColorMask>,
95495    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
95496        let ffi_result = {
95497            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr18(
95498                ptr.as_raw_ptr() as *mut crate::QColorMask
95499            )
95500        };
95501        ::cpp_core::Ptr::from_raw(ffi_result)
95502    }
95503}
95504
95505impl ::cpp_core::DynamicCast<crate::QColorMask> for ::qt_core::QObject {
95506    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QColorMask* dynamic_cast<Qt3DRender::QColorMask*>(QObject* ptr)```</span>.
95507    #[inline(always)]
95508    unsafe fn dynamic_cast(
95509        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95510    ) -> ::cpp_core::Ptr<crate::QColorMask> {
95511        let ffi_result = {
95512            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QColorMask_ptr2(
95513                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95514            )
95515        };
95516        ::cpp_core::Ptr::from_raw(ffi_result)
95517    }
95518}
95519
95520impl ::cpp_core::StaticDowncast<crate::QComputeCommand> for ::qt_3d_core::QComponent {
95521    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QComputeCommand* static_cast<Qt3DRender::QComputeCommand*>(Qt3DCore::QComponent* ptr)```</span>.
95522    #[inline(always)]
95523    unsafe fn static_downcast(
95524        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
95525    ) -> ::cpp_core::Ptr<crate::QComputeCommand> {
95526        let ffi_result = {
95527            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QComputeCommand_ptr(
95528                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
95529            )
95530        };
95531        ::cpp_core::Ptr::from_raw(ffi_result)
95532    }
95533}
95534
95535impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QComputeCommand {
95536    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QComputeCommand* ptr)```</span>.
95537    #[inline(always)]
95538    unsafe fn static_upcast(
95539        ptr: ::cpp_core::Ptr<crate::QComputeCommand>,
95540    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
95541        let ffi_result = {
95542            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr2(
95543                ptr.as_raw_ptr() as *mut crate::QComputeCommand,
95544            )
95545        };
95546        ::cpp_core::Ptr::from_raw(ffi_result)
95547    }
95548}
95549
95550impl ::std::ops::Deref for crate::QComputeCommand {
95551    type Target = ::qt_3d_core::QComponent;
95552    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QComputeCommand* ptr)```</span>.
95553    #[inline(always)]
95554    fn deref(&self) -> &::qt_3d_core::QComponent {
95555        let ffi_result = {
95556            unsafe {
95557                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr2(
95558                    self as *const crate::QComputeCommand as *mut crate::QComputeCommand,
95559                )
95560            }
95561        };
95562        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
95563    }
95564}
95565
95566impl ::cpp_core::DynamicCast<crate::QComputeCommand> for ::qt_3d_core::QComponent {
95567    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QComputeCommand* dynamic_cast<Qt3DRender::QComputeCommand*>(Qt3DCore::QComponent* ptr)```</span>.
95568    #[inline(always)]
95569    unsafe fn dynamic_cast(
95570        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
95571    ) -> ::cpp_core::Ptr<crate::QComputeCommand> {
95572        let ffi_result = {
95573            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QComputeCommand_ptr(
95574                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
95575            )
95576        };
95577        ::cpp_core::Ptr::from_raw(ffi_result)
95578    }
95579}
95580
95581impl ::cpp_core::StaticDowncast<crate::QComputeCommand> for ::qt_3d_core::QNode {
95582    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QComputeCommand* static_cast<Qt3DRender::QComputeCommand*>(Qt3DCore::QNode* ptr)```</span>.
95583    #[inline(always)]
95584    unsafe fn static_downcast(
95585        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95586    ) -> ::cpp_core::Ptr<crate::QComputeCommand> {
95587        let ffi_result = {
95588            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QComputeCommand_ptr1(
95589                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95590            )
95591        };
95592        ::cpp_core::Ptr::from_raw(ffi_result)
95593    }
95594}
95595
95596impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QComputeCommand {
95597    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QComputeCommand* ptr)```</span>.
95598    #[inline(always)]
95599    unsafe fn static_upcast(
95600        ptr: ::cpp_core::Ptr<crate::QComputeCommand>,
95601    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
95602        let ffi_result = {
95603            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr19(
95604                ptr.as_raw_ptr() as *mut crate::QComputeCommand
95605            )
95606        };
95607        ::cpp_core::Ptr::from_raw(ffi_result)
95608    }
95609}
95610
95611impl ::cpp_core::DynamicCast<crate::QComputeCommand> for ::qt_3d_core::QNode {
95612    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QComputeCommand* dynamic_cast<Qt3DRender::QComputeCommand*>(Qt3DCore::QNode* ptr)```</span>.
95613    #[inline(always)]
95614    unsafe fn dynamic_cast(
95615        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95616    ) -> ::cpp_core::Ptr<crate::QComputeCommand> {
95617        let ffi_result = {
95618            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QComputeCommand_ptr1(
95619                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95620            )
95621        };
95622        ::cpp_core::Ptr::from_raw(ffi_result)
95623    }
95624}
95625
95626impl ::cpp_core::StaticDowncast<crate::QComputeCommand> for ::qt_core::QObject {
95627    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QComputeCommand* static_cast<Qt3DRender::QComputeCommand*>(QObject* ptr)```</span>.
95628    #[inline(always)]
95629    unsafe fn static_downcast(
95630        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95631    ) -> ::cpp_core::Ptr<crate::QComputeCommand> {
95632        let ffi_result = {
95633            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QComputeCommand_ptr2(
95634                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95635            )
95636        };
95637        ::cpp_core::Ptr::from_raw(ffi_result)
95638    }
95639}
95640
95641impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QComputeCommand {
95642    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QComputeCommand* ptr)```</span>.
95643    #[inline(always)]
95644    unsafe fn static_upcast(
95645        ptr: ::cpp_core::Ptr<crate::QComputeCommand>,
95646    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
95647        let ffi_result = {
95648            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr19(
95649                ptr.as_raw_ptr() as *mut crate::QComputeCommand
95650            )
95651        };
95652        ::cpp_core::Ptr::from_raw(ffi_result)
95653    }
95654}
95655
95656impl ::cpp_core::DynamicCast<crate::QComputeCommand> for ::qt_core::QObject {
95657    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QComputeCommand* dynamic_cast<Qt3DRender::QComputeCommand*>(QObject* ptr)```</span>.
95658    #[inline(always)]
95659    unsafe fn dynamic_cast(
95660        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95661    ) -> ::cpp_core::Ptr<crate::QComputeCommand> {
95662        let ffi_result = {
95663            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QComputeCommand_ptr2(
95664                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95665            )
95666        };
95667        ::cpp_core::Ptr::from_raw(ffi_result)
95668    }
95669}
95670
95671impl ::cpp_core::StaticDowncast<crate::QCullFace> for crate::QRenderState {
95672    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCullFace* static_cast<Qt3DRender::QCullFace*>(Qt3DRender::QRenderState* ptr)```</span>.
95673    #[inline(always)]
95674    unsafe fn static_downcast(
95675        ptr: ::cpp_core::Ptr<crate::QRenderState>,
95676    ) -> ::cpp_core::Ptr<crate::QCullFace> {
95677        let ffi_result = {
95678            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCullFace_ptr(
95679                ptr.as_raw_ptr() as *mut crate::QRenderState,
95680            )
95681        };
95682        ::cpp_core::Ptr::from_raw(ffi_result)
95683    }
95684}
95685
95686impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QCullFace {
95687    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QCullFace* ptr)```</span>.
95688    #[inline(always)]
95689    unsafe fn static_upcast(
95690        ptr: ::cpp_core::Ptr<crate::QCullFace>,
95691    ) -> ::cpp_core::Ptr<crate::QRenderState> {
95692        let ffi_result = {
95693            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr8(
95694                ptr.as_raw_ptr() as *mut crate::QCullFace,
95695            )
95696        };
95697        ::cpp_core::Ptr::from_raw(ffi_result)
95698    }
95699}
95700
95701impl ::std::ops::Deref for crate::QCullFace {
95702    type Target = crate::QRenderState;
95703    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QCullFace* ptr)```</span>.
95704    #[inline(always)]
95705    fn deref(&self) -> &crate::QRenderState {
95706        let ffi_result = {
95707            unsafe {
95708                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr8(
95709                    self as *const crate::QCullFace as *mut crate::QCullFace,
95710                )
95711            }
95712        };
95713        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
95714    }
95715}
95716
95717impl ::cpp_core::DynamicCast<crate::QCullFace> for crate::QRenderState {
95718    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCullFace* dynamic_cast<Qt3DRender::QCullFace*>(Qt3DRender::QRenderState* ptr)```</span>.
95719    #[inline(always)]
95720    unsafe fn dynamic_cast(
95721        ptr: ::cpp_core::Ptr<crate::QRenderState>,
95722    ) -> ::cpp_core::Ptr<crate::QCullFace> {
95723        let ffi_result = {
95724            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCullFace_ptr(
95725                ptr.as_raw_ptr() as *mut crate::QRenderState,
95726            )
95727        };
95728        ::cpp_core::Ptr::from_raw(ffi_result)
95729    }
95730}
95731
95732impl ::cpp_core::StaticDowncast<crate::QCullFace> for ::qt_3d_core::QNode {
95733    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCullFace* static_cast<Qt3DRender::QCullFace*>(Qt3DCore::QNode* ptr)```</span>.
95734    #[inline(always)]
95735    unsafe fn static_downcast(
95736        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95737    ) -> ::cpp_core::Ptr<crate::QCullFace> {
95738        let ffi_result = {
95739            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCullFace_ptr1(
95740                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95741            )
95742        };
95743        ::cpp_core::Ptr::from_raw(ffi_result)
95744    }
95745}
95746
95747impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QCullFace {
95748    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QCullFace* ptr)```</span>.
95749    #[inline(always)]
95750    unsafe fn static_upcast(
95751        ptr: ::cpp_core::Ptr<crate::QCullFace>,
95752    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
95753        let ffi_result = {
95754            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr20(
95755                ptr.as_raw_ptr() as *mut crate::QCullFace
95756            )
95757        };
95758        ::cpp_core::Ptr::from_raw(ffi_result)
95759    }
95760}
95761
95762impl ::cpp_core::DynamicCast<crate::QCullFace> for ::qt_3d_core::QNode {
95763    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCullFace* dynamic_cast<Qt3DRender::QCullFace*>(Qt3DCore::QNode* ptr)```</span>.
95764    #[inline(always)]
95765    unsafe fn dynamic_cast(
95766        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95767    ) -> ::cpp_core::Ptr<crate::QCullFace> {
95768        let ffi_result = {
95769            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCullFace_ptr1(
95770                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95771            )
95772        };
95773        ::cpp_core::Ptr::from_raw(ffi_result)
95774    }
95775}
95776
95777impl ::cpp_core::StaticDowncast<crate::QCullFace> for ::qt_core::QObject {
95778    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCullFace* static_cast<Qt3DRender::QCullFace*>(QObject* ptr)```</span>.
95779    #[inline(always)]
95780    unsafe fn static_downcast(
95781        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95782    ) -> ::cpp_core::Ptr<crate::QCullFace> {
95783        let ffi_result = {
95784            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QCullFace_ptr2(
95785                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95786            )
95787        };
95788        ::cpp_core::Ptr::from_raw(ffi_result)
95789    }
95790}
95791
95792impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QCullFace {
95793    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QCullFace* ptr)```</span>.
95794    #[inline(always)]
95795    unsafe fn static_upcast(
95796        ptr: ::cpp_core::Ptr<crate::QCullFace>,
95797    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
95798        let ffi_result = {
95799            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr20(
95800                ptr.as_raw_ptr() as *mut crate::QCullFace
95801            )
95802        };
95803        ::cpp_core::Ptr::from_raw(ffi_result)
95804    }
95805}
95806
95807impl ::cpp_core::DynamicCast<crate::QCullFace> for ::qt_core::QObject {
95808    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QCullFace* dynamic_cast<Qt3DRender::QCullFace*>(QObject* ptr)```</span>.
95809    #[inline(always)]
95810    unsafe fn dynamic_cast(
95811        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95812    ) -> ::cpp_core::Ptr<crate::QCullFace> {
95813        let ffi_result = {
95814            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QCullFace_ptr2(
95815                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95816            )
95817        };
95818        ::cpp_core::Ptr::from_raw(ffi_result)
95819    }
95820}
95821
95822impl ::cpp_core::StaticDowncast<crate::QDepthTest> for crate::QRenderState {
95823    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthTest* static_cast<Qt3DRender::QDepthTest*>(Qt3DRender::QRenderState* ptr)```</span>.
95824    #[inline(always)]
95825    unsafe fn static_downcast(
95826        ptr: ::cpp_core::Ptr<crate::QRenderState>,
95827    ) -> ::cpp_core::Ptr<crate::QDepthTest> {
95828        let ffi_result = {
95829            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDepthTest_ptr(
95830                ptr.as_raw_ptr() as *mut crate::QRenderState,
95831            )
95832        };
95833        ::cpp_core::Ptr::from_raw(ffi_result)
95834    }
95835}
95836
95837impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QDepthTest {
95838    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QDepthTest* ptr)```</span>.
95839    #[inline(always)]
95840    unsafe fn static_upcast(
95841        ptr: ::cpp_core::Ptr<crate::QDepthTest>,
95842    ) -> ::cpp_core::Ptr<crate::QRenderState> {
95843        let ffi_result = {
95844            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr9(
95845                ptr.as_raw_ptr() as *mut crate::QDepthTest,
95846            )
95847        };
95848        ::cpp_core::Ptr::from_raw(ffi_result)
95849    }
95850}
95851
95852impl ::std::ops::Deref for crate::QDepthTest {
95853    type Target = crate::QRenderState;
95854    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QDepthTest* ptr)```</span>.
95855    #[inline(always)]
95856    fn deref(&self) -> &crate::QRenderState {
95857        let ffi_result = {
95858            unsafe {
95859                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr9(
95860                    self as *const crate::QDepthTest as *mut crate::QDepthTest,
95861                )
95862            }
95863        };
95864        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
95865    }
95866}
95867
95868impl ::cpp_core::DynamicCast<crate::QDepthTest> for crate::QRenderState {
95869    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthTest* dynamic_cast<Qt3DRender::QDepthTest*>(Qt3DRender::QRenderState* ptr)```</span>.
95870    #[inline(always)]
95871    unsafe fn dynamic_cast(
95872        ptr: ::cpp_core::Ptr<crate::QRenderState>,
95873    ) -> ::cpp_core::Ptr<crate::QDepthTest> {
95874        let ffi_result = {
95875            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDepthTest_ptr(
95876                ptr.as_raw_ptr() as *mut crate::QRenderState,
95877            )
95878        };
95879        ::cpp_core::Ptr::from_raw(ffi_result)
95880    }
95881}
95882
95883impl ::cpp_core::StaticDowncast<crate::QDepthTest> for ::qt_3d_core::QNode {
95884    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthTest* static_cast<Qt3DRender::QDepthTest*>(Qt3DCore::QNode* ptr)```</span>.
95885    #[inline(always)]
95886    unsafe fn static_downcast(
95887        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95888    ) -> ::cpp_core::Ptr<crate::QDepthTest> {
95889        let ffi_result = {
95890            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDepthTest_ptr1(
95891                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95892            )
95893        };
95894        ::cpp_core::Ptr::from_raw(ffi_result)
95895    }
95896}
95897
95898impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QDepthTest {
95899    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QDepthTest* ptr)```</span>.
95900    #[inline(always)]
95901    unsafe fn static_upcast(
95902        ptr: ::cpp_core::Ptr<crate::QDepthTest>,
95903    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
95904        let ffi_result = {
95905            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr21(
95906                ptr.as_raw_ptr() as *mut crate::QDepthTest
95907            )
95908        };
95909        ::cpp_core::Ptr::from_raw(ffi_result)
95910    }
95911}
95912
95913impl ::cpp_core::DynamicCast<crate::QDepthTest> for ::qt_3d_core::QNode {
95914    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthTest* dynamic_cast<Qt3DRender::QDepthTest*>(Qt3DCore::QNode* ptr)```</span>.
95915    #[inline(always)]
95916    unsafe fn dynamic_cast(
95917        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
95918    ) -> ::cpp_core::Ptr<crate::QDepthTest> {
95919        let ffi_result = {
95920            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDepthTest_ptr1(
95921                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
95922            )
95923        };
95924        ::cpp_core::Ptr::from_raw(ffi_result)
95925    }
95926}
95927
95928impl ::cpp_core::StaticDowncast<crate::QDepthTest> for ::qt_core::QObject {
95929    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthTest* static_cast<Qt3DRender::QDepthTest*>(QObject* ptr)```</span>.
95930    #[inline(always)]
95931    unsafe fn static_downcast(
95932        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95933    ) -> ::cpp_core::Ptr<crate::QDepthTest> {
95934        let ffi_result = {
95935            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDepthTest_ptr2(
95936                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95937            )
95938        };
95939        ::cpp_core::Ptr::from_raw(ffi_result)
95940    }
95941}
95942
95943impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QDepthTest {
95944    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QDepthTest* ptr)```</span>.
95945    #[inline(always)]
95946    unsafe fn static_upcast(
95947        ptr: ::cpp_core::Ptr<crate::QDepthTest>,
95948    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
95949        let ffi_result = {
95950            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr21(
95951                ptr.as_raw_ptr() as *mut crate::QDepthTest
95952            )
95953        };
95954        ::cpp_core::Ptr::from_raw(ffi_result)
95955    }
95956}
95957
95958impl ::cpp_core::DynamicCast<crate::QDepthTest> for ::qt_core::QObject {
95959    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthTest* dynamic_cast<Qt3DRender::QDepthTest*>(QObject* ptr)```</span>.
95960    #[inline(always)]
95961    unsafe fn dynamic_cast(
95962        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
95963    ) -> ::cpp_core::Ptr<crate::QDepthTest> {
95964        let ffi_result = {
95965            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDepthTest_ptr2(
95966                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
95967            )
95968        };
95969        ::cpp_core::Ptr::from_raw(ffi_result)
95970    }
95971}
95972
95973impl ::cpp_core::StaticDowncast<crate::QDirectionalLight> for crate::QAbstractLight {
95974    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDirectionalLight* static_cast<Qt3DRender::QDirectionalLight*>(Qt3DRender::QAbstractLight* ptr)```</span>.
95975    #[inline(always)]
95976    unsafe fn static_downcast(
95977        ptr: ::cpp_core::Ptr<crate::QAbstractLight>,
95978    ) -> ::cpp_core::Ptr<crate::QDirectionalLight> {
95979        let ffi_result = {
95980            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDirectionalLight_ptr(
95981                ptr.as_raw_ptr() as *mut crate::QAbstractLight,
95982            )
95983        };
95984        ::cpp_core::Ptr::from_raw(ffi_result)
95985    }
95986}
95987
95988impl ::cpp_core::StaticUpcast<crate::QAbstractLight> for crate::QDirectionalLight {
95989    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* static_cast<Qt3DRender::QAbstractLight*>(Qt3DRender::QDirectionalLight* ptr)```</span>.
95990    #[inline(always)]
95991    unsafe fn static_upcast(
95992        ptr: ::cpp_core::Ptr<crate::QDirectionalLight>,
95993    ) -> ::cpp_core::Ptr<crate::QAbstractLight> {
95994        let ffi_result = {
95995            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractLight_ptr3(
95996                ptr.as_raw_ptr() as *mut crate::QDirectionalLight,
95997            )
95998        };
95999        ::cpp_core::Ptr::from_raw(ffi_result)
96000    }
96001}
96002
96003impl ::std::ops::Deref for crate::QDirectionalLight {
96004    type Target = crate::QAbstractLight;
96005    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* static_cast<Qt3DRender::QAbstractLight*>(Qt3DRender::QDirectionalLight* ptr)```</span>.
96006    #[inline(always)]
96007    fn deref(&self) -> &crate::QAbstractLight {
96008        let ffi_result = {
96009            unsafe {
96010                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractLight_ptr3(
96011                    self as *const crate::QDirectionalLight as *mut crate::QDirectionalLight,
96012                )
96013            }
96014        };
96015        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
96016    }
96017}
96018
96019impl ::cpp_core::DynamicCast<crate::QDirectionalLight> for crate::QAbstractLight {
96020    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDirectionalLight* dynamic_cast<Qt3DRender::QDirectionalLight*>(Qt3DRender::QAbstractLight* ptr)```</span>.
96021    #[inline(always)]
96022    unsafe fn dynamic_cast(
96023        ptr: ::cpp_core::Ptr<crate::QAbstractLight>,
96024    ) -> ::cpp_core::Ptr<crate::QDirectionalLight> {
96025        let ffi_result = {
96026            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDirectionalLight_ptr(
96027                ptr.as_raw_ptr() as *mut crate::QAbstractLight,
96028            )
96029        };
96030        ::cpp_core::Ptr::from_raw(ffi_result)
96031    }
96032}
96033
96034impl ::cpp_core::StaticDowncast<crate::QDirectionalLight> for ::qt_3d_core::QComponent {
96035    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDirectionalLight* static_cast<Qt3DRender::QDirectionalLight*>(Qt3DCore::QComponent* ptr)```</span>.
96036    #[inline(always)]
96037    unsafe fn static_downcast(
96038        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
96039    ) -> ::cpp_core::Ptr<crate::QDirectionalLight> {
96040        let ffi_result = {
96041            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDirectionalLight_ptr1(
96042                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
96043            )
96044        };
96045        ::cpp_core::Ptr::from_raw(ffi_result)
96046    }
96047}
96048
96049impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QDirectionalLight {
96050    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QDirectionalLight* ptr)```</span>.
96051    #[inline(always)]
96052    unsafe fn static_upcast(
96053        ptr: ::cpp_core::Ptr<crate::QDirectionalLight>,
96054    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
96055        let ffi_result = {
96056            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr3(
96057                ptr.as_raw_ptr() as *mut crate::QDirectionalLight,
96058            )
96059        };
96060        ::cpp_core::Ptr::from_raw(ffi_result)
96061    }
96062}
96063
96064impl ::cpp_core::DynamicCast<crate::QDirectionalLight> for ::qt_3d_core::QComponent {
96065    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDirectionalLight* dynamic_cast<Qt3DRender::QDirectionalLight*>(Qt3DCore::QComponent* ptr)```</span>.
96066    #[inline(always)]
96067    unsafe fn dynamic_cast(
96068        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
96069    ) -> ::cpp_core::Ptr<crate::QDirectionalLight> {
96070        let ffi_result = {
96071            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDirectionalLight_ptr1(
96072                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
96073            )
96074        };
96075        ::cpp_core::Ptr::from_raw(ffi_result)
96076    }
96077}
96078
96079impl ::cpp_core::StaticDowncast<crate::QDirectionalLight> for ::qt_3d_core::QNode {
96080    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDirectionalLight* static_cast<Qt3DRender::QDirectionalLight*>(Qt3DCore::QNode* ptr)```</span>.
96081    #[inline(always)]
96082    unsafe fn static_downcast(
96083        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96084    ) -> ::cpp_core::Ptr<crate::QDirectionalLight> {
96085        let ffi_result = {
96086            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDirectionalLight_ptr2(
96087                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96088            )
96089        };
96090        ::cpp_core::Ptr::from_raw(ffi_result)
96091    }
96092}
96093
96094impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QDirectionalLight {
96095    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QDirectionalLight* ptr)```</span>.
96096    #[inline(always)]
96097    unsafe fn static_upcast(
96098        ptr: ::cpp_core::Ptr<crate::QDirectionalLight>,
96099    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
96100        let ffi_result = {
96101            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr22(
96102                ptr.as_raw_ptr() as *mut crate::QDirectionalLight
96103            )
96104        };
96105        ::cpp_core::Ptr::from_raw(ffi_result)
96106    }
96107}
96108
96109impl ::cpp_core::DynamicCast<crate::QDirectionalLight> for ::qt_3d_core::QNode {
96110    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDirectionalLight* dynamic_cast<Qt3DRender::QDirectionalLight*>(Qt3DCore::QNode* ptr)```</span>.
96111    #[inline(always)]
96112    unsafe fn dynamic_cast(
96113        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96114    ) -> ::cpp_core::Ptr<crate::QDirectionalLight> {
96115        let ffi_result = {
96116            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDirectionalLight_ptr2(
96117                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96118            )
96119        };
96120        ::cpp_core::Ptr::from_raw(ffi_result)
96121    }
96122}
96123
96124impl ::cpp_core::StaticDowncast<crate::QDirectionalLight> for ::qt_core::QObject {
96125    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDirectionalLight* static_cast<Qt3DRender::QDirectionalLight*>(QObject* ptr)```</span>.
96126    #[inline(always)]
96127    unsafe fn static_downcast(
96128        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96129    ) -> ::cpp_core::Ptr<crate::QDirectionalLight> {
96130        let ffi_result = {
96131            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDirectionalLight_ptr3(
96132                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96133            )
96134        };
96135        ::cpp_core::Ptr::from_raw(ffi_result)
96136    }
96137}
96138
96139impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QDirectionalLight {
96140    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QDirectionalLight* ptr)```</span>.
96141    #[inline(always)]
96142    unsafe fn static_upcast(
96143        ptr: ::cpp_core::Ptr<crate::QDirectionalLight>,
96144    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
96145        let ffi_result = {
96146            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr22(
96147                ptr.as_raw_ptr() as *mut crate::QDirectionalLight
96148            )
96149        };
96150        ::cpp_core::Ptr::from_raw(ffi_result)
96151    }
96152}
96153
96154impl ::cpp_core::DynamicCast<crate::QDirectionalLight> for ::qt_core::QObject {
96155    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDirectionalLight* dynamic_cast<Qt3DRender::QDirectionalLight*>(QObject* ptr)```</span>.
96156    #[inline(always)]
96157    unsafe fn dynamic_cast(
96158        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96159    ) -> ::cpp_core::Ptr<crate::QDirectionalLight> {
96160        let ffi_result = {
96161            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDirectionalLight_ptr3(
96162                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96163            )
96164        };
96165        ::cpp_core::Ptr::from_raw(ffi_result)
96166    }
96167}
96168
96169impl ::cpp_core::StaticDowncast<crate::QDispatchCompute> for crate::QFrameGraphNode {
96170    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDispatchCompute* static_cast<Qt3DRender::QDispatchCompute*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
96171    #[inline(always)]
96172    unsafe fn static_downcast(
96173        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
96174    ) -> ::cpp_core::Ptr<crate::QDispatchCompute> {
96175        let ffi_result = {
96176            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDispatchCompute_ptr(
96177                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
96178            )
96179        };
96180        ::cpp_core::Ptr::from_raw(ffi_result)
96181    }
96182}
96183
96184impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QDispatchCompute {
96185    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QDispatchCompute* ptr)```</span>.
96186    #[inline(always)]
96187    unsafe fn static_upcast(
96188        ptr: ::cpp_core::Ptr<crate::QDispatchCompute>,
96189    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
96190        let ffi_result = {
96191            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr5(
96192                ptr.as_raw_ptr() as *mut crate::QDispatchCompute,
96193            )
96194        };
96195        ::cpp_core::Ptr::from_raw(ffi_result)
96196    }
96197}
96198
96199impl ::std::ops::Deref for crate::QDispatchCompute {
96200    type Target = crate::QFrameGraphNode;
96201    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QDispatchCompute* ptr)```</span>.
96202    #[inline(always)]
96203    fn deref(&self) -> &crate::QFrameGraphNode {
96204        let ffi_result = {
96205            unsafe {
96206                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr5(
96207                    self as *const crate::QDispatchCompute as *mut crate::QDispatchCompute,
96208                )
96209            }
96210        };
96211        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
96212    }
96213}
96214
96215impl ::cpp_core::DynamicCast<crate::QDispatchCompute> for crate::QFrameGraphNode {
96216    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDispatchCompute* dynamic_cast<Qt3DRender::QDispatchCompute*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
96217    #[inline(always)]
96218    unsafe fn dynamic_cast(
96219        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
96220    ) -> ::cpp_core::Ptr<crate::QDispatchCompute> {
96221        let ffi_result = {
96222            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDispatchCompute_ptr(
96223                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
96224            )
96225        };
96226        ::cpp_core::Ptr::from_raw(ffi_result)
96227    }
96228}
96229
96230impl ::cpp_core::StaticDowncast<crate::QDispatchCompute> for ::qt_3d_core::QNode {
96231    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDispatchCompute* static_cast<Qt3DRender::QDispatchCompute*>(Qt3DCore::QNode* ptr)```</span>.
96232    #[inline(always)]
96233    unsafe fn static_downcast(
96234        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96235    ) -> ::cpp_core::Ptr<crate::QDispatchCompute> {
96236        let ffi_result = {
96237            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDispatchCompute_ptr1(
96238                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96239            )
96240        };
96241        ::cpp_core::Ptr::from_raw(ffi_result)
96242    }
96243}
96244
96245impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QDispatchCompute {
96246    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QDispatchCompute* ptr)```</span>.
96247    #[inline(always)]
96248    unsafe fn static_upcast(
96249        ptr: ::cpp_core::Ptr<crate::QDispatchCompute>,
96250    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
96251        let ffi_result = {
96252            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr23(
96253                ptr.as_raw_ptr() as *mut crate::QDispatchCompute
96254            )
96255        };
96256        ::cpp_core::Ptr::from_raw(ffi_result)
96257    }
96258}
96259
96260impl ::cpp_core::DynamicCast<crate::QDispatchCompute> for ::qt_3d_core::QNode {
96261    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDispatchCompute* dynamic_cast<Qt3DRender::QDispatchCompute*>(Qt3DCore::QNode* ptr)```</span>.
96262    #[inline(always)]
96263    unsafe fn dynamic_cast(
96264        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96265    ) -> ::cpp_core::Ptr<crate::QDispatchCompute> {
96266        let ffi_result = {
96267            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDispatchCompute_ptr1(
96268                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96269            )
96270        };
96271        ::cpp_core::Ptr::from_raw(ffi_result)
96272    }
96273}
96274
96275impl ::cpp_core::StaticDowncast<crate::QDispatchCompute> for ::qt_core::QObject {
96276    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDispatchCompute* static_cast<Qt3DRender::QDispatchCompute*>(QObject* ptr)```</span>.
96277    #[inline(always)]
96278    unsafe fn static_downcast(
96279        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96280    ) -> ::cpp_core::Ptr<crate::QDispatchCompute> {
96281        let ffi_result = {
96282            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDispatchCompute_ptr2(
96283                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96284            )
96285        };
96286        ::cpp_core::Ptr::from_raw(ffi_result)
96287    }
96288}
96289
96290impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QDispatchCompute {
96291    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QDispatchCompute* ptr)```</span>.
96292    #[inline(always)]
96293    unsafe fn static_upcast(
96294        ptr: ::cpp_core::Ptr<crate::QDispatchCompute>,
96295    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
96296        let ffi_result = {
96297            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr23(
96298                ptr.as_raw_ptr() as *mut crate::QDispatchCompute
96299            )
96300        };
96301        ::cpp_core::Ptr::from_raw(ffi_result)
96302    }
96303}
96304
96305impl ::cpp_core::DynamicCast<crate::QDispatchCompute> for ::qt_core::QObject {
96306    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDispatchCompute* dynamic_cast<Qt3DRender::QDispatchCompute*>(QObject* ptr)```</span>.
96307    #[inline(always)]
96308    unsafe fn dynamic_cast(
96309        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96310    ) -> ::cpp_core::Ptr<crate::QDispatchCompute> {
96311        let ffi_result = {
96312            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDispatchCompute_ptr2(
96313                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96314            )
96315        };
96316        ::cpp_core::Ptr::from_raw(ffi_result)
96317    }
96318}
96319
96320impl ::cpp_core::StaticDowncast<crate::QDithering> for crate::QRenderState {
96321    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDithering* static_cast<Qt3DRender::QDithering*>(Qt3DRender::QRenderState* ptr)```</span>.
96322    #[inline(always)]
96323    unsafe fn static_downcast(
96324        ptr: ::cpp_core::Ptr<crate::QRenderState>,
96325    ) -> ::cpp_core::Ptr<crate::QDithering> {
96326        let ffi_result = {
96327            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDithering_ptr(
96328                ptr.as_raw_ptr() as *mut crate::QRenderState,
96329            )
96330        };
96331        ::cpp_core::Ptr::from_raw(ffi_result)
96332    }
96333}
96334
96335impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QDithering {
96336    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QDithering* ptr)```</span>.
96337    #[inline(always)]
96338    unsafe fn static_upcast(
96339        ptr: ::cpp_core::Ptr<crate::QDithering>,
96340    ) -> ::cpp_core::Ptr<crate::QRenderState> {
96341        let ffi_result = {
96342            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr10(
96343                ptr.as_raw_ptr() as *mut crate::QDithering,
96344            )
96345        };
96346        ::cpp_core::Ptr::from_raw(ffi_result)
96347    }
96348}
96349
96350impl ::std::ops::Deref for crate::QDithering {
96351    type Target = crate::QRenderState;
96352    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QDithering* ptr)```</span>.
96353    #[inline(always)]
96354    fn deref(&self) -> &crate::QRenderState {
96355        let ffi_result = {
96356            unsafe {
96357                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr10(
96358                    self as *const crate::QDithering as *mut crate::QDithering,
96359                )
96360            }
96361        };
96362        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
96363    }
96364}
96365
96366impl ::cpp_core::DynamicCast<crate::QDithering> for crate::QRenderState {
96367    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDithering* dynamic_cast<Qt3DRender::QDithering*>(Qt3DRender::QRenderState* ptr)```</span>.
96368    #[inline(always)]
96369    unsafe fn dynamic_cast(
96370        ptr: ::cpp_core::Ptr<crate::QRenderState>,
96371    ) -> ::cpp_core::Ptr<crate::QDithering> {
96372        let ffi_result = {
96373            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDithering_ptr(
96374                ptr.as_raw_ptr() as *mut crate::QRenderState,
96375            )
96376        };
96377        ::cpp_core::Ptr::from_raw(ffi_result)
96378    }
96379}
96380
96381impl ::cpp_core::StaticDowncast<crate::QDithering> for ::qt_3d_core::QNode {
96382    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDithering* static_cast<Qt3DRender::QDithering*>(Qt3DCore::QNode* ptr)```</span>.
96383    #[inline(always)]
96384    unsafe fn static_downcast(
96385        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96386    ) -> ::cpp_core::Ptr<crate::QDithering> {
96387        let ffi_result = {
96388            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDithering_ptr1(
96389                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96390            )
96391        };
96392        ::cpp_core::Ptr::from_raw(ffi_result)
96393    }
96394}
96395
96396impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QDithering {
96397    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QDithering* ptr)```</span>.
96398    #[inline(always)]
96399    unsafe fn static_upcast(
96400        ptr: ::cpp_core::Ptr<crate::QDithering>,
96401    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
96402        let ffi_result = {
96403            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr24(
96404                ptr.as_raw_ptr() as *mut crate::QDithering
96405            )
96406        };
96407        ::cpp_core::Ptr::from_raw(ffi_result)
96408    }
96409}
96410
96411impl ::cpp_core::DynamicCast<crate::QDithering> for ::qt_3d_core::QNode {
96412    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDithering* dynamic_cast<Qt3DRender::QDithering*>(Qt3DCore::QNode* ptr)```</span>.
96413    #[inline(always)]
96414    unsafe fn dynamic_cast(
96415        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96416    ) -> ::cpp_core::Ptr<crate::QDithering> {
96417        let ffi_result = {
96418            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDithering_ptr1(
96419                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96420            )
96421        };
96422        ::cpp_core::Ptr::from_raw(ffi_result)
96423    }
96424}
96425
96426impl ::cpp_core::StaticDowncast<crate::QDithering> for ::qt_core::QObject {
96427    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDithering* static_cast<Qt3DRender::QDithering*>(QObject* ptr)```</span>.
96428    #[inline(always)]
96429    unsafe fn static_downcast(
96430        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96431    ) -> ::cpp_core::Ptr<crate::QDithering> {
96432        let ffi_result = {
96433            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDithering_ptr2(
96434                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96435            )
96436        };
96437        ::cpp_core::Ptr::from_raw(ffi_result)
96438    }
96439}
96440
96441impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QDithering {
96442    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QDithering* ptr)```</span>.
96443    #[inline(always)]
96444    unsafe fn static_upcast(
96445        ptr: ::cpp_core::Ptr<crate::QDithering>,
96446    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
96447        let ffi_result = {
96448            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr24(
96449                ptr.as_raw_ptr() as *mut crate::QDithering
96450            )
96451        };
96452        ::cpp_core::Ptr::from_raw(ffi_result)
96453    }
96454}
96455
96456impl ::cpp_core::DynamicCast<crate::QDithering> for ::qt_core::QObject {
96457    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDithering* dynamic_cast<Qt3DRender::QDithering*>(QObject* ptr)```</span>.
96458    #[inline(always)]
96459    unsafe fn dynamic_cast(
96460        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96461    ) -> ::cpp_core::Ptr<crate::QDithering> {
96462        let ffi_result = {
96463            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDithering_ptr2(
96464                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96465            )
96466        };
96467        ::cpp_core::Ptr::from_raw(ffi_result)
96468    }
96469}
96470
96471impl ::cpp_core::StaticDowncast<crate::QEffect> for ::qt_3d_core::QNode {
96472    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEffect* static_cast<Qt3DRender::QEffect*>(Qt3DCore::QNode* ptr)```</span>.
96473    #[inline(always)]
96474    unsafe fn static_downcast(
96475        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96476    ) -> ::cpp_core::Ptr<crate::QEffect> {
96477        let ffi_result = {
96478            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QEffect_ptr(
96479                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
96480            )
96481        };
96482        ::cpp_core::Ptr::from_raw(ffi_result)
96483    }
96484}
96485
96486impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QEffect {
96487    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QEffect* ptr)```</span>.
96488    #[inline(always)]
96489    unsafe fn static_upcast(
96490        ptr: ::cpp_core::Ptr<crate::QEffect>,
96491    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
96492        let ffi_result = {
96493            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr25(
96494                ptr.as_raw_ptr() as *mut crate::QEffect
96495            )
96496        };
96497        ::cpp_core::Ptr::from_raw(ffi_result)
96498    }
96499}
96500
96501impl ::std::ops::Deref for crate::QEffect {
96502    type Target = ::qt_3d_core::QNode;
96503    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QEffect* ptr)```</span>.
96504    #[inline(always)]
96505    fn deref(&self) -> &::qt_3d_core::QNode {
96506        let ffi_result = {
96507            unsafe {
96508                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr25(
96509                    self as *const crate::QEffect as *mut crate::QEffect,
96510                )
96511            }
96512        };
96513        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
96514    }
96515}
96516
96517impl ::cpp_core::DynamicCast<crate::QEffect> for ::qt_3d_core::QNode {
96518    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEffect* dynamic_cast<Qt3DRender::QEffect*>(Qt3DCore::QNode* ptr)```</span>.
96519    #[inline(always)]
96520    unsafe fn dynamic_cast(
96521        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96522    ) -> ::cpp_core::Ptr<crate::QEffect> {
96523        let ffi_result = {
96524            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QEffect_ptr(
96525                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
96526            )
96527        };
96528        ::cpp_core::Ptr::from_raw(ffi_result)
96529    }
96530}
96531
96532impl ::cpp_core::StaticDowncast<crate::QEffect> for ::qt_core::QObject {
96533    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEffect* static_cast<Qt3DRender::QEffect*>(QObject* ptr)```</span>.
96534    #[inline(always)]
96535    unsafe fn static_downcast(
96536        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96537    ) -> ::cpp_core::Ptr<crate::QEffect> {
96538        let ffi_result = {
96539            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QEffect_ptr1(
96540                ptr.as_raw_ptr() as *mut ::qt_core::QObject
96541            )
96542        };
96543        ::cpp_core::Ptr::from_raw(ffi_result)
96544    }
96545}
96546
96547impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QEffect {
96548    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QEffect* ptr)```</span>.
96549    #[inline(always)]
96550    unsafe fn static_upcast(
96551        ptr: ::cpp_core::Ptr<crate::QEffect>,
96552    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
96553        let ffi_result = {
96554            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr25(
96555                ptr.as_raw_ptr() as *mut crate::QEffect
96556            )
96557        };
96558        ::cpp_core::Ptr::from_raw(ffi_result)
96559    }
96560}
96561
96562impl ::cpp_core::DynamicCast<crate::QEffect> for ::qt_core::QObject {
96563    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEffect* dynamic_cast<Qt3DRender::QEffect*>(QObject* ptr)```</span>.
96564    #[inline(always)]
96565    unsafe fn dynamic_cast(
96566        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96567    ) -> ::cpp_core::Ptr<crate::QEffect> {
96568        let ffi_result = {
96569            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QEffect_ptr1(
96570                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96571            )
96572        };
96573        ::cpp_core::Ptr::from_raw(ffi_result)
96574    }
96575}
96576
96577impl ::cpp_core::StaticDowncast<crate::QEnvironmentLight> for ::qt_3d_core::QComponent {
96578    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEnvironmentLight* static_cast<Qt3DRender::QEnvironmentLight*>(Qt3DCore::QComponent* ptr)```</span>.
96579    #[inline(always)]
96580    unsafe fn static_downcast(
96581        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
96582    ) -> ::cpp_core::Ptr<crate::QEnvironmentLight> {
96583        let ffi_result = {
96584            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QEnvironmentLight_ptr(
96585                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
96586            )
96587        };
96588        ::cpp_core::Ptr::from_raw(ffi_result)
96589    }
96590}
96591
96592impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QEnvironmentLight {
96593    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QEnvironmentLight* ptr)```</span>.
96594    #[inline(always)]
96595    unsafe fn static_upcast(
96596        ptr: ::cpp_core::Ptr<crate::QEnvironmentLight>,
96597    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
96598        let ffi_result = {
96599            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr4(
96600                ptr.as_raw_ptr() as *mut crate::QEnvironmentLight,
96601            )
96602        };
96603        ::cpp_core::Ptr::from_raw(ffi_result)
96604    }
96605}
96606
96607impl ::std::ops::Deref for crate::QEnvironmentLight {
96608    type Target = ::qt_3d_core::QComponent;
96609    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QEnvironmentLight* ptr)```</span>.
96610    #[inline(always)]
96611    fn deref(&self) -> &::qt_3d_core::QComponent {
96612        let ffi_result = {
96613            unsafe {
96614                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr4(
96615                    self as *const crate::QEnvironmentLight as *mut crate::QEnvironmentLight,
96616                )
96617            }
96618        };
96619        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
96620    }
96621}
96622
96623impl ::cpp_core::DynamicCast<crate::QEnvironmentLight> for ::qt_3d_core::QComponent {
96624    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEnvironmentLight* dynamic_cast<Qt3DRender::QEnvironmentLight*>(Qt3DCore::QComponent* ptr)```</span>.
96625    #[inline(always)]
96626    unsafe fn dynamic_cast(
96627        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
96628    ) -> ::cpp_core::Ptr<crate::QEnvironmentLight> {
96629        let ffi_result = {
96630            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QEnvironmentLight_ptr(
96631                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
96632            )
96633        };
96634        ::cpp_core::Ptr::from_raw(ffi_result)
96635    }
96636}
96637
96638impl ::cpp_core::StaticDowncast<crate::QEnvironmentLight> for ::qt_3d_core::QNode {
96639    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEnvironmentLight* static_cast<Qt3DRender::QEnvironmentLight*>(Qt3DCore::QNode* ptr)```</span>.
96640    #[inline(always)]
96641    unsafe fn static_downcast(
96642        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96643    ) -> ::cpp_core::Ptr<crate::QEnvironmentLight> {
96644        let ffi_result = {
96645            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QEnvironmentLight_ptr1(
96646                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96647            )
96648        };
96649        ::cpp_core::Ptr::from_raw(ffi_result)
96650    }
96651}
96652
96653impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QEnvironmentLight {
96654    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QEnvironmentLight* ptr)```</span>.
96655    #[inline(always)]
96656    unsafe fn static_upcast(
96657        ptr: ::cpp_core::Ptr<crate::QEnvironmentLight>,
96658    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
96659        let ffi_result = {
96660            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr26(
96661                ptr.as_raw_ptr() as *mut crate::QEnvironmentLight
96662            )
96663        };
96664        ::cpp_core::Ptr::from_raw(ffi_result)
96665    }
96666}
96667
96668impl ::cpp_core::DynamicCast<crate::QEnvironmentLight> for ::qt_3d_core::QNode {
96669    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEnvironmentLight* dynamic_cast<Qt3DRender::QEnvironmentLight*>(Qt3DCore::QNode* ptr)```</span>.
96670    #[inline(always)]
96671    unsafe fn dynamic_cast(
96672        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96673    ) -> ::cpp_core::Ptr<crate::QEnvironmentLight> {
96674        let ffi_result = {
96675            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QEnvironmentLight_ptr1(
96676                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96677            )
96678        };
96679        ::cpp_core::Ptr::from_raw(ffi_result)
96680    }
96681}
96682
96683impl ::cpp_core::StaticDowncast<crate::QEnvironmentLight> for ::qt_core::QObject {
96684    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEnvironmentLight* static_cast<Qt3DRender::QEnvironmentLight*>(QObject* ptr)```</span>.
96685    #[inline(always)]
96686    unsafe fn static_downcast(
96687        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96688    ) -> ::cpp_core::Ptr<crate::QEnvironmentLight> {
96689        let ffi_result = {
96690            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QEnvironmentLight_ptr2(
96691                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96692            )
96693        };
96694        ::cpp_core::Ptr::from_raw(ffi_result)
96695    }
96696}
96697
96698impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QEnvironmentLight {
96699    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QEnvironmentLight* ptr)```</span>.
96700    #[inline(always)]
96701    unsafe fn static_upcast(
96702        ptr: ::cpp_core::Ptr<crate::QEnvironmentLight>,
96703    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
96704        let ffi_result = {
96705            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr26(
96706                ptr.as_raw_ptr() as *mut crate::QEnvironmentLight
96707            )
96708        };
96709        ::cpp_core::Ptr::from_raw(ffi_result)
96710    }
96711}
96712
96713impl ::cpp_core::DynamicCast<crate::QEnvironmentLight> for ::qt_core::QObject {
96714    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QEnvironmentLight* dynamic_cast<Qt3DRender::QEnvironmentLight*>(QObject* ptr)```</span>.
96715    #[inline(always)]
96716    unsafe fn dynamic_cast(
96717        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96718    ) -> ::cpp_core::Ptr<crate::QEnvironmentLight> {
96719        let ffi_result = {
96720            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QEnvironmentLight_ptr2(
96721                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96722            )
96723        };
96724        ::cpp_core::Ptr::from_raw(ffi_result)
96725    }
96726}
96727
96728impl ::cpp_core::StaticDowncast<crate::QFilterKey> for ::qt_3d_core::QNode {
96729    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey* static_cast<Qt3DRender::QFilterKey*>(Qt3DCore::QNode* ptr)```</span>.
96730    #[inline(always)]
96731    unsafe fn static_downcast(
96732        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96733    ) -> ::cpp_core::Ptr<crate::QFilterKey> {
96734        let ffi_result = {
96735            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFilterKey_ptr(
96736                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96737            )
96738        };
96739        ::cpp_core::Ptr::from_raw(ffi_result)
96740    }
96741}
96742
96743impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QFilterKey {
96744    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QFilterKey* ptr)```</span>.
96745    #[inline(always)]
96746    unsafe fn static_upcast(
96747        ptr: ::cpp_core::Ptr<crate::QFilterKey>,
96748    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
96749        let ffi_result = {
96750            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr27(
96751                ptr.as_raw_ptr() as *mut crate::QFilterKey
96752            )
96753        };
96754        ::cpp_core::Ptr::from_raw(ffi_result)
96755    }
96756}
96757
96758impl ::std::ops::Deref for crate::QFilterKey {
96759    type Target = ::qt_3d_core::QNode;
96760    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QFilterKey* ptr)```</span>.
96761    #[inline(always)]
96762    fn deref(&self) -> &::qt_3d_core::QNode {
96763        let ffi_result = {
96764            unsafe {
96765                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr27(
96766                    self as *const crate::QFilterKey as *mut crate::QFilterKey,
96767                )
96768            }
96769        };
96770        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
96771    }
96772}
96773
96774impl ::cpp_core::DynamicCast<crate::QFilterKey> for ::qt_3d_core::QNode {
96775    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey* dynamic_cast<Qt3DRender::QFilterKey*>(Qt3DCore::QNode* ptr)```</span>.
96776    #[inline(always)]
96777    unsafe fn dynamic_cast(
96778        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
96779    ) -> ::cpp_core::Ptr<crate::QFilterKey> {
96780        let ffi_result = {
96781            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFilterKey_ptr(
96782                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
96783            )
96784        };
96785        ::cpp_core::Ptr::from_raw(ffi_result)
96786    }
96787}
96788
96789impl ::cpp_core::StaticDowncast<crate::QFilterKey> for ::qt_core::QObject {
96790    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey* static_cast<Qt3DRender::QFilterKey*>(QObject* ptr)```</span>.
96791    #[inline(always)]
96792    unsafe fn static_downcast(
96793        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96794    ) -> ::cpp_core::Ptr<crate::QFilterKey> {
96795        let ffi_result = {
96796            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFilterKey_ptr1(
96797                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96798            )
96799        };
96800        ::cpp_core::Ptr::from_raw(ffi_result)
96801    }
96802}
96803
96804impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QFilterKey {
96805    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QFilterKey* ptr)```</span>.
96806    #[inline(always)]
96807    unsafe fn static_upcast(
96808        ptr: ::cpp_core::Ptr<crate::QFilterKey>,
96809    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
96810        let ffi_result = {
96811            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr27(
96812                ptr.as_raw_ptr() as *mut crate::QFilterKey
96813            )
96814        };
96815        ::cpp_core::Ptr::from_raw(ffi_result)
96816    }
96817}
96818
96819impl ::cpp_core::DynamicCast<crate::QFilterKey> for ::qt_core::QObject {
96820    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFilterKey* dynamic_cast<Qt3DRender::QFilterKey*>(QObject* ptr)```</span>.
96821    #[inline(always)]
96822    unsafe fn dynamic_cast(
96823        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
96824    ) -> ::cpp_core::Ptr<crate::QFilterKey> {
96825        let ffi_result = {
96826            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFilterKey_ptr1(
96827                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
96828            )
96829        };
96830        ::cpp_core::Ptr::from_raw(ffi_result)
96831    }
96832}
96833
96834impl ::cpp_core::StaticDowncast<crate::QFrameGraphNodeCreatedChangeBase>
96835    for ::qt_3d_core::QNodeCreatedChangeBase
96836{
96837    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNodeCreatedChangeBase* static_cast<Qt3DRender::QFrameGraphNodeCreatedChangeBase*>(Qt3DCore::QNodeCreatedChangeBase* ptr)```</span>.
96838    #[inline(always)]
96839    unsafe fn static_downcast(
96840        ptr: ::cpp_core::Ptr<::qt_3d_core::QNodeCreatedChangeBase>,
96841    ) -> ::cpp_core::Ptr<crate::QFrameGraphNodeCreatedChangeBase> {
96842        let ffi_result = {
96843            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNodeCreatedChangeBase_ptr(ptr.as_raw_ptr() as *mut ::qt_3d_core::QNodeCreatedChangeBase)
96844        };
96845        ::cpp_core::Ptr::from_raw(ffi_result)
96846    }
96847}
96848
96849impl ::cpp_core::StaticUpcast<::qt_3d_core::QNodeCreatedChangeBase>
96850    for crate::QFrameGraphNodeCreatedChangeBase
96851{
96852    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNodeCreatedChangeBase* static_cast<Qt3DCore::QNodeCreatedChangeBase*>(Qt3DRender::QFrameGraphNodeCreatedChangeBase* ptr)```</span>.
96853    #[inline(always)]
96854    unsafe fn static_upcast(
96855        ptr: ::cpp_core::Ptr<crate::QFrameGraphNodeCreatedChangeBase>,
96856    ) -> ::cpp_core::Ptr<::qt_3d_core::QNodeCreatedChangeBase> {
96857        let ffi_result = {
96858            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNodeCreatedChangeBase_ptr(
96859                ptr.as_raw_ptr() as *mut crate::QFrameGraphNodeCreatedChangeBase,
96860            )
96861        };
96862        ::cpp_core::Ptr::from_raw(ffi_result)
96863    }
96864}
96865
96866impl ::std::ops::Deref for crate::QFrameGraphNodeCreatedChangeBase {
96867    type Target = ::qt_3d_core::QNodeCreatedChangeBase;
96868    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNodeCreatedChangeBase* static_cast<Qt3DCore::QNodeCreatedChangeBase*>(Qt3DRender::QFrameGraphNodeCreatedChangeBase* ptr)```</span>.
96869    #[inline(always)]
96870    fn deref(&self) -> &::qt_3d_core::QNodeCreatedChangeBase {
96871        let ffi_result = {
96872            unsafe {
96873                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNodeCreatedChangeBase_ptr(
96874                    self as *const crate::QFrameGraphNodeCreatedChangeBase
96875                        as *mut crate::QFrameGraphNodeCreatedChangeBase,
96876                )
96877            }
96878        };
96879        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
96880    }
96881}
96882
96883impl ::cpp_core::DynamicCast<crate::QFrameGraphNodeCreatedChangeBase>
96884    for ::qt_3d_core::QNodeCreatedChangeBase
96885{
96886    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNodeCreatedChangeBase* dynamic_cast<Qt3DRender::QFrameGraphNodeCreatedChangeBase*>(Qt3DCore::QNodeCreatedChangeBase* ptr)```</span>.
96887    #[inline(always)]
96888    unsafe fn dynamic_cast(
96889        ptr: ::cpp_core::Ptr<::qt_3d_core::QNodeCreatedChangeBase>,
96890    ) -> ::cpp_core::Ptr<crate::QFrameGraphNodeCreatedChangeBase> {
96891        let ffi_result = {
96892            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrameGraphNodeCreatedChangeBase_ptr(ptr.as_raw_ptr() as *mut ::qt_3d_core::QNodeCreatedChangeBase)
96893        };
96894        ::cpp_core::Ptr::from_raw(ffi_result)
96895    }
96896}
96897
96898impl ::cpp_core::StaticDowncast<crate::QFrameGraphNodeCreatedChangeBase>
96899    for ::qt_3d_core::QSceneChange
96900{
96901    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNodeCreatedChangeBase* static_cast<Qt3DRender::QFrameGraphNodeCreatedChangeBase*>(Qt3DCore::QSceneChange* ptr)```</span>.
96902    #[inline(always)]
96903    unsafe fn static_downcast(
96904        ptr: ::cpp_core::Ptr<::qt_3d_core::QSceneChange>,
96905    ) -> ::cpp_core::Ptr<crate::QFrameGraphNodeCreatedChangeBase> {
96906        let ffi_result = {
96907            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNodeCreatedChangeBase_ptr1(ptr.as_raw_ptr() as *mut ::qt_3d_core::QSceneChange)
96908        };
96909        ::cpp_core::Ptr::from_raw(ffi_result)
96910    }
96911}
96912
96913impl ::cpp_core::StaticUpcast<::qt_3d_core::QSceneChange>
96914    for crate::QFrameGraphNodeCreatedChangeBase
96915{
96916    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QSceneChange* static_cast<Qt3DCore::QSceneChange*>(Qt3DRender::QFrameGraphNodeCreatedChangeBase* ptr)```</span>.
96917    #[inline(always)]
96918    unsafe fn static_upcast(
96919        ptr: ::cpp_core::Ptr<crate::QFrameGraphNodeCreatedChangeBase>,
96920    ) -> ::cpp_core::Ptr<::qt_3d_core::QSceneChange> {
96921        let ffi_result = {
96922            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QSceneChange_ptr(
96923                ptr.as_raw_ptr() as *mut crate::QFrameGraphNodeCreatedChangeBase,
96924            )
96925        };
96926        ::cpp_core::Ptr::from_raw(ffi_result)
96927    }
96928}
96929
96930impl ::cpp_core::DynamicCast<crate::QFrameGraphNodeCreatedChangeBase>
96931    for ::qt_3d_core::QSceneChange
96932{
96933    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNodeCreatedChangeBase* dynamic_cast<Qt3DRender::QFrameGraphNodeCreatedChangeBase*>(Qt3DCore::QSceneChange* ptr)```</span>.
96934    #[inline(always)]
96935    unsafe fn dynamic_cast(
96936        ptr: ::cpp_core::Ptr<::qt_3d_core::QSceneChange>,
96937    ) -> ::cpp_core::Ptr<crate::QFrameGraphNodeCreatedChangeBase> {
96938        let ffi_result = {
96939            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrameGraphNodeCreatedChangeBase_ptr1(ptr.as_raw_ptr() as *mut ::qt_3d_core::QSceneChange)
96940        };
96941        ::cpp_core::Ptr::from_raw(ffi_result)
96942    }
96943}
96944
96945impl ::cpp_core::StaticDowncast<crate::QFrontFace> for crate::QRenderState {
96946    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrontFace* static_cast<Qt3DRender::QFrontFace*>(Qt3DRender::QRenderState* ptr)```</span>.
96947    #[inline(always)]
96948    unsafe fn static_downcast(
96949        ptr: ::cpp_core::Ptr<crate::QRenderState>,
96950    ) -> ::cpp_core::Ptr<crate::QFrontFace> {
96951        let ffi_result = {
96952            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrontFace_ptr(
96953                ptr.as_raw_ptr() as *mut crate::QRenderState,
96954            )
96955        };
96956        ::cpp_core::Ptr::from_raw(ffi_result)
96957    }
96958}
96959
96960impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QFrontFace {
96961    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QFrontFace* ptr)```</span>.
96962    #[inline(always)]
96963    unsafe fn static_upcast(
96964        ptr: ::cpp_core::Ptr<crate::QFrontFace>,
96965    ) -> ::cpp_core::Ptr<crate::QRenderState> {
96966        let ffi_result = {
96967            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr11(
96968                ptr.as_raw_ptr() as *mut crate::QFrontFace,
96969            )
96970        };
96971        ::cpp_core::Ptr::from_raw(ffi_result)
96972    }
96973}
96974
96975impl ::std::ops::Deref for crate::QFrontFace {
96976    type Target = crate::QRenderState;
96977    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QFrontFace* ptr)```</span>.
96978    #[inline(always)]
96979    fn deref(&self) -> &crate::QRenderState {
96980        let ffi_result = {
96981            unsafe {
96982                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr11(
96983                    self as *const crate::QFrontFace as *mut crate::QFrontFace,
96984                )
96985            }
96986        };
96987        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
96988    }
96989}
96990
96991impl ::cpp_core::DynamicCast<crate::QFrontFace> for crate::QRenderState {
96992    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrontFace* dynamic_cast<Qt3DRender::QFrontFace*>(Qt3DRender::QRenderState* ptr)```</span>.
96993    #[inline(always)]
96994    unsafe fn dynamic_cast(
96995        ptr: ::cpp_core::Ptr<crate::QRenderState>,
96996    ) -> ::cpp_core::Ptr<crate::QFrontFace> {
96997        let ffi_result = {
96998            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrontFace_ptr(
96999                ptr.as_raw_ptr() as *mut crate::QRenderState,
97000            )
97001        };
97002        ::cpp_core::Ptr::from_raw(ffi_result)
97003    }
97004}
97005
97006impl ::cpp_core::StaticDowncast<crate::QFrontFace> for ::qt_3d_core::QNode {
97007    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrontFace* static_cast<Qt3DRender::QFrontFace*>(Qt3DCore::QNode* ptr)```</span>.
97008    #[inline(always)]
97009    unsafe fn static_downcast(
97010        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97011    ) -> ::cpp_core::Ptr<crate::QFrontFace> {
97012        let ffi_result = {
97013            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrontFace_ptr1(
97014                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97015            )
97016        };
97017        ::cpp_core::Ptr::from_raw(ffi_result)
97018    }
97019}
97020
97021impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QFrontFace {
97022    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QFrontFace* ptr)```</span>.
97023    #[inline(always)]
97024    unsafe fn static_upcast(
97025        ptr: ::cpp_core::Ptr<crate::QFrontFace>,
97026    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
97027        let ffi_result = {
97028            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr28(
97029                ptr.as_raw_ptr() as *mut crate::QFrontFace
97030            )
97031        };
97032        ::cpp_core::Ptr::from_raw(ffi_result)
97033    }
97034}
97035
97036impl ::cpp_core::DynamicCast<crate::QFrontFace> for ::qt_3d_core::QNode {
97037    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrontFace* dynamic_cast<Qt3DRender::QFrontFace*>(Qt3DCore::QNode* ptr)```</span>.
97038    #[inline(always)]
97039    unsafe fn dynamic_cast(
97040        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97041    ) -> ::cpp_core::Ptr<crate::QFrontFace> {
97042        let ffi_result = {
97043            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrontFace_ptr1(
97044                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97045            )
97046        };
97047        ::cpp_core::Ptr::from_raw(ffi_result)
97048    }
97049}
97050
97051impl ::cpp_core::StaticDowncast<crate::QFrontFace> for ::qt_core::QObject {
97052    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrontFace* static_cast<Qt3DRender::QFrontFace*>(QObject* ptr)```</span>.
97053    #[inline(always)]
97054    unsafe fn static_downcast(
97055        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97056    ) -> ::cpp_core::Ptr<crate::QFrontFace> {
97057        let ffi_result = {
97058            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrontFace_ptr2(
97059                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97060            )
97061        };
97062        ::cpp_core::Ptr::from_raw(ffi_result)
97063    }
97064}
97065
97066impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QFrontFace {
97067    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QFrontFace* ptr)```</span>.
97068    #[inline(always)]
97069    unsafe fn static_upcast(
97070        ptr: ::cpp_core::Ptr<crate::QFrontFace>,
97071    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
97072        let ffi_result = {
97073            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr28(
97074                ptr.as_raw_ptr() as *mut crate::QFrontFace
97075            )
97076        };
97077        ::cpp_core::Ptr::from_raw(ffi_result)
97078    }
97079}
97080
97081impl ::cpp_core::DynamicCast<crate::QFrontFace> for ::qt_core::QObject {
97082    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrontFace* dynamic_cast<Qt3DRender::QFrontFace*>(QObject* ptr)```</span>.
97083    #[inline(always)]
97084    unsafe fn dynamic_cast(
97085        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97086    ) -> ::cpp_core::Ptr<crate::QFrontFace> {
97087        let ffi_result = {
97088            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrontFace_ptr2(
97089                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97090            )
97091        };
97092        ::cpp_core::Ptr::from_raw(ffi_result)
97093    }
97094}
97095
97096impl ::cpp_core::StaticDowncast<crate::QFrustumCulling> for crate::QFrameGraphNode {
97097    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrustumCulling* static_cast<Qt3DRender::QFrustumCulling*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
97098    #[inline(always)]
97099    unsafe fn static_downcast(
97100        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
97101    ) -> ::cpp_core::Ptr<crate::QFrustumCulling> {
97102        let ffi_result = {
97103            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrustumCulling_ptr(
97104                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
97105            )
97106        };
97107        ::cpp_core::Ptr::from_raw(ffi_result)
97108    }
97109}
97110
97111impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QFrustumCulling {
97112    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QFrustumCulling* ptr)```</span>.
97113    #[inline(always)]
97114    unsafe fn static_upcast(
97115        ptr: ::cpp_core::Ptr<crate::QFrustumCulling>,
97116    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
97117        let ffi_result = {
97118            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr6(
97119                ptr.as_raw_ptr() as *mut crate::QFrustumCulling,
97120            )
97121        };
97122        ::cpp_core::Ptr::from_raw(ffi_result)
97123    }
97124}
97125
97126impl ::std::ops::Deref for crate::QFrustumCulling {
97127    type Target = crate::QFrameGraphNode;
97128    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QFrustumCulling* ptr)```</span>.
97129    #[inline(always)]
97130    fn deref(&self) -> &crate::QFrameGraphNode {
97131        let ffi_result = {
97132            unsafe {
97133                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr6(
97134                    self as *const crate::QFrustumCulling as *mut crate::QFrustumCulling,
97135                )
97136            }
97137        };
97138        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
97139    }
97140}
97141
97142impl ::cpp_core::DynamicCast<crate::QFrustumCulling> for crate::QFrameGraphNode {
97143    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrustumCulling* dynamic_cast<Qt3DRender::QFrustumCulling*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
97144    #[inline(always)]
97145    unsafe fn dynamic_cast(
97146        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
97147    ) -> ::cpp_core::Ptr<crate::QFrustumCulling> {
97148        let ffi_result = {
97149            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrustumCulling_ptr(
97150                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
97151            )
97152        };
97153        ::cpp_core::Ptr::from_raw(ffi_result)
97154    }
97155}
97156
97157impl ::cpp_core::StaticDowncast<crate::QFrustumCulling> for ::qt_3d_core::QNode {
97158    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrustumCulling* static_cast<Qt3DRender::QFrustumCulling*>(Qt3DCore::QNode* ptr)```</span>.
97159    #[inline(always)]
97160    unsafe fn static_downcast(
97161        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97162    ) -> ::cpp_core::Ptr<crate::QFrustumCulling> {
97163        let ffi_result = {
97164            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrustumCulling_ptr1(
97165                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97166            )
97167        };
97168        ::cpp_core::Ptr::from_raw(ffi_result)
97169    }
97170}
97171
97172impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QFrustumCulling {
97173    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QFrustumCulling* ptr)```</span>.
97174    #[inline(always)]
97175    unsafe fn static_upcast(
97176        ptr: ::cpp_core::Ptr<crate::QFrustumCulling>,
97177    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
97178        let ffi_result = {
97179            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr29(
97180                ptr.as_raw_ptr() as *mut crate::QFrustumCulling
97181            )
97182        };
97183        ::cpp_core::Ptr::from_raw(ffi_result)
97184    }
97185}
97186
97187impl ::cpp_core::DynamicCast<crate::QFrustumCulling> for ::qt_3d_core::QNode {
97188    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrustumCulling* dynamic_cast<Qt3DRender::QFrustumCulling*>(Qt3DCore::QNode* ptr)```</span>.
97189    #[inline(always)]
97190    unsafe fn dynamic_cast(
97191        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97192    ) -> ::cpp_core::Ptr<crate::QFrustumCulling> {
97193        let ffi_result = {
97194            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrustumCulling_ptr1(
97195                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97196            )
97197        };
97198        ::cpp_core::Ptr::from_raw(ffi_result)
97199    }
97200}
97201
97202impl ::cpp_core::StaticDowncast<crate::QFrustumCulling> for ::qt_core::QObject {
97203    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrustumCulling* static_cast<Qt3DRender::QFrustumCulling*>(QObject* ptr)```</span>.
97204    #[inline(always)]
97205    unsafe fn static_downcast(
97206        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97207    ) -> ::cpp_core::Ptr<crate::QFrustumCulling> {
97208        let ffi_result = {
97209            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrustumCulling_ptr2(
97210                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97211            )
97212        };
97213        ::cpp_core::Ptr::from_raw(ffi_result)
97214    }
97215}
97216
97217impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QFrustumCulling {
97218    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QFrustumCulling* ptr)```</span>.
97219    #[inline(always)]
97220    unsafe fn static_upcast(
97221        ptr: ::cpp_core::Ptr<crate::QFrustumCulling>,
97222    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
97223        let ffi_result = {
97224            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr29(
97225                ptr.as_raw_ptr() as *mut crate::QFrustumCulling
97226            )
97227        };
97228        ::cpp_core::Ptr::from_raw(ffi_result)
97229    }
97230}
97231
97232impl ::cpp_core::DynamicCast<crate::QFrustumCulling> for ::qt_core::QObject {
97233    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrustumCulling* dynamic_cast<Qt3DRender::QFrustumCulling*>(QObject* ptr)```</span>.
97234    #[inline(always)]
97235    unsafe fn dynamic_cast(
97236        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97237    ) -> ::cpp_core::Ptr<crate::QFrustumCulling> {
97238        let ffi_result = {
97239            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QFrustumCulling_ptr2(
97240                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97241            )
97242        };
97243        ::cpp_core::Ptr::from_raw(ffi_result)
97244    }
97245}
97246
97247impl ::cpp_core::StaticDowncast<crate::QGeometry> for ::qt_3d_core::QNode {
97248    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometry* static_cast<Qt3DRender::QGeometry*>(Qt3DCore::QNode* ptr)```</span>.
97249    #[inline(always)]
97250    unsafe fn static_downcast(
97251        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97252    ) -> ::cpp_core::Ptr<crate::QGeometry> {
97253        let ffi_result = {
97254            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QGeometry_ptr(
97255                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97256            )
97257        };
97258        ::cpp_core::Ptr::from_raw(ffi_result)
97259    }
97260}
97261
97262impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QGeometry {
97263    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QGeometry* ptr)```</span>.
97264    #[inline(always)]
97265    unsafe fn static_upcast(
97266        ptr: ::cpp_core::Ptr<crate::QGeometry>,
97267    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
97268        let ffi_result = {
97269            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr30(
97270                ptr.as_raw_ptr() as *mut crate::QGeometry
97271            )
97272        };
97273        ::cpp_core::Ptr::from_raw(ffi_result)
97274    }
97275}
97276
97277impl ::std::ops::Deref for crate::QGeometry {
97278    type Target = ::qt_3d_core::QNode;
97279    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QGeometry* ptr)```</span>.
97280    #[inline(always)]
97281    fn deref(&self) -> &::qt_3d_core::QNode {
97282        let ffi_result = {
97283            unsafe {
97284                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr30(
97285                    self as *const crate::QGeometry as *mut crate::QGeometry,
97286                )
97287            }
97288        };
97289        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
97290    }
97291}
97292
97293impl ::cpp_core::DynamicCast<crate::QGeometry> for ::qt_3d_core::QNode {
97294    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometry* dynamic_cast<Qt3DRender::QGeometry*>(Qt3DCore::QNode* ptr)```</span>.
97295    #[inline(always)]
97296    unsafe fn dynamic_cast(
97297        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97298    ) -> ::cpp_core::Ptr<crate::QGeometry> {
97299        let ffi_result = {
97300            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QGeometry_ptr(
97301                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97302            )
97303        };
97304        ::cpp_core::Ptr::from_raw(ffi_result)
97305    }
97306}
97307
97308impl ::cpp_core::StaticDowncast<crate::QGeometry> for ::qt_core::QObject {
97309    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometry* static_cast<Qt3DRender::QGeometry*>(QObject* ptr)```</span>.
97310    #[inline(always)]
97311    unsafe fn static_downcast(
97312        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97313    ) -> ::cpp_core::Ptr<crate::QGeometry> {
97314        let ffi_result = {
97315            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QGeometry_ptr1(
97316                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97317            )
97318        };
97319        ::cpp_core::Ptr::from_raw(ffi_result)
97320    }
97321}
97322
97323impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QGeometry {
97324    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QGeometry* ptr)```</span>.
97325    #[inline(always)]
97326    unsafe fn static_upcast(
97327        ptr: ::cpp_core::Ptr<crate::QGeometry>,
97328    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
97329        let ffi_result = {
97330            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr30(
97331                ptr.as_raw_ptr() as *mut crate::QGeometry
97332            )
97333        };
97334        ::cpp_core::Ptr::from_raw(ffi_result)
97335    }
97336}
97337
97338impl ::cpp_core::DynamicCast<crate::QGeometry> for ::qt_core::QObject {
97339    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometry* dynamic_cast<Qt3DRender::QGeometry*>(QObject* ptr)```</span>.
97340    #[inline(always)]
97341    unsafe fn dynamic_cast(
97342        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97343    ) -> ::cpp_core::Ptr<crate::QGeometry> {
97344        let ffi_result = {
97345            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QGeometry_ptr1(
97346                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97347            )
97348        };
97349        ::cpp_core::Ptr::from_raw(ffi_result)
97350    }
97351}
97352
97353impl ::cpp_core::StaticDowncast<crate::QGeometryFactory> for crate::QAbstractFunctor {
97354    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryFactory* static_cast<Qt3DRender::QGeometryFactory*>(Qt3DRender::QAbstractFunctor* ptr)```</span>.
97355    #[inline(always)]
97356    unsafe fn static_downcast(
97357        ptr: ::cpp_core::Ptr<crate::QAbstractFunctor>,
97358    ) -> ::cpp_core::Ptr<crate::QGeometryFactory> {
97359        let ffi_result = {
97360            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QGeometryFactory_ptr(
97361                ptr.as_raw_ptr() as *mut crate::QAbstractFunctor,
97362            )
97363        };
97364        ::cpp_core::Ptr::from_raw(ffi_result)
97365    }
97366}
97367
97368impl ::cpp_core::StaticUpcast<crate::QAbstractFunctor> for crate::QGeometryFactory {
97369    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractFunctor* static_cast<Qt3DRender::QAbstractFunctor*>(Qt3DRender::QGeometryFactory* ptr)```</span>.
97370    #[inline(always)]
97371    unsafe fn static_upcast(
97372        ptr: ::cpp_core::Ptr<crate::QGeometryFactory>,
97373    ) -> ::cpp_core::Ptr<crate::QAbstractFunctor> {
97374        let ffi_result = {
97375            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractFunctor_ptr2(
97376                ptr.as_raw_ptr() as *mut crate::QGeometryFactory,
97377            )
97378        };
97379        ::cpp_core::Ptr::from_raw(ffi_result)
97380    }
97381}
97382
97383impl ::std::ops::Deref for crate::QGeometryFactory {
97384    type Target = crate::QAbstractFunctor;
97385    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractFunctor* static_cast<Qt3DRender::QAbstractFunctor*>(Qt3DRender::QGeometryFactory* ptr)```</span>.
97386    #[inline(always)]
97387    fn deref(&self) -> &crate::QAbstractFunctor {
97388        let ffi_result = {
97389            unsafe {
97390                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractFunctor_ptr2(
97391                    self as *const crate::QGeometryFactory as *mut crate::QGeometryFactory,
97392                )
97393            }
97394        };
97395        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
97396    }
97397}
97398
97399impl ::cpp_core::DynamicCast<crate::QGeometryFactory> for crate::QAbstractFunctor {
97400    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryFactory* dynamic_cast<Qt3DRender::QGeometryFactory*>(Qt3DRender::QAbstractFunctor* ptr)```</span>.
97401    #[inline(always)]
97402    unsafe fn dynamic_cast(
97403        ptr: ::cpp_core::Ptr<crate::QAbstractFunctor>,
97404    ) -> ::cpp_core::Ptr<crate::QGeometryFactory> {
97405        let ffi_result = {
97406            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QGeometryFactory_ptr(
97407                ptr.as_raw_ptr() as *mut crate::QAbstractFunctor,
97408            )
97409        };
97410        ::cpp_core::Ptr::from_raw(ffi_result)
97411    }
97412}
97413
97414impl ::cpp_core::StaticDowncast<crate::QGeometryRenderer> for ::qt_3d_core::QComponent {
97415    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryRenderer* static_cast<Qt3DRender::QGeometryRenderer*>(Qt3DCore::QComponent* ptr)```</span>.
97416    #[inline(always)]
97417    unsafe fn static_downcast(
97418        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
97419    ) -> ::cpp_core::Ptr<crate::QGeometryRenderer> {
97420        let ffi_result = {
97421            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QGeometryRenderer_ptr(
97422                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
97423            )
97424        };
97425        ::cpp_core::Ptr::from_raw(ffi_result)
97426    }
97427}
97428
97429impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QGeometryRenderer {
97430    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QGeometryRenderer* ptr)```</span>.
97431    #[inline(always)]
97432    unsafe fn static_upcast(
97433        ptr: ::cpp_core::Ptr<crate::QGeometryRenderer>,
97434    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
97435        let ffi_result = {
97436            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr5(
97437                ptr.as_raw_ptr() as *mut crate::QGeometryRenderer,
97438            )
97439        };
97440        ::cpp_core::Ptr::from_raw(ffi_result)
97441    }
97442}
97443
97444impl ::std::ops::Deref for crate::QGeometryRenderer {
97445    type Target = ::qt_3d_core::QComponent;
97446    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QGeometryRenderer* ptr)```</span>.
97447    #[inline(always)]
97448    fn deref(&self) -> &::qt_3d_core::QComponent {
97449        let ffi_result = {
97450            unsafe {
97451                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr5(
97452                    self as *const crate::QGeometryRenderer as *mut crate::QGeometryRenderer,
97453                )
97454            }
97455        };
97456        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
97457    }
97458}
97459
97460impl ::cpp_core::DynamicCast<crate::QGeometryRenderer> for ::qt_3d_core::QComponent {
97461    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryRenderer* dynamic_cast<Qt3DRender::QGeometryRenderer*>(Qt3DCore::QComponent* ptr)```</span>.
97462    #[inline(always)]
97463    unsafe fn dynamic_cast(
97464        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
97465    ) -> ::cpp_core::Ptr<crate::QGeometryRenderer> {
97466        let ffi_result = {
97467            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QGeometryRenderer_ptr(
97468                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
97469            )
97470        };
97471        ::cpp_core::Ptr::from_raw(ffi_result)
97472    }
97473}
97474
97475impl ::cpp_core::StaticDowncast<crate::QGeometryRenderer> for ::qt_3d_core::QNode {
97476    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryRenderer* static_cast<Qt3DRender::QGeometryRenderer*>(Qt3DCore::QNode* ptr)```</span>.
97477    #[inline(always)]
97478    unsafe fn static_downcast(
97479        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97480    ) -> ::cpp_core::Ptr<crate::QGeometryRenderer> {
97481        let ffi_result = {
97482            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QGeometryRenderer_ptr1(
97483                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97484            )
97485        };
97486        ::cpp_core::Ptr::from_raw(ffi_result)
97487    }
97488}
97489
97490impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QGeometryRenderer {
97491    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QGeometryRenderer* ptr)```</span>.
97492    #[inline(always)]
97493    unsafe fn static_upcast(
97494        ptr: ::cpp_core::Ptr<crate::QGeometryRenderer>,
97495    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
97496        let ffi_result = {
97497            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr31(
97498                ptr.as_raw_ptr() as *mut crate::QGeometryRenderer
97499            )
97500        };
97501        ::cpp_core::Ptr::from_raw(ffi_result)
97502    }
97503}
97504
97505impl ::cpp_core::DynamicCast<crate::QGeometryRenderer> for ::qt_3d_core::QNode {
97506    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryRenderer* dynamic_cast<Qt3DRender::QGeometryRenderer*>(Qt3DCore::QNode* ptr)```</span>.
97507    #[inline(always)]
97508    unsafe fn dynamic_cast(
97509        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97510    ) -> ::cpp_core::Ptr<crate::QGeometryRenderer> {
97511        let ffi_result = {
97512            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QGeometryRenderer_ptr1(
97513                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97514            )
97515        };
97516        ::cpp_core::Ptr::from_raw(ffi_result)
97517    }
97518}
97519
97520impl ::cpp_core::StaticDowncast<crate::QGeometryRenderer> for ::qt_core::QObject {
97521    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryRenderer* static_cast<Qt3DRender::QGeometryRenderer*>(QObject* ptr)```</span>.
97522    #[inline(always)]
97523    unsafe fn static_downcast(
97524        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97525    ) -> ::cpp_core::Ptr<crate::QGeometryRenderer> {
97526        let ffi_result = {
97527            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QGeometryRenderer_ptr2(
97528                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97529            )
97530        };
97531        ::cpp_core::Ptr::from_raw(ffi_result)
97532    }
97533}
97534
97535impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QGeometryRenderer {
97536    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QGeometryRenderer* ptr)```</span>.
97537    #[inline(always)]
97538    unsafe fn static_upcast(
97539        ptr: ::cpp_core::Ptr<crate::QGeometryRenderer>,
97540    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
97541        let ffi_result = {
97542            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr31(
97543                ptr.as_raw_ptr() as *mut crate::QGeometryRenderer
97544            )
97545        };
97546        ::cpp_core::Ptr::from_raw(ffi_result)
97547    }
97548}
97549
97550impl ::cpp_core::DynamicCast<crate::QGeometryRenderer> for ::qt_core::QObject {
97551    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryRenderer* dynamic_cast<Qt3DRender::QGeometryRenderer*>(QObject* ptr)```</span>.
97552    #[inline(always)]
97553    unsafe fn dynamic_cast(
97554        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97555    ) -> ::cpp_core::Ptr<crate::QGeometryRenderer> {
97556        let ffi_result = {
97557            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QGeometryRenderer_ptr2(
97558                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97559            )
97560        };
97561        ::cpp_core::Ptr::from_raw(ffi_result)
97562    }
97563}
97564
97565impl ::cpp_core::StaticDowncast<crate::QGraphicsApiFilter> for ::qt_core::QObject {
97566    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGraphicsApiFilter* static_cast<Qt3DRender::QGraphicsApiFilter*>(QObject* ptr)```</span>.
97567    #[inline(always)]
97568    unsafe fn static_downcast(
97569        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97570    ) -> ::cpp_core::Ptr<crate::QGraphicsApiFilter> {
97571        let ffi_result = {
97572            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QGraphicsApiFilter_ptr(
97573                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97574            )
97575        };
97576        ::cpp_core::Ptr::from_raw(ffi_result)
97577    }
97578}
97579
97580impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QGraphicsApiFilter {
97581    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QGraphicsApiFilter* ptr)```</span>.
97582    #[inline(always)]
97583    unsafe fn static_upcast(
97584        ptr: ::cpp_core::Ptr<crate::QGraphicsApiFilter>,
97585    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
97586        let ffi_result = {
97587            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr32(
97588                ptr.as_raw_ptr() as *mut crate::QGraphicsApiFilter
97589            )
97590        };
97591        ::cpp_core::Ptr::from_raw(ffi_result)
97592    }
97593}
97594
97595impl ::std::ops::Deref for crate::QGraphicsApiFilter {
97596    type Target = ::qt_core::QObject;
97597    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QGraphicsApiFilter* ptr)```</span>.
97598    #[inline(always)]
97599    fn deref(&self) -> &::qt_core::QObject {
97600        let ffi_result = {
97601            unsafe {
97602                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr32(
97603                    self as *const crate::QGraphicsApiFilter as *mut crate::QGraphicsApiFilter,
97604                )
97605            }
97606        };
97607        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
97608    }
97609}
97610
97611impl ::cpp_core::DynamicCast<crate::QGraphicsApiFilter> for ::qt_core::QObject {
97612    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGraphicsApiFilter* dynamic_cast<Qt3DRender::QGraphicsApiFilter*>(QObject* ptr)```</span>.
97613    #[inline(always)]
97614    unsafe fn dynamic_cast(
97615        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97616    ) -> ::cpp_core::Ptr<crate::QGraphicsApiFilter> {
97617        let ffi_result = {
97618            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QGraphicsApiFilter_ptr(
97619                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97620            )
97621        };
97622        ::cpp_core::Ptr::from_raw(ffi_result)
97623    }
97624}
97625
97626impl ::cpp_core::StaticDowncast<crate::QLayer> for ::qt_3d_core::QComponent {
97627    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* static_cast<Qt3DRender::QLayer*>(Qt3DCore::QComponent* ptr)```</span>.
97628    #[inline(always)]
97629    unsafe fn static_downcast(
97630        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
97631    ) -> ::cpp_core::Ptr<crate::QLayer> {
97632        let ffi_result = {
97633            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLayer_ptr(
97634                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent
97635            )
97636        };
97637        ::cpp_core::Ptr::from_raw(ffi_result)
97638    }
97639}
97640
97641impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QLayer {
97642    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QLayer* ptr)```</span>.
97643    #[inline(always)]
97644    unsafe fn static_upcast(
97645        ptr: ::cpp_core::Ptr<crate::QLayer>,
97646    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
97647        let ffi_result = {
97648            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr6(
97649                ptr.as_raw_ptr() as *mut crate::QLayer,
97650            )
97651        };
97652        ::cpp_core::Ptr::from_raw(ffi_result)
97653    }
97654}
97655
97656impl ::std::ops::Deref for crate::QLayer {
97657    type Target = ::qt_3d_core::QComponent;
97658    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QLayer* ptr)```</span>.
97659    #[inline(always)]
97660    fn deref(&self) -> &::qt_3d_core::QComponent {
97661        let ffi_result = {
97662            unsafe {
97663                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr6(
97664                    self as *const crate::QLayer as *mut crate::QLayer,
97665                )
97666            }
97667        };
97668        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
97669    }
97670}
97671
97672impl ::cpp_core::DynamicCast<crate::QLayer> for ::qt_3d_core::QComponent {
97673    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* dynamic_cast<Qt3DRender::QLayer*>(Qt3DCore::QComponent* ptr)```</span>.
97674    #[inline(always)]
97675    unsafe fn dynamic_cast(
97676        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
97677    ) -> ::cpp_core::Ptr<crate::QLayer> {
97678        let ffi_result = {
97679            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLayer_ptr(
97680                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent
97681            )
97682        };
97683        ::cpp_core::Ptr::from_raw(ffi_result)
97684    }
97685}
97686
97687impl ::cpp_core::StaticDowncast<crate::QLayer> for ::qt_3d_core::QNode {
97688    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* static_cast<Qt3DRender::QLayer*>(Qt3DCore::QNode* ptr)```</span>.
97689    #[inline(always)]
97690    unsafe fn static_downcast(
97691        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97692    ) -> ::cpp_core::Ptr<crate::QLayer> {
97693        let ffi_result = {
97694            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLayer_ptr1(
97695                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
97696            )
97697        };
97698        ::cpp_core::Ptr::from_raw(ffi_result)
97699    }
97700}
97701
97702impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QLayer {
97703    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QLayer* ptr)```</span>.
97704    #[inline(always)]
97705    unsafe fn static_upcast(
97706        ptr: ::cpp_core::Ptr<crate::QLayer>,
97707    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
97708        let ffi_result = {
97709            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr32(
97710                ptr.as_raw_ptr() as *mut crate::QLayer
97711            )
97712        };
97713        ::cpp_core::Ptr::from_raw(ffi_result)
97714    }
97715}
97716
97717impl ::cpp_core::DynamicCast<crate::QLayer> for ::qt_3d_core::QNode {
97718    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* dynamic_cast<Qt3DRender::QLayer*>(Qt3DCore::QNode* ptr)```</span>.
97719    #[inline(always)]
97720    unsafe fn dynamic_cast(
97721        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97722    ) -> ::cpp_core::Ptr<crate::QLayer> {
97723        let ffi_result = {
97724            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLayer_ptr1(
97725                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
97726            )
97727        };
97728        ::cpp_core::Ptr::from_raw(ffi_result)
97729    }
97730}
97731
97732impl ::cpp_core::StaticDowncast<crate::QLayer> for ::qt_core::QObject {
97733    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* static_cast<Qt3DRender::QLayer*>(QObject* ptr)```</span>.
97734    #[inline(always)]
97735    unsafe fn static_downcast(
97736        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97737    ) -> ::cpp_core::Ptr<crate::QLayer> {
97738        let ffi_result = {
97739            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLayer_ptr2(
97740                ptr.as_raw_ptr() as *mut ::qt_core::QObject
97741            )
97742        };
97743        ::cpp_core::Ptr::from_raw(ffi_result)
97744    }
97745}
97746
97747impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QLayer {
97748    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QLayer* ptr)```</span>.
97749    #[inline(always)]
97750    unsafe fn static_upcast(
97751        ptr: ::cpp_core::Ptr<crate::QLayer>,
97752    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
97753        let ffi_result = {
97754            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr33(
97755                ptr.as_raw_ptr() as *mut crate::QLayer
97756            )
97757        };
97758        ::cpp_core::Ptr::from_raw(ffi_result)
97759    }
97760}
97761
97762impl ::cpp_core::DynamicCast<crate::QLayer> for ::qt_core::QObject {
97763    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayer* dynamic_cast<Qt3DRender::QLayer*>(QObject* ptr)```</span>.
97764    #[inline(always)]
97765    unsafe fn dynamic_cast(
97766        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97767    ) -> ::cpp_core::Ptr<crate::QLayer> {
97768        let ffi_result = {
97769            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLayer_ptr2(
97770                ptr.as_raw_ptr() as *mut ::qt_core::QObject
97771            )
97772        };
97773        ::cpp_core::Ptr::from_raw(ffi_result)
97774    }
97775}
97776
97777impl ::cpp_core::StaticDowncast<crate::QLayerFilter> for crate::QFrameGraphNode {
97778    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayerFilter* static_cast<Qt3DRender::QLayerFilter*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
97779    #[inline(always)]
97780    unsafe fn static_downcast(
97781        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
97782    ) -> ::cpp_core::Ptr<crate::QLayerFilter> {
97783        let ffi_result = {
97784            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLayerFilter_ptr(
97785                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
97786            )
97787        };
97788        ::cpp_core::Ptr::from_raw(ffi_result)
97789    }
97790}
97791
97792impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QLayerFilter {
97793    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QLayerFilter* ptr)```</span>.
97794    #[inline(always)]
97795    unsafe fn static_upcast(
97796        ptr: ::cpp_core::Ptr<crate::QLayerFilter>,
97797    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
97798        let ffi_result = {
97799            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr7(
97800                ptr.as_raw_ptr() as *mut crate::QLayerFilter,
97801            )
97802        };
97803        ::cpp_core::Ptr::from_raw(ffi_result)
97804    }
97805}
97806
97807impl ::std::ops::Deref for crate::QLayerFilter {
97808    type Target = crate::QFrameGraphNode;
97809    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QLayerFilter* ptr)```</span>.
97810    #[inline(always)]
97811    fn deref(&self) -> &crate::QFrameGraphNode {
97812        let ffi_result = {
97813            unsafe {
97814                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr7(
97815                    self as *const crate::QLayerFilter as *mut crate::QLayerFilter,
97816                )
97817            }
97818        };
97819        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
97820    }
97821}
97822
97823impl ::cpp_core::DynamicCast<crate::QLayerFilter> for crate::QFrameGraphNode {
97824    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayerFilter* dynamic_cast<Qt3DRender::QLayerFilter*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
97825    #[inline(always)]
97826    unsafe fn dynamic_cast(
97827        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
97828    ) -> ::cpp_core::Ptr<crate::QLayerFilter> {
97829        let ffi_result = {
97830            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLayerFilter_ptr(
97831                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
97832            )
97833        };
97834        ::cpp_core::Ptr::from_raw(ffi_result)
97835    }
97836}
97837
97838impl ::cpp_core::StaticDowncast<crate::QLayerFilter> for ::qt_3d_core::QNode {
97839    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayerFilter* static_cast<Qt3DRender::QLayerFilter*>(Qt3DCore::QNode* ptr)```</span>.
97840    #[inline(always)]
97841    unsafe fn static_downcast(
97842        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97843    ) -> ::cpp_core::Ptr<crate::QLayerFilter> {
97844        let ffi_result = {
97845            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLayerFilter_ptr1(
97846                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97847            )
97848        };
97849        ::cpp_core::Ptr::from_raw(ffi_result)
97850    }
97851}
97852
97853impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QLayerFilter {
97854    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QLayerFilter* ptr)```</span>.
97855    #[inline(always)]
97856    unsafe fn static_upcast(
97857        ptr: ::cpp_core::Ptr<crate::QLayerFilter>,
97858    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
97859        let ffi_result = {
97860            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr33(
97861                ptr.as_raw_ptr() as *mut crate::QLayerFilter
97862            )
97863        };
97864        ::cpp_core::Ptr::from_raw(ffi_result)
97865    }
97866}
97867
97868impl ::cpp_core::DynamicCast<crate::QLayerFilter> for ::qt_3d_core::QNode {
97869    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayerFilter* dynamic_cast<Qt3DRender::QLayerFilter*>(Qt3DCore::QNode* ptr)```</span>.
97870    #[inline(always)]
97871    unsafe fn dynamic_cast(
97872        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97873    ) -> ::cpp_core::Ptr<crate::QLayerFilter> {
97874        let ffi_result = {
97875            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLayerFilter_ptr1(
97876                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97877            )
97878        };
97879        ::cpp_core::Ptr::from_raw(ffi_result)
97880    }
97881}
97882
97883impl ::cpp_core::StaticDowncast<crate::QLayerFilter> for ::qt_core::QObject {
97884    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayerFilter* static_cast<Qt3DRender::QLayerFilter*>(QObject* ptr)```</span>.
97885    #[inline(always)]
97886    unsafe fn static_downcast(
97887        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97888    ) -> ::cpp_core::Ptr<crate::QLayerFilter> {
97889        let ffi_result = {
97890            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLayerFilter_ptr2(
97891                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97892            )
97893        };
97894        ::cpp_core::Ptr::from_raw(ffi_result)
97895    }
97896}
97897
97898impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QLayerFilter {
97899    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QLayerFilter* ptr)```</span>.
97900    #[inline(always)]
97901    unsafe fn static_upcast(
97902        ptr: ::cpp_core::Ptr<crate::QLayerFilter>,
97903    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
97904        let ffi_result = {
97905            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr34(
97906                ptr.as_raw_ptr() as *mut crate::QLayerFilter
97907            )
97908        };
97909        ::cpp_core::Ptr::from_raw(ffi_result)
97910    }
97911}
97912
97913impl ::cpp_core::DynamicCast<crate::QLayerFilter> for ::qt_core::QObject {
97914    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLayerFilter* dynamic_cast<Qt3DRender::QLayerFilter*>(QObject* ptr)```</span>.
97915    #[inline(always)]
97916    unsafe fn dynamic_cast(
97917        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
97918    ) -> ::cpp_core::Ptr<crate::QLayerFilter> {
97919        let ffi_result = {
97920            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLayerFilter_ptr2(
97921                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
97922            )
97923        };
97924        ::cpp_core::Ptr::from_raw(ffi_result)
97925    }
97926}
97927
97928impl ::cpp_core::StaticDowncast<crate::QLevelOfDetail> for ::qt_3d_core::QComponent {
97929    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetail* static_cast<Qt3DRender::QLevelOfDetail*>(Qt3DCore::QComponent* ptr)```</span>.
97930    #[inline(always)]
97931    unsafe fn static_downcast(
97932        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
97933    ) -> ::cpp_core::Ptr<crate::QLevelOfDetail> {
97934        let ffi_result = {
97935            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLevelOfDetail_ptr(
97936                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
97937            )
97938        };
97939        ::cpp_core::Ptr::from_raw(ffi_result)
97940    }
97941}
97942
97943impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QLevelOfDetail {
97944    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QLevelOfDetail* ptr)```</span>.
97945    #[inline(always)]
97946    unsafe fn static_upcast(
97947        ptr: ::cpp_core::Ptr<crate::QLevelOfDetail>,
97948    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
97949        let ffi_result = {
97950            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr7(
97951                ptr.as_raw_ptr() as *mut crate::QLevelOfDetail,
97952            )
97953        };
97954        ::cpp_core::Ptr::from_raw(ffi_result)
97955    }
97956}
97957
97958impl ::std::ops::Deref for crate::QLevelOfDetail {
97959    type Target = ::qt_3d_core::QComponent;
97960    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QLevelOfDetail* ptr)```</span>.
97961    #[inline(always)]
97962    fn deref(&self) -> &::qt_3d_core::QComponent {
97963        let ffi_result = {
97964            unsafe {
97965                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr7(
97966                    self as *const crate::QLevelOfDetail as *mut crate::QLevelOfDetail,
97967                )
97968            }
97969        };
97970        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
97971    }
97972}
97973
97974impl ::cpp_core::DynamicCast<crate::QLevelOfDetail> for ::qt_3d_core::QComponent {
97975    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetail* dynamic_cast<Qt3DRender::QLevelOfDetail*>(Qt3DCore::QComponent* ptr)```</span>.
97976    #[inline(always)]
97977    unsafe fn dynamic_cast(
97978        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
97979    ) -> ::cpp_core::Ptr<crate::QLevelOfDetail> {
97980        let ffi_result = {
97981            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLevelOfDetail_ptr(
97982                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
97983            )
97984        };
97985        ::cpp_core::Ptr::from_raw(ffi_result)
97986    }
97987}
97988
97989impl ::cpp_core::StaticDowncast<crate::QLevelOfDetail> for ::qt_3d_core::QNode {
97990    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetail* static_cast<Qt3DRender::QLevelOfDetail*>(Qt3DCore::QNode* ptr)```</span>.
97991    #[inline(always)]
97992    unsafe fn static_downcast(
97993        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
97994    ) -> ::cpp_core::Ptr<crate::QLevelOfDetail> {
97995        let ffi_result = {
97996            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLevelOfDetail_ptr1(
97997                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
97998            )
97999        };
98000        ::cpp_core::Ptr::from_raw(ffi_result)
98001    }
98002}
98003
98004impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QLevelOfDetail {
98005    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QLevelOfDetail* ptr)```</span>.
98006    #[inline(always)]
98007    unsafe fn static_upcast(
98008        ptr: ::cpp_core::Ptr<crate::QLevelOfDetail>,
98009    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
98010        let ffi_result = {
98011            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr34(
98012                ptr.as_raw_ptr() as *mut crate::QLevelOfDetail
98013            )
98014        };
98015        ::cpp_core::Ptr::from_raw(ffi_result)
98016    }
98017}
98018
98019impl ::cpp_core::DynamicCast<crate::QLevelOfDetail> for ::qt_3d_core::QNode {
98020    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetail* dynamic_cast<Qt3DRender::QLevelOfDetail*>(Qt3DCore::QNode* ptr)```</span>.
98021    #[inline(always)]
98022    unsafe fn dynamic_cast(
98023        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98024    ) -> ::cpp_core::Ptr<crate::QLevelOfDetail> {
98025        let ffi_result = {
98026            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLevelOfDetail_ptr1(
98027                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98028            )
98029        };
98030        ::cpp_core::Ptr::from_raw(ffi_result)
98031    }
98032}
98033
98034impl ::cpp_core::StaticDowncast<crate::QLevelOfDetail> for ::qt_core::QObject {
98035    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetail* static_cast<Qt3DRender::QLevelOfDetail*>(QObject* ptr)```</span>.
98036    #[inline(always)]
98037    unsafe fn static_downcast(
98038        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98039    ) -> ::cpp_core::Ptr<crate::QLevelOfDetail> {
98040        let ffi_result = {
98041            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLevelOfDetail_ptr2(
98042                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98043            )
98044        };
98045        ::cpp_core::Ptr::from_raw(ffi_result)
98046    }
98047}
98048
98049impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QLevelOfDetail {
98050    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QLevelOfDetail* ptr)```</span>.
98051    #[inline(always)]
98052    unsafe fn static_upcast(
98053        ptr: ::cpp_core::Ptr<crate::QLevelOfDetail>,
98054    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
98055        let ffi_result = {
98056            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr35(
98057                ptr.as_raw_ptr() as *mut crate::QLevelOfDetail
98058            )
98059        };
98060        ::cpp_core::Ptr::from_raw(ffi_result)
98061    }
98062}
98063
98064impl ::cpp_core::DynamicCast<crate::QLevelOfDetail> for ::qt_core::QObject {
98065    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetail* dynamic_cast<Qt3DRender::QLevelOfDetail*>(QObject* ptr)```</span>.
98066    #[inline(always)]
98067    unsafe fn dynamic_cast(
98068        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98069    ) -> ::cpp_core::Ptr<crate::QLevelOfDetail> {
98070        let ffi_result = {
98071            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLevelOfDetail_ptr2(
98072                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98073            )
98074        };
98075        ::cpp_core::Ptr::from_raw(ffi_result)
98076    }
98077}
98078
98079impl ::cpp_core::StaticDowncast<crate::QLevelOfDetailSwitch> for crate::QLevelOfDetail {
98080    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailSwitch* static_cast<Qt3DRender::QLevelOfDetailSwitch*>(Qt3DRender::QLevelOfDetail* ptr)```</span>.
98081    #[inline(always)]
98082    unsafe fn static_downcast(
98083        ptr: ::cpp_core::Ptr<crate::QLevelOfDetail>,
98084    ) -> ::cpp_core::Ptr<crate::QLevelOfDetailSwitch> {
98085        let ffi_result = {
98086            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLevelOfDetailSwitch_ptr(
98087                ptr.as_raw_ptr() as *mut crate::QLevelOfDetail,
98088            )
98089        };
98090        ::cpp_core::Ptr::from_raw(ffi_result)
98091    }
98092}
98093
98094impl ::cpp_core::StaticUpcast<crate::QLevelOfDetail> for crate::QLevelOfDetailSwitch {
98095    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetail* static_cast<Qt3DRender::QLevelOfDetail*>(Qt3DRender::QLevelOfDetailSwitch* ptr)```</span>.
98096    #[inline(always)]
98097    unsafe fn static_upcast(
98098        ptr: ::cpp_core::Ptr<crate::QLevelOfDetailSwitch>,
98099    ) -> ::cpp_core::Ptr<crate::QLevelOfDetail> {
98100        let ffi_result = {
98101            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLevelOfDetail_ptr3(
98102                ptr.as_raw_ptr() as *mut crate::QLevelOfDetailSwitch,
98103            )
98104        };
98105        ::cpp_core::Ptr::from_raw(ffi_result)
98106    }
98107}
98108
98109impl ::std::ops::Deref for crate::QLevelOfDetailSwitch {
98110    type Target = crate::QLevelOfDetail;
98111    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetail* static_cast<Qt3DRender::QLevelOfDetail*>(Qt3DRender::QLevelOfDetailSwitch* ptr)```</span>.
98112    #[inline(always)]
98113    fn deref(&self) -> &crate::QLevelOfDetail {
98114        let ffi_result = {
98115            unsafe {
98116                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLevelOfDetail_ptr3(
98117                    self as *const crate::QLevelOfDetailSwitch as *mut crate::QLevelOfDetailSwitch,
98118                )
98119            }
98120        };
98121        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
98122    }
98123}
98124
98125impl ::cpp_core::DynamicCast<crate::QLevelOfDetailSwitch> for crate::QLevelOfDetail {
98126    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailSwitch* dynamic_cast<Qt3DRender::QLevelOfDetailSwitch*>(Qt3DRender::QLevelOfDetail* ptr)```</span>.
98127    #[inline(always)]
98128    unsafe fn dynamic_cast(
98129        ptr: ::cpp_core::Ptr<crate::QLevelOfDetail>,
98130    ) -> ::cpp_core::Ptr<crate::QLevelOfDetailSwitch> {
98131        let ffi_result = {
98132            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLevelOfDetailSwitch_ptr(
98133                ptr.as_raw_ptr() as *mut crate::QLevelOfDetail,
98134            )
98135        };
98136        ::cpp_core::Ptr::from_raw(ffi_result)
98137    }
98138}
98139
98140impl ::cpp_core::StaticDowncast<crate::QLevelOfDetailSwitch> for ::qt_3d_core::QComponent {
98141    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailSwitch* static_cast<Qt3DRender::QLevelOfDetailSwitch*>(Qt3DCore::QComponent* ptr)```</span>.
98142    #[inline(always)]
98143    unsafe fn static_downcast(
98144        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
98145    ) -> ::cpp_core::Ptr<crate::QLevelOfDetailSwitch> {
98146        let ffi_result = {
98147            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLevelOfDetailSwitch_ptr1(
98148                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
98149            )
98150        };
98151        ::cpp_core::Ptr::from_raw(ffi_result)
98152    }
98153}
98154
98155impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QLevelOfDetailSwitch {
98156    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QLevelOfDetailSwitch* ptr)```</span>.
98157    #[inline(always)]
98158    unsafe fn static_upcast(
98159        ptr: ::cpp_core::Ptr<crate::QLevelOfDetailSwitch>,
98160    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
98161        let ffi_result = {
98162            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr8(
98163                ptr.as_raw_ptr() as *mut crate::QLevelOfDetailSwitch,
98164            )
98165        };
98166        ::cpp_core::Ptr::from_raw(ffi_result)
98167    }
98168}
98169
98170impl ::cpp_core::DynamicCast<crate::QLevelOfDetailSwitch> for ::qt_3d_core::QComponent {
98171    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailSwitch* dynamic_cast<Qt3DRender::QLevelOfDetailSwitch*>(Qt3DCore::QComponent* ptr)```</span>.
98172    #[inline(always)]
98173    unsafe fn dynamic_cast(
98174        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
98175    ) -> ::cpp_core::Ptr<crate::QLevelOfDetailSwitch> {
98176        let ffi_result = {
98177            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLevelOfDetailSwitch_ptr1(
98178                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
98179            )
98180        };
98181        ::cpp_core::Ptr::from_raw(ffi_result)
98182    }
98183}
98184
98185impl ::cpp_core::StaticDowncast<crate::QLevelOfDetailSwitch> for ::qt_3d_core::QNode {
98186    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailSwitch* static_cast<Qt3DRender::QLevelOfDetailSwitch*>(Qt3DCore::QNode* ptr)```</span>.
98187    #[inline(always)]
98188    unsafe fn static_downcast(
98189        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98190    ) -> ::cpp_core::Ptr<crate::QLevelOfDetailSwitch> {
98191        let ffi_result = {
98192            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLevelOfDetailSwitch_ptr2(
98193                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98194            )
98195        };
98196        ::cpp_core::Ptr::from_raw(ffi_result)
98197    }
98198}
98199
98200impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QLevelOfDetailSwitch {
98201    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QLevelOfDetailSwitch* ptr)```</span>.
98202    #[inline(always)]
98203    unsafe fn static_upcast(
98204        ptr: ::cpp_core::Ptr<crate::QLevelOfDetailSwitch>,
98205    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
98206        let ffi_result = {
98207            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr35(
98208                ptr.as_raw_ptr() as *mut crate::QLevelOfDetailSwitch
98209            )
98210        };
98211        ::cpp_core::Ptr::from_raw(ffi_result)
98212    }
98213}
98214
98215impl ::cpp_core::DynamicCast<crate::QLevelOfDetailSwitch> for ::qt_3d_core::QNode {
98216    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailSwitch* dynamic_cast<Qt3DRender::QLevelOfDetailSwitch*>(Qt3DCore::QNode* ptr)```</span>.
98217    #[inline(always)]
98218    unsafe fn dynamic_cast(
98219        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98220    ) -> ::cpp_core::Ptr<crate::QLevelOfDetailSwitch> {
98221        let ffi_result = {
98222            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLevelOfDetailSwitch_ptr2(
98223                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98224            )
98225        };
98226        ::cpp_core::Ptr::from_raw(ffi_result)
98227    }
98228}
98229
98230impl ::cpp_core::StaticDowncast<crate::QLevelOfDetailSwitch> for ::qt_core::QObject {
98231    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailSwitch* static_cast<Qt3DRender::QLevelOfDetailSwitch*>(QObject* ptr)```</span>.
98232    #[inline(always)]
98233    unsafe fn static_downcast(
98234        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98235    ) -> ::cpp_core::Ptr<crate::QLevelOfDetailSwitch> {
98236        let ffi_result = {
98237            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLevelOfDetailSwitch_ptr3(
98238                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98239            )
98240        };
98241        ::cpp_core::Ptr::from_raw(ffi_result)
98242    }
98243}
98244
98245impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QLevelOfDetailSwitch {
98246    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QLevelOfDetailSwitch* ptr)```</span>.
98247    #[inline(always)]
98248    unsafe fn static_upcast(
98249        ptr: ::cpp_core::Ptr<crate::QLevelOfDetailSwitch>,
98250    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
98251        let ffi_result = {
98252            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr36(
98253                ptr.as_raw_ptr() as *mut crate::QLevelOfDetailSwitch
98254            )
98255        };
98256        ::cpp_core::Ptr::from_raw(ffi_result)
98257    }
98258}
98259
98260impl ::cpp_core::DynamicCast<crate::QLevelOfDetailSwitch> for ::qt_core::QObject {
98261    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLevelOfDetailSwitch* dynamic_cast<Qt3DRender::QLevelOfDetailSwitch*>(QObject* ptr)```</span>.
98262    #[inline(always)]
98263    unsafe fn dynamic_cast(
98264        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98265    ) -> ::cpp_core::Ptr<crate::QLevelOfDetailSwitch> {
98266        let ffi_result = {
98267            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLevelOfDetailSwitch_ptr3(
98268                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98269            )
98270        };
98271        ::cpp_core::Ptr::from_raw(ffi_result)
98272    }
98273}
98274
98275impl ::cpp_core::StaticDowncast<crate::QMaterial> for ::qt_3d_core::QComponent {
98276    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMaterial* static_cast<Qt3DRender::QMaterial*>(Qt3DCore::QComponent* ptr)```</span>.
98277    #[inline(always)]
98278    unsafe fn static_downcast(
98279        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
98280    ) -> ::cpp_core::Ptr<crate::QMaterial> {
98281        let ffi_result = {
98282            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMaterial_ptr(
98283                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
98284            )
98285        };
98286        ::cpp_core::Ptr::from_raw(ffi_result)
98287    }
98288}
98289
98290impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QMaterial {
98291    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QMaterial* ptr)```</span>.
98292    #[inline(always)]
98293    unsafe fn static_upcast(
98294        ptr: ::cpp_core::Ptr<crate::QMaterial>,
98295    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
98296        let ffi_result = {
98297            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr9(
98298                ptr.as_raw_ptr() as *mut crate::QMaterial,
98299            )
98300        };
98301        ::cpp_core::Ptr::from_raw(ffi_result)
98302    }
98303}
98304
98305impl ::std::ops::Deref for crate::QMaterial {
98306    type Target = ::qt_3d_core::QComponent;
98307    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QMaterial* ptr)```</span>.
98308    #[inline(always)]
98309    fn deref(&self) -> &::qt_3d_core::QComponent {
98310        let ffi_result = {
98311            unsafe {
98312                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr9(
98313                    self as *const crate::QMaterial as *mut crate::QMaterial,
98314                )
98315            }
98316        };
98317        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
98318    }
98319}
98320
98321impl ::cpp_core::DynamicCast<crate::QMaterial> for ::qt_3d_core::QComponent {
98322    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMaterial* dynamic_cast<Qt3DRender::QMaterial*>(Qt3DCore::QComponent* ptr)```</span>.
98323    #[inline(always)]
98324    unsafe fn dynamic_cast(
98325        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
98326    ) -> ::cpp_core::Ptr<crate::QMaterial> {
98327        let ffi_result = {
98328            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMaterial_ptr(
98329                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
98330            )
98331        };
98332        ::cpp_core::Ptr::from_raw(ffi_result)
98333    }
98334}
98335
98336impl ::cpp_core::StaticDowncast<crate::QMaterial> for ::qt_3d_core::QNode {
98337    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMaterial* static_cast<Qt3DRender::QMaterial*>(Qt3DCore::QNode* ptr)```</span>.
98338    #[inline(always)]
98339    unsafe fn static_downcast(
98340        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98341    ) -> ::cpp_core::Ptr<crate::QMaterial> {
98342        let ffi_result = {
98343            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMaterial_ptr1(
98344                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98345            )
98346        };
98347        ::cpp_core::Ptr::from_raw(ffi_result)
98348    }
98349}
98350
98351impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QMaterial {
98352    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QMaterial* ptr)```</span>.
98353    #[inline(always)]
98354    unsafe fn static_upcast(
98355        ptr: ::cpp_core::Ptr<crate::QMaterial>,
98356    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
98357        let ffi_result = {
98358            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr36(
98359                ptr.as_raw_ptr() as *mut crate::QMaterial
98360            )
98361        };
98362        ::cpp_core::Ptr::from_raw(ffi_result)
98363    }
98364}
98365
98366impl ::cpp_core::DynamicCast<crate::QMaterial> for ::qt_3d_core::QNode {
98367    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMaterial* dynamic_cast<Qt3DRender::QMaterial*>(Qt3DCore::QNode* ptr)```</span>.
98368    #[inline(always)]
98369    unsafe fn dynamic_cast(
98370        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98371    ) -> ::cpp_core::Ptr<crate::QMaterial> {
98372        let ffi_result = {
98373            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMaterial_ptr1(
98374                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98375            )
98376        };
98377        ::cpp_core::Ptr::from_raw(ffi_result)
98378    }
98379}
98380
98381impl ::cpp_core::StaticDowncast<crate::QMaterial> for ::qt_core::QObject {
98382    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMaterial* static_cast<Qt3DRender::QMaterial*>(QObject* ptr)```</span>.
98383    #[inline(always)]
98384    unsafe fn static_downcast(
98385        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98386    ) -> ::cpp_core::Ptr<crate::QMaterial> {
98387        let ffi_result = {
98388            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMaterial_ptr2(
98389                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98390            )
98391        };
98392        ::cpp_core::Ptr::from_raw(ffi_result)
98393    }
98394}
98395
98396impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QMaterial {
98397    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QMaterial* ptr)```</span>.
98398    #[inline(always)]
98399    unsafe fn static_upcast(
98400        ptr: ::cpp_core::Ptr<crate::QMaterial>,
98401    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
98402        let ffi_result = {
98403            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr37(
98404                ptr.as_raw_ptr() as *mut crate::QMaterial
98405            )
98406        };
98407        ::cpp_core::Ptr::from_raw(ffi_result)
98408    }
98409}
98410
98411impl ::cpp_core::DynamicCast<crate::QMaterial> for ::qt_core::QObject {
98412    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMaterial* dynamic_cast<Qt3DRender::QMaterial*>(QObject* ptr)```</span>.
98413    #[inline(always)]
98414    unsafe fn dynamic_cast(
98415        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98416    ) -> ::cpp_core::Ptr<crate::QMaterial> {
98417        let ffi_result = {
98418            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMaterial_ptr2(
98419                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98420            )
98421        };
98422        ::cpp_core::Ptr::from_raw(ffi_result)
98423    }
98424}
98425
98426impl ::cpp_core::StaticDowncast<crate::QMemoryBarrier> for crate::QFrameGraphNode {
98427    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMemoryBarrier* static_cast<Qt3DRender::QMemoryBarrier*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
98428    #[inline(always)]
98429    unsafe fn static_downcast(
98430        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
98431    ) -> ::cpp_core::Ptr<crate::QMemoryBarrier> {
98432        let ffi_result = {
98433            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMemoryBarrier_ptr(
98434                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
98435            )
98436        };
98437        ::cpp_core::Ptr::from_raw(ffi_result)
98438    }
98439}
98440
98441impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QMemoryBarrier {
98442    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QMemoryBarrier* ptr)```</span>.
98443    #[inline(always)]
98444    unsafe fn static_upcast(
98445        ptr: ::cpp_core::Ptr<crate::QMemoryBarrier>,
98446    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
98447        let ffi_result = {
98448            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr8(
98449                ptr.as_raw_ptr() as *mut crate::QMemoryBarrier,
98450            )
98451        };
98452        ::cpp_core::Ptr::from_raw(ffi_result)
98453    }
98454}
98455
98456impl ::std::ops::Deref for crate::QMemoryBarrier {
98457    type Target = crate::QFrameGraphNode;
98458    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QMemoryBarrier* ptr)```</span>.
98459    #[inline(always)]
98460    fn deref(&self) -> &crate::QFrameGraphNode {
98461        let ffi_result = {
98462            unsafe {
98463                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr8(
98464                    self as *const crate::QMemoryBarrier as *mut crate::QMemoryBarrier,
98465                )
98466            }
98467        };
98468        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
98469    }
98470}
98471
98472impl ::cpp_core::DynamicCast<crate::QMemoryBarrier> for crate::QFrameGraphNode {
98473    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMemoryBarrier* dynamic_cast<Qt3DRender::QMemoryBarrier*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
98474    #[inline(always)]
98475    unsafe fn dynamic_cast(
98476        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
98477    ) -> ::cpp_core::Ptr<crate::QMemoryBarrier> {
98478        let ffi_result = {
98479            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMemoryBarrier_ptr(
98480                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
98481            )
98482        };
98483        ::cpp_core::Ptr::from_raw(ffi_result)
98484    }
98485}
98486
98487impl ::cpp_core::StaticDowncast<crate::QMemoryBarrier> for ::qt_3d_core::QNode {
98488    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMemoryBarrier* static_cast<Qt3DRender::QMemoryBarrier*>(Qt3DCore::QNode* ptr)```</span>.
98489    #[inline(always)]
98490    unsafe fn static_downcast(
98491        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98492    ) -> ::cpp_core::Ptr<crate::QMemoryBarrier> {
98493        let ffi_result = {
98494            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMemoryBarrier_ptr1(
98495                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98496            )
98497        };
98498        ::cpp_core::Ptr::from_raw(ffi_result)
98499    }
98500}
98501
98502impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QMemoryBarrier {
98503    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QMemoryBarrier* ptr)```</span>.
98504    #[inline(always)]
98505    unsafe fn static_upcast(
98506        ptr: ::cpp_core::Ptr<crate::QMemoryBarrier>,
98507    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
98508        let ffi_result = {
98509            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr37(
98510                ptr.as_raw_ptr() as *mut crate::QMemoryBarrier
98511            )
98512        };
98513        ::cpp_core::Ptr::from_raw(ffi_result)
98514    }
98515}
98516
98517impl ::cpp_core::DynamicCast<crate::QMemoryBarrier> for ::qt_3d_core::QNode {
98518    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMemoryBarrier* dynamic_cast<Qt3DRender::QMemoryBarrier*>(Qt3DCore::QNode* ptr)```</span>.
98519    #[inline(always)]
98520    unsafe fn dynamic_cast(
98521        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98522    ) -> ::cpp_core::Ptr<crate::QMemoryBarrier> {
98523        let ffi_result = {
98524            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMemoryBarrier_ptr1(
98525                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98526            )
98527        };
98528        ::cpp_core::Ptr::from_raw(ffi_result)
98529    }
98530}
98531
98532impl ::cpp_core::StaticDowncast<crate::QMemoryBarrier> for ::qt_core::QObject {
98533    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMemoryBarrier* static_cast<Qt3DRender::QMemoryBarrier*>(QObject* ptr)```</span>.
98534    #[inline(always)]
98535    unsafe fn static_downcast(
98536        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98537    ) -> ::cpp_core::Ptr<crate::QMemoryBarrier> {
98538        let ffi_result = {
98539            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMemoryBarrier_ptr2(
98540                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98541            )
98542        };
98543        ::cpp_core::Ptr::from_raw(ffi_result)
98544    }
98545}
98546
98547impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QMemoryBarrier {
98548    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QMemoryBarrier* ptr)```</span>.
98549    #[inline(always)]
98550    unsafe fn static_upcast(
98551        ptr: ::cpp_core::Ptr<crate::QMemoryBarrier>,
98552    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
98553        let ffi_result = {
98554            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr38(
98555                ptr.as_raw_ptr() as *mut crate::QMemoryBarrier
98556            )
98557        };
98558        ::cpp_core::Ptr::from_raw(ffi_result)
98559    }
98560}
98561
98562impl ::cpp_core::DynamicCast<crate::QMemoryBarrier> for ::qt_core::QObject {
98563    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMemoryBarrier* dynamic_cast<Qt3DRender::QMemoryBarrier*>(QObject* ptr)```</span>.
98564    #[inline(always)]
98565    unsafe fn dynamic_cast(
98566        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98567    ) -> ::cpp_core::Ptr<crate::QMemoryBarrier> {
98568        let ffi_result = {
98569            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMemoryBarrier_ptr2(
98570                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98571            )
98572        };
98573        ::cpp_core::Ptr::from_raw(ffi_result)
98574    }
98575}
98576
98577impl ::cpp_core::StaticDowncast<crate::QMesh> for crate::QGeometryRenderer {
98578    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMesh* static_cast<Qt3DRender::QMesh*>(Qt3DRender::QGeometryRenderer* ptr)```</span>.
98579    #[inline(always)]
98580    unsafe fn static_downcast(
98581        ptr: ::cpp_core::Ptr<crate::QGeometryRenderer>,
98582    ) -> ::cpp_core::Ptr<crate::QMesh> {
98583        let ffi_result = {
98584            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMesh_ptr(
98585                ptr.as_raw_ptr() as *mut crate::QGeometryRenderer
98586            )
98587        };
98588        ::cpp_core::Ptr::from_raw(ffi_result)
98589    }
98590}
98591
98592impl ::cpp_core::StaticUpcast<crate::QGeometryRenderer> for crate::QMesh {
98593    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryRenderer* static_cast<Qt3DRender::QGeometryRenderer*>(Qt3DRender::QMesh* ptr)```</span>.
98594    #[inline(always)]
98595    unsafe fn static_upcast(
98596        ptr: ::cpp_core::Ptr<crate::QMesh>,
98597    ) -> ::cpp_core::Ptr<crate::QGeometryRenderer> {
98598        let ffi_result = {
98599            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QGeometryRenderer_ptr3(
98600                ptr.as_raw_ptr() as *mut crate::QMesh,
98601            )
98602        };
98603        ::cpp_core::Ptr::from_raw(ffi_result)
98604    }
98605}
98606
98607impl ::std::ops::Deref for crate::QMesh {
98608    type Target = crate::QGeometryRenderer;
98609    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QGeometryRenderer* static_cast<Qt3DRender::QGeometryRenderer*>(Qt3DRender::QMesh* ptr)```</span>.
98610    #[inline(always)]
98611    fn deref(&self) -> &crate::QGeometryRenderer {
98612        let ffi_result = {
98613            unsafe {
98614                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QGeometryRenderer_ptr3(
98615                    self as *const crate::QMesh as *mut crate::QMesh,
98616                )
98617            }
98618        };
98619        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
98620    }
98621}
98622
98623impl ::cpp_core::DynamicCast<crate::QMesh> for crate::QGeometryRenderer {
98624    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMesh* dynamic_cast<Qt3DRender::QMesh*>(Qt3DRender::QGeometryRenderer* ptr)```</span>.
98625    #[inline(always)]
98626    unsafe fn dynamic_cast(
98627        ptr: ::cpp_core::Ptr<crate::QGeometryRenderer>,
98628    ) -> ::cpp_core::Ptr<crate::QMesh> {
98629        let ffi_result = {
98630            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMesh_ptr(
98631                ptr.as_raw_ptr() as *mut crate::QGeometryRenderer
98632            )
98633        };
98634        ::cpp_core::Ptr::from_raw(ffi_result)
98635    }
98636}
98637
98638impl ::cpp_core::StaticDowncast<crate::QMesh> for ::qt_3d_core::QComponent {
98639    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMesh* static_cast<Qt3DRender::QMesh*>(Qt3DCore::QComponent* ptr)```</span>.
98640    #[inline(always)]
98641    unsafe fn static_downcast(
98642        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
98643    ) -> ::cpp_core::Ptr<crate::QMesh> {
98644        let ffi_result = {
98645            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMesh_ptr1(
98646                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent
98647            )
98648        };
98649        ::cpp_core::Ptr::from_raw(ffi_result)
98650    }
98651}
98652
98653impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QMesh {
98654    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QMesh* ptr)```</span>.
98655    #[inline(always)]
98656    unsafe fn static_upcast(
98657        ptr: ::cpp_core::Ptr<crate::QMesh>,
98658    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
98659        let ffi_result = {
98660            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr10(
98661                ptr.as_raw_ptr() as *mut crate::QMesh,
98662            )
98663        };
98664        ::cpp_core::Ptr::from_raw(ffi_result)
98665    }
98666}
98667
98668impl ::cpp_core::DynamicCast<crate::QMesh> for ::qt_3d_core::QComponent {
98669    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMesh* dynamic_cast<Qt3DRender::QMesh*>(Qt3DCore::QComponent* ptr)```</span>.
98670    #[inline(always)]
98671    unsafe fn dynamic_cast(
98672        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
98673    ) -> ::cpp_core::Ptr<crate::QMesh> {
98674        let ffi_result = {
98675            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMesh_ptr1(
98676                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent
98677            )
98678        };
98679        ::cpp_core::Ptr::from_raw(ffi_result)
98680    }
98681}
98682
98683impl ::cpp_core::StaticDowncast<crate::QMesh> for ::qt_3d_core::QNode {
98684    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMesh* static_cast<Qt3DRender::QMesh*>(Qt3DCore::QNode* ptr)```</span>.
98685    #[inline(always)]
98686    unsafe fn static_downcast(
98687        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98688    ) -> ::cpp_core::Ptr<crate::QMesh> {
98689        let ffi_result = {
98690            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMesh_ptr2(
98691                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
98692            )
98693        };
98694        ::cpp_core::Ptr::from_raw(ffi_result)
98695    }
98696}
98697
98698impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QMesh {
98699    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QMesh* ptr)```</span>.
98700    #[inline(always)]
98701    unsafe fn static_upcast(
98702        ptr: ::cpp_core::Ptr<crate::QMesh>,
98703    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
98704        let ffi_result = {
98705            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr38(
98706                ptr.as_raw_ptr() as *mut crate::QMesh
98707            )
98708        };
98709        ::cpp_core::Ptr::from_raw(ffi_result)
98710    }
98711}
98712
98713impl ::cpp_core::DynamicCast<crate::QMesh> for ::qt_3d_core::QNode {
98714    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMesh* dynamic_cast<Qt3DRender::QMesh*>(Qt3DCore::QNode* ptr)```</span>.
98715    #[inline(always)]
98716    unsafe fn dynamic_cast(
98717        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98718    ) -> ::cpp_core::Ptr<crate::QMesh> {
98719        let ffi_result = {
98720            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMesh_ptr2(
98721                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
98722            )
98723        };
98724        ::cpp_core::Ptr::from_raw(ffi_result)
98725    }
98726}
98727
98728impl ::cpp_core::StaticDowncast<crate::QMesh> for ::qt_core::QObject {
98729    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMesh* static_cast<Qt3DRender::QMesh*>(QObject* ptr)```</span>.
98730    #[inline(always)]
98731    unsafe fn static_downcast(
98732        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98733    ) -> ::cpp_core::Ptr<crate::QMesh> {
98734        let ffi_result = {
98735            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMesh_ptr3(
98736                ptr.as_raw_ptr() as *mut ::qt_core::QObject
98737            )
98738        };
98739        ::cpp_core::Ptr::from_raw(ffi_result)
98740    }
98741}
98742
98743impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QMesh {
98744    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QMesh* ptr)```</span>.
98745    #[inline(always)]
98746    unsafe fn static_upcast(
98747        ptr: ::cpp_core::Ptr<crate::QMesh>,
98748    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
98749        let ffi_result = {
98750            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr39(
98751                ptr.as_raw_ptr() as *mut crate::QMesh
98752            )
98753        };
98754        ::cpp_core::Ptr::from_raw(ffi_result)
98755    }
98756}
98757
98758impl ::cpp_core::DynamicCast<crate::QMesh> for ::qt_core::QObject {
98759    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMesh* dynamic_cast<Qt3DRender::QMesh*>(QObject* ptr)```</span>.
98760    #[inline(always)]
98761    unsafe fn dynamic_cast(
98762        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98763    ) -> ::cpp_core::Ptr<crate::QMesh> {
98764        let ffi_result = {
98765            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMesh_ptr3(
98766                ptr.as_raw_ptr() as *mut ::qt_core::QObject
98767            )
98768        };
98769        ::cpp_core::Ptr::from_raw(ffi_result)
98770    }
98771}
98772
98773impl ::cpp_core::StaticDowncast<crate::QMultiSampleAntiAliasing> for crate::QRenderState {
98774    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMultiSampleAntiAliasing* static_cast<Qt3DRender::QMultiSampleAntiAliasing*>(Qt3DRender::QRenderState* ptr)```</span>.
98775    #[inline(always)]
98776    unsafe fn static_downcast(
98777        ptr: ::cpp_core::Ptr<crate::QRenderState>,
98778    ) -> ::cpp_core::Ptr<crate::QMultiSampleAntiAliasing> {
98779        let ffi_result = {
98780            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMultiSampleAntiAliasing_ptr(
98781                ptr.as_raw_ptr() as *mut crate::QRenderState,
98782            )
98783        };
98784        ::cpp_core::Ptr::from_raw(ffi_result)
98785    }
98786}
98787
98788impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QMultiSampleAntiAliasing {
98789    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QMultiSampleAntiAliasing* ptr)```</span>.
98790    #[inline(always)]
98791    unsafe fn static_upcast(
98792        ptr: ::cpp_core::Ptr<crate::QMultiSampleAntiAliasing>,
98793    ) -> ::cpp_core::Ptr<crate::QRenderState> {
98794        let ffi_result = {
98795            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr12(
98796                ptr.as_raw_ptr() as *mut crate::QMultiSampleAntiAliasing,
98797            )
98798        };
98799        ::cpp_core::Ptr::from_raw(ffi_result)
98800    }
98801}
98802
98803impl ::std::ops::Deref for crate::QMultiSampleAntiAliasing {
98804    type Target = crate::QRenderState;
98805    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QMultiSampleAntiAliasing* ptr)```</span>.
98806    #[inline(always)]
98807    fn deref(&self) -> &crate::QRenderState {
98808        let ffi_result = {
98809            unsafe {
98810                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr12(
98811                    self as *const crate::QMultiSampleAntiAliasing
98812                        as *mut crate::QMultiSampleAntiAliasing,
98813                )
98814            }
98815        };
98816        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
98817    }
98818}
98819
98820impl ::cpp_core::DynamicCast<crate::QMultiSampleAntiAliasing> for crate::QRenderState {
98821    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMultiSampleAntiAliasing* dynamic_cast<Qt3DRender::QMultiSampleAntiAliasing*>(Qt3DRender::QRenderState* ptr)```</span>.
98822    #[inline(always)]
98823    unsafe fn dynamic_cast(
98824        ptr: ::cpp_core::Ptr<crate::QRenderState>,
98825    ) -> ::cpp_core::Ptr<crate::QMultiSampleAntiAliasing> {
98826        let ffi_result = {
98827            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMultiSampleAntiAliasing_ptr(
98828                ptr.as_raw_ptr() as *mut crate::QRenderState,
98829            )
98830        };
98831        ::cpp_core::Ptr::from_raw(ffi_result)
98832    }
98833}
98834
98835impl ::cpp_core::StaticDowncast<crate::QMultiSampleAntiAliasing> for ::qt_3d_core::QNode {
98836    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMultiSampleAntiAliasing* static_cast<Qt3DRender::QMultiSampleAntiAliasing*>(Qt3DCore::QNode* ptr)```</span>.
98837    #[inline(always)]
98838    unsafe fn static_downcast(
98839        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98840    ) -> ::cpp_core::Ptr<crate::QMultiSampleAntiAliasing> {
98841        let ffi_result = {
98842            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMultiSampleAntiAliasing_ptr1(
98843                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98844            )
98845        };
98846        ::cpp_core::Ptr::from_raw(ffi_result)
98847    }
98848}
98849
98850impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QMultiSampleAntiAliasing {
98851    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QMultiSampleAntiAliasing* ptr)```</span>.
98852    #[inline(always)]
98853    unsafe fn static_upcast(
98854        ptr: ::cpp_core::Ptr<crate::QMultiSampleAntiAliasing>,
98855    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
98856        let ffi_result = {
98857            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr39(
98858                ptr.as_raw_ptr() as *mut crate::QMultiSampleAntiAliasing
98859            )
98860        };
98861        ::cpp_core::Ptr::from_raw(ffi_result)
98862    }
98863}
98864
98865impl ::cpp_core::DynamicCast<crate::QMultiSampleAntiAliasing> for ::qt_3d_core::QNode {
98866    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMultiSampleAntiAliasing* dynamic_cast<Qt3DRender::QMultiSampleAntiAliasing*>(Qt3DCore::QNode* ptr)```</span>.
98867    #[inline(always)]
98868    unsafe fn dynamic_cast(
98869        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98870    ) -> ::cpp_core::Ptr<crate::QMultiSampleAntiAliasing> {
98871        let ffi_result = {
98872            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMultiSampleAntiAliasing_ptr1(
98873                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98874            )
98875        };
98876        ::cpp_core::Ptr::from_raw(ffi_result)
98877    }
98878}
98879
98880impl ::cpp_core::StaticDowncast<crate::QMultiSampleAntiAliasing> for ::qt_core::QObject {
98881    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMultiSampleAntiAliasing* static_cast<Qt3DRender::QMultiSampleAntiAliasing*>(QObject* ptr)```</span>.
98882    #[inline(always)]
98883    unsafe fn static_downcast(
98884        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98885    ) -> ::cpp_core::Ptr<crate::QMultiSampleAntiAliasing> {
98886        let ffi_result = {
98887            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QMultiSampleAntiAliasing_ptr2(
98888                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98889            )
98890        };
98891        ::cpp_core::Ptr::from_raw(ffi_result)
98892    }
98893}
98894
98895impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QMultiSampleAntiAliasing {
98896    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QMultiSampleAntiAliasing* ptr)```</span>.
98897    #[inline(always)]
98898    unsafe fn static_upcast(
98899        ptr: ::cpp_core::Ptr<crate::QMultiSampleAntiAliasing>,
98900    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
98901        let ffi_result = {
98902            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr40(
98903                ptr.as_raw_ptr() as *mut crate::QMultiSampleAntiAliasing
98904            )
98905        };
98906        ::cpp_core::Ptr::from_raw(ffi_result)
98907    }
98908}
98909
98910impl ::cpp_core::DynamicCast<crate::QMultiSampleAntiAliasing> for ::qt_core::QObject {
98911    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QMultiSampleAntiAliasing* dynamic_cast<Qt3DRender::QMultiSampleAntiAliasing*>(QObject* ptr)```</span>.
98912    #[inline(always)]
98913    unsafe fn dynamic_cast(
98914        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
98915    ) -> ::cpp_core::Ptr<crate::QMultiSampleAntiAliasing> {
98916        let ffi_result = {
98917            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QMultiSampleAntiAliasing_ptr2(
98918                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
98919            )
98920        };
98921        ::cpp_core::Ptr::from_raw(ffi_result)
98922    }
98923}
98924
98925impl ::cpp_core::StaticDowncast<crate::QNoDepthMask> for crate::QRenderState {
98926    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDepthMask* static_cast<Qt3DRender::QNoDepthMask*>(Qt3DRender::QRenderState* ptr)```</span>.
98927    #[inline(always)]
98928    unsafe fn static_downcast(
98929        ptr: ::cpp_core::Ptr<crate::QRenderState>,
98930    ) -> ::cpp_core::Ptr<crate::QNoDepthMask> {
98931        let ffi_result = {
98932            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QNoDepthMask_ptr(
98933                ptr.as_raw_ptr() as *mut crate::QRenderState,
98934            )
98935        };
98936        ::cpp_core::Ptr::from_raw(ffi_result)
98937    }
98938}
98939
98940impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QNoDepthMask {
98941    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QNoDepthMask* ptr)```</span>.
98942    #[inline(always)]
98943    unsafe fn static_upcast(
98944        ptr: ::cpp_core::Ptr<crate::QNoDepthMask>,
98945    ) -> ::cpp_core::Ptr<crate::QRenderState> {
98946        let ffi_result = {
98947            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr13(
98948                ptr.as_raw_ptr() as *mut crate::QNoDepthMask,
98949            )
98950        };
98951        ::cpp_core::Ptr::from_raw(ffi_result)
98952    }
98953}
98954
98955impl ::std::ops::Deref for crate::QNoDepthMask {
98956    type Target = crate::QRenderState;
98957    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QNoDepthMask* ptr)```</span>.
98958    #[inline(always)]
98959    fn deref(&self) -> &crate::QRenderState {
98960        let ffi_result = {
98961            unsafe {
98962                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr13(
98963                    self as *const crate::QNoDepthMask as *mut crate::QNoDepthMask,
98964                )
98965            }
98966        };
98967        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
98968    }
98969}
98970
98971impl ::cpp_core::DynamicCast<crate::QNoDepthMask> for crate::QRenderState {
98972    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDepthMask* dynamic_cast<Qt3DRender::QNoDepthMask*>(Qt3DRender::QRenderState* ptr)```</span>.
98973    #[inline(always)]
98974    unsafe fn dynamic_cast(
98975        ptr: ::cpp_core::Ptr<crate::QRenderState>,
98976    ) -> ::cpp_core::Ptr<crate::QNoDepthMask> {
98977        let ffi_result = {
98978            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QNoDepthMask_ptr(
98979                ptr.as_raw_ptr() as *mut crate::QRenderState,
98980            )
98981        };
98982        ::cpp_core::Ptr::from_raw(ffi_result)
98983    }
98984}
98985
98986impl ::cpp_core::StaticDowncast<crate::QNoDepthMask> for ::qt_3d_core::QNode {
98987    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDepthMask* static_cast<Qt3DRender::QNoDepthMask*>(Qt3DCore::QNode* ptr)```</span>.
98988    #[inline(always)]
98989    unsafe fn static_downcast(
98990        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
98991    ) -> ::cpp_core::Ptr<crate::QNoDepthMask> {
98992        let ffi_result = {
98993            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QNoDepthMask_ptr1(
98994                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
98995            )
98996        };
98997        ::cpp_core::Ptr::from_raw(ffi_result)
98998    }
98999}
99000
99001impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QNoDepthMask {
99002    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QNoDepthMask* ptr)```</span>.
99003    #[inline(always)]
99004    unsafe fn static_upcast(
99005        ptr: ::cpp_core::Ptr<crate::QNoDepthMask>,
99006    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
99007        let ffi_result = {
99008            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr40(
99009                ptr.as_raw_ptr() as *mut crate::QNoDepthMask
99010            )
99011        };
99012        ::cpp_core::Ptr::from_raw(ffi_result)
99013    }
99014}
99015
99016impl ::cpp_core::DynamicCast<crate::QNoDepthMask> for ::qt_3d_core::QNode {
99017    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDepthMask* dynamic_cast<Qt3DRender::QNoDepthMask*>(Qt3DCore::QNode* ptr)```</span>.
99018    #[inline(always)]
99019    unsafe fn dynamic_cast(
99020        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99021    ) -> ::cpp_core::Ptr<crate::QNoDepthMask> {
99022        let ffi_result = {
99023            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QNoDepthMask_ptr1(
99024                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99025            )
99026        };
99027        ::cpp_core::Ptr::from_raw(ffi_result)
99028    }
99029}
99030
99031impl ::cpp_core::StaticDowncast<crate::QNoDepthMask> for ::qt_core::QObject {
99032    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDepthMask* static_cast<Qt3DRender::QNoDepthMask*>(QObject* ptr)```</span>.
99033    #[inline(always)]
99034    unsafe fn static_downcast(
99035        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99036    ) -> ::cpp_core::Ptr<crate::QNoDepthMask> {
99037        let ffi_result = {
99038            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QNoDepthMask_ptr2(
99039                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99040            )
99041        };
99042        ::cpp_core::Ptr::from_raw(ffi_result)
99043    }
99044}
99045
99046impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QNoDepthMask {
99047    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QNoDepthMask* ptr)```</span>.
99048    #[inline(always)]
99049    unsafe fn static_upcast(
99050        ptr: ::cpp_core::Ptr<crate::QNoDepthMask>,
99051    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
99052        let ffi_result = {
99053            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr41(
99054                ptr.as_raw_ptr() as *mut crate::QNoDepthMask
99055            )
99056        };
99057        ::cpp_core::Ptr::from_raw(ffi_result)
99058    }
99059}
99060
99061impl ::cpp_core::DynamicCast<crate::QNoDepthMask> for ::qt_core::QObject {
99062    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDepthMask* dynamic_cast<Qt3DRender::QNoDepthMask*>(QObject* ptr)```</span>.
99063    #[inline(always)]
99064    unsafe fn dynamic_cast(
99065        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99066    ) -> ::cpp_core::Ptr<crate::QNoDepthMask> {
99067        let ffi_result = {
99068            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QNoDepthMask_ptr2(
99069                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99070            )
99071        };
99072        ::cpp_core::Ptr::from_raw(ffi_result)
99073    }
99074}
99075
99076impl ::cpp_core::StaticDowncast<crate::QNoDraw> for crate::QFrameGraphNode {
99077    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDraw* static_cast<Qt3DRender::QNoDraw*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
99078    #[inline(always)]
99079    unsafe fn static_downcast(
99080        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
99081    ) -> ::cpp_core::Ptr<crate::QNoDraw> {
99082        let ffi_result = {
99083            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QNoDraw_ptr(
99084                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode
99085            )
99086        };
99087        ::cpp_core::Ptr::from_raw(ffi_result)
99088    }
99089}
99090
99091impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QNoDraw {
99092    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QNoDraw* ptr)```</span>.
99093    #[inline(always)]
99094    unsafe fn static_upcast(
99095        ptr: ::cpp_core::Ptr<crate::QNoDraw>,
99096    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
99097        let ffi_result = {
99098            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr9(
99099                ptr.as_raw_ptr() as *mut crate::QNoDraw,
99100            )
99101        };
99102        ::cpp_core::Ptr::from_raw(ffi_result)
99103    }
99104}
99105
99106impl ::std::ops::Deref for crate::QNoDraw {
99107    type Target = crate::QFrameGraphNode;
99108    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QNoDraw* ptr)```</span>.
99109    #[inline(always)]
99110    fn deref(&self) -> &crate::QFrameGraphNode {
99111        let ffi_result = {
99112            unsafe {
99113                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr9(
99114                    self as *const crate::QNoDraw as *mut crate::QNoDraw,
99115                )
99116            }
99117        };
99118        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
99119    }
99120}
99121
99122impl ::cpp_core::DynamicCast<crate::QNoDraw> for crate::QFrameGraphNode {
99123    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDraw* dynamic_cast<Qt3DRender::QNoDraw*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
99124    #[inline(always)]
99125    unsafe fn dynamic_cast(
99126        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
99127    ) -> ::cpp_core::Ptr<crate::QNoDraw> {
99128        let ffi_result = {
99129            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QNoDraw_ptr(
99130                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode
99131            )
99132        };
99133        ::cpp_core::Ptr::from_raw(ffi_result)
99134    }
99135}
99136
99137impl ::cpp_core::StaticDowncast<crate::QNoDraw> for ::qt_3d_core::QNode {
99138    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDraw* static_cast<Qt3DRender::QNoDraw*>(Qt3DCore::QNode* ptr)```</span>.
99139    #[inline(always)]
99140    unsafe fn static_downcast(
99141        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99142    ) -> ::cpp_core::Ptr<crate::QNoDraw> {
99143        let ffi_result = {
99144            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QNoDraw_ptr1(
99145                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode
99146            )
99147        };
99148        ::cpp_core::Ptr::from_raw(ffi_result)
99149    }
99150}
99151
99152impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QNoDraw {
99153    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QNoDraw* ptr)```</span>.
99154    #[inline(always)]
99155    unsafe fn static_upcast(
99156        ptr: ::cpp_core::Ptr<crate::QNoDraw>,
99157    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
99158        let ffi_result = {
99159            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr41(
99160                ptr.as_raw_ptr() as *mut crate::QNoDraw
99161            )
99162        };
99163        ::cpp_core::Ptr::from_raw(ffi_result)
99164    }
99165}
99166
99167impl ::cpp_core::DynamicCast<crate::QNoDraw> for ::qt_3d_core::QNode {
99168    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDraw* dynamic_cast<Qt3DRender::QNoDraw*>(Qt3DCore::QNode* ptr)```</span>.
99169    #[inline(always)]
99170    unsafe fn dynamic_cast(
99171        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99172    ) -> ::cpp_core::Ptr<crate::QNoDraw> {
99173        let ffi_result = {
99174            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QNoDraw_ptr1(
99175                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99176            )
99177        };
99178        ::cpp_core::Ptr::from_raw(ffi_result)
99179    }
99180}
99181
99182impl ::cpp_core::StaticDowncast<crate::QNoDraw> for ::qt_core::QObject {
99183    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDraw* static_cast<Qt3DRender::QNoDraw*>(QObject* ptr)```</span>.
99184    #[inline(always)]
99185    unsafe fn static_downcast(
99186        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99187    ) -> ::cpp_core::Ptr<crate::QNoDraw> {
99188        let ffi_result = {
99189            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QNoDraw_ptr2(
99190                ptr.as_raw_ptr() as *mut ::qt_core::QObject
99191            )
99192        };
99193        ::cpp_core::Ptr::from_raw(ffi_result)
99194    }
99195}
99196
99197impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QNoDraw {
99198    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QNoDraw* ptr)```</span>.
99199    #[inline(always)]
99200    unsafe fn static_upcast(
99201        ptr: ::cpp_core::Ptr<crate::QNoDraw>,
99202    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
99203        let ffi_result = {
99204            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr42(
99205                ptr.as_raw_ptr() as *mut crate::QNoDraw
99206            )
99207        };
99208        ::cpp_core::Ptr::from_raw(ffi_result)
99209    }
99210}
99211
99212impl ::cpp_core::DynamicCast<crate::QNoDraw> for ::qt_core::QObject {
99213    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoDraw* dynamic_cast<Qt3DRender::QNoDraw*>(QObject* ptr)```</span>.
99214    #[inline(always)]
99215    unsafe fn dynamic_cast(
99216        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99217    ) -> ::cpp_core::Ptr<crate::QNoDraw> {
99218        let ffi_result = {
99219            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QNoDraw_ptr2(
99220                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99221            )
99222        };
99223        ::cpp_core::Ptr::from_raw(ffi_result)
99224    }
99225}
99226
99227impl ::cpp_core::StaticDowncast<crate::QObjectPicker> for ::qt_3d_core::QComponent {
99228    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QObjectPicker* static_cast<Qt3DRender::QObjectPicker*>(Qt3DCore::QComponent* ptr)```</span>.
99229    #[inline(always)]
99230    unsafe fn static_downcast(
99231        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
99232    ) -> ::cpp_core::Ptr<crate::QObjectPicker> {
99233        let ffi_result = {
99234            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QObjectPicker_ptr(
99235                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
99236            )
99237        };
99238        ::cpp_core::Ptr::from_raw(ffi_result)
99239    }
99240}
99241
99242impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QObjectPicker {
99243    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QObjectPicker* ptr)```</span>.
99244    #[inline(always)]
99245    unsafe fn static_upcast(
99246        ptr: ::cpp_core::Ptr<crate::QObjectPicker>,
99247    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
99248        let ffi_result = {
99249            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr11(
99250                ptr.as_raw_ptr() as *mut crate::QObjectPicker,
99251            )
99252        };
99253        ::cpp_core::Ptr::from_raw(ffi_result)
99254    }
99255}
99256
99257impl ::std::ops::Deref for crate::QObjectPicker {
99258    type Target = ::qt_3d_core::QComponent;
99259    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QObjectPicker* ptr)```</span>.
99260    #[inline(always)]
99261    fn deref(&self) -> &::qt_3d_core::QComponent {
99262        let ffi_result = {
99263            unsafe {
99264                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr11(
99265                    self as *const crate::QObjectPicker as *mut crate::QObjectPicker,
99266                )
99267            }
99268        };
99269        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
99270    }
99271}
99272
99273impl ::cpp_core::DynamicCast<crate::QObjectPicker> for ::qt_3d_core::QComponent {
99274    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QObjectPicker* dynamic_cast<Qt3DRender::QObjectPicker*>(Qt3DCore::QComponent* ptr)```</span>.
99275    #[inline(always)]
99276    unsafe fn dynamic_cast(
99277        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
99278    ) -> ::cpp_core::Ptr<crate::QObjectPicker> {
99279        let ffi_result = {
99280            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QObjectPicker_ptr(
99281                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
99282            )
99283        };
99284        ::cpp_core::Ptr::from_raw(ffi_result)
99285    }
99286}
99287
99288impl ::cpp_core::StaticDowncast<crate::QObjectPicker> for ::qt_3d_core::QNode {
99289    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QObjectPicker* static_cast<Qt3DRender::QObjectPicker*>(Qt3DCore::QNode* ptr)```</span>.
99290    #[inline(always)]
99291    unsafe fn static_downcast(
99292        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99293    ) -> ::cpp_core::Ptr<crate::QObjectPicker> {
99294        let ffi_result = {
99295            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QObjectPicker_ptr1(
99296                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99297            )
99298        };
99299        ::cpp_core::Ptr::from_raw(ffi_result)
99300    }
99301}
99302
99303impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QObjectPicker {
99304    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QObjectPicker* ptr)```</span>.
99305    #[inline(always)]
99306    unsafe fn static_upcast(
99307        ptr: ::cpp_core::Ptr<crate::QObjectPicker>,
99308    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
99309        let ffi_result = {
99310            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr42(
99311                ptr.as_raw_ptr() as *mut crate::QObjectPicker
99312            )
99313        };
99314        ::cpp_core::Ptr::from_raw(ffi_result)
99315    }
99316}
99317
99318impl ::cpp_core::DynamicCast<crate::QObjectPicker> for ::qt_3d_core::QNode {
99319    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QObjectPicker* dynamic_cast<Qt3DRender::QObjectPicker*>(Qt3DCore::QNode* ptr)```</span>.
99320    #[inline(always)]
99321    unsafe fn dynamic_cast(
99322        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99323    ) -> ::cpp_core::Ptr<crate::QObjectPicker> {
99324        let ffi_result = {
99325            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QObjectPicker_ptr1(
99326                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99327            )
99328        };
99329        ::cpp_core::Ptr::from_raw(ffi_result)
99330    }
99331}
99332
99333impl ::cpp_core::StaticDowncast<crate::QObjectPicker> for ::qt_core::QObject {
99334    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QObjectPicker* static_cast<Qt3DRender::QObjectPicker*>(QObject* ptr)```</span>.
99335    #[inline(always)]
99336    unsafe fn static_downcast(
99337        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99338    ) -> ::cpp_core::Ptr<crate::QObjectPicker> {
99339        let ffi_result = {
99340            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QObjectPicker_ptr2(
99341                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99342            )
99343        };
99344        ::cpp_core::Ptr::from_raw(ffi_result)
99345    }
99346}
99347
99348impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QObjectPicker {
99349    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QObjectPicker* ptr)```</span>.
99350    #[inline(always)]
99351    unsafe fn static_upcast(
99352        ptr: ::cpp_core::Ptr<crate::QObjectPicker>,
99353    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
99354        let ffi_result = {
99355            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr43(
99356                ptr.as_raw_ptr() as *mut crate::QObjectPicker
99357            )
99358        };
99359        ::cpp_core::Ptr::from_raw(ffi_result)
99360    }
99361}
99362
99363impl ::cpp_core::DynamicCast<crate::QObjectPicker> for ::qt_core::QObject {
99364    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QObjectPicker* dynamic_cast<Qt3DRender::QObjectPicker*>(QObject* ptr)```</span>.
99365    #[inline(always)]
99366    unsafe fn dynamic_cast(
99367        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99368    ) -> ::cpp_core::Ptr<crate::QObjectPicker> {
99369        let ffi_result = {
99370            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QObjectPicker_ptr2(
99371                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99372            )
99373        };
99374        ::cpp_core::Ptr::from_raw(ffi_result)
99375    }
99376}
99377
99378impl ::cpp_core::StaticDowncast<crate::QPaintedTextureImage> for crate::QAbstractTextureImage {
99379    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPaintedTextureImage* static_cast<Qt3DRender::QPaintedTextureImage*>(Qt3DRender::QAbstractTextureImage* ptr)```</span>.
99380    #[inline(always)]
99381    unsafe fn static_downcast(
99382        ptr: ::cpp_core::Ptr<crate::QAbstractTextureImage>,
99383    ) -> ::cpp_core::Ptr<crate::QPaintedTextureImage> {
99384        let ffi_result = {
99385            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPaintedTextureImage_ptr(
99386                ptr.as_raw_ptr() as *mut crate::QAbstractTextureImage,
99387            )
99388        };
99389        ::cpp_core::Ptr::from_raw(ffi_result)
99390    }
99391}
99392
99393impl ::cpp_core::StaticUpcast<crate::QAbstractTextureImage> for crate::QPaintedTextureImage {
99394    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* static_cast<Qt3DRender::QAbstractTextureImage*>(Qt3DRender::QPaintedTextureImage* ptr)```</span>.
99395    #[inline(always)]
99396    unsafe fn static_upcast(
99397        ptr: ::cpp_core::Ptr<crate::QPaintedTextureImage>,
99398    ) -> ::cpp_core::Ptr<crate::QAbstractTextureImage> {
99399        let ffi_result = {
99400            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTextureImage_ptr2(
99401                ptr.as_raw_ptr() as *mut crate::QPaintedTextureImage,
99402            )
99403        };
99404        ::cpp_core::Ptr::from_raw(ffi_result)
99405    }
99406}
99407
99408impl ::std::ops::Deref for crate::QPaintedTextureImage {
99409    type Target = crate::QAbstractTextureImage;
99410    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* static_cast<Qt3DRender::QAbstractTextureImage*>(Qt3DRender::QPaintedTextureImage* ptr)```</span>.
99411    #[inline(always)]
99412    fn deref(&self) -> &crate::QAbstractTextureImage {
99413        let ffi_result = {
99414            unsafe {
99415                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTextureImage_ptr2(
99416                    self as *const crate::QPaintedTextureImage as *mut crate::QPaintedTextureImage,
99417                )
99418            }
99419        };
99420        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
99421    }
99422}
99423
99424impl ::cpp_core::DynamicCast<crate::QPaintedTextureImage> for crate::QAbstractTextureImage {
99425    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPaintedTextureImage* dynamic_cast<Qt3DRender::QPaintedTextureImage*>(Qt3DRender::QAbstractTextureImage* ptr)```</span>.
99426    #[inline(always)]
99427    unsafe fn dynamic_cast(
99428        ptr: ::cpp_core::Ptr<crate::QAbstractTextureImage>,
99429    ) -> ::cpp_core::Ptr<crate::QPaintedTextureImage> {
99430        let ffi_result = {
99431            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPaintedTextureImage_ptr(
99432                ptr.as_raw_ptr() as *mut crate::QAbstractTextureImage,
99433            )
99434        };
99435        ::cpp_core::Ptr::from_raw(ffi_result)
99436    }
99437}
99438
99439impl ::cpp_core::StaticDowncast<crate::QPaintedTextureImage> for ::qt_3d_core::QNode {
99440    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPaintedTextureImage* static_cast<Qt3DRender::QPaintedTextureImage*>(Qt3DCore::QNode* ptr)```</span>.
99441    #[inline(always)]
99442    unsafe fn static_downcast(
99443        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99444    ) -> ::cpp_core::Ptr<crate::QPaintedTextureImage> {
99445        let ffi_result = {
99446            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPaintedTextureImage_ptr1(
99447                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99448            )
99449        };
99450        ::cpp_core::Ptr::from_raw(ffi_result)
99451    }
99452}
99453
99454impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QPaintedTextureImage {
99455    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QPaintedTextureImage* ptr)```</span>.
99456    #[inline(always)]
99457    unsafe fn static_upcast(
99458        ptr: ::cpp_core::Ptr<crate::QPaintedTextureImage>,
99459    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
99460        let ffi_result = {
99461            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr43(
99462                ptr.as_raw_ptr() as *mut crate::QPaintedTextureImage
99463            )
99464        };
99465        ::cpp_core::Ptr::from_raw(ffi_result)
99466    }
99467}
99468
99469impl ::cpp_core::DynamicCast<crate::QPaintedTextureImage> for ::qt_3d_core::QNode {
99470    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPaintedTextureImage* dynamic_cast<Qt3DRender::QPaintedTextureImage*>(Qt3DCore::QNode* ptr)```</span>.
99471    #[inline(always)]
99472    unsafe fn dynamic_cast(
99473        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99474    ) -> ::cpp_core::Ptr<crate::QPaintedTextureImage> {
99475        let ffi_result = {
99476            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPaintedTextureImage_ptr1(
99477                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99478            )
99479        };
99480        ::cpp_core::Ptr::from_raw(ffi_result)
99481    }
99482}
99483
99484impl ::cpp_core::StaticDowncast<crate::QPaintedTextureImage> for ::qt_core::QObject {
99485    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPaintedTextureImage* static_cast<Qt3DRender::QPaintedTextureImage*>(QObject* ptr)```</span>.
99486    #[inline(always)]
99487    unsafe fn static_downcast(
99488        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99489    ) -> ::cpp_core::Ptr<crate::QPaintedTextureImage> {
99490        let ffi_result = {
99491            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPaintedTextureImage_ptr2(
99492                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99493            )
99494        };
99495        ::cpp_core::Ptr::from_raw(ffi_result)
99496    }
99497}
99498
99499impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QPaintedTextureImage {
99500    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPaintedTextureImage* ptr)```</span>.
99501    #[inline(always)]
99502    unsafe fn static_upcast(
99503        ptr: ::cpp_core::Ptr<crate::QPaintedTextureImage>,
99504    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
99505        let ffi_result = {
99506            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr44(
99507                ptr.as_raw_ptr() as *mut crate::QPaintedTextureImage
99508            )
99509        };
99510        ::cpp_core::Ptr::from_raw(ffi_result)
99511    }
99512}
99513
99514impl ::cpp_core::DynamicCast<crate::QPaintedTextureImage> for ::qt_core::QObject {
99515    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPaintedTextureImage* dynamic_cast<Qt3DRender::QPaintedTextureImage*>(QObject* ptr)```</span>.
99516    #[inline(always)]
99517    unsafe fn dynamic_cast(
99518        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99519    ) -> ::cpp_core::Ptr<crate::QPaintedTextureImage> {
99520        let ffi_result = {
99521            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPaintedTextureImage_ptr2(
99522                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99523            )
99524        };
99525        ::cpp_core::Ptr::from_raw(ffi_result)
99526    }
99527}
99528
99529impl ::cpp_core::StaticDowncast<crate::QParameter> for ::qt_3d_core::QNode {
99530    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter* static_cast<Qt3DRender::QParameter*>(Qt3DCore::QNode* ptr)```</span>.
99531    #[inline(always)]
99532    unsafe fn static_downcast(
99533        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99534    ) -> ::cpp_core::Ptr<crate::QParameter> {
99535        let ffi_result = {
99536            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QParameter_ptr(
99537                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99538            )
99539        };
99540        ::cpp_core::Ptr::from_raw(ffi_result)
99541    }
99542}
99543
99544impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QParameter {
99545    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QParameter* ptr)```</span>.
99546    #[inline(always)]
99547    unsafe fn static_upcast(
99548        ptr: ::cpp_core::Ptr<crate::QParameter>,
99549    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
99550        let ffi_result = {
99551            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr44(
99552                ptr.as_raw_ptr() as *mut crate::QParameter
99553            )
99554        };
99555        ::cpp_core::Ptr::from_raw(ffi_result)
99556    }
99557}
99558
99559impl ::std::ops::Deref for crate::QParameter {
99560    type Target = ::qt_3d_core::QNode;
99561    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QParameter* ptr)```</span>.
99562    #[inline(always)]
99563    fn deref(&self) -> &::qt_3d_core::QNode {
99564        let ffi_result = {
99565            unsafe {
99566                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr44(
99567                    self as *const crate::QParameter as *mut crate::QParameter,
99568                )
99569            }
99570        };
99571        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
99572    }
99573}
99574
99575impl ::cpp_core::DynamicCast<crate::QParameter> for ::qt_3d_core::QNode {
99576    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter* dynamic_cast<Qt3DRender::QParameter*>(Qt3DCore::QNode* ptr)```</span>.
99577    #[inline(always)]
99578    unsafe fn dynamic_cast(
99579        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99580    ) -> ::cpp_core::Ptr<crate::QParameter> {
99581        let ffi_result = {
99582            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QParameter_ptr(
99583                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99584            )
99585        };
99586        ::cpp_core::Ptr::from_raw(ffi_result)
99587    }
99588}
99589
99590impl ::cpp_core::StaticDowncast<crate::QParameter> for ::qt_core::QObject {
99591    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter* static_cast<Qt3DRender::QParameter*>(QObject* ptr)```</span>.
99592    #[inline(always)]
99593    unsafe fn static_downcast(
99594        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99595    ) -> ::cpp_core::Ptr<crate::QParameter> {
99596        let ffi_result = {
99597            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QParameter_ptr1(
99598                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99599            )
99600        };
99601        ::cpp_core::Ptr::from_raw(ffi_result)
99602    }
99603}
99604
99605impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QParameter {
99606    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QParameter* ptr)```</span>.
99607    #[inline(always)]
99608    unsafe fn static_upcast(
99609        ptr: ::cpp_core::Ptr<crate::QParameter>,
99610    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
99611        let ffi_result = {
99612            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr45(
99613                ptr.as_raw_ptr() as *mut crate::QParameter
99614            )
99615        };
99616        ::cpp_core::Ptr::from_raw(ffi_result)
99617    }
99618}
99619
99620impl ::cpp_core::DynamicCast<crate::QParameter> for ::qt_core::QObject {
99621    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QParameter* dynamic_cast<Qt3DRender::QParameter*>(QObject* ptr)```</span>.
99622    #[inline(always)]
99623    unsafe fn dynamic_cast(
99624        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99625    ) -> ::cpp_core::Ptr<crate::QParameter> {
99626        let ffi_result = {
99627            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QParameter_ptr1(
99628                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99629            )
99630        };
99631        ::cpp_core::Ptr::from_raw(ffi_result)
99632    }
99633}
99634
99635impl ::cpp_core::StaticDowncast<crate::QPickEvent> for ::qt_core::QObject {
99636    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickEvent* static_cast<Qt3DRender::QPickEvent*>(QObject* ptr)```</span>.
99637    #[inline(always)]
99638    unsafe fn static_downcast(
99639        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99640    ) -> ::cpp_core::Ptr<crate::QPickEvent> {
99641        let ffi_result = {
99642            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickEvent_ptr(
99643                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99644            )
99645        };
99646        ::cpp_core::Ptr::from_raw(ffi_result)
99647    }
99648}
99649
99650impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QPickEvent {
99651    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPickEvent* ptr)```</span>.
99652    #[inline(always)]
99653    unsafe fn static_upcast(
99654        ptr: ::cpp_core::Ptr<crate::QPickEvent>,
99655    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
99656        let ffi_result = {
99657            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr46(
99658                ptr.as_raw_ptr() as *mut crate::QPickEvent
99659            )
99660        };
99661        ::cpp_core::Ptr::from_raw(ffi_result)
99662    }
99663}
99664
99665impl ::std::ops::Deref for crate::QPickEvent {
99666    type Target = ::qt_core::QObject;
99667    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPickEvent* ptr)```</span>.
99668    #[inline(always)]
99669    fn deref(&self) -> &::qt_core::QObject {
99670        let ffi_result = {
99671            unsafe {
99672                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr46(
99673                    self as *const crate::QPickEvent as *mut crate::QPickEvent,
99674                )
99675            }
99676        };
99677        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
99678    }
99679}
99680
99681impl ::cpp_core::DynamicCast<crate::QPickEvent> for ::qt_core::QObject {
99682    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickEvent* dynamic_cast<Qt3DRender::QPickEvent*>(QObject* ptr)```</span>.
99683    #[inline(always)]
99684    unsafe fn dynamic_cast(
99685        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99686    ) -> ::cpp_core::Ptr<crate::QPickEvent> {
99687        let ffi_result = {
99688            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPickEvent_ptr(
99689                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99690            )
99691        };
99692        ::cpp_core::Ptr::from_raw(ffi_result)
99693    }
99694}
99695
99696impl ::cpp_core::StaticDowncast<crate::QPickingSettings> for ::qt_3d_core::QNode {
99697    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickingSettings* static_cast<Qt3DRender::QPickingSettings*>(Qt3DCore::QNode* ptr)```</span>.
99698    #[inline(always)]
99699    unsafe fn static_downcast(
99700        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99701    ) -> ::cpp_core::Ptr<crate::QPickingSettings> {
99702        let ffi_result = {
99703            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickingSettings_ptr(
99704                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99705            )
99706        };
99707        ::cpp_core::Ptr::from_raw(ffi_result)
99708    }
99709}
99710
99711impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QPickingSettings {
99712    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QPickingSettings* ptr)```</span>.
99713    #[inline(always)]
99714    unsafe fn static_upcast(
99715        ptr: ::cpp_core::Ptr<crate::QPickingSettings>,
99716    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
99717        let ffi_result = {
99718            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr45(
99719                ptr.as_raw_ptr() as *mut crate::QPickingSettings
99720            )
99721        };
99722        ::cpp_core::Ptr::from_raw(ffi_result)
99723    }
99724}
99725
99726impl ::std::ops::Deref for crate::QPickingSettings {
99727    type Target = ::qt_3d_core::QNode;
99728    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QPickingSettings* ptr)```</span>.
99729    #[inline(always)]
99730    fn deref(&self) -> &::qt_3d_core::QNode {
99731        let ffi_result = {
99732            unsafe {
99733                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr45(
99734                    self as *const crate::QPickingSettings as *mut crate::QPickingSettings,
99735                )
99736            }
99737        };
99738        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
99739    }
99740}
99741
99742impl ::cpp_core::DynamicCast<crate::QPickingSettings> for ::qt_3d_core::QNode {
99743    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickingSettings* dynamic_cast<Qt3DRender::QPickingSettings*>(Qt3DCore::QNode* ptr)```</span>.
99744    #[inline(always)]
99745    unsafe fn dynamic_cast(
99746        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
99747    ) -> ::cpp_core::Ptr<crate::QPickingSettings> {
99748        let ffi_result = {
99749            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPickingSettings_ptr(
99750                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
99751            )
99752        };
99753        ::cpp_core::Ptr::from_raw(ffi_result)
99754    }
99755}
99756
99757impl ::cpp_core::StaticDowncast<crate::QPickingSettings> for ::qt_core::QObject {
99758    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickingSettings* static_cast<Qt3DRender::QPickingSettings*>(QObject* ptr)```</span>.
99759    #[inline(always)]
99760    unsafe fn static_downcast(
99761        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99762    ) -> ::cpp_core::Ptr<crate::QPickingSettings> {
99763        let ffi_result = {
99764            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickingSettings_ptr1(
99765                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99766            )
99767        };
99768        ::cpp_core::Ptr::from_raw(ffi_result)
99769    }
99770}
99771
99772impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QPickingSettings {
99773    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPickingSettings* ptr)```</span>.
99774    #[inline(always)]
99775    unsafe fn static_upcast(
99776        ptr: ::cpp_core::Ptr<crate::QPickingSettings>,
99777    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
99778        let ffi_result = {
99779            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr47(
99780                ptr.as_raw_ptr() as *mut crate::QPickingSettings
99781            )
99782        };
99783        ::cpp_core::Ptr::from_raw(ffi_result)
99784    }
99785}
99786
99787impl ::cpp_core::DynamicCast<crate::QPickingSettings> for ::qt_core::QObject {
99788    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickingSettings* dynamic_cast<Qt3DRender::QPickingSettings*>(QObject* ptr)```</span>.
99789    #[inline(always)]
99790    unsafe fn dynamic_cast(
99791        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99792    ) -> ::cpp_core::Ptr<crate::QPickingSettings> {
99793        let ffi_result = {
99794            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPickingSettings_ptr1(
99795                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99796            )
99797        };
99798        ::cpp_core::Ptr::from_raw(ffi_result)
99799    }
99800}
99801
99802impl ::cpp_core::StaticDowncast<crate::QPickTriangleEvent> for crate::QPickEvent {
99803    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickTriangleEvent* static_cast<Qt3DRender::QPickTriangleEvent*>(Qt3DRender::QPickEvent* ptr)```</span>.
99804    #[inline(always)]
99805    unsafe fn static_downcast(
99806        ptr: ::cpp_core::Ptr<crate::QPickEvent>,
99807    ) -> ::cpp_core::Ptr<crate::QPickTriangleEvent> {
99808        let ffi_result = {
99809            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickTriangleEvent_ptr(
99810                ptr.as_raw_ptr() as *mut crate::QPickEvent,
99811            )
99812        };
99813        ::cpp_core::Ptr::from_raw(ffi_result)
99814    }
99815}
99816
99817impl ::cpp_core::StaticUpcast<crate::QPickEvent> for crate::QPickTriangleEvent {
99818    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickEvent* static_cast<Qt3DRender::QPickEvent*>(Qt3DRender::QPickTriangleEvent* ptr)```</span>.
99819    #[inline(always)]
99820    unsafe fn static_upcast(
99821        ptr: ::cpp_core::Ptr<crate::QPickTriangleEvent>,
99822    ) -> ::cpp_core::Ptr<crate::QPickEvent> {
99823        let ffi_result = {
99824            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickEvent_ptr1(
99825                ptr.as_raw_ptr() as *mut crate::QPickTriangleEvent,
99826            )
99827        };
99828        ::cpp_core::Ptr::from_raw(ffi_result)
99829    }
99830}
99831
99832impl ::std::ops::Deref for crate::QPickTriangleEvent {
99833    type Target = crate::QPickEvent;
99834    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickEvent* static_cast<Qt3DRender::QPickEvent*>(Qt3DRender::QPickTriangleEvent* ptr)```</span>.
99835    #[inline(always)]
99836    fn deref(&self) -> &crate::QPickEvent {
99837        let ffi_result = {
99838            unsafe {
99839                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickEvent_ptr1(
99840                    self as *const crate::QPickTriangleEvent as *mut crate::QPickTriangleEvent,
99841                )
99842            }
99843        };
99844        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
99845    }
99846}
99847
99848impl ::cpp_core::DynamicCast<crate::QPickTriangleEvent> for crate::QPickEvent {
99849    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickTriangleEvent* dynamic_cast<Qt3DRender::QPickTriangleEvent*>(Qt3DRender::QPickEvent* ptr)```</span>.
99850    #[inline(always)]
99851    unsafe fn dynamic_cast(
99852        ptr: ::cpp_core::Ptr<crate::QPickEvent>,
99853    ) -> ::cpp_core::Ptr<crate::QPickTriangleEvent> {
99854        let ffi_result = {
99855            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPickTriangleEvent_ptr(
99856                ptr.as_raw_ptr() as *mut crate::QPickEvent,
99857            )
99858        };
99859        ::cpp_core::Ptr::from_raw(ffi_result)
99860    }
99861}
99862
99863impl ::cpp_core::StaticDowncast<crate::QPickTriangleEvent> for ::qt_core::QObject {
99864    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickTriangleEvent* static_cast<Qt3DRender::QPickTriangleEvent*>(QObject* ptr)```</span>.
99865    #[inline(always)]
99866    unsafe fn static_downcast(
99867        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99868    ) -> ::cpp_core::Ptr<crate::QPickTriangleEvent> {
99869        let ffi_result = {
99870            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickTriangleEvent_ptr1(
99871                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99872            )
99873        };
99874        ::cpp_core::Ptr::from_raw(ffi_result)
99875    }
99876}
99877
99878impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QPickTriangleEvent {
99879    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPickTriangleEvent* ptr)```</span>.
99880    #[inline(always)]
99881    unsafe fn static_upcast(
99882        ptr: ::cpp_core::Ptr<crate::QPickTriangleEvent>,
99883    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
99884        let ffi_result = {
99885            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr48(
99886                ptr.as_raw_ptr() as *mut crate::QPickTriangleEvent
99887            )
99888        };
99889        ::cpp_core::Ptr::from_raw(ffi_result)
99890    }
99891}
99892
99893impl ::cpp_core::DynamicCast<crate::QPickTriangleEvent> for ::qt_core::QObject {
99894    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickTriangleEvent* dynamic_cast<Qt3DRender::QPickTriangleEvent*>(QObject* ptr)```</span>.
99895    #[inline(always)]
99896    unsafe fn dynamic_cast(
99897        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
99898    ) -> ::cpp_core::Ptr<crate::QPickTriangleEvent> {
99899        let ffi_result = {
99900            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPickTriangleEvent_ptr1(
99901                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
99902            )
99903        };
99904        ::cpp_core::Ptr::from_raw(ffi_result)
99905    }
99906}
99907
99908impl ::cpp_core::StaticDowncast<crate::QPointLight> for crate::QAbstractLight {
99909    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointLight* static_cast<Qt3DRender::QPointLight*>(Qt3DRender::QAbstractLight* ptr)```</span>.
99910    #[inline(always)]
99911    unsafe fn static_downcast(
99912        ptr: ::cpp_core::Ptr<crate::QAbstractLight>,
99913    ) -> ::cpp_core::Ptr<crate::QPointLight> {
99914        let ffi_result = {
99915            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPointLight_ptr(
99916                ptr.as_raw_ptr() as *mut crate::QAbstractLight,
99917            )
99918        };
99919        ::cpp_core::Ptr::from_raw(ffi_result)
99920    }
99921}
99922
99923impl ::cpp_core::StaticUpcast<crate::QAbstractLight> for crate::QPointLight {
99924    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* static_cast<Qt3DRender::QAbstractLight*>(Qt3DRender::QPointLight* ptr)```</span>.
99925    #[inline(always)]
99926    unsafe fn static_upcast(
99927        ptr: ::cpp_core::Ptr<crate::QPointLight>,
99928    ) -> ::cpp_core::Ptr<crate::QAbstractLight> {
99929        let ffi_result = {
99930            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractLight_ptr4(
99931                ptr.as_raw_ptr() as *mut crate::QPointLight,
99932            )
99933        };
99934        ::cpp_core::Ptr::from_raw(ffi_result)
99935    }
99936}
99937
99938impl ::std::ops::Deref for crate::QPointLight {
99939    type Target = crate::QAbstractLight;
99940    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* static_cast<Qt3DRender::QAbstractLight*>(Qt3DRender::QPointLight* ptr)```</span>.
99941    #[inline(always)]
99942    fn deref(&self) -> &crate::QAbstractLight {
99943        let ffi_result = {
99944            unsafe {
99945                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractLight_ptr4(
99946                    self as *const crate::QPointLight as *mut crate::QPointLight,
99947                )
99948            }
99949        };
99950        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
99951    }
99952}
99953
99954impl ::cpp_core::DynamicCast<crate::QPointLight> for crate::QAbstractLight {
99955    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointLight* dynamic_cast<Qt3DRender::QPointLight*>(Qt3DRender::QAbstractLight* ptr)```</span>.
99956    #[inline(always)]
99957    unsafe fn dynamic_cast(
99958        ptr: ::cpp_core::Ptr<crate::QAbstractLight>,
99959    ) -> ::cpp_core::Ptr<crate::QPointLight> {
99960        let ffi_result = {
99961            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPointLight_ptr(
99962                ptr.as_raw_ptr() as *mut crate::QAbstractLight,
99963            )
99964        };
99965        ::cpp_core::Ptr::from_raw(ffi_result)
99966    }
99967}
99968
99969impl ::cpp_core::StaticDowncast<crate::QPointLight> for ::qt_3d_core::QComponent {
99970    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointLight* static_cast<Qt3DRender::QPointLight*>(Qt3DCore::QComponent* ptr)```</span>.
99971    #[inline(always)]
99972    unsafe fn static_downcast(
99973        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
99974    ) -> ::cpp_core::Ptr<crate::QPointLight> {
99975        let ffi_result = {
99976            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPointLight_ptr1(
99977                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
99978            )
99979        };
99980        ::cpp_core::Ptr::from_raw(ffi_result)
99981    }
99982}
99983
99984impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QPointLight {
99985    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QPointLight* ptr)```</span>.
99986    #[inline(always)]
99987    unsafe fn static_upcast(
99988        ptr: ::cpp_core::Ptr<crate::QPointLight>,
99989    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
99990        let ffi_result = {
99991            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr12(
99992                ptr.as_raw_ptr() as *mut crate::QPointLight,
99993            )
99994        };
99995        ::cpp_core::Ptr::from_raw(ffi_result)
99996    }
99997}
99998
99999impl ::cpp_core::DynamicCast<crate::QPointLight> for ::qt_3d_core::QComponent {
100000    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointLight* dynamic_cast<Qt3DRender::QPointLight*>(Qt3DCore::QComponent* ptr)```</span>.
100001    #[inline(always)]
100002    unsafe fn dynamic_cast(
100003        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
100004    ) -> ::cpp_core::Ptr<crate::QPointLight> {
100005        let ffi_result = {
100006            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPointLight_ptr1(
100007                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
100008            )
100009        };
100010        ::cpp_core::Ptr::from_raw(ffi_result)
100011    }
100012}
100013
100014impl ::cpp_core::StaticDowncast<crate::QPointLight> for ::qt_3d_core::QNode {
100015    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointLight* static_cast<Qt3DRender::QPointLight*>(Qt3DCore::QNode* ptr)```</span>.
100016    #[inline(always)]
100017    unsafe fn static_downcast(
100018        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100019    ) -> ::cpp_core::Ptr<crate::QPointLight> {
100020        let ffi_result = {
100021            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPointLight_ptr2(
100022                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100023            )
100024        };
100025        ::cpp_core::Ptr::from_raw(ffi_result)
100026    }
100027}
100028
100029impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QPointLight {
100030    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QPointLight* ptr)```</span>.
100031    #[inline(always)]
100032    unsafe fn static_upcast(
100033        ptr: ::cpp_core::Ptr<crate::QPointLight>,
100034    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
100035        let ffi_result = {
100036            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr46(
100037                ptr.as_raw_ptr() as *mut crate::QPointLight
100038            )
100039        };
100040        ::cpp_core::Ptr::from_raw(ffi_result)
100041    }
100042}
100043
100044impl ::cpp_core::DynamicCast<crate::QPointLight> for ::qt_3d_core::QNode {
100045    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointLight* dynamic_cast<Qt3DRender::QPointLight*>(Qt3DCore::QNode* ptr)```</span>.
100046    #[inline(always)]
100047    unsafe fn dynamic_cast(
100048        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100049    ) -> ::cpp_core::Ptr<crate::QPointLight> {
100050        let ffi_result = {
100051            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPointLight_ptr2(
100052                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100053            )
100054        };
100055        ::cpp_core::Ptr::from_raw(ffi_result)
100056    }
100057}
100058
100059impl ::cpp_core::StaticDowncast<crate::QPointLight> for ::qt_core::QObject {
100060    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointLight* static_cast<Qt3DRender::QPointLight*>(QObject* ptr)```</span>.
100061    #[inline(always)]
100062    unsafe fn static_downcast(
100063        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100064    ) -> ::cpp_core::Ptr<crate::QPointLight> {
100065        let ffi_result = {
100066            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPointLight_ptr3(
100067                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100068            )
100069        };
100070        ::cpp_core::Ptr::from_raw(ffi_result)
100071    }
100072}
100073
100074impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QPointLight {
100075    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPointLight* ptr)```</span>.
100076    #[inline(always)]
100077    unsafe fn static_upcast(
100078        ptr: ::cpp_core::Ptr<crate::QPointLight>,
100079    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
100080        let ffi_result = {
100081            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr49(
100082                ptr.as_raw_ptr() as *mut crate::QPointLight
100083            )
100084        };
100085        ::cpp_core::Ptr::from_raw(ffi_result)
100086    }
100087}
100088
100089impl ::cpp_core::DynamicCast<crate::QPointLight> for ::qt_core::QObject {
100090    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointLight* dynamic_cast<Qt3DRender::QPointLight*>(QObject* ptr)```</span>.
100091    #[inline(always)]
100092    unsafe fn dynamic_cast(
100093        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100094    ) -> ::cpp_core::Ptr<crate::QPointLight> {
100095        let ffi_result = {
100096            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPointLight_ptr3(
100097                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100098            )
100099        };
100100        ::cpp_core::Ptr::from_raw(ffi_result)
100101    }
100102}
100103
100104impl ::cpp_core::StaticDowncast<crate::QPointSize> for crate::QRenderState {
100105    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointSize* static_cast<Qt3DRender::QPointSize*>(Qt3DRender::QRenderState* ptr)```</span>.
100106    #[inline(always)]
100107    unsafe fn static_downcast(
100108        ptr: ::cpp_core::Ptr<crate::QRenderState>,
100109    ) -> ::cpp_core::Ptr<crate::QPointSize> {
100110        let ffi_result = {
100111            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPointSize_ptr(
100112                ptr.as_raw_ptr() as *mut crate::QRenderState,
100113            )
100114        };
100115        ::cpp_core::Ptr::from_raw(ffi_result)
100116    }
100117}
100118
100119impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QPointSize {
100120    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QPointSize* ptr)```</span>.
100121    #[inline(always)]
100122    unsafe fn static_upcast(
100123        ptr: ::cpp_core::Ptr<crate::QPointSize>,
100124    ) -> ::cpp_core::Ptr<crate::QRenderState> {
100125        let ffi_result = {
100126            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr14(
100127                ptr.as_raw_ptr() as *mut crate::QPointSize,
100128            )
100129        };
100130        ::cpp_core::Ptr::from_raw(ffi_result)
100131    }
100132}
100133
100134impl ::std::ops::Deref for crate::QPointSize {
100135    type Target = crate::QRenderState;
100136    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QPointSize* ptr)```</span>.
100137    #[inline(always)]
100138    fn deref(&self) -> &crate::QRenderState {
100139        let ffi_result = {
100140            unsafe {
100141                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr14(
100142                    self as *const crate::QPointSize as *mut crate::QPointSize,
100143                )
100144            }
100145        };
100146        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
100147    }
100148}
100149
100150impl ::cpp_core::DynamicCast<crate::QPointSize> for crate::QRenderState {
100151    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointSize* dynamic_cast<Qt3DRender::QPointSize*>(Qt3DRender::QRenderState* ptr)```</span>.
100152    #[inline(always)]
100153    unsafe fn dynamic_cast(
100154        ptr: ::cpp_core::Ptr<crate::QRenderState>,
100155    ) -> ::cpp_core::Ptr<crate::QPointSize> {
100156        let ffi_result = {
100157            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPointSize_ptr(
100158                ptr.as_raw_ptr() as *mut crate::QRenderState,
100159            )
100160        };
100161        ::cpp_core::Ptr::from_raw(ffi_result)
100162    }
100163}
100164
100165impl ::cpp_core::StaticDowncast<crate::QPointSize> for ::qt_3d_core::QNode {
100166    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointSize* static_cast<Qt3DRender::QPointSize*>(Qt3DCore::QNode* ptr)```</span>.
100167    #[inline(always)]
100168    unsafe fn static_downcast(
100169        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100170    ) -> ::cpp_core::Ptr<crate::QPointSize> {
100171        let ffi_result = {
100172            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPointSize_ptr1(
100173                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100174            )
100175        };
100176        ::cpp_core::Ptr::from_raw(ffi_result)
100177    }
100178}
100179
100180impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QPointSize {
100181    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QPointSize* ptr)```</span>.
100182    #[inline(always)]
100183    unsafe fn static_upcast(
100184        ptr: ::cpp_core::Ptr<crate::QPointSize>,
100185    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
100186        let ffi_result = {
100187            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr47(
100188                ptr.as_raw_ptr() as *mut crate::QPointSize
100189            )
100190        };
100191        ::cpp_core::Ptr::from_raw(ffi_result)
100192    }
100193}
100194
100195impl ::cpp_core::DynamicCast<crate::QPointSize> for ::qt_3d_core::QNode {
100196    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointSize* dynamic_cast<Qt3DRender::QPointSize*>(Qt3DCore::QNode* ptr)```</span>.
100197    #[inline(always)]
100198    unsafe fn dynamic_cast(
100199        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100200    ) -> ::cpp_core::Ptr<crate::QPointSize> {
100201        let ffi_result = {
100202            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPointSize_ptr1(
100203                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100204            )
100205        };
100206        ::cpp_core::Ptr::from_raw(ffi_result)
100207    }
100208}
100209
100210impl ::cpp_core::StaticDowncast<crate::QPointSize> for ::qt_core::QObject {
100211    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointSize* static_cast<Qt3DRender::QPointSize*>(QObject* ptr)```</span>.
100212    #[inline(always)]
100213    unsafe fn static_downcast(
100214        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100215    ) -> ::cpp_core::Ptr<crate::QPointSize> {
100216        let ffi_result = {
100217            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPointSize_ptr2(
100218                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100219            )
100220        };
100221        ::cpp_core::Ptr::from_raw(ffi_result)
100222    }
100223}
100224
100225impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QPointSize {
100226    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPointSize* ptr)```</span>.
100227    #[inline(always)]
100228    unsafe fn static_upcast(
100229        ptr: ::cpp_core::Ptr<crate::QPointSize>,
100230    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
100231        let ffi_result = {
100232            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr50(
100233                ptr.as_raw_ptr() as *mut crate::QPointSize
100234            )
100235        };
100236        ::cpp_core::Ptr::from_raw(ffi_result)
100237    }
100238}
100239
100240impl ::cpp_core::DynamicCast<crate::QPointSize> for ::qt_core::QObject {
100241    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPointSize* dynamic_cast<Qt3DRender::QPointSize*>(QObject* ptr)```</span>.
100242    #[inline(always)]
100243    unsafe fn dynamic_cast(
100244        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100245    ) -> ::cpp_core::Ptr<crate::QPointSize> {
100246        let ffi_result = {
100247            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPointSize_ptr2(
100248                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100249            )
100250        };
100251        ::cpp_core::Ptr::from_raw(ffi_result)
100252    }
100253}
100254
100255impl ::cpp_core::StaticDowncast<crate::QPolygonOffset> for crate::QRenderState {
100256    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPolygonOffset* static_cast<Qt3DRender::QPolygonOffset*>(Qt3DRender::QRenderState* ptr)```</span>.
100257    #[inline(always)]
100258    unsafe fn static_downcast(
100259        ptr: ::cpp_core::Ptr<crate::QRenderState>,
100260    ) -> ::cpp_core::Ptr<crate::QPolygonOffset> {
100261        let ffi_result = {
100262            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPolygonOffset_ptr(
100263                ptr.as_raw_ptr() as *mut crate::QRenderState,
100264            )
100265        };
100266        ::cpp_core::Ptr::from_raw(ffi_result)
100267    }
100268}
100269
100270impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QPolygonOffset {
100271    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QPolygonOffset* ptr)```</span>.
100272    #[inline(always)]
100273    unsafe fn static_upcast(
100274        ptr: ::cpp_core::Ptr<crate::QPolygonOffset>,
100275    ) -> ::cpp_core::Ptr<crate::QRenderState> {
100276        let ffi_result = {
100277            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr15(
100278                ptr.as_raw_ptr() as *mut crate::QPolygonOffset,
100279            )
100280        };
100281        ::cpp_core::Ptr::from_raw(ffi_result)
100282    }
100283}
100284
100285impl ::std::ops::Deref for crate::QPolygonOffset {
100286    type Target = crate::QRenderState;
100287    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QPolygonOffset* ptr)```</span>.
100288    #[inline(always)]
100289    fn deref(&self) -> &crate::QRenderState {
100290        let ffi_result = {
100291            unsafe {
100292                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr15(
100293                    self as *const crate::QPolygonOffset as *mut crate::QPolygonOffset,
100294                )
100295            }
100296        };
100297        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
100298    }
100299}
100300
100301impl ::cpp_core::DynamicCast<crate::QPolygonOffset> for crate::QRenderState {
100302    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPolygonOffset* dynamic_cast<Qt3DRender::QPolygonOffset*>(Qt3DRender::QRenderState* ptr)```</span>.
100303    #[inline(always)]
100304    unsafe fn dynamic_cast(
100305        ptr: ::cpp_core::Ptr<crate::QRenderState>,
100306    ) -> ::cpp_core::Ptr<crate::QPolygonOffset> {
100307        let ffi_result = {
100308            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPolygonOffset_ptr(
100309                ptr.as_raw_ptr() as *mut crate::QRenderState,
100310            )
100311        };
100312        ::cpp_core::Ptr::from_raw(ffi_result)
100313    }
100314}
100315
100316impl ::cpp_core::StaticDowncast<crate::QPolygonOffset> for ::qt_3d_core::QNode {
100317    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPolygonOffset* static_cast<Qt3DRender::QPolygonOffset*>(Qt3DCore::QNode* ptr)```</span>.
100318    #[inline(always)]
100319    unsafe fn static_downcast(
100320        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100321    ) -> ::cpp_core::Ptr<crate::QPolygonOffset> {
100322        let ffi_result = {
100323            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPolygonOffset_ptr1(
100324                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100325            )
100326        };
100327        ::cpp_core::Ptr::from_raw(ffi_result)
100328    }
100329}
100330
100331impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QPolygonOffset {
100332    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QPolygonOffset* ptr)```</span>.
100333    #[inline(always)]
100334    unsafe fn static_upcast(
100335        ptr: ::cpp_core::Ptr<crate::QPolygonOffset>,
100336    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
100337        let ffi_result = {
100338            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr48(
100339                ptr.as_raw_ptr() as *mut crate::QPolygonOffset
100340            )
100341        };
100342        ::cpp_core::Ptr::from_raw(ffi_result)
100343    }
100344}
100345
100346impl ::cpp_core::DynamicCast<crate::QPolygonOffset> for ::qt_3d_core::QNode {
100347    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPolygonOffset* dynamic_cast<Qt3DRender::QPolygonOffset*>(Qt3DCore::QNode* ptr)```</span>.
100348    #[inline(always)]
100349    unsafe fn dynamic_cast(
100350        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100351    ) -> ::cpp_core::Ptr<crate::QPolygonOffset> {
100352        let ffi_result = {
100353            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPolygonOffset_ptr1(
100354                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100355            )
100356        };
100357        ::cpp_core::Ptr::from_raw(ffi_result)
100358    }
100359}
100360
100361impl ::cpp_core::StaticDowncast<crate::QPolygonOffset> for ::qt_core::QObject {
100362    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPolygonOffset* static_cast<Qt3DRender::QPolygonOffset*>(QObject* ptr)```</span>.
100363    #[inline(always)]
100364    unsafe fn static_downcast(
100365        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100366    ) -> ::cpp_core::Ptr<crate::QPolygonOffset> {
100367        let ffi_result = {
100368            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPolygonOffset_ptr2(
100369                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100370            )
100371        };
100372        ::cpp_core::Ptr::from_raw(ffi_result)
100373    }
100374}
100375
100376impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QPolygonOffset {
100377    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPolygonOffset* ptr)```</span>.
100378    #[inline(always)]
100379    unsafe fn static_upcast(
100380        ptr: ::cpp_core::Ptr<crate::QPolygonOffset>,
100381    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
100382        let ffi_result = {
100383            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr51(
100384                ptr.as_raw_ptr() as *mut crate::QPolygonOffset
100385            )
100386        };
100387        ::cpp_core::Ptr::from_raw(ffi_result)
100388    }
100389}
100390
100391impl ::cpp_core::DynamicCast<crate::QPolygonOffset> for ::qt_core::QObject {
100392    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPolygonOffset* dynamic_cast<Qt3DRender::QPolygonOffset*>(QObject* ptr)```</span>.
100393    #[inline(always)]
100394    unsafe fn dynamic_cast(
100395        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100396    ) -> ::cpp_core::Ptr<crate::QPolygonOffset> {
100397        let ffi_result = {
100398            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPolygonOffset_ptr2(
100399                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100400            )
100401        };
100402        ::cpp_core::Ptr::from_raw(ffi_result)
100403    }
100404}
100405
100406impl ::cpp_core::StaticDowncast<crate::QRenderAspect> for ::qt_3d_core::QAbstractAspect {
100407    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderAspect* static_cast<Qt3DRender::QRenderAspect*>(Qt3DCore::QAbstractAspect* ptr)```</span>.
100408    #[inline(always)]
100409    unsafe fn static_downcast(
100410        ptr: ::cpp_core::Ptr<::qt_3d_core::QAbstractAspect>,
100411    ) -> ::cpp_core::Ptr<crate::QRenderAspect> {
100412        let ffi_result = {
100413            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderAspect_ptr(
100414                ptr.as_raw_ptr() as *mut ::qt_3d_core::QAbstractAspect,
100415            )
100416        };
100417        ::cpp_core::Ptr::from_raw(ffi_result)
100418    }
100419}
100420
100421impl ::cpp_core::StaticUpcast<::qt_3d_core::QAbstractAspect> for crate::QRenderAspect {
100422    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QAbstractAspect* static_cast<Qt3DCore::QAbstractAspect*>(Qt3DRender::QRenderAspect* ptr)```</span>.
100423    #[inline(always)]
100424    unsafe fn static_upcast(
100425        ptr: ::cpp_core::Ptr<crate::QRenderAspect>,
100426    ) -> ::cpp_core::Ptr<::qt_3d_core::QAbstractAspect> {
100427        let ffi_result = {
100428            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QAbstractAspect_ptr(
100429                ptr.as_raw_ptr() as *mut crate::QRenderAspect,
100430            )
100431        };
100432        ::cpp_core::Ptr::from_raw(ffi_result)
100433    }
100434}
100435
100436impl ::std::ops::Deref for crate::QRenderAspect {
100437    type Target = ::qt_3d_core::QAbstractAspect;
100438    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QAbstractAspect* static_cast<Qt3DCore::QAbstractAspect*>(Qt3DRender::QRenderAspect* ptr)```</span>.
100439    #[inline(always)]
100440    fn deref(&self) -> &::qt_3d_core::QAbstractAspect {
100441        let ffi_result = {
100442            unsafe {
100443                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QAbstractAspect_ptr(
100444                    self as *const crate::QRenderAspect as *mut crate::QRenderAspect,
100445                )
100446            }
100447        };
100448        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
100449    }
100450}
100451
100452impl ::cpp_core::DynamicCast<crate::QRenderAspect> for ::qt_3d_core::QAbstractAspect {
100453    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderAspect* dynamic_cast<Qt3DRender::QRenderAspect*>(Qt3DCore::QAbstractAspect* ptr)```</span>.
100454    #[inline(always)]
100455    unsafe fn dynamic_cast(
100456        ptr: ::cpp_core::Ptr<::qt_3d_core::QAbstractAspect>,
100457    ) -> ::cpp_core::Ptr<crate::QRenderAspect> {
100458        let ffi_result = {
100459            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderAspect_ptr(
100460                ptr.as_raw_ptr() as *mut ::qt_3d_core::QAbstractAspect,
100461            )
100462        };
100463        ::cpp_core::Ptr::from_raw(ffi_result)
100464    }
100465}
100466
100467impl ::cpp_core::StaticDowncast<crate::QRenderAspect> for ::qt_core::QObject {
100468    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderAspect* static_cast<Qt3DRender::QRenderAspect*>(QObject* ptr)```</span>.
100469    #[inline(always)]
100470    unsafe fn static_downcast(
100471        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100472    ) -> ::cpp_core::Ptr<crate::QRenderAspect> {
100473        let ffi_result = {
100474            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderAspect_ptr1(
100475                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100476            )
100477        };
100478        ::cpp_core::Ptr::from_raw(ffi_result)
100479    }
100480}
100481
100482impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderAspect {
100483    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderAspect* ptr)```</span>.
100484    #[inline(always)]
100485    unsafe fn static_upcast(
100486        ptr: ::cpp_core::Ptr<crate::QRenderAspect>,
100487    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
100488        let ffi_result = {
100489            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr52(
100490                ptr.as_raw_ptr() as *mut crate::QRenderAspect
100491            )
100492        };
100493        ::cpp_core::Ptr::from_raw(ffi_result)
100494    }
100495}
100496
100497impl ::cpp_core::DynamicCast<crate::QRenderAspect> for ::qt_core::QObject {
100498    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderAspect* dynamic_cast<Qt3DRender::QRenderAspect*>(QObject* ptr)```</span>.
100499    #[inline(always)]
100500    unsafe fn dynamic_cast(
100501        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100502    ) -> ::cpp_core::Ptr<crate::QRenderAspect> {
100503        let ffi_result = {
100504            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderAspect_ptr1(
100505                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100506            )
100507        };
100508        ::cpp_core::Ptr::from_raw(ffi_result)
100509    }
100510}
100511
100512impl ::cpp_core::StaticDowncast<crate::QRenderCaptureReply> for ::qt_core::QObject {
100513    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCaptureReply* static_cast<Qt3DRender::QRenderCaptureReply*>(QObject* ptr)```</span>.
100514    #[inline(always)]
100515    unsafe fn static_downcast(
100516        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100517    ) -> ::cpp_core::Ptr<crate::QRenderCaptureReply> {
100518        let ffi_result = {
100519            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderCaptureReply_ptr(
100520                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100521            )
100522        };
100523        ::cpp_core::Ptr::from_raw(ffi_result)
100524    }
100525}
100526
100527impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderCaptureReply {
100528    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderCaptureReply* ptr)```</span>.
100529    #[inline(always)]
100530    unsafe fn static_upcast(
100531        ptr: ::cpp_core::Ptr<crate::QRenderCaptureReply>,
100532    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
100533        let ffi_result = {
100534            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr53(
100535                ptr.as_raw_ptr() as *mut crate::QRenderCaptureReply
100536            )
100537        };
100538        ::cpp_core::Ptr::from_raw(ffi_result)
100539    }
100540}
100541
100542impl ::std::ops::Deref for crate::QRenderCaptureReply {
100543    type Target = ::qt_core::QObject;
100544    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderCaptureReply* ptr)```</span>.
100545    #[inline(always)]
100546    fn deref(&self) -> &::qt_core::QObject {
100547        let ffi_result = {
100548            unsafe {
100549                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr53(
100550                    self as *const crate::QRenderCaptureReply as *mut crate::QRenderCaptureReply,
100551                )
100552            }
100553        };
100554        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
100555    }
100556}
100557
100558impl ::cpp_core::DynamicCast<crate::QRenderCaptureReply> for ::qt_core::QObject {
100559    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCaptureReply* dynamic_cast<Qt3DRender::QRenderCaptureReply*>(QObject* ptr)```</span>.
100560    #[inline(always)]
100561    unsafe fn dynamic_cast(
100562        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100563    ) -> ::cpp_core::Ptr<crate::QRenderCaptureReply> {
100564        let ffi_result = {
100565            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderCaptureReply_ptr(
100566                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100567            )
100568        };
100569        ::cpp_core::Ptr::from_raw(ffi_result)
100570    }
100571}
100572
100573impl ::cpp_core::StaticDowncast<crate::QRenderCapture> for crate::QFrameGraphNode {
100574    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCapture* static_cast<Qt3DRender::QRenderCapture*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
100575    #[inline(always)]
100576    unsafe fn static_downcast(
100577        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
100578    ) -> ::cpp_core::Ptr<crate::QRenderCapture> {
100579        let ffi_result = {
100580            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderCapture_ptr(
100581                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
100582            )
100583        };
100584        ::cpp_core::Ptr::from_raw(ffi_result)
100585    }
100586}
100587
100588impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QRenderCapture {
100589    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderCapture* ptr)```</span>.
100590    #[inline(always)]
100591    unsafe fn static_upcast(
100592        ptr: ::cpp_core::Ptr<crate::QRenderCapture>,
100593    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
100594        let ffi_result = {
100595            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr10(
100596                ptr.as_raw_ptr() as *mut crate::QRenderCapture,
100597            )
100598        };
100599        ::cpp_core::Ptr::from_raw(ffi_result)
100600    }
100601}
100602
100603impl ::std::ops::Deref for crate::QRenderCapture {
100604    type Target = crate::QFrameGraphNode;
100605    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderCapture* ptr)```</span>.
100606    #[inline(always)]
100607    fn deref(&self) -> &crate::QFrameGraphNode {
100608        let ffi_result = {
100609            unsafe {
100610                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr10(
100611                    self as *const crate::QRenderCapture as *mut crate::QRenderCapture,
100612                )
100613            }
100614        };
100615        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
100616    }
100617}
100618
100619impl ::cpp_core::DynamicCast<crate::QRenderCapture> for crate::QFrameGraphNode {
100620    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCapture* dynamic_cast<Qt3DRender::QRenderCapture*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
100621    #[inline(always)]
100622    unsafe fn dynamic_cast(
100623        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
100624    ) -> ::cpp_core::Ptr<crate::QRenderCapture> {
100625        let ffi_result = {
100626            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderCapture_ptr(
100627                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
100628            )
100629        };
100630        ::cpp_core::Ptr::from_raw(ffi_result)
100631    }
100632}
100633
100634impl ::cpp_core::StaticDowncast<crate::QRenderCapture> for ::qt_3d_core::QNode {
100635    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCapture* static_cast<Qt3DRender::QRenderCapture*>(Qt3DCore::QNode* ptr)```</span>.
100636    #[inline(always)]
100637    unsafe fn static_downcast(
100638        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100639    ) -> ::cpp_core::Ptr<crate::QRenderCapture> {
100640        let ffi_result = {
100641            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderCapture_ptr1(
100642                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100643            )
100644        };
100645        ::cpp_core::Ptr::from_raw(ffi_result)
100646    }
100647}
100648
100649impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderCapture {
100650    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderCapture* ptr)```</span>.
100651    #[inline(always)]
100652    unsafe fn static_upcast(
100653        ptr: ::cpp_core::Ptr<crate::QRenderCapture>,
100654    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
100655        let ffi_result = {
100656            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr49(
100657                ptr.as_raw_ptr() as *mut crate::QRenderCapture
100658            )
100659        };
100660        ::cpp_core::Ptr::from_raw(ffi_result)
100661    }
100662}
100663
100664impl ::cpp_core::DynamicCast<crate::QRenderCapture> for ::qt_3d_core::QNode {
100665    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCapture* dynamic_cast<Qt3DRender::QRenderCapture*>(Qt3DCore::QNode* ptr)```</span>.
100666    #[inline(always)]
100667    unsafe fn dynamic_cast(
100668        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100669    ) -> ::cpp_core::Ptr<crate::QRenderCapture> {
100670        let ffi_result = {
100671            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderCapture_ptr1(
100672                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100673            )
100674        };
100675        ::cpp_core::Ptr::from_raw(ffi_result)
100676    }
100677}
100678
100679impl ::cpp_core::StaticDowncast<crate::QRenderCapture> for ::qt_core::QObject {
100680    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCapture* static_cast<Qt3DRender::QRenderCapture*>(QObject* ptr)```</span>.
100681    #[inline(always)]
100682    unsafe fn static_downcast(
100683        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100684    ) -> ::cpp_core::Ptr<crate::QRenderCapture> {
100685        let ffi_result = {
100686            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderCapture_ptr2(
100687                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100688            )
100689        };
100690        ::cpp_core::Ptr::from_raw(ffi_result)
100691    }
100692}
100693
100694impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderCapture {
100695    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderCapture* ptr)```</span>.
100696    #[inline(always)]
100697    unsafe fn static_upcast(
100698        ptr: ::cpp_core::Ptr<crate::QRenderCapture>,
100699    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
100700        let ffi_result = {
100701            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr54(
100702                ptr.as_raw_ptr() as *mut crate::QRenderCapture
100703            )
100704        };
100705        ::cpp_core::Ptr::from_raw(ffi_result)
100706    }
100707}
100708
100709impl ::cpp_core::DynamicCast<crate::QRenderCapture> for ::qt_core::QObject {
100710    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderCapture* dynamic_cast<Qt3DRender::QRenderCapture*>(QObject* ptr)```</span>.
100711    #[inline(always)]
100712    unsafe fn dynamic_cast(
100713        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100714    ) -> ::cpp_core::Ptr<crate::QRenderCapture> {
100715        let ffi_result = {
100716            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderCapture_ptr2(
100717                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100718            )
100719        };
100720        ::cpp_core::Ptr::from_raw(ffi_result)
100721    }
100722}
100723
100724impl ::cpp_core::StaticDowncast<crate::QShaderProgram> for ::qt_3d_core::QNode {
100725    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgram* static_cast<Qt3DRender::QShaderProgram*>(Qt3DCore::QNode* ptr)```</span>.
100726    #[inline(always)]
100727    unsafe fn static_downcast(
100728        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100729    ) -> ::cpp_core::Ptr<crate::QShaderProgram> {
100730        let ffi_result = {
100731            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QShaderProgram_ptr(
100732                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100733            )
100734        };
100735        ::cpp_core::Ptr::from_raw(ffi_result)
100736    }
100737}
100738
100739impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QShaderProgram {
100740    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QShaderProgram* ptr)```</span>.
100741    #[inline(always)]
100742    unsafe fn static_upcast(
100743        ptr: ::cpp_core::Ptr<crate::QShaderProgram>,
100744    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
100745        let ffi_result = {
100746            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr50(
100747                ptr.as_raw_ptr() as *mut crate::QShaderProgram
100748            )
100749        };
100750        ::cpp_core::Ptr::from_raw(ffi_result)
100751    }
100752}
100753
100754impl ::std::ops::Deref for crate::QShaderProgram {
100755    type Target = ::qt_3d_core::QNode;
100756    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QShaderProgram* ptr)```</span>.
100757    #[inline(always)]
100758    fn deref(&self) -> &::qt_3d_core::QNode {
100759        let ffi_result = {
100760            unsafe {
100761                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr50(
100762                    self as *const crate::QShaderProgram as *mut crate::QShaderProgram,
100763                )
100764            }
100765        };
100766        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
100767    }
100768}
100769
100770impl ::cpp_core::DynamicCast<crate::QShaderProgram> for ::qt_3d_core::QNode {
100771    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgram* dynamic_cast<Qt3DRender::QShaderProgram*>(Qt3DCore::QNode* ptr)```</span>.
100772    #[inline(always)]
100773    unsafe fn dynamic_cast(
100774        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100775    ) -> ::cpp_core::Ptr<crate::QShaderProgram> {
100776        let ffi_result = {
100777            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QShaderProgram_ptr(
100778                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100779            )
100780        };
100781        ::cpp_core::Ptr::from_raw(ffi_result)
100782    }
100783}
100784
100785impl ::cpp_core::StaticDowncast<crate::QShaderProgram> for ::qt_core::QObject {
100786    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgram* static_cast<Qt3DRender::QShaderProgram*>(QObject* ptr)```</span>.
100787    #[inline(always)]
100788    unsafe fn static_downcast(
100789        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100790    ) -> ::cpp_core::Ptr<crate::QShaderProgram> {
100791        let ffi_result = {
100792            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QShaderProgram_ptr1(
100793                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100794            )
100795        };
100796        ::cpp_core::Ptr::from_raw(ffi_result)
100797    }
100798}
100799
100800impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QShaderProgram {
100801    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QShaderProgram* ptr)```</span>.
100802    #[inline(always)]
100803    unsafe fn static_upcast(
100804        ptr: ::cpp_core::Ptr<crate::QShaderProgram>,
100805    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
100806        let ffi_result = {
100807            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr55(
100808                ptr.as_raw_ptr() as *mut crate::QShaderProgram
100809            )
100810        };
100811        ::cpp_core::Ptr::from_raw(ffi_result)
100812    }
100813}
100814
100815impl ::cpp_core::DynamicCast<crate::QShaderProgram> for ::qt_core::QObject {
100816    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgram* dynamic_cast<Qt3DRender::QShaderProgram*>(QObject* ptr)```</span>.
100817    #[inline(always)]
100818    unsafe fn dynamic_cast(
100819        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100820    ) -> ::cpp_core::Ptr<crate::QShaderProgram> {
100821        let ffi_result = {
100822            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QShaderProgram_ptr1(
100823                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100824            )
100825        };
100826        ::cpp_core::Ptr::from_raw(ffi_result)
100827    }
100828}
100829
100830impl ::cpp_core::StaticDowncast<crate::QRenderPass> for ::qt_3d_core::QNode {
100831    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass* static_cast<Qt3DRender::QRenderPass*>(Qt3DCore::QNode* ptr)```</span>.
100832    #[inline(always)]
100833    unsafe fn static_downcast(
100834        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100835    ) -> ::cpp_core::Ptr<crate::QRenderPass> {
100836        let ffi_result = {
100837            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderPass_ptr(
100838                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100839            )
100840        };
100841        ::cpp_core::Ptr::from_raw(ffi_result)
100842    }
100843}
100844
100845impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderPass {
100846    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderPass* ptr)```</span>.
100847    #[inline(always)]
100848    unsafe fn static_upcast(
100849        ptr: ::cpp_core::Ptr<crate::QRenderPass>,
100850    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
100851        let ffi_result = {
100852            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr51(
100853                ptr.as_raw_ptr() as *mut crate::QRenderPass
100854            )
100855        };
100856        ::cpp_core::Ptr::from_raw(ffi_result)
100857    }
100858}
100859
100860impl ::std::ops::Deref for crate::QRenderPass {
100861    type Target = ::qt_3d_core::QNode;
100862    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderPass* ptr)```</span>.
100863    #[inline(always)]
100864    fn deref(&self) -> &::qt_3d_core::QNode {
100865        let ffi_result = {
100866            unsafe {
100867                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr51(
100868                    self as *const crate::QRenderPass as *mut crate::QRenderPass,
100869                )
100870            }
100871        };
100872        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
100873    }
100874}
100875
100876impl ::cpp_core::DynamicCast<crate::QRenderPass> for ::qt_3d_core::QNode {
100877    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass* dynamic_cast<Qt3DRender::QRenderPass*>(Qt3DCore::QNode* ptr)```</span>.
100878    #[inline(always)]
100879    unsafe fn dynamic_cast(
100880        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
100881    ) -> ::cpp_core::Ptr<crate::QRenderPass> {
100882        let ffi_result = {
100883            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderPass_ptr(
100884                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
100885            )
100886        };
100887        ::cpp_core::Ptr::from_raw(ffi_result)
100888    }
100889}
100890
100891impl ::cpp_core::StaticDowncast<crate::QRenderPass> for ::qt_core::QObject {
100892    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass* static_cast<Qt3DRender::QRenderPass*>(QObject* ptr)```</span>.
100893    #[inline(always)]
100894    unsafe fn static_downcast(
100895        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100896    ) -> ::cpp_core::Ptr<crate::QRenderPass> {
100897        let ffi_result = {
100898            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderPass_ptr1(
100899                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100900            )
100901        };
100902        ::cpp_core::Ptr::from_raw(ffi_result)
100903    }
100904}
100905
100906impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderPass {
100907    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderPass* ptr)```</span>.
100908    #[inline(always)]
100909    unsafe fn static_upcast(
100910        ptr: ::cpp_core::Ptr<crate::QRenderPass>,
100911    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
100912        let ffi_result = {
100913            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr56(
100914                ptr.as_raw_ptr() as *mut crate::QRenderPass
100915            )
100916        };
100917        ::cpp_core::Ptr::from_raw(ffi_result)
100918    }
100919}
100920
100921impl ::cpp_core::DynamicCast<crate::QRenderPass> for ::qt_core::QObject {
100922    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPass* dynamic_cast<Qt3DRender::QRenderPass*>(QObject* ptr)```</span>.
100923    #[inline(always)]
100924    unsafe fn dynamic_cast(
100925        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
100926    ) -> ::cpp_core::Ptr<crate::QRenderPass> {
100927        let ffi_result = {
100928            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderPass_ptr1(
100929                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
100930            )
100931        };
100932        ::cpp_core::Ptr::from_raw(ffi_result)
100933    }
100934}
100935
100936impl ::cpp_core::StaticDowncast<crate::QRenderPassFilter> for crate::QFrameGraphNode {
100937    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPassFilter* static_cast<Qt3DRender::QRenderPassFilter*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
100938    #[inline(always)]
100939    unsafe fn static_downcast(
100940        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
100941    ) -> ::cpp_core::Ptr<crate::QRenderPassFilter> {
100942        let ffi_result = {
100943            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderPassFilter_ptr(
100944                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
100945            )
100946        };
100947        ::cpp_core::Ptr::from_raw(ffi_result)
100948    }
100949}
100950
100951impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QRenderPassFilter {
100952    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderPassFilter* ptr)```</span>.
100953    #[inline(always)]
100954    unsafe fn static_upcast(
100955        ptr: ::cpp_core::Ptr<crate::QRenderPassFilter>,
100956    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
100957        let ffi_result = {
100958            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr11(
100959                ptr.as_raw_ptr() as *mut crate::QRenderPassFilter,
100960            )
100961        };
100962        ::cpp_core::Ptr::from_raw(ffi_result)
100963    }
100964}
100965
100966impl ::std::ops::Deref for crate::QRenderPassFilter {
100967    type Target = crate::QFrameGraphNode;
100968    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderPassFilter* ptr)```</span>.
100969    #[inline(always)]
100970    fn deref(&self) -> &crate::QFrameGraphNode {
100971        let ffi_result = {
100972            unsafe {
100973                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr11(
100974                    self as *const crate::QRenderPassFilter as *mut crate::QRenderPassFilter,
100975                )
100976            }
100977        };
100978        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
100979    }
100980}
100981
100982impl ::cpp_core::DynamicCast<crate::QRenderPassFilter> for crate::QFrameGraphNode {
100983    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPassFilter* dynamic_cast<Qt3DRender::QRenderPassFilter*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
100984    #[inline(always)]
100985    unsafe fn dynamic_cast(
100986        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
100987    ) -> ::cpp_core::Ptr<crate::QRenderPassFilter> {
100988        let ffi_result = {
100989            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderPassFilter_ptr(
100990                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
100991            )
100992        };
100993        ::cpp_core::Ptr::from_raw(ffi_result)
100994    }
100995}
100996
100997impl ::cpp_core::StaticDowncast<crate::QRenderPassFilter> for ::qt_3d_core::QNode {
100998    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPassFilter* static_cast<Qt3DRender::QRenderPassFilter*>(Qt3DCore::QNode* ptr)```</span>.
100999    #[inline(always)]
101000    unsafe fn static_downcast(
101001        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101002    ) -> ::cpp_core::Ptr<crate::QRenderPassFilter> {
101003        let ffi_result = {
101004            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderPassFilter_ptr1(
101005                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101006            )
101007        };
101008        ::cpp_core::Ptr::from_raw(ffi_result)
101009    }
101010}
101011
101012impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderPassFilter {
101013    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderPassFilter* ptr)```</span>.
101014    #[inline(always)]
101015    unsafe fn static_upcast(
101016        ptr: ::cpp_core::Ptr<crate::QRenderPassFilter>,
101017    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
101018        let ffi_result = {
101019            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr52(
101020                ptr.as_raw_ptr() as *mut crate::QRenderPassFilter
101021            )
101022        };
101023        ::cpp_core::Ptr::from_raw(ffi_result)
101024    }
101025}
101026
101027impl ::cpp_core::DynamicCast<crate::QRenderPassFilter> for ::qt_3d_core::QNode {
101028    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPassFilter* dynamic_cast<Qt3DRender::QRenderPassFilter*>(Qt3DCore::QNode* ptr)```</span>.
101029    #[inline(always)]
101030    unsafe fn dynamic_cast(
101031        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101032    ) -> ::cpp_core::Ptr<crate::QRenderPassFilter> {
101033        let ffi_result = {
101034            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderPassFilter_ptr1(
101035                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101036            )
101037        };
101038        ::cpp_core::Ptr::from_raw(ffi_result)
101039    }
101040}
101041
101042impl ::cpp_core::StaticDowncast<crate::QRenderPassFilter> for ::qt_core::QObject {
101043    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPassFilter* static_cast<Qt3DRender::QRenderPassFilter*>(QObject* ptr)```</span>.
101044    #[inline(always)]
101045    unsafe fn static_downcast(
101046        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101047    ) -> ::cpp_core::Ptr<crate::QRenderPassFilter> {
101048        let ffi_result = {
101049            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderPassFilter_ptr2(
101050                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101051            )
101052        };
101053        ::cpp_core::Ptr::from_raw(ffi_result)
101054    }
101055}
101056
101057impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderPassFilter {
101058    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderPassFilter* ptr)```</span>.
101059    #[inline(always)]
101060    unsafe fn static_upcast(
101061        ptr: ::cpp_core::Ptr<crate::QRenderPassFilter>,
101062    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
101063        let ffi_result = {
101064            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr57(
101065                ptr.as_raw_ptr() as *mut crate::QRenderPassFilter
101066            )
101067        };
101068        ::cpp_core::Ptr::from_raw(ffi_result)
101069    }
101070}
101071
101072impl ::cpp_core::DynamicCast<crate::QRenderPassFilter> for ::qt_core::QObject {
101073    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderPassFilter* dynamic_cast<Qt3DRender::QRenderPassFilter*>(QObject* ptr)```</span>.
101074    #[inline(always)]
101075    unsafe fn dynamic_cast(
101076        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101077    ) -> ::cpp_core::Ptr<crate::QRenderPassFilter> {
101078        let ffi_result = {
101079            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderPassFilter_ptr2(
101080                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101081            )
101082        };
101083        ::cpp_core::Ptr::from_raw(ffi_result)
101084    }
101085}
101086
101087impl ::cpp_core::StaticDowncast<crate::QRenderSettings> for ::qt_3d_core::QComponent {
101088    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSettings* static_cast<Qt3DRender::QRenderSettings*>(Qt3DCore::QComponent* ptr)```</span>.
101089    #[inline(always)]
101090    unsafe fn static_downcast(
101091        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
101092    ) -> ::cpp_core::Ptr<crate::QRenderSettings> {
101093        let ffi_result = {
101094            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderSettings_ptr(
101095                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
101096            )
101097        };
101098        ::cpp_core::Ptr::from_raw(ffi_result)
101099    }
101100}
101101
101102impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QRenderSettings {
101103    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QRenderSettings* ptr)```</span>.
101104    #[inline(always)]
101105    unsafe fn static_upcast(
101106        ptr: ::cpp_core::Ptr<crate::QRenderSettings>,
101107    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
101108        let ffi_result = {
101109            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr13(
101110                ptr.as_raw_ptr() as *mut crate::QRenderSettings,
101111            )
101112        };
101113        ::cpp_core::Ptr::from_raw(ffi_result)
101114    }
101115}
101116
101117impl ::std::ops::Deref for crate::QRenderSettings {
101118    type Target = ::qt_3d_core::QComponent;
101119    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QRenderSettings* ptr)```</span>.
101120    #[inline(always)]
101121    fn deref(&self) -> &::qt_3d_core::QComponent {
101122        let ffi_result = {
101123            unsafe {
101124                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr13(
101125                    self as *const crate::QRenderSettings as *mut crate::QRenderSettings,
101126                )
101127            }
101128        };
101129        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
101130    }
101131}
101132
101133impl ::cpp_core::DynamicCast<crate::QRenderSettings> for ::qt_3d_core::QComponent {
101134    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSettings* dynamic_cast<Qt3DRender::QRenderSettings*>(Qt3DCore::QComponent* ptr)```</span>.
101135    #[inline(always)]
101136    unsafe fn dynamic_cast(
101137        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
101138    ) -> ::cpp_core::Ptr<crate::QRenderSettings> {
101139        let ffi_result = {
101140            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderSettings_ptr(
101141                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
101142            )
101143        };
101144        ::cpp_core::Ptr::from_raw(ffi_result)
101145    }
101146}
101147
101148impl ::cpp_core::StaticDowncast<crate::QRenderSettings> for ::qt_3d_core::QNode {
101149    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSettings* static_cast<Qt3DRender::QRenderSettings*>(Qt3DCore::QNode* ptr)```</span>.
101150    #[inline(always)]
101151    unsafe fn static_downcast(
101152        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101153    ) -> ::cpp_core::Ptr<crate::QRenderSettings> {
101154        let ffi_result = {
101155            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderSettings_ptr1(
101156                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101157            )
101158        };
101159        ::cpp_core::Ptr::from_raw(ffi_result)
101160    }
101161}
101162
101163impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderSettings {
101164    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderSettings* ptr)```</span>.
101165    #[inline(always)]
101166    unsafe fn static_upcast(
101167        ptr: ::cpp_core::Ptr<crate::QRenderSettings>,
101168    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
101169        let ffi_result = {
101170            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr53(
101171                ptr.as_raw_ptr() as *mut crate::QRenderSettings
101172            )
101173        };
101174        ::cpp_core::Ptr::from_raw(ffi_result)
101175    }
101176}
101177
101178impl ::cpp_core::DynamicCast<crate::QRenderSettings> for ::qt_3d_core::QNode {
101179    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSettings* dynamic_cast<Qt3DRender::QRenderSettings*>(Qt3DCore::QNode* ptr)```</span>.
101180    #[inline(always)]
101181    unsafe fn dynamic_cast(
101182        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101183    ) -> ::cpp_core::Ptr<crate::QRenderSettings> {
101184        let ffi_result = {
101185            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderSettings_ptr1(
101186                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101187            )
101188        };
101189        ::cpp_core::Ptr::from_raw(ffi_result)
101190    }
101191}
101192
101193impl ::cpp_core::StaticDowncast<crate::QRenderSettings> for ::qt_core::QObject {
101194    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSettings* static_cast<Qt3DRender::QRenderSettings*>(QObject* ptr)```</span>.
101195    #[inline(always)]
101196    unsafe fn static_downcast(
101197        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101198    ) -> ::cpp_core::Ptr<crate::QRenderSettings> {
101199        let ffi_result = {
101200            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderSettings_ptr2(
101201                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101202            )
101203        };
101204        ::cpp_core::Ptr::from_raw(ffi_result)
101205    }
101206}
101207
101208impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderSettings {
101209    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderSettings* ptr)```</span>.
101210    #[inline(always)]
101211    unsafe fn static_upcast(
101212        ptr: ::cpp_core::Ptr<crate::QRenderSettings>,
101213    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
101214        let ffi_result = {
101215            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr58(
101216                ptr.as_raw_ptr() as *mut crate::QRenderSettings
101217            )
101218        };
101219        ::cpp_core::Ptr::from_raw(ffi_result)
101220    }
101221}
101222
101223impl ::cpp_core::DynamicCast<crate::QRenderSettings> for ::qt_core::QObject {
101224    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSettings* dynamic_cast<Qt3DRender::QRenderSettings*>(QObject* ptr)```</span>.
101225    #[inline(always)]
101226    unsafe fn dynamic_cast(
101227        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101228    ) -> ::cpp_core::Ptr<crate::QRenderSettings> {
101229        let ffi_result = {
101230            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderSettings_ptr2(
101231                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101232            )
101233        };
101234        ::cpp_core::Ptr::from_raw(ffi_result)
101235    }
101236}
101237
101238impl ::cpp_core::StaticDowncast<crate::QRenderStateSet> for crate::QFrameGraphNode {
101239    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderStateSet* static_cast<Qt3DRender::QRenderStateSet*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
101240    #[inline(always)]
101241    unsafe fn static_downcast(
101242        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
101243    ) -> ::cpp_core::Ptr<crate::QRenderStateSet> {
101244        let ffi_result = {
101245            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderStateSet_ptr(
101246                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
101247            )
101248        };
101249        ::cpp_core::Ptr::from_raw(ffi_result)
101250    }
101251}
101252
101253impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QRenderStateSet {
101254    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderStateSet* ptr)```</span>.
101255    #[inline(always)]
101256    unsafe fn static_upcast(
101257        ptr: ::cpp_core::Ptr<crate::QRenderStateSet>,
101258    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
101259        let ffi_result = {
101260            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr12(
101261                ptr.as_raw_ptr() as *mut crate::QRenderStateSet,
101262            )
101263        };
101264        ::cpp_core::Ptr::from_raw(ffi_result)
101265    }
101266}
101267
101268impl ::std::ops::Deref for crate::QRenderStateSet {
101269    type Target = crate::QFrameGraphNode;
101270    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderStateSet* ptr)```</span>.
101271    #[inline(always)]
101272    fn deref(&self) -> &crate::QFrameGraphNode {
101273        let ffi_result = {
101274            unsafe {
101275                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr12(
101276                    self as *const crate::QRenderStateSet as *mut crate::QRenderStateSet,
101277                )
101278            }
101279        };
101280        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
101281    }
101282}
101283
101284impl ::cpp_core::DynamicCast<crate::QRenderStateSet> for crate::QFrameGraphNode {
101285    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderStateSet* dynamic_cast<Qt3DRender::QRenderStateSet*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
101286    #[inline(always)]
101287    unsafe fn dynamic_cast(
101288        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
101289    ) -> ::cpp_core::Ptr<crate::QRenderStateSet> {
101290        let ffi_result = {
101291            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderStateSet_ptr(
101292                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
101293            )
101294        };
101295        ::cpp_core::Ptr::from_raw(ffi_result)
101296    }
101297}
101298
101299impl ::cpp_core::StaticDowncast<crate::QRenderStateSet> for ::qt_3d_core::QNode {
101300    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderStateSet* static_cast<Qt3DRender::QRenderStateSet*>(Qt3DCore::QNode* ptr)```</span>.
101301    #[inline(always)]
101302    unsafe fn static_downcast(
101303        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101304    ) -> ::cpp_core::Ptr<crate::QRenderStateSet> {
101305        let ffi_result = {
101306            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderStateSet_ptr1(
101307                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101308            )
101309        };
101310        ::cpp_core::Ptr::from_raw(ffi_result)
101311    }
101312}
101313
101314impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderStateSet {
101315    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderStateSet* ptr)```</span>.
101316    #[inline(always)]
101317    unsafe fn static_upcast(
101318        ptr: ::cpp_core::Ptr<crate::QRenderStateSet>,
101319    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
101320        let ffi_result = {
101321            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr54(
101322                ptr.as_raw_ptr() as *mut crate::QRenderStateSet
101323            )
101324        };
101325        ::cpp_core::Ptr::from_raw(ffi_result)
101326    }
101327}
101328
101329impl ::cpp_core::DynamicCast<crate::QRenderStateSet> for ::qt_3d_core::QNode {
101330    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderStateSet* dynamic_cast<Qt3DRender::QRenderStateSet*>(Qt3DCore::QNode* ptr)```</span>.
101331    #[inline(always)]
101332    unsafe fn dynamic_cast(
101333        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101334    ) -> ::cpp_core::Ptr<crate::QRenderStateSet> {
101335        let ffi_result = {
101336            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderStateSet_ptr1(
101337                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101338            )
101339        };
101340        ::cpp_core::Ptr::from_raw(ffi_result)
101341    }
101342}
101343
101344impl ::cpp_core::StaticDowncast<crate::QRenderStateSet> for ::qt_core::QObject {
101345    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderStateSet* static_cast<Qt3DRender::QRenderStateSet*>(QObject* ptr)```</span>.
101346    #[inline(always)]
101347    unsafe fn static_downcast(
101348        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101349    ) -> ::cpp_core::Ptr<crate::QRenderStateSet> {
101350        let ffi_result = {
101351            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderStateSet_ptr2(
101352                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101353            )
101354        };
101355        ::cpp_core::Ptr::from_raw(ffi_result)
101356    }
101357}
101358
101359impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderStateSet {
101360    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderStateSet* ptr)```</span>.
101361    #[inline(always)]
101362    unsafe fn static_upcast(
101363        ptr: ::cpp_core::Ptr<crate::QRenderStateSet>,
101364    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
101365        let ffi_result = {
101366            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr59(
101367                ptr.as_raw_ptr() as *mut crate::QRenderStateSet
101368            )
101369        };
101370        ::cpp_core::Ptr::from_raw(ffi_result)
101371    }
101372}
101373
101374impl ::cpp_core::DynamicCast<crate::QRenderStateSet> for ::qt_core::QObject {
101375    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderStateSet* dynamic_cast<Qt3DRender::QRenderStateSet*>(QObject* ptr)```</span>.
101376    #[inline(always)]
101377    unsafe fn dynamic_cast(
101378        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101379    ) -> ::cpp_core::Ptr<crate::QRenderStateSet> {
101380        let ffi_result = {
101381            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderStateSet_ptr2(
101382                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101383            )
101384        };
101385        ::cpp_core::Ptr::from_raw(ffi_result)
101386    }
101387}
101388
101389impl ::cpp_core::StaticDowncast<crate::QRenderSurfaceSelector> for crate::QFrameGraphNode {
101390    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSurfaceSelector* static_cast<Qt3DRender::QRenderSurfaceSelector*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
101391    #[inline(always)]
101392    unsafe fn static_downcast(
101393        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
101394    ) -> ::cpp_core::Ptr<crate::QRenderSurfaceSelector> {
101395        let ffi_result = {
101396            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderSurfaceSelector_ptr(
101397                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
101398            )
101399        };
101400        ::cpp_core::Ptr::from_raw(ffi_result)
101401    }
101402}
101403
101404impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QRenderSurfaceSelector {
101405    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderSurfaceSelector* ptr)```</span>.
101406    #[inline(always)]
101407    unsafe fn static_upcast(
101408        ptr: ::cpp_core::Ptr<crate::QRenderSurfaceSelector>,
101409    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
101410        let ffi_result = {
101411            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr13(
101412                ptr.as_raw_ptr() as *mut crate::QRenderSurfaceSelector,
101413            )
101414        };
101415        ::cpp_core::Ptr::from_raw(ffi_result)
101416    }
101417}
101418
101419impl ::std::ops::Deref for crate::QRenderSurfaceSelector {
101420    type Target = crate::QFrameGraphNode;
101421    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderSurfaceSelector* ptr)```</span>.
101422    #[inline(always)]
101423    fn deref(&self) -> &crate::QFrameGraphNode {
101424        let ffi_result = {
101425            unsafe {
101426                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr13(
101427                    self as *const crate::QRenderSurfaceSelector
101428                        as *mut crate::QRenderSurfaceSelector,
101429                )
101430            }
101431        };
101432        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
101433    }
101434}
101435
101436impl ::cpp_core::DynamicCast<crate::QRenderSurfaceSelector> for crate::QFrameGraphNode {
101437    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSurfaceSelector* dynamic_cast<Qt3DRender::QRenderSurfaceSelector*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
101438    #[inline(always)]
101439    unsafe fn dynamic_cast(
101440        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
101441    ) -> ::cpp_core::Ptr<crate::QRenderSurfaceSelector> {
101442        let ffi_result = {
101443            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderSurfaceSelector_ptr(
101444                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
101445            )
101446        };
101447        ::cpp_core::Ptr::from_raw(ffi_result)
101448    }
101449}
101450
101451impl ::cpp_core::StaticDowncast<crate::QRenderSurfaceSelector> for ::qt_3d_core::QNode {
101452    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSurfaceSelector* static_cast<Qt3DRender::QRenderSurfaceSelector*>(Qt3DCore::QNode* ptr)```</span>.
101453    #[inline(always)]
101454    unsafe fn static_downcast(
101455        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101456    ) -> ::cpp_core::Ptr<crate::QRenderSurfaceSelector> {
101457        let ffi_result = {
101458            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderSurfaceSelector_ptr1(
101459                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101460            )
101461        };
101462        ::cpp_core::Ptr::from_raw(ffi_result)
101463    }
101464}
101465
101466impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderSurfaceSelector {
101467    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderSurfaceSelector* ptr)```</span>.
101468    #[inline(always)]
101469    unsafe fn static_upcast(
101470        ptr: ::cpp_core::Ptr<crate::QRenderSurfaceSelector>,
101471    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
101472        let ffi_result = {
101473            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr55(
101474                ptr.as_raw_ptr() as *mut crate::QRenderSurfaceSelector
101475            )
101476        };
101477        ::cpp_core::Ptr::from_raw(ffi_result)
101478    }
101479}
101480
101481impl ::cpp_core::DynamicCast<crate::QRenderSurfaceSelector> for ::qt_3d_core::QNode {
101482    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSurfaceSelector* dynamic_cast<Qt3DRender::QRenderSurfaceSelector*>(Qt3DCore::QNode* ptr)```</span>.
101483    #[inline(always)]
101484    unsafe fn dynamic_cast(
101485        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101486    ) -> ::cpp_core::Ptr<crate::QRenderSurfaceSelector> {
101487        let ffi_result = {
101488            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderSurfaceSelector_ptr1(
101489                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101490            )
101491        };
101492        ::cpp_core::Ptr::from_raw(ffi_result)
101493    }
101494}
101495
101496impl ::cpp_core::StaticDowncast<crate::QRenderSurfaceSelector> for ::qt_core::QObject {
101497    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSurfaceSelector* static_cast<Qt3DRender::QRenderSurfaceSelector*>(QObject* ptr)```</span>.
101498    #[inline(always)]
101499    unsafe fn static_downcast(
101500        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101501    ) -> ::cpp_core::Ptr<crate::QRenderSurfaceSelector> {
101502        let ffi_result = {
101503            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderSurfaceSelector_ptr2(
101504                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101505            )
101506        };
101507        ::cpp_core::Ptr::from_raw(ffi_result)
101508    }
101509}
101510
101511impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderSurfaceSelector {
101512    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderSurfaceSelector* ptr)```</span>.
101513    #[inline(always)]
101514    unsafe fn static_upcast(
101515        ptr: ::cpp_core::Ptr<crate::QRenderSurfaceSelector>,
101516    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
101517        let ffi_result = {
101518            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr60(
101519                ptr.as_raw_ptr() as *mut crate::QRenderSurfaceSelector
101520            )
101521        };
101522        ::cpp_core::Ptr::from_raw(ffi_result)
101523    }
101524}
101525
101526impl ::cpp_core::DynamicCast<crate::QRenderSurfaceSelector> for ::qt_core::QObject {
101527    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderSurfaceSelector* dynamic_cast<Qt3DRender::QRenderSurfaceSelector*>(QObject* ptr)```</span>.
101528    #[inline(always)]
101529    unsafe fn dynamic_cast(
101530        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101531    ) -> ::cpp_core::Ptr<crate::QRenderSurfaceSelector> {
101532        let ffi_result = {
101533            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderSurfaceSelector_ptr2(
101534                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101535            )
101536        };
101537        ::cpp_core::Ptr::from_raw(ffi_result)
101538    }
101539}
101540
101541impl ::cpp_core::StaticDowncast<crate::QRenderTarget> for ::qt_3d_core::QComponent {
101542    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTarget* static_cast<Qt3DRender::QRenderTarget*>(Qt3DCore::QComponent* ptr)```</span>.
101543    #[inline(always)]
101544    unsafe fn static_downcast(
101545        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
101546    ) -> ::cpp_core::Ptr<crate::QRenderTarget> {
101547        let ffi_result = {
101548            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderTarget_ptr(
101549                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
101550            )
101551        };
101552        ::cpp_core::Ptr::from_raw(ffi_result)
101553    }
101554}
101555
101556impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QRenderTarget {
101557    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QRenderTarget* ptr)```</span>.
101558    #[inline(always)]
101559    unsafe fn static_upcast(
101560        ptr: ::cpp_core::Ptr<crate::QRenderTarget>,
101561    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
101562        let ffi_result = {
101563            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr14(
101564                ptr.as_raw_ptr() as *mut crate::QRenderTarget,
101565            )
101566        };
101567        ::cpp_core::Ptr::from_raw(ffi_result)
101568    }
101569}
101570
101571impl ::std::ops::Deref for crate::QRenderTarget {
101572    type Target = ::qt_3d_core::QComponent;
101573    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QRenderTarget* ptr)```</span>.
101574    #[inline(always)]
101575    fn deref(&self) -> &::qt_3d_core::QComponent {
101576        let ffi_result = {
101577            unsafe {
101578                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr14(
101579                    self as *const crate::QRenderTarget as *mut crate::QRenderTarget,
101580                )
101581            }
101582        };
101583        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
101584    }
101585}
101586
101587impl ::cpp_core::DynamicCast<crate::QRenderTarget> for ::qt_3d_core::QComponent {
101588    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTarget* dynamic_cast<Qt3DRender::QRenderTarget*>(Qt3DCore::QComponent* ptr)```</span>.
101589    #[inline(always)]
101590    unsafe fn dynamic_cast(
101591        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
101592    ) -> ::cpp_core::Ptr<crate::QRenderTarget> {
101593        let ffi_result = {
101594            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderTarget_ptr(
101595                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
101596            )
101597        };
101598        ::cpp_core::Ptr::from_raw(ffi_result)
101599    }
101600}
101601
101602impl ::cpp_core::StaticDowncast<crate::QRenderTarget> for ::qt_3d_core::QNode {
101603    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTarget* static_cast<Qt3DRender::QRenderTarget*>(Qt3DCore::QNode* ptr)```</span>.
101604    #[inline(always)]
101605    unsafe fn static_downcast(
101606        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101607    ) -> ::cpp_core::Ptr<crate::QRenderTarget> {
101608        let ffi_result = {
101609            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderTarget_ptr1(
101610                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101611            )
101612        };
101613        ::cpp_core::Ptr::from_raw(ffi_result)
101614    }
101615}
101616
101617impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderTarget {
101618    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderTarget* ptr)```</span>.
101619    #[inline(always)]
101620    unsafe fn static_upcast(
101621        ptr: ::cpp_core::Ptr<crate::QRenderTarget>,
101622    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
101623        let ffi_result = {
101624            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr56(
101625                ptr.as_raw_ptr() as *mut crate::QRenderTarget
101626            )
101627        };
101628        ::cpp_core::Ptr::from_raw(ffi_result)
101629    }
101630}
101631
101632impl ::cpp_core::DynamicCast<crate::QRenderTarget> for ::qt_3d_core::QNode {
101633    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTarget* dynamic_cast<Qt3DRender::QRenderTarget*>(Qt3DCore::QNode* ptr)```</span>.
101634    #[inline(always)]
101635    unsafe fn dynamic_cast(
101636        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101637    ) -> ::cpp_core::Ptr<crate::QRenderTarget> {
101638        let ffi_result = {
101639            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderTarget_ptr1(
101640                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101641            )
101642        };
101643        ::cpp_core::Ptr::from_raw(ffi_result)
101644    }
101645}
101646
101647impl ::cpp_core::StaticDowncast<crate::QRenderTarget> for ::qt_core::QObject {
101648    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTarget* static_cast<Qt3DRender::QRenderTarget*>(QObject* ptr)```</span>.
101649    #[inline(always)]
101650    unsafe fn static_downcast(
101651        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101652    ) -> ::cpp_core::Ptr<crate::QRenderTarget> {
101653        let ffi_result = {
101654            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderTarget_ptr2(
101655                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101656            )
101657        };
101658        ::cpp_core::Ptr::from_raw(ffi_result)
101659    }
101660}
101661
101662impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderTarget {
101663    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderTarget* ptr)```</span>.
101664    #[inline(always)]
101665    unsafe fn static_upcast(
101666        ptr: ::cpp_core::Ptr<crate::QRenderTarget>,
101667    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
101668        let ffi_result = {
101669            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr61(
101670                ptr.as_raw_ptr() as *mut crate::QRenderTarget
101671            )
101672        };
101673        ::cpp_core::Ptr::from_raw(ffi_result)
101674    }
101675}
101676
101677impl ::cpp_core::DynamicCast<crate::QRenderTarget> for ::qt_core::QObject {
101678    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTarget* dynamic_cast<Qt3DRender::QRenderTarget*>(QObject* ptr)```</span>.
101679    #[inline(always)]
101680    unsafe fn dynamic_cast(
101681        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101682    ) -> ::cpp_core::Ptr<crate::QRenderTarget> {
101683        let ffi_result = {
101684            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderTarget_ptr2(
101685                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101686            )
101687        };
101688        ::cpp_core::Ptr::from_raw(ffi_result)
101689    }
101690}
101691
101692impl ::cpp_core::StaticDowncast<crate::QRenderTargetSelector> for crate::QFrameGraphNode {
101693    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetSelector* static_cast<Qt3DRender::QRenderTargetSelector*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
101694    #[inline(always)]
101695    unsafe fn static_downcast(
101696        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
101697    ) -> ::cpp_core::Ptr<crate::QRenderTargetSelector> {
101698        let ffi_result = {
101699            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderTargetSelector_ptr(
101700                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
101701            )
101702        };
101703        ::cpp_core::Ptr::from_raw(ffi_result)
101704    }
101705}
101706
101707impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QRenderTargetSelector {
101708    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderTargetSelector* ptr)```</span>.
101709    #[inline(always)]
101710    unsafe fn static_upcast(
101711        ptr: ::cpp_core::Ptr<crate::QRenderTargetSelector>,
101712    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
101713        let ffi_result = {
101714            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr14(
101715                ptr.as_raw_ptr() as *mut crate::QRenderTargetSelector,
101716            )
101717        };
101718        ::cpp_core::Ptr::from_raw(ffi_result)
101719    }
101720}
101721
101722impl ::std::ops::Deref for crate::QRenderTargetSelector {
101723    type Target = crate::QFrameGraphNode;
101724    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QRenderTargetSelector* ptr)```</span>.
101725    #[inline(always)]
101726    fn deref(&self) -> &crate::QFrameGraphNode {
101727        let ffi_result = {
101728            unsafe {
101729                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr14(
101730                    self as *const crate::QRenderTargetSelector
101731                        as *mut crate::QRenderTargetSelector,
101732                )
101733            }
101734        };
101735        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
101736    }
101737}
101738
101739impl ::cpp_core::DynamicCast<crate::QRenderTargetSelector> for crate::QFrameGraphNode {
101740    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetSelector* dynamic_cast<Qt3DRender::QRenderTargetSelector*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
101741    #[inline(always)]
101742    unsafe fn dynamic_cast(
101743        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
101744    ) -> ::cpp_core::Ptr<crate::QRenderTargetSelector> {
101745        let ffi_result = {
101746            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderTargetSelector_ptr(
101747                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
101748            )
101749        };
101750        ::cpp_core::Ptr::from_raw(ffi_result)
101751    }
101752}
101753
101754impl ::cpp_core::StaticDowncast<crate::QRenderTargetSelector> for ::qt_3d_core::QNode {
101755    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetSelector* static_cast<Qt3DRender::QRenderTargetSelector*>(Qt3DCore::QNode* ptr)```</span>.
101756    #[inline(always)]
101757    unsafe fn static_downcast(
101758        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101759    ) -> ::cpp_core::Ptr<crate::QRenderTargetSelector> {
101760        let ffi_result = {
101761            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderTargetSelector_ptr1(
101762                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101763            )
101764        };
101765        ::cpp_core::Ptr::from_raw(ffi_result)
101766    }
101767}
101768
101769impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRenderTargetSelector {
101770    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRenderTargetSelector* ptr)```</span>.
101771    #[inline(always)]
101772    unsafe fn static_upcast(
101773        ptr: ::cpp_core::Ptr<crate::QRenderTargetSelector>,
101774    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
101775        let ffi_result = {
101776            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr57(
101777                ptr.as_raw_ptr() as *mut crate::QRenderTargetSelector
101778            )
101779        };
101780        ::cpp_core::Ptr::from_raw(ffi_result)
101781    }
101782}
101783
101784impl ::cpp_core::DynamicCast<crate::QRenderTargetSelector> for ::qt_3d_core::QNode {
101785    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetSelector* dynamic_cast<Qt3DRender::QRenderTargetSelector*>(Qt3DCore::QNode* ptr)```</span>.
101786    #[inline(always)]
101787    unsafe fn dynamic_cast(
101788        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101789    ) -> ::cpp_core::Ptr<crate::QRenderTargetSelector> {
101790        let ffi_result = {
101791            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderTargetSelector_ptr1(
101792                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101793            )
101794        };
101795        ::cpp_core::Ptr::from_raw(ffi_result)
101796    }
101797}
101798
101799impl ::cpp_core::StaticDowncast<crate::QRenderTargetSelector> for ::qt_core::QObject {
101800    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetSelector* static_cast<Qt3DRender::QRenderTargetSelector*>(QObject* ptr)```</span>.
101801    #[inline(always)]
101802    unsafe fn static_downcast(
101803        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101804    ) -> ::cpp_core::Ptr<crate::QRenderTargetSelector> {
101805        let ffi_result = {
101806            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderTargetSelector_ptr2(
101807                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101808            )
101809        };
101810        ::cpp_core::Ptr::from_raw(ffi_result)
101811    }
101812}
101813
101814impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRenderTargetSelector {
101815    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRenderTargetSelector* ptr)```</span>.
101816    #[inline(always)]
101817    unsafe fn static_upcast(
101818        ptr: ::cpp_core::Ptr<crate::QRenderTargetSelector>,
101819    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
101820        let ffi_result = {
101821            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr62(
101822                ptr.as_raw_ptr() as *mut crate::QRenderTargetSelector
101823            )
101824        };
101825        ::cpp_core::Ptr::from_raw(ffi_result)
101826    }
101827}
101828
101829impl ::cpp_core::DynamicCast<crate::QRenderTargetSelector> for ::qt_core::QObject {
101830    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderTargetSelector* dynamic_cast<Qt3DRender::QRenderTargetSelector*>(QObject* ptr)```</span>.
101831    #[inline(always)]
101832    unsafe fn dynamic_cast(
101833        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101834    ) -> ::cpp_core::Ptr<crate::QRenderTargetSelector> {
101835        let ffi_result = {
101836            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRenderTargetSelector_ptr2(
101837                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101838            )
101839        };
101840        ::cpp_core::Ptr::from_raw(ffi_result)
101841    }
101842}
101843
101844impl ::cpp_core::StaticDowncast<crate::QSceneLoader> for ::qt_3d_core::QComponent {
101845    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSceneLoader* static_cast<Qt3DRender::QSceneLoader*>(Qt3DCore::QComponent* ptr)```</span>.
101846    #[inline(always)]
101847    unsafe fn static_downcast(
101848        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
101849    ) -> ::cpp_core::Ptr<crate::QSceneLoader> {
101850        let ffi_result = {
101851            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSceneLoader_ptr(
101852                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
101853            )
101854        };
101855        ::cpp_core::Ptr::from_raw(ffi_result)
101856    }
101857}
101858
101859impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QSceneLoader {
101860    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QSceneLoader* ptr)```</span>.
101861    #[inline(always)]
101862    unsafe fn static_upcast(
101863        ptr: ::cpp_core::Ptr<crate::QSceneLoader>,
101864    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
101865        let ffi_result = {
101866            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr15(
101867                ptr.as_raw_ptr() as *mut crate::QSceneLoader,
101868            )
101869        };
101870        ::cpp_core::Ptr::from_raw(ffi_result)
101871    }
101872}
101873
101874impl ::std::ops::Deref for crate::QSceneLoader {
101875    type Target = ::qt_3d_core::QComponent;
101876    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QSceneLoader* ptr)```</span>.
101877    #[inline(always)]
101878    fn deref(&self) -> &::qt_3d_core::QComponent {
101879        let ffi_result = {
101880            unsafe {
101881                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr15(
101882                    self as *const crate::QSceneLoader as *mut crate::QSceneLoader,
101883                )
101884            }
101885        };
101886        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
101887    }
101888}
101889
101890impl ::cpp_core::DynamicCast<crate::QSceneLoader> for ::qt_3d_core::QComponent {
101891    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSceneLoader* dynamic_cast<Qt3DRender::QSceneLoader*>(Qt3DCore::QComponent* ptr)```</span>.
101892    #[inline(always)]
101893    unsafe fn dynamic_cast(
101894        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
101895    ) -> ::cpp_core::Ptr<crate::QSceneLoader> {
101896        let ffi_result = {
101897            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSceneLoader_ptr(
101898                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
101899            )
101900        };
101901        ::cpp_core::Ptr::from_raw(ffi_result)
101902    }
101903}
101904
101905impl ::cpp_core::StaticDowncast<crate::QSceneLoader> for ::qt_3d_core::QNode {
101906    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSceneLoader* static_cast<Qt3DRender::QSceneLoader*>(Qt3DCore::QNode* ptr)```</span>.
101907    #[inline(always)]
101908    unsafe fn static_downcast(
101909        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101910    ) -> ::cpp_core::Ptr<crate::QSceneLoader> {
101911        let ffi_result = {
101912            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSceneLoader_ptr1(
101913                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101914            )
101915        };
101916        ::cpp_core::Ptr::from_raw(ffi_result)
101917    }
101918}
101919
101920impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QSceneLoader {
101921    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QSceneLoader* ptr)```</span>.
101922    #[inline(always)]
101923    unsafe fn static_upcast(
101924        ptr: ::cpp_core::Ptr<crate::QSceneLoader>,
101925    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
101926        let ffi_result = {
101927            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr58(
101928                ptr.as_raw_ptr() as *mut crate::QSceneLoader
101929            )
101930        };
101931        ::cpp_core::Ptr::from_raw(ffi_result)
101932    }
101933}
101934
101935impl ::cpp_core::DynamicCast<crate::QSceneLoader> for ::qt_3d_core::QNode {
101936    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSceneLoader* dynamic_cast<Qt3DRender::QSceneLoader*>(Qt3DCore::QNode* ptr)```</span>.
101937    #[inline(always)]
101938    unsafe fn dynamic_cast(
101939        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
101940    ) -> ::cpp_core::Ptr<crate::QSceneLoader> {
101941        let ffi_result = {
101942            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSceneLoader_ptr1(
101943                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
101944            )
101945        };
101946        ::cpp_core::Ptr::from_raw(ffi_result)
101947    }
101948}
101949
101950impl ::cpp_core::StaticDowncast<crate::QSceneLoader> for ::qt_core::QObject {
101951    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSceneLoader* static_cast<Qt3DRender::QSceneLoader*>(QObject* ptr)```</span>.
101952    #[inline(always)]
101953    unsafe fn static_downcast(
101954        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101955    ) -> ::cpp_core::Ptr<crate::QSceneLoader> {
101956        let ffi_result = {
101957            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSceneLoader_ptr2(
101958                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101959            )
101960        };
101961        ::cpp_core::Ptr::from_raw(ffi_result)
101962    }
101963}
101964
101965impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QSceneLoader {
101966    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QSceneLoader* ptr)```</span>.
101967    #[inline(always)]
101968    unsafe fn static_upcast(
101969        ptr: ::cpp_core::Ptr<crate::QSceneLoader>,
101970    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
101971        let ffi_result = {
101972            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr63(
101973                ptr.as_raw_ptr() as *mut crate::QSceneLoader
101974            )
101975        };
101976        ::cpp_core::Ptr::from_raw(ffi_result)
101977    }
101978}
101979
101980impl ::cpp_core::DynamicCast<crate::QSceneLoader> for ::qt_core::QObject {
101981    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSceneLoader* dynamic_cast<Qt3DRender::QSceneLoader*>(QObject* ptr)```</span>.
101982    #[inline(always)]
101983    unsafe fn dynamic_cast(
101984        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
101985    ) -> ::cpp_core::Ptr<crate::QSceneLoader> {
101986        let ffi_result = {
101987            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSceneLoader_ptr2(
101988                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
101989            )
101990        };
101991        ::cpp_core::Ptr::from_raw(ffi_result)
101992    }
101993}
101994
101995impl ::cpp_core::StaticDowncast<crate::QScissorTest> for crate::QRenderState {
101996    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScissorTest* static_cast<Qt3DRender::QScissorTest*>(Qt3DRender::QRenderState* ptr)```</span>.
101997    #[inline(always)]
101998    unsafe fn static_downcast(
101999        ptr: ::cpp_core::Ptr<crate::QRenderState>,
102000    ) -> ::cpp_core::Ptr<crate::QScissorTest> {
102001        let ffi_result = {
102002            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QScissorTest_ptr(
102003                ptr.as_raw_ptr() as *mut crate::QRenderState,
102004            )
102005        };
102006        ::cpp_core::Ptr::from_raw(ffi_result)
102007    }
102008}
102009
102010impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QScissorTest {
102011    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QScissorTest* ptr)```</span>.
102012    #[inline(always)]
102013    unsafe fn static_upcast(
102014        ptr: ::cpp_core::Ptr<crate::QScissorTest>,
102015    ) -> ::cpp_core::Ptr<crate::QRenderState> {
102016        let ffi_result = {
102017            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr16(
102018                ptr.as_raw_ptr() as *mut crate::QScissorTest,
102019            )
102020        };
102021        ::cpp_core::Ptr::from_raw(ffi_result)
102022    }
102023}
102024
102025impl ::std::ops::Deref for crate::QScissorTest {
102026    type Target = crate::QRenderState;
102027    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QScissorTest* ptr)```</span>.
102028    #[inline(always)]
102029    fn deref(&self) -> &crate::QRenderState {
102030        let ffi_result = {
102031            unsafe {
102032                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr16(
102033                    self as *const crate::QScissorTest as *mut crate::QScissorTest,
102034                )
102035            }
102036        };
102037        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
102038    }
102039}
102040
102041impl ::cpp_core::DynamicCast<crate::QScissorTest> for crate::QRenderState {
102042    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScissorTest* dynamic_cast<Qt3DRender::QScissorTest*>(Qt3DRender::QRenderState* ptr)```</span>.
102043    #[inline(always)]
102044    unsafe fn dynamic_cast(
102045        ptr: ::cpp_core::Ptr<crate::QRenderState>,
102046    ) -> ::cpp_core::Ptr<crate::QScissorTest> {
102047        let ffi_result = {
102048            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QScissorTest_ptr(
102049                ptr.as_raw_ptr() as *mut crate::QRenderState,
102050            )
102051        };
102052        ::cpp_core::Ptr::from_raw(ffi_result)
102053    }
102054}
102055
102056impl ::cpp_core::StaticDowncast<crate::QScissorTest> for ::qt_3d_core::QNode {
102057    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScissorTest* static_cast<Qt3DRender::QScissorTest*>(Qt3DCore::QNode* ptr)```</span>.
102058    #[inline(always)]
102059    unsafe fn static_downcast(
102060        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102061    ) -> ::cpp_core::Ptr<crate::QScissorTest> {
102062        let ffi_result = {
102063            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QScissorTest_ptr1(
102064                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102065            )
102066        };
102067        ::cpp_core::Ptr::from_raw(ffi_result)
102068    }
102069}
102070
102071impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QScissorTest {
102072    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QScissorTest* ptr)```</span>.
102073    #[inline(always)]
102074    unsafe fn static_upcast(
102075        ptr: ::cpp_core::Ptr<crate::QScissorTest>,
102076    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
102077        let ffi_result = {
102078            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr59(
102079                ptr.as_raw_ptr() as *mut crate::QScissorTest
102080            )
102081        };
102082        ::cpp_core::Ptr::from_raw(ffi_result)
102083    }
102084}
102085
102086impl ::cpp_core::DynamicCast<crate::QScissorTest> for ::qt_3d_core::QNode {
102087    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScissorTest* dynamic_cast<Qt3DRender::QScissorTest*>(Qt3DCore::QNode* ptr)```</span>.
102088    #[inline(always)]
102089    unsafe fn dynamic_cast(
102090        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102091    ) -> ::cpp_core::Ptr<crate::QScissorTest> {
102092        let ffi_result = {
102093            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QScissorTest_ptr1(
102094                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102095            )
102096        };
102097        ::cpp_core::Ptr::from_raw(ffi_result)
102098    }
102099}
102100
102101impl ::cpp_core::StaticDowncast<crate::QScissorTest> for ::qt_core::QObject {
102102    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScissorTest* static_cast<Qt3DRender::QScissorTest*>(QObject* ptr)```</span>.
102103    #[inline(always)]
102104    unsafe fn static_downcast(
102105        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102106    ) -> ::cpp_core::Ptr<crate::QScissorTest> {
102107        let ffi_result = {
102108            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QScissorTest_ptr2(
102109                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102110            )
102111        };
102112        ::cpp_core::Ptr::from_raw(ffi_result)
102113    }
102114}
102115
102116impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QScissorTest {
102117    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QScissorTest* ptr)```</span>.
102118    #[inline(always)]
102119    unsafe fn static_upcast(
102120        ptr: ::cpp_core::Ptr<crate::QScissorTest>,
102121    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
102122        let ffi_result = {
102123            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr64(
102124                ptr.as_raw_ptr() as *mut crate::QScissorTest
102125            )
102126        };
102127        ::cpp_core::Ptr::from_raw(ffi_result)
102128    }
102129}
102130
102131impl ::cpp_core::DynamicCast<crate::QScissorTest> for ::qt_core::QObject {
102132    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScissorTest* dynamic_cast<Qt3DRender::QScissorTest*>(QObject* ptr)```</span>.
102133    #[inline(always)]
102134    unsafe fn dynamic_cast(
102135        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102136    ) -> ::cpp_core::Ptr<crate::QScissorTest> {
102137        let ffi_result = {
102138            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QScissorTest_ptr2(
102139                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102140            )
102141        };
102142        ::cpp_core::Ptr::from_raw(ffi_result)
102143    }
102144}
102145
102146impl ::cpp_core::StaticDowncast<crate::QSeamlessCubemap> for crate::QRenderState {
102147    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSeamlessCubemap* static_cast<Qt3DRender::QSeamlessCubemap*>(Qt3DRender::QRenderState* ptr)```</span>.
102148    #[inline(always)]
102149    unsafe fn static_downcast(
102150        ptr: ::cpp_core::Ptr<crate::QRenderState>,
102151    ) -> ::cpp_core::Ptr<crate::QSeamlessCubemap> {
102152        let ffi_result = {
102153            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSeamlessCubemap_ptr(
102154                ptr.as_raw_ptr() as *mut crate::QRenderState,
102155            )
102156        };
102157        ::cpp_core::Ptr::from_raw(ffi_result)
102158    }
102159}
102160
102161impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QSeamlessCubemap {
102162    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QSeamlessCubemap* ptr)```</span>.
102163    #[inline(always)]
102164    unsafe fn static_upcast(
102165        ptr: ::cpp_core::Ptr<crate::QSeamlessCubemap>,
102166    ) -> ::cpp_core::Ptr<crate::QRenderState> {
102167        let ffi_result = {
102168            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr17(
102169                ptr.as_raw_ptr() as *mut crate::QSeamlessCubemap,
102170            )
102171        };
102172        ::cpp_core::Ptr::from_raw(ffi_result)
102173    }
102174}
102175
102176impl ::std::ops::Deref for crate::QSeamlessCubemap {
102177    type Target = crate::QRenderState;
102178    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QSeamlessCubemap* ptr)```</span>.
102179    #[inline(always)]
102180    fn deref(&self) -> &crate::QRenderState {
102181        let ffi_result = {
102182            unsafe {
102183                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr17(
102184                    self as *const crate::QSeamlessCubemap as *mut crate::QSeamlessCubemap,
102185                )
102186            }
102187        };
102188        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
102189    }
102190}
102191
102192impl ::cpp_core::DynamicCast<crate::QSeamlessCubemap> for crate::QRenderState {
102193    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSeamlessCubemap* dynamic_cast<Qt3DRender::QSeamlessCubemap*>(Qt3DRender::QRenderState* ptr)```</span>.
102194    #[inline(always)]
102195    unsafe fn dynamic_cast(
102196        ptr: ::cpp_core::Ptr<crate::QRenderState>,
102197    ) -> ::cpp_core::Ptr<crate::QSeamlessCubemap> {
102198        let ffi_result = {
102199            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSeamlessCubemap_ptr(
102200                ptr.as_raw_ptr() as *mut crate::QRenderState,
102201            )
102202        };
102203        ::cpp_core::Ptr::from_raw(ffi_result)
102204    }
102205}
102206
102207impl ::cpp_core::StaticDowncast<crate::QSeamlessCubemap> for ::qt_3d_core::QNode {
102208    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSeamlessCubemap* static_cast<Qt3DRender::QSeamlessCubemap*>(Qt3DCore::QNode* ptr)```</span>.
102209    #[inline(always)]
102210    unsafe fn static_downcast(
102211        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102212    ) -> ::cpp_core::Ptr<crate::QSeamlessCubemap> {
102213        let ffi_result = {
102214            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSeamlessCubemap_ptr1(
102215                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102216            )
102217        };
102218        ::cpp_core::Ptr::from_raw(ffi_result)
102219    }
102220}
102221
102222impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QSeamlessCubemap {
102223    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QSeamlessCubemap* ptr)```</span>.
102224    #[inline(always)]
102225    unsafe fn static_upcast(
102226        ptr: ::cpp_core::Ptr<crate::QSeamlessCubemap>,
102227    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
102228        let ffi_result = {
102229            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr60(
102230                ptr.as_raw_ptr() as *mut crate::QSeamlessCubemap
102231            )
102232        };
102233        ::cpp_core::Ptr::from_raw(ffi_result)
102234    }
102235}
102236
102237impl ::cpp_core::DynamicCast<crate::QSeamlessCubemap> for ::qt_3d_core::QNode {
102238    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSeamlessCubemap* dynamic_cast<Qt3DRender::QSeamlessCubemap*>(Qt3DCore::QNode* ptr)```</span>.
102239    #[inline(always)]
102240    unsafe fn dynamic_cast(
102241        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102242    ) -> ::cpp_core::Ptr<crate::QSeamlessCubemap> {
102243        let ffi_result = {
102244            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSeamlessCubemap_ptr1(
102245                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102246            )
102247        };
102248        ::cpp_core::Ptr::from_raw(ffi_result)
102249    }
102250}
102251
102252impl ::cpp_core::StaticDowncast<crate::QSeamlessCubemap> for ::qt_core::QObject {
102253    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSeamlessCubemap* static_cast<Qt3DRender::QSeamlessCubemap*>(QObject* ptr)```</span>.
102254    #[inline(always)]
102255    unsafe fn static_downcast(
102256        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102257    ) -> ::cpp_core::Ptr<crate::QSeamlessCubemap> {
102258        let ffi_result = {
102259            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSeamlessCubemap_ptr2(
102260                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102261            )
102262        };
102263        ::cpp_core::Ptr::from_raw(ffi_result)
102264    }
102265}
102266
102267impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QSeamlessCubemap {
102268    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QSeamlessCubemap* ptr)```</span>.
102269    #[inline(always)]
102270    unsafe fn static_upcast(
102271        ptr: ::cpp_core::Ptr<crate::QSeamlessCubemap>,
102272    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
102273        let ffi_result = {
102274            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr65(
102275                ptr.as_raw_ptr() as *mut crate::QSeamlessCubemap
102276            )
102277        };
102278        ::cpp_core::Ptr::from_raw(ffi_result)
102279    }
102280}
102281
102282impl ::cpp_core::DynamicCast<crate::QSeamlessCubemap> for ::qt_core::QObject {
102283    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSeamlessCubemap* dynamic_cast<Qt3DRender::QSeamlessCubemap*>(QObject* ptr)```</span>.
102284    #[inline(always)]
102285    unsafe fn dynamic_cast(
102286        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102287    ) -> ::cpp_core::Ptr<crate::QSeamlessCubemap> {
102288        let ffi_result = {
102289            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSeamlessCubemap_ptr2(
102290                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102291            )
102292        };
102293        ::cpp_core::Ptr::from_raw(ffi_result)
102294    }
102295}
102296
102297impl ::cpp_core::StaticDowncast<crate::QShaderData> for ::qt_3d_core::QComponent {
102298    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderData* static_cast<Qt3DRender::QShaderData*>(Qt3DCore::QComponent* ptr)```</span>.
102299    #[inline(always)]
102300    unsafe fn static_downcast(
102301        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
102302    ) -> ::cpp_core::Ptr<crate::QShaderData> {
102303        let ffi_result = {
102304            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QShaderData_ptr(
102305                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
102306            )
102307        };
102308        ::cpp_core::Ptr::from_raw(ffi_result)
102309    }
102310}
102311
102312impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QShaderData {
102313    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QShaderData* ptr)```</span>.
102314    #[inline(always)]
102315    unsafe fn static_upcast(
102316        ptr: ::cpp_core::Ptr<crate::QShaderData>,
102317    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
102318        let ffi_result = {
102319            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr16(
102320                ptr.as_raw_ptr() as *mut crate::QShaderData,
102321            )
102322        };
102323        ::cpp_core::Ptr::from_raw(ffi_result)
102324    }
102325}
102326
102327impl ::std::ops::Deref for crate::QShaderData {
102328    type Target = ::qt_3d_core::QComponent;
102329    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QShaderData* ptr)```</span>.
102330    #[inline(always)]
102331    fn deref(&self) -> &::qt_3d_core::QComponent {
102332        let ffi_result = {
102333            unsafe {
102334                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr16(
102335                    self as *const crate::QShaderData as *mut crate::QShaderData,
102336                )
102337            }
102338        };
102339        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
102340    }
102341}
102342
102343impl ::cpp_core::DynamicCast<crate::QShaderData> for ::qt_3d_core::QComponent {
102344    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderData* dynamic_cast<Qt3DRender::QShaderData*>(Qt3DCore::QComponent* ptr)```</span>.
102345    #[inline(always)]
102346    unsafe fn dynamic_cast(
102347        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
102348    ) -> ::cpp_core::Ptr<crate::QShaderData> {
102349        let ffi_result = {
102350            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QShaderData_ptr(
102351                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
102352            )
102353        };
102354        ::cpp_core::Ptr::from_raw(ffi_result)
102355    }
102356}
102357
102358impl ::cpp_core::StaticDowncast<crate::QShaderData> for ::qt_3d_core::QNode {
102359    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderData* static_cast<Qt3DRender::QShaderData*>(Qt3DCore::QNode* ptr)```</span>.
102360    #[inline(always)]
102361    unsafe fn static_downcast(
102362        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102363    ) -> ::cpp_core::Ptr<crate::QShaderData> {
102364        let ffi_result = {
102365            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QShaderData_ptr1(
102366                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102367            )
102368        };
102369        ::cpp_core::Ptr::from_raw(ffi_result)
102370    }
102371}
102372
102373impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QShaderData {
102374    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QShaderData* ptr)```</span>.
102375    #[inline(always)]
102376    unsafe fn static_upcast(
102377        ptr: ::cpp_core::Ptr<crate::QShaderData>,
102378    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
102379        let ffi_result = {
102380            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr61(
102381                ptr.as_raw_ptr() as *mut crate::QShaderData
102382            )
102383        };
102384        ::cpp_core::Ptr::from_raw(ffi_result)
102385    }
102386}
102387
102388impl ::cpp_core::DynamicCast<crate::QShaderData> for ::qt_3d_core::QNode {
102389    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderData* dynamic_cast<Qt3DRender::QShaderData*>(Qt3DCore::QNode* ptr)```</span>.
102390    #[inline(always)]
102391    unsafe fn dynamic_cast(
102392        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102393    ) -> ::cpp_core::Ptr<crate::QShaderData> {
102394        let ffi_result = {
102395            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QShaderData_ptr1(
102396                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102397            )
102398        };
102399        ::cpp_core::Ptr::from_raw(ffi_result)
102400    }
102401}
102402
102403impl ::cpp_core::StaticDowncast<crate::QShaderData> for ::qt_core::QObject {
102404    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderData* static_cast<Qt3DRender::QShaderData*>(QObject* ptr)```</span>.
102405    #[inline(always)]
102406    unsafe fn static_downcast(
102407        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102408    ) -> ::cpp_core::Ptr<crate::QShaderData> {
102409        let ffi_result = {
102410            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QShaderData_ptr2(
102411                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102412            )
102413        };
102414        ::cpp_core::Ptr::from_raw(ffi_result)
102415    }
102416}
102417
102418impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QShaderData {
102419    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QShaderData* ptr)```</span>.
102420    #[inline(always)]
102421    unsafe fn static_upcast(
102422        ptr: ::cpp_core::Ptr<crate::QShaderData>,
102423    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
102424        let ffi_result = {
102425            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr66(
102426                ptr.as_raw_ptr() as *mut crate::QShaderData
102427            )
102428        };
102429        ::cpp_core::Ptr::from_raw(ffi_result)
102430    }
102431}
102432
102433impl ::cpp_core::DynamicCast<crate::QShaderData> for ::qt_core::QObject {
102434    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderData* dynamic_cast<Qt3DRender::QShaderData*>(QObject* ptr)```</span>.
102435    #[inline(always)]
102436    unsafe fn dynamic_cast(
102437        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102438    ) -> ::cpp_core::Ptr<crate::QShaderData> {
102439        let ffi_result = {
102440            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QShaderData_ptr2(
102441                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102442            )
102443        };
102444        ::cpp_core::Ptr::from_raw(ffi_result)
102445    }
102446}
102447
102448impl ::cpp_core::StaticDowncast<crate::QSortPolicy> for crate::QFrameGraphNode {
102449    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy* static_cast<Qt3DRender::QSortPolicy*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
102450    #[inline(always)]
102451    unsafe fn static_downcast(
102452        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
102453    ) -> ::cpp_core::Ptr<crate::QSortPolicy> {
102454        let ffi_result = {
102455            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSortPolicy_ptr(
102456                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
102457            )
102458        };
102459        ::cpp_core::Ptr::from_raw(ffi_result)
102460    }
102461}
102462
102463impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QSortPolicy {
102464    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QSortPolicy* ptr)```</span>.
102465    #[inline(always)]
102466    unsafe fn static_upcast(
102467        ptr: ::cpp_core::Ptr<crate::QSortPolicy>,
102468    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
102469        let ffi_result = {
102470            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr15(
102471                ptr.as_raw_ptr() as *mut crate::QSortPolicy,
102472            )
102473        };
102474        ::cpp_core::Ptr::from_raw(ffi_result)
102475    }
102476}
102477
102478impl ::std::ops::Deref for crate::QSortPolicy {
102479    type Target = crate::QFrameGraphNode;
102480    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QSortPolicy* ptr)```</span>.
102481    #[inline(always)]
102482    fn deref(&self) -> &crate::QFrameGraphNode {
102483        let ffi_result = {
102484            unsafe {
102485                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr15(
102486                    self as *const crate::QSortPolicy as *mut crate::QSortPolicy,
102487                )
102488            }
102489        };
102490        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
102491    }
102492}
102493
102494impl ::cpp_core::DynamicCast<crate::QSortPolicy> for crate::QFrameGraphNode {
102495    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy* dynamic_cast<Qt3DRender::QSortPolicy*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
102496    #[inline(always)]
102497    unsafe fn dynamic_cast(
102498        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
102499    ) -> ::cpp_core::Ptr<crate::QSortPolicy> {
102500        let ffi_result = {
102501            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSortPolicy_ptr(
102502                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
102503            )
102504        };
102505        ::cpp_core::Ptr::from_raw(ffi_result)
102506    }
102507}
102508
102509impl ::cpp_core::StaticDowncast<crate::QSortPolicy> for ::qt_3d_core::QNode {
102510    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy* static_cast<Qt3DRender::QSortPolicy*>(Qt3DCore::QNode* ptr)```</span>.
102511    #[inline(always)]
102512    unsafe fn static_downcast(
102513        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102514    ) -> ::cpp_core::Ptr<crate::QSortPolicy> {
102515        let ffi_result = {
102516            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSortPolicy_ptr1(
102517                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102518            )
102519        };
102520        ::cpp_core::Ptr::from_raw(ffi_result)
102521    }
102522}
102523
102524impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QSortPolicy {
102525    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QSortPolicy* ptr)```</span>.
102526    #[inline(always)]
102527    unsafe fn static_upcast(
102528        ptr: ::cpp_core::Ptr<crate::QSortPolicy>,
102529    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
102530        let ffi_result = {
102531            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr62(
102532                ptr.as_raw_ptr() as *mut crate::QSortPolicy
102533            )
102534        };
102535        ::cpp_core::Ptr::from_raw(ffi_result)
102536    }
102537}
102538
102539impl ::cpp_core::DynamicCast<crate::QSortPolicy> for ::qt_3d_core::QNode {
102540    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy* dynamic_cast<Qt3DRender::QSortPolicy*>(Qt3DCore::QNode* ptr)```</span>.
102541    #[inline(always)]
102542    unsafe fn dynamic_cast(
102543        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102544    ) -> ::cpp_core::Ptr<crate::QSortPolicy> {
102545        let ffi_result = {
102546            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSortPolicy_ptr1(
102547                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102548            )
102549        };
102550        ::cpp_core::Ptr::from_raw(ffi_result)
102551    }
102552}
102553
102554impl ::cpp_core::StaticDowncast<crate::QSortPolicy> for ::qt_core::QObject {
102555    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy* static_cast<Qt3DRender::QSortPolicy*>(QObject* ptr)```</span>.
102556    #[inline(always)]
102557    unsafe fn static_downcast(
102558        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102559    ) -> ::cpp_core::Ptr<crate::QSortPolicy> {
102560        let ffi_result = {
102561            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSortPolicy_ptr2(
102562                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102563            )
102564        };
102565        ::cpp_core::Ptr::from_raw(ffi_result)
102566    }
102567}
102568
102569impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QSortPolicy {
102570    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QSortPolicy* ptr)```</span>.
102571    #[inline(always)]
102572    unsafe fn static_upcast(
102573        ptr: ::cpp_core::Ptr<crate::QSortPolicy>,
102574    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
102575        let ffi_result = {
102576            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr67(
102577                ptr.as_raw_ptr() as *mut crate::QSortPolicy
102578            )
102579        };
102580        ::cpp_core::Ptr::from_raw(ffi_result)
102581    }
102582}
102583
102584impl ::cpp_core::DynamicCast<crate::QSortPolicy> for ::qt_core::QObject {
102585    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSortPolicy* dynamic_cast<Qt3DRender::QSortPolicy*>(QObject* ptr)```</span>.
102586    #[inline(always)]
102587    unsafe fn dynamic_cast(
102588        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102589    ) -> ::cpp_core::Ptr<crate::QSortPolicy> {
102590        let ffi_result = {
102591            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSortPolicy_ptr2(
102592                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102593            )
102594        };
102595        ::cpp_core::Ptr::from_raw(ffi_result)
102596    }
102597}
102598
102599impl ::cpp_core::StaticDowncast<crate::QSpotLight> for crate::QAbstractLight {
102600    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSpotLight* static_cast<Qt3DRender::QSpotLight*>(Qt3DRender::QAbstractLight* ptr)```</span>.
102601    #[inline(always)]
102602    unsafe fn static_downcast(
102603        ptr: ::cpp_core::Ptr<crate::QAbstractLight>,
102604    ) -> ::cpp_core::Ptr<crate::QSpotLight> {
102605        let ffi_result = {
102606            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSpotLight_ptr(
102607                ptr.as_raw_ptr() as *mut crate::QAbstractLight,
102608            )
102609        };
102610        ::cpp_core::Ptr::from_raw(ffi_result)
102611    }
102612}
102613
102614impl ::cpp_core::StaticUpcast<crate::QAbstractLight> for crate::QSpotLight {
102615    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* static_cast<Qt3DRender::QAbstractLight*>(Qt3DRender::QSpotLight* ptr)```</span>.
102616    #[inline(always)]
102617    unsafe fn static_upcast(
102618        ptr: ::cpp_core::Ptr<crate::QSpotLight>,
102619    ) -> ::cpp_core::Ptr<crate::QAbstractLight> {
102620        let ffi_result = {
102621            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractLight_ptr5(
102622                ptr.as_raw_ptr() as *mut crate::QSpotLight,
102623            )
102624        };
102625        ::cpp_core::Ptr::from_raw(ffi_result)
102626    }
102627}
102628
102629impl ::std::ops::Deref for crate::QSpotLight {
102630    type Target = crate::QAbstractLight;
102631    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractLight* static_cast<Qt3DRender::QAbstractLight*>(Qt3DRender::QSpotLight* ptr)```</span>.
102632    #[inline(always)]
102633    fn deref(&self) -> &crate::QAbstractLight {
102634        let ffi_result = {
102635            unsafe {
102636                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractLight_ptr5(
102637                    self as *const crate::QSpotLight as *mut crate::QSpotLight,
102638                )
102639            }
102640        };
102641        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
102642    }
102643}
102644
102645impl ::cpp_core::DynamicCast<crate::QSpotLight> for crate::QAbstractLight {
102646    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSpotLight* dynamic_cast<Qt3DRender::QSpotLight*>(Qt3DRender::QAbstractLight* ptr)```</span>.
102647    #[inline(always)]
102648    unsafe fn dynamic_cast(
102649        ptr: ::cpp_core::Ptr<crate::QAbstractLight>,
102650    ) -> ::cpp_core::Ptr<crate::QSpotLight> {
102651        let ffi_result = {
102652            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSpotLight_ptr(
102653                ptr.as_raw_ptr() as *mut crate::QAbstractLight,
102654            )
102655        };
102656        ::cpp_core::Ptr::from_raw(ffi_result)
102657    }
102658}
102659
102660impl ::cpp_core::StaticDowncast<crate::QSpotLight> for ::qt_3d_core::QComponent {
102661    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSpotLight* static_cast<Qt3DRender::QSpotLight*>(Qt3DCore::QComponent* ptr)```</span>.
102662    #[inline(always)]
102663    unsafe fn static_downcast(
102664        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
102665    ) -> ::cpp_core::Ptr<crate::QSpotLight> {
102666        let ffi_result = {
102667            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSpotLight_ptr1(
102668                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
102669            )
102670        };
102671        ::cpp_core::Ptr::from_raw(ffi_result)
102672    }
102673}
102674
102675impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QSpotLight {
102676    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QSpotLight* ptr)```</span>.
102677    #[inline(always)]
102678    unsafe fn static_upcast(
102679        ptr: ::cpp_core::Ptr<crate::QSpotLight>,
102680    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
102681        let ffi_result = {
102682            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr17(
102683                ptr.as_raw_ptr() as *mut crate::QSpotLight,
102684            )
102685        };
102686        ::cpp_core::Ptr::from_raw(ffi_result)
102687    }
102688}
102689
102690impl ::cpp_core::DynamicCast<crate::QSpotLight> for ::qt_3d_core::QComponent {
102691    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSpotLight* dynamic_cast<Qt3DRender::QSpotLight*>(Qt3DCore::QComponent* ptr)```</span>.
102692    #[inline(always)]
102693    unsafe fn dynamic_cast(
102694        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
102695    ) -> ::cpp_core::Ptr<crate::QSpotLight> {
102696        let ffi_result = {
102697            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSpotLight_ptr1(
102698                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
102699            )
102700        };
102701        ::cpp_core::Ptr::from_raw(ffi_result)
102702    }
102703}
102704
102705impl ::cpp_core::StaticDowncast<crate::QSpotLight> for ::qt_3d_core::QNode {
102706    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSpotLight* static_cast<Qt3DRender::QSpotLight*>(Qt3DCore::QNode* ptr)```</span>.
102707    #[inline(always)]
102708    unsafe fn static_downcast(
102709        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102710    ) -> ::cpp_core::Ptr<crate::QSpotLight> {
102711        let ffi_result = {
102712            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSpotLight_ptr2(
102713                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102714            )
102715        };
102716        ::cpp_core::Ptr::from_raw(ffi_result)
102717    }
102718}
102719
102720impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QSpotLight {
102721    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QSpotLight* ptr)```</span>.
102722    #[inline(always)]
102723    unsafe fn static_upcast(
102724        ptr: ::cpp_core::Ptr<crate::QSpotLight>,
102725    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
102726        let ffi_result = {
102727            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr63(
102728                ptr.as_raw_ptr() as *mut crate::QSpotLight
102729            )
102730        };
102731        ::cpp_core::Ptr::from_raw(ffi_result)
102732    }
102733}
102734
102735impl ::cpp_core::DynamicCast<crate::QSpotLight> for ::qt_3d_core::QNode {
102736    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSpotLight* dynamic_cast<Qt3DRender::QSpotLight*>(Qt3DCore::QNode* ptr)```</span>.
102737    #[inline(always)]
102738    unsafe fn dynamic_cast(
102739        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102740    ) -> ::cpp_core::Ptr<crate::QSpotLight> {
102741        let ffi_result = {
102742            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSpotLight_ptr2(
102743                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102744            )
102745        };
102746        ::cpp_core::Ptr::from_raw(ffi_result)
102747    }
102748}
102749
102750impl ::cpp_core::StaticDowncast<crate::QSpotLight> for ::qt_core::QObject {
102751    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSpotLight* static_cast<Qt3DRender::QSpotLight*>(QObject* ptr)```</span>.
102752    #[inline(always)]
102753    unsafe fn static_downcast(
102754        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102755    ) -> ::cpp_core::Ptr<crate::QSpotLight> {
102756        let ffi_result = {
102757            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSpotLight_ptr3(
102758                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102759            )
102760        };
102761        ::cpp_core::Ptr::from_raw(ffi_result)
102762    }
102763}
102764
102765impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QSpotLight {
102766    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QSpotLight* ptr)```</span>.
102767    #[inline(always)]
102768    unsafe fn static_upcast(
102769        ptr: ::cpp_core::Ptr<crate::QSpotLight>,
102770    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
102771        let ffi_result = {
102772            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr68(
102773                ptr.as_raw_ptr() as *mut crate::QSpotLight
102774            )
102775        };
102776        ::cpp_core::Ptr::from_raw(ffi_result)
102777    }
102778}
102779
102780impl ::cpp_core::DynamicCast<crate::QSpotLight> for ::qt_core::QObject {
102781    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSpotLight* dynamic_cast<Qt3DRender::QSpotLight*>(QObject* ptr)```</span>.
102782    #[inline(always)]
102783    unsafe fn dynamic_cast(
102784        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102785    ) -> ::cpp_core::Ptr<crate::QSpotLight> {
102786        let ffi_result = {
102787            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSpotLight_ptr3(
102788                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102789            )
102790        };
102791        ::cpp_core::Ptr::from_raw(ffi_result)
102792    }
102793}
102794
102795impl ::cpp_core::StaticDowncast<crate::QStencilMask> for crate::QRenderState {
102796    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilMask* static_cast<Qt3DRender::QStencilMask*>(Qt3DRender::QRenderState* ptr)```</span>.
102797    #[inline(always)]
102798    unsafe fn static_downcast(
102799        ptr: ::cpp_core::Ptr<crate::QRenderState>,
102800    ) -> ::cpp_core::Ptr<crate::QStencilMask> {
102801        let ffi_result = {
102802            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilMask_ptr(
102803                ptr.as_raw_ptr() as *mut crate::QRenderState,
102804            )
102805        };
102806        ::cpp_core::Ptr::from_raw(ffi_result)
102807    }
102808}
102809
102810impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QStencilMask {
102811    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QStencilMask* ptr)```</span>.
102812    #[inline(always)]
102813    unsafe fn static_upcast(
102814        ptr: ::cpp_core::Ptr<crate::QStencilMask>,
102815    ) -> ::cpp_core::Ptr<crate::QRenderState> {
102816        let ffi_result = {
102817            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr18(
102818                ptr.as_raw_ptr() as *mut crate::QStencilMask,
102819            )
102820        };
102821        ::cpp_core::Ptr::from_raw(ffi_result)
102822    }
102823}
102824
102825impl ::std::ops::Deref for crate::QStencilMask {
102826    type Target = crate::QRenderState;
102827    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QStencilMask* ptr)```</span>.
102828    #[inline(always)]
102829    fn deref(&self) -> &crate::QRenderState {
102830        let ffi_result = {
102831            unsafe {
102832                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr18(
102833                    self as *const crate::QStencilMask as *mut crate::QStencilMask,
102834                )
102835            }
102836        };
102837        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
102838    }
102839}
102840
102841impl ::cpp_core::DynamicCast<crate::QStencilMask> for crate::QRenderState {
102842    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilMask* dynamic_cast<Qt3DRender::QStencilMask*>(Qt3DRender::QRenderState* ptr)```</span>.
102843    #[inline(always)]
102844    unsafe fn dynamic_cast(
102845        ptr: ::cpp_core::Ptr<crate::QRenderState>,
102846    ) -> ::cpp_core::Ptr<crate::QStencilMask> {
102847        let ffi_result = {
102848            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilMask_ptr(
102849                ptr.as_raw_ptr() as *mut crate::QRenderState,
102850            )
102851        };
102852        ::cpp_core::Ptr::from_raw(ffi_result)
102853    }
102854}
102855
102856impl ::cpp_core::StaticDowncast<crate::QStencilMask> for ::qt_3d_core::QNode {
102857    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilMask* static_cast<Qt3DRender::QStencilMask*>(Qt3DCore::QNode* ptr)```</span>.
102858    #[inline(always)]
102859    unsafe fn static_downcast(
102860        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102861    ) -> ::cpp_core::Ptr<crate::QStencilMask> {
102862        let ffi_result = {
102863            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilMask_ptr1(
102864                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102865            )
102866        };
102867        ::cpp_core::Ptr::from_raw(ffi_result)
102868    }
102869}
102870
102871impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QStencilMask {
102872    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QStencilMask* ptr)```</span>.
102873    #[inline(always)]
102874    unsafe fn static_upcast(
102875        ptr: ::cpp_core::Ptr<crate::QStencilMask>,
102876    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
102877        let ffi_result = {
102878            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr64(
102879                ptr.as_raw_ptr() as *mut crate::QStencilMask
102880            )
102881        };
102882        ::cpp_core::Ptr::from_raw(ffi_result)
102883    }
102884}
102885
102886impl ::cpp_core::DynamicCast<crate::QStencilMask> for ::qt_3d_core::QNode {
102887    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilMask* dynamic_cast<Qt3DRender::QStencilMask*>(Qt3DCore::QNode* ptr)```</span>.
102888    #[inline(always)]
102889    unsafe fn dynamic_cast(
102890        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
102891    ) -> ::cpp_core::Ptr<crate::QStencilMask> {
102892        let ffi_result = {
102893            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilMask_ptr1(
102894                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
102895            )
102896        };
102897        ::cpp_core::Ptr::from_raw(ffi_result)
102898    }
102899}
102900
102901impl ::cpp_core::StaticDowncast<crate::QStencilMask> for ::qt_core::QObject {
102902    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilMask* static_cast<Qt3DRender::QStencilMask*>(QObject* ptr)```</span>.
102903    #[inline(always)]
102904    unsafe fn static_downcast(
102905        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102906    ) -> ::cpp_core::Ptr<crate::QStencilMask> {
102907        let ffi_result = {
102908            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilMask_ptr2(
102909                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102910            )
102911        };
102912        ::cpp_core::Ptr::from_raw(ffi_result)
102913    }
102914}
102915
102916impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QStencilMask {
102917    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QStencilMask* ptr)```</span>.
102918    #[inline(always)]
102919    unsafe fn static_upcast(
102920        ptr: ::cpp_core::Ptr<crate::QStencilMask>,
102921    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
102922        let ffi_result = {
102923            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr69(
102924                ptr.as_raw_ptr() as *mut crate::QStencilMask
102925            )
102926        };
102927        ::cpp_core::Ptr::from_raw(ffi_result)
102928    }
102929}
102930
102931impl ::cpp_core::DynamicCast<crate::QStencilMask> for ::qt_core::QObject {
102932    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilMask* dynamic_cast<Qt3DRender::QStencilMask*>(QObject* ptr)```</span>.
102933    #[inline(always)]
102934    unsafe fn dynamic_cast(
102935        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
102936    ) -> ::cpp_core::Ptr<crate::QStencilMask> {
102937        let ffi_result = {
102938            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilMask_ptr2(
102939                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
102940            )
102941        };
102942        ::cpp_core::Ptr::from_raw(ffi_result)
102943    }
102944}
102945
102946impl ::cpp_core::StaticDowncast<crate::QStencilOperation> for crate::QRenderState {
102947    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperation* static_cast<Qt3DRender::QStencilOperation*>(Qt3DRender::QRenderState* ptr)```</span>.
102948    #[inline(always)]
102949    unsafe fn static_downcast(
102950        ptr: ::cpp_core::Ptr<crate::QRenderState>,
102951    ) -> ::cpp_core::Ptr<crate::QStencilOperation> {
102952        let ffi_result = {
102953            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilOperation_ptr(
102954                ptr.as_raw_ptr() as *mut crate::QRenderState,
102955            )
102956        };
102957        ::cpp_core::Ptr::from_raw(ffi_result)
102958    }
102959}
102960
102961impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QStencilOperation {
102962    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QStencilOperation* ptr)```</span>.
102963    #[inline(always)]
102964    unsafe fn static_upcast(
102965        ptr: ::cpp_core::Ptr<crate::QStencilOperation>,
102966    ) -> ::cpp_core::Ptr<crate::QRenderState> {
102967        let ffi_result = {
102968            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr19(
102969                ptr.as_raw_ptr() as *mut crate::QStencilOperation,
102970            )
102971        };
102972        ::cpp_core::Ptr::from_raw(ffi_result)
102973    }
102974}
102975
102976impl ::std::ops::Deref for crate::QStencilOperation {
102977    type Target = crate::QRenderState;
102978    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QStencilOperation* ptr)```</span>.
102979    #[inline(always)]
102980    fn deref(&self) -> &crate::QRenderState {
102981        let ffi_result = {
102982            unsafe {
102983                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr19(
102984                    self as *const crate::QStencilOperation as *mut crate::QStencilOperation,
102985                )
102986            }
102987        };
102988        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
102989    }
102990}
102991
102992impl ::cpp_core::DynamicCast<crate::QStencilOperation> for crate::QRenderState {
102993    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperation* dynamic_cast<Qt3DRender::QStencilOperation*>(Qt3DRender::QRenderState* ptr)```</span>.
102994    #[inline(always)]
102995    unsafe fn dynamic_cast(
102996        ptr: ::cpp_core::Ptr<crate::QRenderState>,
102997    ) -> ::cpp_core::Ptr<crate::QStencilOperation> {
102998        let ffi_result = {
102999            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilOperation_ptr(
103000                ptr.as_raw_ptr() as *mut crate::QRenderState,
103001            )
103002        };
103003        ::cpp_core::Ptr::from_raw(ffi_result)
103004    }
103005}
103006
103007impl ::cpp_core::StaticDowncast<crate::QStencilOperation> for ::qt_3d_core::QNode {
103008    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperation* static_cast<Qt3DRender::QStencilOperation*>(Qt3DCore::QNode* ptr)```</span>.
103009    #[inline(always)]
103010    unsafe fn static_downcast(
103011        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103012    ) -> ::cpp_core::Ptr<crate::QStencilOperation> {
103013        let ffi_result = {
103014            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilOperation_ptr1(
103015                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103016            )
103017        };
103018        ::cpp_core::Ptr::from_raw(ffi_result)
103019    }
103020}
103021
103022impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QStencilOperation {
103023    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QStencilOperation* ptr)```</span>.
103024    #[inline(always)]
103025    unsafe fn static_upcast(
103026        ptr: ::cpp_core::Ptr<crate::QStencilOperation>,
103027    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
103028        let ffi_result = {
103029            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr65(
103030                ptr.as_raw_ptr() as *mut crate::QStencilOperation
103031            )
103032        };
103033        ::cpp_core::Ptr::from_raw(ffi_result)
103034    }
103035}
103036
103037impl ::cpp_core::DynamicCast<crate::QStencilOperation> for ::qt_3d_core::QNode {
103038    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperation* dynamic_cast<Qt3DRender::QStencilOperation*>(Qt3DCore::QNode* ptr)```</span>.
103039    #[inline(always)]
103040    unsafe fn dynamic_cast(
103041        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103042    ) -> ::cpp_core::Ptr<crate::QStencilOperation> {
103043        let ffi_result = {
103044            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilOperation_ptr1(
103045                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103046            )
103047        };
103048        ::cpp_core::Ptr::from_raw(ffi_result)
103049    }
103050}
103051
103052impl ::cpp_core::StaticDowncast<crate::QStencilOperation> for ::qt_core::QObject {
103053    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperation* static_cast<Qt3DRender::QStencilOperation*>(QObject* ptr)```</span>.
103054    #[inline(always)]
103055    unsafe fn static_downcast(
103056        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103057    ) -> ::cpp_core::Ptr<crate::QStencilOperation> {
103058        let ffi_result = {
103059            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilOperation_ptr2(
103060                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103061            )
103062        };
103063        ::cpp_core::Ptr::from_raw(ffi_result)
103064    }
103065}
103066
103067impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QStencilOperation {
103068    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QStencilOperation* ptr)```</span>.
103069    #[inline(always)]
103070    unsafe fn static_upcast(
103071        ptr: ::cpp_core::Ptr<crate::QStencilOperation>,
103072    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
103073        let ffi_result = {
103074            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr70(
103075                ptr.as_raw_ptr() as *mut crate::QStencilOperation
103076            )
103077        };
103078        ::cpp_core::Ptr::from_raw(ffi_result)
103079    }
103080}
103081
103082impl ::cpp_core::DynamicCast<crate::QStencilOperation> for ::qt_core::QObject {
103083    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperation* dynamic_cast<Qt3DRender::QStencilOperation*>(QObject* ptr)```</span>.
103084    #[inline(always)]
103085    unsafe fn dynamic_cast(
103086        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103087    ) -> ::cpp_core::Ptr<crate::QStencilOperation> {
103088        let ffi_result = {
103089            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilOperation_ptr2(
103090                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103091            )
103092        };
103093        ::cpp_core::Ptr::from_raw(ffi_result)
103094    }
103095}
103096
103097impl ::cpp_core::StaticDowncast<crate::QStencilOperationArguments> for ::qt_core::QObject {
103098    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments* static_cast<Qt3DRender::QStencilOperationArguments*>(QObject* ptr)```</span>.
103099    #[inline(always)]
103100    unsafe fn static_downcast(
103101        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103102    ) -> ::cpp_core::Ptr<crate::QStencilOperationArguments> {
103103        let ffi_result = {
103104            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilOperationArguments_ptr(
103105                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103106            )
103107        };
103108        ::cpp_core::Ptr::from_raw(ffi_result)
103109    }
103110}
103111
103112impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QStencilOperationArguments {
103113    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QStencilOperationArguments* ptr)```</span>.
103114    #[inline(always)]
103115    unsafe fn static_upcast(
103116        ptr: ::cpp_core::Ptr<crate::QStencilOperationArguments>,
103117    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
103118        let ffi_result = {
103119            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr71(
103120                ptr.as_raw_ptr() as *mut crate::QStencilOperationArguments
103121            )
103122        };
103123        ::cpp_core::Ptr::from_raw(ffi_result)
103124    }
103125}
103126
103127impl ::std::ops::Deref for crate::QStencilOperationArguments {
103128    type Target = ::qt_core::QObject;
103129    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QStencilOperationArguments* ptr)```</span>.
103130    #[inline(always)]
103131    fn deref(&self) -> &::qt_core::QObject {
103132        let ffi_result = {
103133            unsafe {
103134                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr71(
103135                    self as *const crate::QStencilOperationArguments
103136                        as *mut crate::QStencilOperationArguments,
103137                )
103138            }
103139        };
103140        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
103141    }
103142}
103143
103144impl ::cpp_core::DynamicCast<crate::QStencilOperationArguments> for ::qt_core::QObject {
103145    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilOperationArguments* dynamic_cast<Qt3DRender::QStencilOperationArguments*>(QObject* ptr)```</span>.
103146    #[inline(always)]
103147    unsafe fn dynamic_cast(
103148        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103149    ) -> ::cpp_core::Ptr<crate::QStencilOperationArguments> {
103150        let ffi_result = {
103151            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilOperationArguments_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
103152        };
103153        ::cpp_core::Ptr::from_raw(ffi_result)
103154    }
103155}
103156
103157impl ::cpp_core::StaticDowncast<crate::QStencilTest> for crate::QRenderState {
103158    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTest* static_cast<Qt3DRender::QStencilTest*>(Qt3DRender::QRenderState* ptr)```</span>.
103159    #[inline(always)]
103160    unsafe fn static_downcast(
103161        ptr: ::cpp_core::Ptr<crate::QRenderState>,
103162    ) -> ::cpp_core::Ptr<crate::QStencilTest> {
103163        let ffi_result = {
103164            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilTest_ptr(
103165                ptr.as_raw_ptr() as *mut crate::QRenderState,
103166            )
103167        };
103168        ::cpp_core::Ptr::from_raw(ffi_result)
103169    }
103170}
103171
103172impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QStencilTest {
103173    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QStencilTest* ptr)```</span>.
103174    #[inline(always)]
103175    unsafe fn static_upcast(
103176        ptr: ::cpp_core::Ptr<crate::QStencilTest>,
103177    ) -> ::cpp_core::Ptr<crate::QRenderState> {
103178        let ffi_result = {
103179            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr20(
103180                ptr.as_raw_ptr() as *mut crate::QStencilTest,
103181            )
103182        };
103183        ::cpp_core::Ptr::from_raw(ffi_result)
103184    }
103185}
103186
103187impl ::std::ops::Deref for crate::QStencilTest {
103188    type Target = crate::QRenderState;
103189    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QStencilTest* ptr)```</span>.
103190    #[inline(always)]
103191    fn deref(&self) -> &crate::QRenderState {
103192        let ffi_result = {
103193            unsafe {
103194                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr20(
103195                    self as *const crate::QStencilTest as *mut crate::QStencilTest,
103196                )
103197            }
103198        };
103199        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
103200    }
103201}
103202
103203impl ::cpp_core::DynamicCast<crate::QStencilTest> for crate::QRenderState {
103204    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTest* dynamic_cast<Qt3DRender::QStencilTest*>(Qt3DRender::QRenderState* ptr)```</span>.
103205    #[inline(always)]
103206    unsafe fn dynamic_cast(
103207        ptr: ::cpp_core::Ptr<crate::QRenderState>,
103208    ) -> ::cpp_core::Ptr<crate::QStencilTest> {
103209        let ffi_result = {
103210            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilTest_ptr(
103211                ptr.as_raw_ptr() as *mut crate::QRenderState,
103212            )
103213        };
103214        ::cpp_core::Ptr::from_raw(ffi_result)
103215    }
103216}
103217
103218impl ::cpp_core::StaticDowncast<crate::QStencilTest> for ::qt_3d_core::QNode {
103219    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTest* static_cast<Qt3DRender::QStencilTest*>(Qt3DCore::QNode* ptr)```</span>.
103220    #[inline(always)]
103221    unsafe fn static_downcast(
103222        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103223    ) -> ::cpp_core::Ptr<crate::QStencilTest> {
103224        let ffi_result = {
103225            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilTest_ptr1(
103226                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103227            )
103228        };
103229        ::cpp_core::Ptr::from_raw(ffi_result)
103230    }
103231}
103232
103233impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QStencilTest {
103234    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QStencilTest* ptr)```</span>.
103235    #[inline(always)]
103236    unsafe fn static_upcast(
103237        ptr: ::cpp_core::Ptr<crate::QStencilTest>,
103238    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
103239        let ffi_result = {
103240            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr66(
103241                ptr.as_raw_ptr() as *mut crate::QStencilTest
103242            )
103243        };
103244        ::cpp_core::Ptr::from_raw(ffi_result)
103245    }
103246}
103247
103248impl ::cpp_core::DynamicCast<crate::QStencilTest> for ::qt_3d_core::QNode {
103249    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTest* dynamic_cast<Qt3DRender::QStencilTest*>(Qt3DCore::QNode* ptr)```</span>.
103250    #[inline(always)]
103251    unsafe fn dynamic_cast(
103252        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103253    ) -> ::cpp_core::Ptr<crate::QStencilTest> {
103254        let ffi_result = {
103255            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilTest_ptr1(
103256                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103257            )
103258        };
103259        ::cpp_core::Ptr::from_raw(ffi_result)
103260    }
103261}
103262
103263impl ::cpp_core::StaticDowncast<crate::QStencilTest> for ::qt_core::QObject {
103264    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTest* static_cast<Qt3DRender::QStencilTest*>(QObject* ptr)```</span>.
103265    #[inline(always)]
103266    unsafe fn static_downcast(
103267        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103268    ) -> ::cpp_core::Ptr<crate::QStencilTest> {
103269        let ffi_result = {
103270            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilTest_ptr2(
103271                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103272            )
103273        };
103274        ::cpp_core::Ptr::from_raw(ffi_result)
103275    }
103276}
103277
103278impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QStencilTest {
103279    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QStencilTest* ptr)```</span>.
103280    #[inline(always)]
103281    unsafe fn static_upcast(
103282        ptr: ::cpp_core::Ptr<crate::QStencilTest>,
103283    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
103284        let ffi_result = {
103285            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr72(
103286                ptr.as_raw_ptr() as *mut crate::QStencilTest
103287            )
103288        };
103289        ::cpp_core::Ptr::from_raw(ffi_result)
103290    }
103291}
103292
103293impl ::cpp_core::DynamicCast<crate::QStencilTest> for ::qt_core::QObject {
103294    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTest* dynamic_cast<Qt3DRender::QStencilTest*>(QObject* ptr)```</span>.
103295    #[inline(always)]
103296    unsafe fn dynamic_cast(
103297        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103298    ) -> ::cpp_core::Ptr<crate::QStencilTest> {
103299        let ffi_result = {
103300            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilTest_ptr2(
103301                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103302            )
103303        };
103304        ::cpp_core::Ptr::from_raw(ffi_result)
103305    }
103306}
103307
103308impl ::cpp_core::StaticDowncast<crate::QStencilTestArguments> for ::qt_core::QObject {
103309    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTestArguments* static_cast<Qt3DRender::QStencilTestArguments*>(QObject* ptr)```</span>.
103310    #[inline(always)]
103311    unsafe fn static_downcast(
103312        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103313    ) -> ::cpp_core::Ptr<crate::QStencilTestArguments> {
103314        let ffi_result = {
103315            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QStencilTestArguments_ptr(
103316                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103317            )
103318        };
103319        ::cpp_core::Ptr::from_raw(ffi_result)
103320    }
103321}
103322
103323impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QStencilTestArguments {
103324    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QStencilTestArguments* ptr)```</span>.
103325    #[inline(always)]
103326    unsafe fn static_upcast(
103327        ptr: ::cpp_core::Ptr<crate::QStencilTestArguments>,
103328    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
103329        let ffi_result = {
103330            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr73(
103331                ptr.as_raw_ptr() as *mut crate::QStencilTestArguments
103332            )
103333        };
103334        ::cpp_core::Ptr::from_raw(ffi_result)
103335    }
103336}
103337
103338impl ::std::ops::Deref for crate::QStencilTestArguments {
103339    type Target = ::qt_core::QObject;
103340    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QStencilTestArguments* ptr)```</span>.
103341    #[inline(always)]
103342    fn deref(&self) -> &::qt_core::QObject {
103343        let ffi_result = {
103344            unsafe {
103345                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr73(
103346                    self as *const crate::QStencilTestArguments
103347                        as *mut crate::QStencilTestArguments,
103348                )
103349            }
103350        };
103351        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
103352    }
103353}
103354
103355impl ::cpp_core::DynamicCast<crate::QStencilTestArguments> for ::qt_core::QObject {
103356    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QStencilTestArguments* dynamic_cast<Qt3DRender::QStencilTestArguments*>(QObject* ptr)```</span>.
103357    #[inline(always)]
103358    unsafe fn dynamic_cast(
103359        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103360    ) -> ::cpp_core::Ptr<crate::QStencilTestArguments> {
103361        let ffi_result = {
103362            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QStencilTestArguments_ptr(
103363                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103364            )
103365        };
103366        ::cpp_core::Ptr::from_raw(ffi_result)
103367    }
103368}
103369
103370impl ::cpp_core::StaticDowncast<crate::QTechnique> for ::qt_3d_core::QNode {
103371    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique* static_cast<Qt3DRender::QTechnique*>(Qt3DCore::QNode* ptr)```</span>.
103372    #[inline(always)]
103373    unsafe fn static_downcast(
103374        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103375    ) -> ::cpp_core::Ptr<crate::QTechnique> {
103376        let ffi_result = {
103377            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTechnique_ptr(
103378                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103379            )
103380        };
103381        ::cpp_core::Ptr::from_raw(ffi_result)
103382    }
103383}
103384
103385impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTechnique {
103386    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTechnique* ptr)```</span>.
103387    #[inline(always)]
103388    unsafe fn static_upcast(
103389        ptr: ::cpp_core::Ptr<crate::QTechnique>,
103390    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
103391        let ffi_result = {
103392            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr67(
103393                ptr.as_raw_ptr() as *mut crate::QTechnique
103394            )
103395        };
103396        ::cpp_core::Ptr::from_raw(ffi_result)
103397    }
103398}
103399
103400impl ::std::ops::Deref for crate::QTechnique {
103401    type Target = ::qt_3d_core::QNode;
103402    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTechnique* ptr)```</span>.
103403    #[inline(always)]
103404    fn deref(&self) -> &::qt_3d_core::QNode {
103405        let ffi_result = {
103406            unsafe {
103407                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr67(
103408                    self as *const crate::QTechnique as *mut crate::QTechnique,
103409                )
103410            }
103411        };
103412        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
103413    }
103414}
103415
103416impl ::cpp_core::DynamicCast<crate::QTechnique> for ::qt_3d_core::QNode {
103417    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique* dynamic_cast<Qt3DRender::QTechnique*>(Qt3DCore::QNode* ptr)```</span>.
103418    #[inline(always)]
103419    unsafe fn dynamic_cast(
103420        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103421    ) -> ::cpp_core::Ptr<crate::QTechnique> {
103422        let ffi_result = {
103423            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTechnique_ptr(
103424                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103425            )
103426        };
103427        ::cpp_core::Ptr::from_raw(ffi_result)
103428    }
103429}
103430
103431impl ::cpp_core::StaticDowncast<crate::QTechnique> for ::qt_core::QObject {
103432    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique* static_cast<Qt3DRender::QTechnique*>(QObject* ptr)```</span>.
103433    #[inline(always)]
103434    unsafe fn static_downcast(
103435        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103436    ) -> ::cpp_core::Ptr<crate::QTechnique> {
103437        let ffi_result = {
103438            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTechnique_ptr1(
103439                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103440            )
103441        };
103442        ::cpp_core::Ptr::from_raw(ffi_result)
103443    }
103444}
103445
103446impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTechnique {
103447    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTechnique* ptr)```</span>.
103448    #[inline(always)]
103449    unsafe fn static_upcast(
103450        ptr: ::cpp_core::Ptr<crate::QTechnique>,
103451    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
103452        let ffi_result = {
103453            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr74(
103454                ptr.as_raw_ptr() as *mut crate::QTechnique
103455            )
103456        };
103457        ::cpp_core::Ptr::from_raw(ffi_result)
103458    }
103459}
103460
103461impl ::cpp_core::DynamicCast<crate::QTechnique> for ::qt_core::QObject {
103462    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechnique* dynamic_cast<Qt3DRender::QTechnique*>(QObject* ptr)```</span>.
103463    #[inline(always)]
103464    unsafe fn dynamic_cast(
103465        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103466    ) -> ::cpp_core::Ptr<crate::QTechnique> {
103467        let ffi_result = {
103468            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTechnique_ptr1(
103469                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103470            )
103471        };
103472        ::cpp_core::Ptr::from_raw(ffi_result)
103473    }
103474}
103475
103476impl ::cpp_core::StaticDowncast<crate::QTechniqueFilter> for crate::QFrameGraphNode {
103477    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechniqueFilter* static_cast<Qt3DRender::QTechniqueFilter*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
103478    #[inline(always)]
103479    unsafe fn static_downcast(
103480        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
103481    ) -> ::cpp_core::Ptr<crate::QTechniqueFilter> {
103482        let ffi_result = {
103483            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTechniqueFilter_ptr(
103484                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
103485            )
103486        };
103487        ::cpp_core::Ptr::from_raw(ffi_result)
103488    }
103489}
103490
103491impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QTechniqueFilter {
103492    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QTechniqueFilter* ptr)```</span>.
103493    #[inline(always)]
103494    unsafe fn static_upcast(
103495        ptr: ::cpp_core::Ptr<crate::QTechniqueFilter>,
103496    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
103497        let ffi_result = {
103498            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr16(
103499                ptr.as_raw_ptr() as *mut crate::QTechniqueFilter,
103500            )
103501        };
103502        ::cpp_core::Ptr::from_raw(ffi_result)
103503    }
103504}
103505
103506impl ::std::ops::Deref for crate::QTechniqueFilter {
103507    type Target = crate::QFrameGraphNode;
103508    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QTechniqueFilter* ptr)```</span>.
103509    #[inline(always)]
103510    fn deref(&self) -> &crate::QFrameGraphNode {
103511        let ffi_result = {
103512            unsafe {
103513                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr16(
103514                    self as *const crate::QTechniqueFilter as *mut crate::QTechniqueFilter,
103515                )
103516            }
103517        };
103518        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
103519    }
103520}
103521
103522impl ::cpp_core::DynamicCast<crate::QTechniqueFilter> for crate::QFrameGraphNode {
103523    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechniqueFilter* dynamic_cast<Qt3DRender::QTechniqueFilter*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
103524    #[inline(always)]
103525    unsafe fn dynamic_cast(
103526        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
103527    ) -> ::cpp_core::Ptr<crate::QTechniqueFilter> {
103528        let ffi_result = {
103529            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTechniqueFilter_ptr(
103530                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
103531            )
103532        };
103533        ::cpp_core::Ptr::from_raw(ffi_result)
103534    }
103535}
103536
103537impl ::cpp_core::StaticDowncast<crate::QTechniqueFilter> for ::qt_3d_core::QNode {
103538    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechniqueFilter* static_cast<Qt3DRender::QTechniqueFilter*>(Qt3DCore::QNode* ptr)```</span>.
103539    #[inline(always)]
103540    unsafe fn static_downcast(
103541        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103542    ) -> ::cpp_core::Ptr<crate::QTechniqueFilter> {
103543        let ffi_result = {
103544            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTechniqueFilter_ptr1(
103545                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103546            )
103547        };
103548        ::cpp_core::Ptr::from_raw(ffi_result)
103549    }
103550}
103551
103552impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTechniqueFilter {
103553    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTechniqueFilter* ptr)```</span>.
103554    #[inline(always)]
103555    unsafe fn static_upcast(
103556        ptr: ::cpp_core::Ptr<crate::QTechniqueFilter>,
103557    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
103558        let ffi_result = {
103559            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr68(
103560                ptr.as_raw_ptr() as *mut crate::QTechniqueFilter
103561            )
103562        };
103563        ::cpp_core::Ptr::from_raw(ffi_result)
103564    }
103565}
103566
103567impl ::cpp_core::DynamicCast<crate::QTechniqueFilter> for ::qt_3d_core::QNode {
103568    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechniqueFilter* dynamic_cast<Qt3DRender::QTechniqueFilter*>(Qt3DCore::QNode* ptr)```</span>.
103569    #[inline(always)]
103570    unsafe fn dynamic_cast(
103571        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103572    ) -> ::cpp_core::Ptr<crate::QTechniqueFilter> {
103573        let ffi_result = {
103574            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTechniqueFilter_ptr1(
103575                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103576            )
103577        };
103578        ::cpp_core::Ptr::from_raw(ffi_result)
103579    }
103580}
103581
103582impl ::cpp_core::StaticDowncast<crate::QTechniqueFilter> for ::qt_core::QObject {
103583    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechniqueFilter* static_cast<Qt3DRender::QTechniqueFilter*>(QObject* ptr)```</span>.
103584    #[inline(always)]
103585    unsafe fn static_downcast(
103586        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103587    ) -> ::cpp_core::Ptr<crate::QTechniqueFilter> {
103588        let ffi_result = {
103589            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTechniqueFilter_ptr2(
103590                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103591            )
103592        };
103593        ::cpp_core::Ptr::from_raw(ffi_result)
103594    }
103595}
103596
103597impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTechniqueFilter {
103598    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTechniqueFilter* ptr)```</span>.
103599    #[inline(always)]
103600    unsafe fn static_upcast(
103601        ptr: ::cpp_core::Ptr<crate::QTechniqueFilter>,
103602    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
103603        let ffi_result = {
103604            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr75(
103605                ptr.as_raw_ptr() as *mut crate::QTechniqueFilter
103606            )
103607        };
103608        ::cpp_core::Ptr::from_raw(ffi_result)
103609    }
103610}
103611
103612impl ::cpp_core::DynamicCast<crate::QTechniqueFilter> for ::qt_core::QObject {
103613    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTechniqueFilter* dynamic_cast<Qt3DRender::QTechniqueFilter*>(QObject* ptr)```</span>.
103614    #[inline(always)]
103615    unsafe fn dynamic_cast(
103616        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103617    ) -> ::cpp_core::Ptr<crate::QTechniqueFilter> {
103618        let ffi_result = {
103619            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTechniqueFilter_ptr2(
103620                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103621            )
103622        };
103623        ::cpp_core::Ptr::from_raw(ffi_result)
103624    }
103625}
103626
103627impl ::cpp_core::StaticDowncast<crate::QTextureWrapMode> for ::qt_core::QObject {
103628    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureWrapMode* static_cast<Qt3DRender::QTextureWrapMode*>(QObject* ptr)```</span>.
103629    #[inline(always)]
103630    unsafe fn static_downcast(
103631        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103632    ) -> ::cpp_core::Ptr<crate::QTextureWrapMode> {
103633        let ffi_result = {
103634            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureWrapMode_ptr(
103635                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103636            )
103637        };
103638        ::cpp_core::Ptr::from_raw(ffi_result)
103639    }
103640}
103641
103642impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTextureWrapMode {
103643    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTextureWrapMode* ptr)```</span>.
103644    #[inline(always)]
103645    unsafe fn static_upcast(
103646        ptr: ::cpp_core::Ptr<crate::QTextureWrapMode>,
103647    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
103648        let ffi_result = {
103649            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr76(
103650                ptr.as_raw_ptr() as *mut crate::QTextureWrapMode
103651            )
103652        };
103653        ::cpp_core::Ptr::from_raw(ffi_result)
103654    }
103655}
103656
103657impl ::std::ops::Deref for crate::QTextureWrapMode {
103658    type Target = ::qt_core::QObject;
103659    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTextureWrapMode* ptr)```</span>.
103660    #[inline(always)]
103661    fn deref(&self) -> &::qt_core::QObject {
103662        let ffi_result = {
103663            unsafe {
103664                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr76(
103665                    self as *const crate::QTextureWrapMode as *mut crate::QTextureWrapMode,
103666                )
103667            }
103668        };
103669        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
103670    }
103671}
103672
103673impl ::cpp_core::DynamicCast<crate::QTextureWrapMode> for ::qt_core::QObject {
103674    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureWrapMode* dynamic_cast<Qt3DRender::QTextureWrapMode*>(QObject* ptr)```</span>.
103675    #[inline(always)]
103676    unsafe fn dynamic_cast(
103677        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103678    ) -> ::cpp_core::Ptr<crate::QTextureWrapMode> {
103679        let ffi_result = {
103680            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureWrapMode_ptr(
103681                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103682            )
103683        };
103684        ::cpp_core::Ptr::from_raw(ffi_result)
103685    }
103686}
103687
103688impl ::cpp_core::StaticDowncast<crate::QTextureImage> for crate::QAbstractTextureImage {
103689    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImage* static_cast<Qt3DRender::QTextureImage*>(Qt3DRender::QAbstractTextureImage* ptr)```</span>.
103690    #[inline(always)]
103691    unsafe fn static_downcast(
103692        ptr: ::cpp_core::Ptr<crate::QAbstractTextureImage>,
103693    ) -> ::cpp_core::Ptr<crate::QTextureImage> {
103694        let ffi_result = {
103695            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureImage_ptr(
103696                ptr.as_raw_ptr() as *mut crate::QAbstractTextureImage,
103697            )
103698        };
103699        ::cpp_core::Ptr::from_raw(ffi_result)
103700    }
103701}
103702
103703impl ::cpp_core::StaticUpcast<crate::QAbstractTextureImage> for crate::QTextureImage {
103704    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* static_cast<Qt3DRender::QAbstractTextureImage*>(Qt3DRender::QTextureImage* ptr)```</span>.
103705    #[inline(always)]
103706    unsafe fn static_upcast(
103707        ptr: ::cpp_core::Ptr<crate::QTextureImage>,
103708    ) -> ::cpp_core::Ptr<crate::QAbstractTextureImage> {
103709        let ffi_result = {
103710            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTextureImage_ptr3(
103711                ptr.as_raw_ptr() as *mut crate::QTextureImage,
103712            )
103713        };
103714        ::cpp_core::Ptr::from_raw(ffi_result)
103715    }
103716}
103717
103718impl ::std::ops::Deref for crate::QTextureImage {
103719    type Target = crate::QAbstractTextureImage;
103720    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTextureImage* static_cast<Qt3DRender::QAbstractTextureImage*>(Qt3DRender::QTextureImage* ptr)```</span>.
103721    #[inline(always)]
103722    fn deref(&self) -> &crate::QAbstractTextureImage {
103723        let ffi_result = {
103724            unsafe {
103725                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTextureImage_ptr3(
103726                    self as *const crate::QTextureImage as *mut crate::QTextureImage,
103727                )
103728            }
103729        };
103730        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
103731    }
103732}
103733
103734impl ::cpp_core::DynamicCast<crate::QTextureImage> for crate::QAbstractTextureImage {
103735    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImage* dynamic_cast<Qt3DRender::QTextureImage*>(Qt3DRender::QAbstractTextureImage* ptr)```</span>.
103736    #[inline(always)]
103737    unsafe fn dynamic_cast(
103738        ptr: ::cpp_core::Ptr<crate::QAbstractTextureImage>,
103739    ) -> ::cpp_core::Ptr<crate::QTextureImage> {
103740        let ffi_result = {
103741            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureImage_ptr(
103742                ptr.as_raw_ptr() as *mut crate::QAbstractTextureImage,
103743            )
103744        };
103745        ::cpp_core::Ptr::from_raw(ffi_result)
103746    }
103747}
103748
103749impl ::cpp_core::StaticDowncast<crate::QTextureImage> for ::qt_3d_core::QNode {
103750    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImage* static_cast<Qt3DRender::QTextureImage*>(Qt3DCore::QNode* ptr)```</span>.
103751    #[inline(always)]
103752    unsafe fn static_downcast(
103753        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103754    ) -> ::cpp_core::Ptr<crate::QTextureImage> {
103755        let ffi_result = {
103756            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureImage_ptr1(
103757                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103758            )
103759        };
103760        ::cpp_core::Ptr::from_raw(ffi_result)
103761    }
103762}
103763
103764impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTextureImage {
103765    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTextureImage* ptr)```</span>.
103766    #[inline(always)]
103767    unsafe fn static_upcast(
103768        ptr: ::cpp_core::Ptr<crate::QTextureImage>,
103769    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
103770        let ffi_result = {
103771            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr69(
103772                ptr.as_raw_ptr() as *mut crate::QTextureImage
103773            )
103774        };
103775        ::cpp_core::Ptr::from_raw(ffi_result)
103776    }
103777}
103778
103779impl ::cpp_core::DynamicCast<crate::QTextureImage> for ::qt_3d_core::QNode {
103780    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImage* dynamic_cast<Qt3DRender::QTextureImage*>(Qt3DCore::QNode* ptr)```</span>.
103781    #[inline(always)]
103782    unsafe fn dynamic_cast(
103783        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103784    ) -> ::cpp_core::Ptr<crate::QTextureImage> {
103785        let ffi_result = {
103786            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureImage_ptr1(
103787                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103788            )
103789        };
103790        ::cpp_core::Ptr::from_raw(ffi_result)
103791    }
103792}
103793
103794impl ::cpp_core::StaticDowncast<crate::QTextureImage> for ::qt_core::QObject {
103795    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImage* static_cast<Qt3DRender::QTextureImage*>(QObject* ptr)```</span>.
103796    #[inline(always)]
103797    unsafe fn static_downcast(
103798        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103799    ) -> ::cpp_core::Ptr<crate::QTextureImage> {
103800        let ffi_result = {
103801            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureImage_ptr2(
103802                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103803            )
103804        };
103805        ::cpp_core::Ptr::from_raw(ffi_result)
103806    }
103807}
103808
103809impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTextureImage {
103810    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTextureImage* ptr)```</span>.
103811    #[inline(always)]
103812    unsafe fn static_upcast(
103813        ptr: ::cpp_core::Ptr<crate::QTextureImage>,
103814    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
103815        let ffi_result = {
103816            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr77(
103817                ptr.as_raw_ptr() as *mut crate::QTextureImage
103818            )
103819        };
103820        ::cpp_core::Ptr::from_raw(ffi_result)
103821    }
103822}
103823
103824impl ::cpp_core::DynamicCast<crate::QTextureImage> for ::qt_core::QObject {
103825    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureImage* dynamic_cast<Qt3DRender::QTextureImage*>(QObject* ptr)```</span>.
103826    #[inline(always)]
103827    unsafe fn dynamic_cast(
103828        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103829    ) -> ::cpp_core::Ptr<crate::QTextureImage> {
103830        let ffi_result = {
103831            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureImage_ptr2(
103832                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103833            )
103834        };
103835        ::cpp_core::Ptr::from_raw(ffi_result)
103836    }
103837}
103838
103839impl ::cpp_core::StaticDowncast<crate::QTexture1D> for crate::QAbstractTexture {
103840    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1D* static_cast<Qt3DRender::QTexture1D*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
103841    #[inline(always)]
103842    unsafe fn static_downcast(
103843        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
103844    ) -> ::cpp_core::Ptr<crate::QTexture1D> {
103845        let ffi_result = {
103846            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture1D_ptr(
103847                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
103848            )
103849        };
103850        ::cpp_core::Ptr::from_raw(ffi_result)
103851    }
103852}
103853
103854impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTexture1D {
103855    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture1D* ptr)```</span>.
103856    #[inline(always)]
103857    unsafe fn static_upcast(
103858        ptr: ::cpp_core::Ptr<crate::QTexture1D>,
103859    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
103860        let ffi_result = {
103861            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr2(
103862                ptr.as_raw_ptr() as *mut crate::QTexture1D,
103863            )
103864        };
103865        ::cpp_core::Ptr::from_raw(ffi_result)
103866    }
103867}
103868
103869impl ::std::ops::Deref for crate::QTexture1D {
103870    type Target = crate::QAbstractTexture;
103871    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture1D* ptr)```</span>.
103872    #[inline(always)]
103873    fn deref(&self) -> &crate::QAbstractTexture {
103874        let ffi_result = {
103875            unsafe {
103876                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr2(
103877                    self as *const crate::QTexture1D as *mut crate::QTexture1D,
103878                )
103879            }
103880        };
103881        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
103882    }
103883}
103884
103885impl ::cpp_core::DynamicCast<crate::QTexture1D> for crate::QAbstractTexture {
103886    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1D* dynamic_cast<Qt3DRender::QTexture1D*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
103887    #[inline(always)]
103888    unsafe fn dynamic_cast(
103889        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
103890    ) -> ::cpp_core::Ptr<crate::QTexture1D> {
103891        let ffi_result = {
103892            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture1D_ptr(
103893                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
103894            )
103895        };
103896        ::cpp_core::Ptr::from_raw(ffi_result)
103897    }
103898}
103899
103900impl ::cpp_core::StaticDowncast<crate::QTexture1D> for ::qt_3d_core::QNode {
103901    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1D* static_cast<Qt3DRender::QTexture1D*>(Qt3DCore::QNode* ptr)```</span>.
103902    #[inline(always)]
103903    unsafe fn static_downcast(
103904        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103905    ) -> ::cpp_core::Ptr<crate::QTexture1D> {
103906        let ffi_result = {
103907            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture1D_ptr1(
103908                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103909            )
103910        };
103911        ::cpp_core::Ptr::from_raw(ffi_result)
103912    }
103913}
103914
103915impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTexture1D {
103916    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTexture1D* ptr)```</span>.
103917    #[inline(always)]
103918    unsafe fn static_upcast(
103919        ptr: ::cpp_core::Ptr<crate::QTexture1D>,
103920    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
103921        let ffi_result = {
103922            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr70(
103923                ptr.as_raw_ptr() as *mut crate::QTexture1D
103924            )
103925        };
103926        ::cpp_core::Ptr::from_raw(ffi_result)
103927    }
103928}
103929
103930impl ::cpp_core::DynamicCast<crate::QTexture1D> for ::qt_3d_core::QNode {
103931    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1D* dynamic_cast<Qt3DRender::QTexture1D*>(Qt3DCore::QNode* ptr)```</span>.
103932    #[inline(always)]
103933    unsafe fn dynamic_cast(
103934        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
103935    ) -> ::cpp_core::Ptr<crate::QTexture1D> {
103936        let ffi_result = {
103937            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture1D_ptr1(
103938                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
103939            )
103940        };
103941        ::cpp_core::Ptr::from_raw(ffi_result)
103942    }
103943}
103944
103945impl ::cpp_core::StaticDowncast<crate::QTexture1D> for ::qt_core::QObject {
103946    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1D* static_cast<Qt3DRender::QTexture1D*>(QObject* ptr)```</span>.
103947    #[inline(always)]
103948    unsafe fn static_downcast(
103949        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103950    ) -> ::cpp_core::Ptr<crate::QTexture1D> {
103951        let ffi_result = {
103952            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture1D_ptr2(
103953                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103954            )
103955        };
103956        ::cpp_core::Ptr::from_raw(ffi_result)
103957    }
103958}
103959
103960impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTexture1D {
103961    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTexture1D* ptr)```</span>.
103962    #[inline(always)]
103963    unsafe fn static_upcast(
103964        ptr: ::cpp_core::Ptr<crate::QTexture1D>,
103965    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
103966        let ffi_result = {
103967            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr78(
103968                ptr.as_raw_ptr() as *mut crate::QTexture1D
103969            )
103970        };
103971        ::cpp_core::Ptr::from_raw(ffi_result)
103972    }
103973}
103974
103975impl ::cpp_core::DynamicCast<crate::QTexture1D> for ::qt_core::QObject {
103976    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1D* dynamic_cast<Qt3DRender::QTexture1D*>(QObject* ptr)```</span>.
103977    #[inline(always)]
103978    unsafe fn dynamic_cast(
103979        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
103980    ) -> ::cpp_core::Ptr<crate::QTexture1D> {
103981        let ffi_result = {
103982            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture1D_ptr2(
103983                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
103984            )
103985        };
103986        ::cpp_core::Ptr::from_raw(ffi_result)
103987    }
103988}
103989
103990impl ::cpp_core::StaticDowncast<crate::QTexture1DArray> for crate::QAbstractTexture {
103991    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1DArray* static_cast<Qt3DRender::QTexture1DArray*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
103992    #[inline(always)]
103993    unsafe fn static_downcast(
103994        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
103995    ) -> ::cpp_core::Ptr<crate::QTexture1DArray> {
103996        let ffi_result = {
103997            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture1DArray_ptr(
103998                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
103999            )
104000        };
104001        ::cpp_core::Ptr::from_raw(ffi_result)
104002    }
104003}
104004
104005impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTexture1DArray {
104006    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture1DArray* ptr)```</span>.
104007    #[inline(always)]
104008    unsafe fn static_upcast(
104009        ptr: ::cpp_core::Ptr<crate::QTexture1DArray>,
104010    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
104011        let ffi_result = {
104012            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr3(
104013                ptr.as_raw_ptr() as *mut crate::QTexture1DArray,
104014            )
104015        };
104016        ::cpp_core::Ptr::from_raw(ffi_result)
104017    }
104018}
104019
104020impl ::std::ops::Deref for crate::QTexture1DArray {
104021    type Target = crate::QAbstractTexture;
104022    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture1DArray* ptr)```</span>.
104023    #[inline(always)]
104024    fn deref(&self) -> &crate::QAbstractTexture {
104025        let ffi_result = {
104026            unsafe {
104027                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr3(
104028                    self as *const crate::QTexture1DArray as *mut crate::QTexture1DArray,
104029                )
104030            }
104031        };
104032        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
104033    }
104034}
104035
104036impl ::cpp_core::DynamicCast<crate::QTexture1DArray> for crate::QAbstractTexture {
104037    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1DArray* dynamic_cast<Qt3DRender::QTexture1DArray*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104038    #[inline(always)]
104039    unsafe fn dynamic_cast(
104040        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104041    ) -> ::cpp_core::Ptr<crate::QTexture1DArray> {
104042        let ffi_result = {
104043            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture1DArray_ptr(
104044                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104045            )
104046        };
104047        ::cpp_core::Ptr::from_raw(ffi_result)
104048    }
104049}
104050
104051impl ::cpp_core::StaticDowncast<crate::QTexture1DArray> for ::qt_3d_core::QNode {
104052    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1DArray* static_cast<Qt3DRender::QTexture1DArray*>(Qt3DCore::QNode* ptr)```</span>.
104053    #[inline(always)]
104054    unsafe fn static_downcast(
104055        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104056    ) -> ::cpp_core::Ptr<crate::QTexture1DArray> {
104057        let ffi_result = {
104058            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture1DArray_ptr1(
104059                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104060            )
104061        };
104062        ::cpp_core::Ptr::from_raw(ffi_result)
104063    }
104064}
104065
104066impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTexture1DArray {
104067    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTexture1DArray* ptr)```</span>.
104068    #[inline(always)]
104069    unsafe fn static_upcast(
104070        ptr: ::cpp_core::Ptr<crate::QTexture1DArray>,
104071    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
104072        let ffi_result = {
104073            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr71(
104074                ptr.as_raw_ptr() as *mut crate::QTexture1DArray
104075            )
104076        };
104077        ::cpp_core::Ptr::from_raw(ffi_result)
104078    }
104079}
104080
104081impl ::cpp_core::DynamicCast<crate::QTexture1DArray> for ::qt_3d_core::QNode {
104082    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1DArray* dynamic_cast<Qt3DRender::QTexture1DArray*>(Qt3DCore::QNode* ptr)```</span>.
104083    #[inline(always)]
104084    unsafe fn dynamic_cast(
104085        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104086    ) -> ::cpp_core::Ptr<crate::QTexture1DArray> {
104087        let ffi_result = {
104088            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture1DArray_ptr1(
104089                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104090            )
104091        };
104092        ::cpp_core::Ptr::from_raw(ffi_result)
104093    }
104094}
104095
104096impl ::cpp_core::StaticDowncast<crate::QTexture1DArray> for ::qt_core::QObject {
104097    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1DArray* static_cast<Qt3DRender::QTexture1DArray*>(QObject* ptr)```</span>.
104098    #[inline(always)]
104099    unsafe fn static_downcast(
104100        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104101    ) -> ::cpp_core::Ptr<crate::QTexture1DArray> {
104102        let ffi_result = {
104103            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture1DArray_ptr2(
104104                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104105            )
104106        };
104107        ::cpp_core::Ptr::from_raw(ffi_result)
104108    }
104109}
104110
104111impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTexture1DArray {
104112    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTexture1DArray* ptr)```</span>.
104113    #[inline(always)]
104114    unsafe fn static_upcast(
104115        ptr: ::cpp_core::Ptr<crate::QTexture1DArray>,
104116    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
104117        let ffi_result = {
104118            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr79(
104119                ptr.as_raw_ptr() as *mut crate::QTexture1DArray
104120            )
104121        };
104122        ::cpp_core::Ptr::from_raw(ffi_result)
104123    }
104124}
104125
104126impl ::cpp_core::DynamicCast<crate::QTexture1DArray> for ::qt_core::QObject {
104127    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture1DArray* dynamic_cast<Qt3DRender::QTexture1DArray*>(QObject* ptr)```</span>.
104128    #[inline(always)]
104129    unsafe fn dynamic_cast(
104130        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104131    ) -> ::cpp_core::Ptr<crate::QTexture1DArray> {
104132        let ffi_result = {
104133            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture1DArray_ptr2(
104134                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104135            )
104136        };
104137        ::cpp_core::Ptr::from_raw(ffi_result)
104138    }
104139}
104140
104141impl ::cpp_core::StaticDowncast<crate::QTexture2D> for crate::QAbstractTexture {
104142    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2D* static_cast<Qt3DRender::QTexture2D*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104143    #[inline(always)]
104144    unsafe fn static_downcast(
104145        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104146    ) -> ::cpp_core::Ptr<crate::QTexture2D> {
104147        let ffi_result = {
104148            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2D_ptr(
104149                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104150            )
104151        };
104152        ::cpp_core::Ptr::from_raw(ffi_result)
104153    }
104154}
104155
104156impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTexture2D {
104157    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture2D* ptr)```</span>.
104158    #[inline(always)]
104159    unsafe fn static_upcast(
104160        ptr: ::cpp_core::Ptr<crate::QTexture2D>,
104161    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
104162        let ffi_result = {
104163            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr4(
104164                ptr.as_raw_ptr() as *mut crate::QTexture2D,
104165            )
104166        };
104167        ::cpp_core::Ptr::from_raw(ffi_result)
104168    }
104169}
104170
104171impl ::std::ops::Deref for crate::QTexture2D {
104172    type Target = crate::QAbstractTexture;
104173    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture2D* ptr)```</span>.
104174    #[inline(always)]
104175    fn deref(&self) -> &crate::QAbstractTexture {
104176        let ffi_result = {
104177            unsafe {
104178                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr4(
104179                    self as *const crate::QTexture2D as *mut crate::QTexture2D,
104180                )
104181            }
104182        };
104183        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
104184    }
104185}
104186
104187impl ::cpp_core::DynamicCast<crate::QTexture2D> for crate::QAbstractTexture {
104188    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2D* dynamic_cast<Qt3DRender::QTexture2D*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104189    #[inline(always)]
104190    unsafe fn dynamic_cast(
104191        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104192    ) -> ::cpp_core::Ptr<crate::QTexture2D> {
104193        let ffi_result = {
104194            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2D_ptr(
104195                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104196            )
104197        };
104198        ::cpp_core::Ptr::from_raw(ffi_result)
104199    }
104200}
104201
104202impl ::cpp_core::StaticDowncast<crate::QTexture2D> for ::qt_3d_core::QNode {
104203    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2D* static_cast<Qt3DRender::QTexture2D*>(Qt3DCore::QNode* ptr)```</span>.
104204    #[inline(always)]
104205    unsafe fn static_downcast(
104206        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104207    ) -> ::cpp_core::Ptr<crate::QTexture2D> {
104208        let ffi_result = {
104209            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2D_ptr1(
104210                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104211            )
104212        };
104213        ::cpp_core::Ptr::from_raw(ffi_result)
104214    }
104215}
104216
104217impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTexture2D {
104218    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTexture2D* ptr)```</span>.
104219    #[inline(always)]
104220    unsafe fn static_upcast(
104221        ptr: ::cpp_core::Ptr<crate::QTexture2D>,
104222    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
104223        let ffi_result = {
104224            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr72(
104225                ptr.as_raw_ptr() as *mut crate::QTexture2D
104226            )
104227        };
104228        ::cpp_core::Ptr::from_raw(ffi_result)
104229    }
104230}
104231
104232impl ::cpp_core::DynamicCast<crate::QTexture2D> for ::qt_3d_core::QNode {
104233    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2D* dynamic_cast<Qt3DRender::QTexture2D*>(Qt3DCore::QNode* ptr)```</span>.
104234    #[inline(always)]
104235    unsafe fn dynamic_cast(
104236        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104237    ) -> ::cpp_core::Ptr<crate::QTexture2D> {
104238        let ffi_result = {
104239            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2D_ptr1(
104240                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104241            )
104242        };
104243        ::cpp_core::Ptr::from_raw(ffi_result)
104244    }
104245}
104246
104247impl ::cpp_core::StaticDowncast<crate::QTexture2D> for ::qt_core::QObject {
104248    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2D* static_cast<Qt3DRender::QTexture2D*>(QObject* ptr)```</span>.
104249    #[inline(always)]
104250    unsafe fn static_downcast(
104251        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104252    ) -> ::cpp_core::Ptr<crate::QTexture2D> {
104253        let ffi_result = {
104254            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2D_ptr2(
104255                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104256            )
104257        };
104258        ::cpp_core::Ptr::from_raw(ffi_result)
104259    }
104260}
104261
104262impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTexture2D {
104263    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTexture2D* ptr)```</span>.
104264    #[inline(always)]
104265    unsafe fn static_upcast(
104266        ptr: ::cpp_core::Ptr<crate::QTexture2D>,
104267    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
104268        let ffi_result = {
104269            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr80(
104270                ptr.as_raw_ptr() as *mut crate::QTexture2D
104271            )
104272        };
104273        ::cpp_core::Ptr::from_raw(ffi_result)
104274    }
104275}
104276
104277impl ::cpp_core::DynamicCast<crate::QTexture2D> for ::qt_core::QObject {
104278    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2D* dynamic_cast<Qt3DRender::QTexture2D*>(QObject* ptr)```</span>.
104279    #[inline(always)]
104280    unsafe fn dynamic_cast(
104281        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104282    ) -> ::cpp_core::Ptr<crate::QTexture2D> {
104283        let ffi_result = {
104284            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2D_ptr2(
104285                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104286            )
104287        };
104288        ::cpp_core::Ptr::from_raw(ffi_result)
104289    }
104290}
104291
104292impl ::cpp_core::StaticDowncast<crate::QTexture2DArray> for crate::QAbstractTexture {
104293    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DArray* static_cast<Qt3DRender::QTexture2DArray*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104294    #[inline(always)]
104295    unsafe fn static_downcast(
104296        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104297    ) -> ::cpp_core::Ptr<crate::QTexture2DArray> {
104298        let ffi_result = {
104299            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2DArray_ptr(
104300                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104301            )
104302        };
104303        ::cpp_core::Ptr::from_raw(ffi_result)
104304    }
104305}
104306
104307impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTexture2DArray {
104308    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture2DArray* ptr)```</span>.
104309    #[inline(always)]
104310    unsafe fn static_upcast(
104311        ptr: ::cpp_core::Ptr<crate::QTexture2DArray>,
104312    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
104313        let ffi_result = {
104314            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr5(
104315                ptr.as_raw_ptr() as *mut crate::QTexture2DArray,
104316            )
104317        };
104318        ::cpp_core::Ptr::from_raw(ffi_result)
104319    }
104320}
104321
104322impl ::std::ops::Deref for crate::QTexture2DArray {
104323    type Target = crate::QAbstractTexture;
104324    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture2DArray* ptr)```</span>.
104325    #[inline(always)]
104326    fn deref(&self) -> &crate::QAbstractTexture {
104327        let ffi_result = {
104328            unsafe {
104329                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr5(
104330                    self as *const crate::QTexture2DArray as *mut crate::QTexture2DArray,
104331                )
104332            }
104333        };
104334        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
104335    }
104336}
104337
104338impl ::cpp_core::DynamicCast<crate::QTexture2DArray> for crate::QAbstractTexture {
104339    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DArray* dynamic_cast<Qt3DRender::QTexture2DArray*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104340    #[inline(always)]
104341    unsafe fn dynamic_cast(
104342        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104343    ) -> ::cpp_core::Ptr<crate::QTexture2DArray> {
104344        let ffi_result = {
104345            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2DArray_ptr(
104346                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104347            )
104348        };
104349        ::cpp_core::Ptr::from_raw(ffi_result)
104350    }
104351}
104352
104353impl ::cpp_core::StaticDowncast<crate::QTexture2DArray> for ::qt_3d_core::QNode {
104354    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DArray* static_cast<Qt3DRender::QTexture2DArray*>(Qt3DCore::QNode* ptr)```</span>.
104355    #[inline(always)]
104356    unsafe fn static_downcast(
104357        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104358    ) -> ::cpp_core::Ptr<crate::QTexture2DArray> {
104359        let ffi_result = {
104360            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2DArray_ptr1(
104361                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104362            )
104363        };
104364        ::cpp_core::Ptr::from_raw(ffi_result)
104365    }
104366}
104367
104368impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTexture2DArray {
104369    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTexture2DArray* ptr)```</span>.
104370    #[inline(always)]
104371    unsafe fn static_upcast(
104372        ptr: ::cpp_core::Ptr<crate::QTexture2DArray>,
104373    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
104374        let ffi_result = {
104375            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr73(
104376                ptr.as_raw_ptr() as *mut crate::QTexture2DArray
104377            )
104378        };
104379        ::cpp_core::Ptr::from_raw(ffi_result)
104380    }
104381}
104382
104383impl ::cpp_core::DynamicCast<crate::QTexture2DArray> for ::qt_3d_core::QNode {
104384    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DArray* dynamic_cast<Qt3DRender::QTexture2DArray*>(Qt3DCore::QNode* ptr)```</span>.
104385    #[inline(always)]
104386    unsafe fn dynamic_cast(
104387        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104388    ) -> ::cpp_core::Ptr<crate::QTexture2DArray> {
104389        let ffi_result = {
104390            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2DArray_ptr1(
104391                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104392            )
104393        };
104394        ::cpp_core::Ptr::from_raw(ffi_result)
104395    }
104396}
104397
104398impl ::cpp_core::StaticDowncast<crate::QTexture2DArray> for ::qt_core::QObject {
104399    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DArray* static_cast<Qt3DRender::QTexture2DArray*>(QObject* ptr)```</span>.
104400    #[inline(always)]
104401    unsafe fn static_downcast(
104402        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104403    ) -> ::cpp_core::Ptr<crate::QTexture2DArray> {
104404        let ffi_result = {
104405            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2DArray_ptr2(
104406                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104407            )
104408        };
104409        ::cpp_core::Ptr::from_raw(ffi_result)
104410    }
104411}
104412
104413impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTexture2DArray {
104414    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTexture2DArray* ptr)```</span>.
104415    #[inline(always)]
104416    unsafe fn static_upcast(
104417        ptr: ::cpp_core::Ptr<crate::QTexture2DArray>,
104418    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
104419        let ffi_result = {
104420            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr81(
104421                ptr.as_raw_ptr() as *mut crate::QTexture2DArray
104422            )
104423        };
104424        ::cpp_core::Ptr::from_raw(ffi_result)
104425    }
104426}
104427
104428impl ::cpp_core::DynamicCast<crate::QTexture2DArray> for ::qt_core::QObject {
104429    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DArray* dynamic_cast<Qt3DRender::QTexture2DArray*>(QObject* ptr)```</span>.
104430    #[inline(always)]
104431    unsafe fn dynamic_cast(
104432        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104433    ) -> ::cpp_core::Ptr<crate::QTexture2DArray> {
104434        let ffi_result = {
104435            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2DArray_ptr2(
104436                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104437            )
104438        };
104439        ::cpp_core::Ptr::from_raw(ffi_result)
104440    }
104441}
104442
104443impl ::cpp_core::StaticDowncast<crate::QTexture3D> for crate::QAbstractTexture {
104444    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture3D* static_cast<Qt3DRender::QTexture3D*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104445    #[inline(always)]
104446    unsafe fn static_downcast(
104447        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104448    ) -> ::cpp_core::Ptr<crate::QTexture3D> {
104449        let ffi_result = {
104450            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture3D_ptr(
104451                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104452            )
104453        };
104454        ::cpp_core::Ptr::from_raw(ffi_result)
104455    }
104456}
104457
104458impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTexture3D {
104459    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture3D* ptr)```</span>.
104460    #[inline(always)]
104461    unsafe fn static_upcast(
104462        ptr: ::cpp_core::Ptr<crate::QTexture3D>,
104463    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
104464        let ffi_result = {
104465            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr6(
104466                ptr.as_raw_ptr() as *mut crate::QTexture3D,
104467            )
104468        };
104469        ::cpp_core::Ptr::from_raw(ffi_result)
104470    }
104471}
104472
104473impl ::std::ops::Deref for crate::QTexture3D {
104474    type Target = crate::QAbstractTexture;
104475    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture3D* ptr)```</span>.
104476    #[inline(always)]
104477    fn deref(&self) -> &crate::QAbstractTexture {
104478        let ffi_result = {
104479            unsafe {
104480                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr6(
104481                    self as *const crate::QTexture3D as *mut crate::QTexture3D,
104482                )
104483            }
104484        };
104485        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
104486    }
104487}
104488
104489impl ::cpp_core::DynamicCast<crate::QTexture3D> for crate::QAbstractTexture {
104490    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture3D* dynamic_cast<Qt3DRender::QTexture3D*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104491    #[inline(always)]
104492    unsafe fn dynamic_cast(
104493        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104494    ) -> ::cpp_core::Ptr<crate::QTexture3D> {
104495        let ffi_result = {
104496            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture3D_ptr(
104497                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104498            )
104499        };
104500        ::cpp_core::Ptr::from_raw(ffi_result)
104501    }
104502}
104503
104504impl ::cpp_core::StaticDowncast<crate::QTexture3D> for ::qt_3d_core::QNode {
104505    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture3D* static_cast<Qt3DRender::QTexture3D*>(Qt3DCore::QNode* ptr)```</span>.
104506    #[inline(always)]
104507    unsafe fn static_downcast(
104508        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104509    ) -> ::cpp_core::Ptr<crate::QTexture3D> {
104510        let ffi_result = {
104511            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture3D_ptr1(
104512                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104513            )
104514        };
104515        ::cpp_core::Ptr::from_raw(ffi_result)
104516    }
104517}
104518
104519impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTexture3D {
104520    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTexture3D* ptr)```</span>.
104521    #[inline(always)]
104522    unsafe fn static_upcast(
104523        ptr: ::cpp_core::Ptr<crate::QTexture3D>,
104524    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
104525        let ffi_result = {
104526            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr74(
104527                ptr.as_raw_ptr() as *mut crate::QTexture3D
104528            )
104529        };
104530        ::cpp_core::Ptr::from_raw(ffi_result)
104531    }
104532}
104533
104534impl ::cpp_core::DynamicCast<crate::QTexture3D> for ::qt_3d_core::QNode {
104535    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture3D* dynamic_cast<Qt3DRender::QTexture3D*>(Qt3DCore::QNode* ptr)```</span>.
104536    #[inline(always)]
104537    unsafe fn dynamic_cast(
104538        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104539    ) -> ::cpp_core::Ptr<crate::QTexture3D> {
104540        let ffi_result = {
104541            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture3D_ptr1(
104542                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104543            )
104544        };
104545        ::cpp_core::Ptr::from_raw(ffi_result)
104546    }
104547}
104548
104549impl ::cpp_core::StaticDowncast<crate::QTexture3D> for ::qt_core::QObject {
104550    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture3D* static_cast<Qt3DRender::QTexture3D*>(QObject* ptr)```</span>.
104551    #[inline(always)]
104552    unsafe fn static_downcast(
104553        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104554    ) -> ::cpp_core::Ptr<crate::QTexture3D> {
104555        let ffi_result = {
104556            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture3D_ptr2(
104557                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104558            )
104559        };
104560        ::cpp_core::Ptr::from_raw(ffi_result)
104561    }
104562}
104563
104564impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTexture3D {
104565    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTexture3D* ptr)```</span>.
104566    #[inline(always)]
104567    unsafe fn static_upcast(
104568        ptr: ::cpp_core::Ptr<crate::QTexture3D>,
104569    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
104570        let ffi_result = {
104571            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr82(
104572                ptr.as_raw_ptr() as *mut crate::QTexture3D
104573            )
104574        };
104575        ::cpp_core::Ptr::from_raw(ffi_result)
104576    }
104577}
104578
104579impl ::cpp_core::DynamicCast<crate::QTexture3D> for ::qt_core::QObject {
104580    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture3D* dynamic_cast<Qt3DRender::QTexture3D*>(QObject* ptr)```</span>.
104581    #[inline(always)]
104582    unsafe fn dynamic_cast(
104583        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104584    ) -> ::cpp_core::Ptr<crate::QTexture3D> {
104585        let ffi_result = {
104586            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture3D_ptr2(
104587                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104588            )
104589        };
104590        ::cpp_core::Ptr::from_raw(ffi_result)
104591    }
104592}
104593
104594impl ::cpp_core::StaticDowncast<crate::QTextureCubeMap> for crate::QAbstractTexture {
104595    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMap* static_cast<Qt3DRender::QTextureCubeMap*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104596    #[inline(always)]
104597    unsafe fn static_downcast(
104598        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104599    ) -> ::cpp_core::Ptr<crate::QTextureCubeMap> {
104600        let ffi_result = {
104601            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureCubeMap_ptr(
104602                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104603            )
104604        };
104605        ::cpp_core::Ptr::from_raw(ffi_result)
104606    }
104607}
104608
104609impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTextureCubeMap {
104610    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureCubeMap* ptr)```</span>.
104611    #[inline(always)]
104612    unsafe fn static_upcast(
104613        ptr: ::cpp_core::Ptr<crate::QTextureCubeMap>,
104614    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
104615        let ffi_result = {
104616            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr7(
104617                ptr.as_raw_ptr() as *mut crate::QTextureCubeMap,
104618            )
104619        };
104620        ::cpp_core::Ptr::from_raw(ffi_result)
104621    }
104622}
104623
104624impl ::std::ops::Deref for crate::QTextureCubeMap {
104625    type Target = crate::QAbstractTexture;
104626    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureCubeMap* ptr)```</span>.
104627    #[inline(always)]
104628    fn deref(&self) -> &crate::QAbstractTexture {
104629        let ffi_result = {
104630            unsafe {
104631                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr7(
104632                    self as *const crate::QTextureCubeMap as *mut crate::QTextureCubeMap,
104633                )
104634            }
104635        };
104636        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
104637    }
104638}
104639
104640impl ::cpp_core::DynamicCast<crate::QTextureCubeMap> for crate::QAbstractTexture {
104641    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMap* dynamic_cast<Qt3DRender::QTextureCubeMap*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104642    #[inline(always)]
104643    unsafe fn dynamic_cast(
104644        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104645    ) -> ::cpp_core::Ptr<crate::QTextureCubeMap> {
104646        let ffi_result = {
104647            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureCubeMap_ptr(
104648                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104649            )
104650        };
104651        ::cpp_core::Ptr::from_raw(ffi_result)
104652    }
104653}
104654
104655impl ::cpp_core::StaticDowncast<crate::QTextureCubeMap> for ::qt_3d_core::QNode {
104656    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMap* static_cast<Qt3DRender::QTextureCubeMap*>(Qt3DCore::QNode* ptr)```</span>.
104657    #[inline(always)]
104658    unsafe fn static_downcast(
104659        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104660    ) -> ::cpp_core::Ptr<crate::QTextureCubeMap> {
104661        let ffi_result = {
104662            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureCubeMap_ptr1(
104663                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104664            )
104665        };
104666        ::cpp_core::Ptr::from_raw(ffi_result)
104667    }
104668}
104669
104670impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTextureCubeMap {
104671    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTextureCubeMap* ptr)```</span>.
104672    #[inline(always)]
104673    unsafe fn static_upcast(
104674        ptr: ::cpp_core::Ptr<crate::QTextureCubeMap>,
104675    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
104676        let ffi_result = {
104677            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr75(
104678                ptr.as_raw_ptr() as *mut crate::QTextureCubeMap
104679            )
104680        };
104681        ::cpp_core::Ptr::from_raw(ffi_result)
104682    }
104683}
104684
104685impl ::cpp_core::DynamicCast<crate::QTextureCubeMap> for ::qt_3d_core::QNode {
104686    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMap* dynamic_cast<Qt3DRender::QTextureCubeMap*>(Qt3DCore::QNode* ptr)```</span>.
104687    #[inline(always)]
104688    unsafe fn dynamic_cast(
104689        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104690    ) -> ::cpp_core::Ptr<crate::QTextureCubeMap> {
104691        let ffi_result = {
104692            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureCubeMap_ptr1(
104693                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104694            )
104695        };
104696        ::cpp_core::Ptr::from_raw(ffi_result)
104697    }
104698}
104699
104700impl ::cpp_core::StaticDowncast<crate::QTextureCubeMap> for ::qt_core::QObject {
104701    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMap* static_cast<Qt3DRender::QTextureCubeMap*>(QObject* ptr)```</span>.
104702    #[inline(always)]
104703    unsafe fn static_downcast(
104704        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104705    ) -> ::cpp_core::Ptr<crate::QTextureCubeMap> {
104706        let ffi_result = {
104707            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureCubeMap_ptr2(
104708                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104709            )
104710        };
104711        ::cpp_core::Ptr::from_raw(ffi_result)
104712    }
104713}
104714
104715impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTextureCubeMap {
104716    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTextureCubeMap* ptr)```</span>.
104717    #[inline(always)]
104718    unsafe fn static_upcast(
104719        ptr: ::cpp_core::Ptr<crate::QTextureCubeMap>,
104720    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
104721        let ffi_result = {
104722            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr83(
104723                ptr.as_raw_ptr() as *mut crate::QTextureCubeMap
104724            )
104725        };
104726        ::cpp_core::Ptr::from_raw(ffi_result)
104727    }
104728}
104729
104730impl ::cpp_core::DynamicCast<crate::QTextureCubeMap> for ::qt_core::QObject {
104731    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMap* dynamic_cast<Qt3DRender::QTextureCubeMap*>(QObject* ptr)```</span>.
104732    #[inline(always)]
104733    unsafe fn dynamic_cast(
104734        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104735    ) -> ::cpp_core::Ptr<crate::QTextureCubeMap> {
104736        let ffi_result = {
104737            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureCubeMap_ptr2(
104738                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104739            )
104740        };
104741        ::cpp_core::Ptr::from_raw(ffi_result)
104742    }
104743}
104744
104745impl ::cpp_core::StaticDowncast<crate::QTextureCubeMapArray> for crate::QAbstractTexture {
104746    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMapArray* static_cast<Qt3DRender::QTextureCubeMapArray*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104747    #[inline(always)]
104748    unsafe fn static_downcast(
104749        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104750    ) -> ::cpp_core::Ptr<crate::QTextureCubeMapArray> {
104751        let ffi_result = {
104752            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureCubeMapArray_ptr(
104753                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104754            )
104755        };
104756        ::cpp_core::Ptr::from_raw(ffi_result)
104757    }
104758}
104759
104760impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTextureCubeMapArray {
104761    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureCubeMapArray* ptr)```</span>.
104762    #[inline(always)]
104763    unsafe fn static_upcast(
104764        ptr: ::cpp_core::Ptr<crate::QTextureCubeMapArray>,
104765    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
104766        let ffi_result = {
104767            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr8(
104768                ptr.as_raw_ptr() as *mut crate::QTextureCubeMapArray,
104769            )
104770        };
104771        ::cpp_core::Ptr::from_raw(ffi_result)
104772    }
104773}
104774
104775impl ::std::ops::Deref for crate::QTextureCubeMapArray {
104776    type Target = crate::QAbstractTexture;
104777    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureCubeMapArray* ptr)```</span>.
104778    #[inline(always)]
104779    fn deref(&self) -> &crate::QAbstractTexture {
104780        let ffi_result = {
104781            unsafe {
104782                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr8(
104783                    self as *const crate::QTextureCubeMapArray as *mut crate::QTextureCubeMapArray,
104784                )
104785            }
104786        };
104787        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
104788    }
104789}
104790
104791impl ::cpp_core::DynamicCast<crate::QTextureCubeMapArray> for crate::QAbstractTexture {
104792    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMapArray* dynamic_cast<Qt3DRender::QTextureCubeMapArray*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104793    #[inline(always)]
104794    unsafe fn dynamic_cast(
104795        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104796    ) -> ::cpp_core::Ptr<crate::QTextureCubeMapArray> {
104797        let ffi_result = {
104798            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureCubeMapArray_ptr(
104799                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104800            )
104801        };
104802        ::cpp_core::Ptr::from_raw(ffi_result)
104803    }
104804}
104805
104806impl ::cpp_core::StaticDowncast<crate::QTextureCubeMapArray> for ::qt_3d_core::QNode {
104807    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMapArray* static_cast<Qt3DRender::QTextureCubeMapArray*>(Qt3DCore::QNode* ptr)```</span>.
104808    #[inline(always)]
104809    unsafe fn static_downcast(
104810        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104811    ) -> ::cpp_core::Ptr<crate::QTextureCubeMapArray> {
104812        let ffi_result = {
104813            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureCubeMapArray_ptr1(
104814                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104815            )
104816        };
104817        ::cpp_core::Ptr::from_raw(ffi_result)
104818    }
104819}
104820
104821impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTextureCubeMapArray {
104822    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTextureCubeMapArray* ptr)```</span>.
104823    #[inline(always)]
104824    unsafe fn static_upcast(
104825        ptr: ::cpp_core::Ptr<crate::QTextureCubeMapArray>,
104826    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
104827        let ffi_result = {
104828            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr76(
104829                ptr.as_raw_ptr() as *mut crate::QTextureCubeMapArray
104830            )
104831        };
104832        ::cpp_core::Ptr::from_raw(ffi_result)
104833    }
104834}
104835
104836impl ::cpp_core::DynamicCast<crate::QTextureCubeMapArray> for ::qt_3d_core::QNode {
104837    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMapArray* dynamic_cast<Qt3DRender::QTextureCubeMapArray*>(Qt3DCore::QNode* ptr)```</span>.
104838    #[inline(always)]
104839    unsafe fn dynamic_cast(
104840        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104841    ) -> ::cpp_core::Ptr<crate::QTextureCubeMapArray> {
104842        let ffi_result = {
104843            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureCubeMapArray_ptr1(
104844                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104845            )
104846        };
104847        ::cpp_core::Ptr::from_raw(ffi_result)
104848    }
104849}
104850
104851impl ::cpp_core::StaticDowncast<crate::QTextureCubeMapArray> for ::qt_core::QObject {
104852    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMapArray* static_cast<Qt3DRender::QTextureCubeMapArray*>(QObject* ptr)```</span>.
104853    #[inline(always)]
104854    unsafe fn static_downcast(
104855        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104856    ) -> ::cpp_core::Ptr<crate::QTextureCubeMapArray> {
104857        let ffi_result = {
104858            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureCubeMapArray_ptr2(
104859                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104860            )
104861        };
104862        ::cpp_core::Ptr::from_raw(ffi_result)
104863    }
104864}
104865
104866impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTextureCubeMapArray {
104867    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTextureCubeMapArray* ptr)```</span>.
104868    #[inline(always)]
104869    unsafe fn static_upcast(
104870        ptr: ::cpp_core::Ptr<crate::QTextureCubeMapArray>,
104871    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
104872        let ffi_result = {
104873            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr84(
104874                ptr.as_raw_ptr() as *mut crate::QTextureCubeMapArray
104875            )
104876        };
104877        ::cpp_core::Ptr::from_raw(ffi_result)
104878    }
104879}
104880
104881impl ::cpp_core::DynamicCast<crate::QTextureCubeMapArray> for ::qt_core::QObject {
104882    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureCubeMapArray* dynamic_cast<Qt3DRender::QTextureCubeMapArray*>(QObject* ptr)```</span>.
104883    #[inline(always)]
104884    unsafe fn dynamic_cast(
104885        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
104886    ) -> ::cpp_core::Ptr<crate::QTextureCubeMapArray> {
104887        let ffi_result = {
104888            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureCubeMapArray_ptr2(
104889                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
104890            )
104891        };
104892        ::cpp_core::Ptr::from_raw(ffi_result)
104893    }
104894}
104895
104896impl ::cpp_core::StaticDowncast<crate::QTexture2DMultisample> for crate::QAbstractTexture {
104897    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisample* static_cast<Qt3DRender::QTexture2DMultisample*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104898    #[inline(always)]
104899    unsafe fn static_downcast(
104900        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104901    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisample> {
104902        let ffi_result = {
104903            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2DMultisample_ptr(
104904                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104905            )
104906        };
104907        ::cpp_core::Ptr::from_raw(ffi_result)
104908    }
104909}
104910
104911impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTexture2DMultisample {
104912    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture2DMultisample* ptr)```</span>.
104913    #[inline(always)]
104914    unsafe fn static_upcast(
104915        ptr: ::cpp_core::Ptr<crate::QTexture2DMultisample>,
104916    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
104917        let ffi_result = {
104918            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr9(
104919                ptr.as_raw_ptr() as *mut crate::QTexture2DMultisample,
104920            )
104921        };
104922        ::cpp_core::Ptr::from_raw(ffi_result)
104923    }
104924}
104925
104926impl ::std::ops::Deref for crate::QTexture2DMultisample {
104927    type Target = crate::QAbstractTexture;
104928    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture2DMultisample* ptr)```</span>.
104929    #[inline(always)]
104930    fn deref(&self) -> &crate::QAbstractTexture {
104931        let ffi_result = {
104932            unsafe {
104933                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr9(
104934                    self as *const crate::QTexture2DMultisample
104935                        as *mut crate::QTexture2DMultisample,
104936                )
104937            }
104938        };
104939        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
104940    }
104941}
104942
104943impl ::cpp_core::DynamicCast<crate::QTexture2DMultisample> for crate::QAbstractTexture {
104944    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisample* dynamic_cast<Qt3DRender::QTexture2DMultisample*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
104945    #[inline(always)]
104946    unsafe fn dynamic_cast(
104947        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
104948    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisample> {
104949        let ffi_result = {
104950            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2DMultisample_ptr(
104951                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
104952            )
104953        };
104954        ::cpp_core::Ptr::from_raw(ffi_result)
104955    }
104956}
104957
104958impl ::cpp_core::StaticDowncast<crate::QTexture2DMultisample> for ::qt_3d_core::QNode {
104959    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisample* static_cast<Qt3DRender::QTexture2DMultisample*>(Qt3DCore::QNode* ptr)```</span>.
104960    #[inline(always)]
104961    unsafe fn static_downcast(
104962        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104963    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisample> {
104964        let ffi_result = {
104965            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2DMultisample_ptr1(
104966                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104967            )
104968        };
104969        ::cpp_core::Ptr::from_raw(ffi_result)
104970    }
104971}
104972
104973impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTexture2DMultisample {
104974    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTexture2DMultisample* ptr)```</span>.
104975    #[inline(always)]
104976    unsafe fn static_upcast(
104977        ptr: ::cpp_core::Ptr<crate::QTexture2DMultisample>,
104978    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
104979        let ffi_result = {
104980            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr77(
104981                ptr.as_raw_ptr() as *mut crate::QTexture2DMultisample
104982            )
104983        };
104984        ::cpp_core::Ptr::from_raw(ffi_result)
104985    }
104986}
104987
104988impl ::cpp_core::DynamicCast<crate::QTexture2DMultisample> for ::qt_3d_core::QNode {
104989    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisample* dynamic_cast<Qt3DRender::QTexture2DMultisample*>(Qt3DCore::QNode* ptr)```</span>.
104990    #[inline(always)]
104991    unsafe fn dynamic_cast(
104992        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
104993    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisample> {
104994        let ffi_result = {
104995            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2DMultisample_ptr1(
104996                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
104997            )
104998        };
104999        ::cpp_core::Ptr::from_raw(ffi_result)
105000    }
105001}
105002
105003impl ::cpp_core::StaticDowncast<crate::QTexture2DMultisample> for ::qt_core::QObject {
105004    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisample* static_cast<Qt3DRender::QTexture2DMultisample*>(QObject* ptr)```</span>.
105005    #[inline(always)]
105006    unsafe fn static_downcast(
105007        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105008    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisample> {
105009        let ffi_result = {
105010            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2DMultisample_ptr2(
105011                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105012            )
105013        };
105014        ::cpp_core::Ptr::from_raw(ffi_result)
105015    }
105016}
105017
105018impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTexture2DMultisample {
105019    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTexture2DMultisample* ptr)```</span>.
105020    #[inline(always)]
105021    unsafe fn static_upcast(
105022        ptr: ::cpp_core::Ptr<crate::QTexture2DMultisample>,
105023    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
105024        let ffi_result = {
105025            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr85(
105026                ptr.as_raw_ptr() as *mut crate::QTexture2DMultisample
105027            )
105028        };
105029        ::cpp_core::Ptr::from_raw(ffi_result)
105030    }
105031}
105032
105033impl ::cpp_core::DynamicCast<crate::QTexture2DMultisample> for ::qt_core::QObject {
105034    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisample* dynamic_cast<Qt3DRender::QTexture2DMultisample*>(QObject* ptr)```</span>.
105035    #[inline(always)]
105036    unsafe fn dynamic_cast(
105037        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105038    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisample> {
105039        let ffi_result = {
105040            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2DMultisample_ptr2(
105041                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105042            )
105043        };
105044        ::cpp_core::Ptr::from_raw(ffi_result)
105045    }
105046}
105047
105048impl ::cpp_core::StaticDowncast<crate::QTexture2DMultisampleArray> for crate::QAbstractTexture {
105049    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisampleArray* static_cast<Qt3DRender::QTexture2DMultisampleArray*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
105050    #[inline(always)]
105051    unsafe fn static_downcast(
105052        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
105053    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisampleArray> {
105054        let ffi_result = {
105055            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2DMultisampleArray_ptr(
105056                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
105057            )
105058        };
105059        ::cpp_core::Ptr::from_raw(ffi_result)
105060    }
105061}
105062
105063impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTexture2DMultisampleArray {
105064    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture2DMultisampleArray* ptr)```</span>.
105065    #[inline(always)]
105066    unsafe fn static_upcast(
105067        ptr: ::cpp_core::Ptr<crate::QTexture2DMultisampleArray>,
105068    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
105069        let ffi_result = {
105070            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr10(
105071                ptr.as_raw_ptr() as *mut crate::QTexture2DMultisampleArray,
105072            )
105073        };
105074        ::cpp_core::Ptr::from_raw(ffi_result)
105075    }
105076}
105077
105078impl ::std::ops::Deref for crate::QTexture2DMultisampleArray {
105079    type Target = crate::QAbstractTexture;
105080    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTexture2DMultisampleArray* ptr)```</span>.
105081    #[inline(always)]
105082    fn deref(&self) -> &crate::QAbstractTexture {
105083        let ffi_result = {
105084            unsafe {
105085                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr10(
105086                    self as *const crate::QTexture2DMultisampleArray
105087                        as *mut crate::QTexture2DMultisampleArray,
105088                )
105089            }
105090        };
105091        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
105092    }
105093}
105094
105095impl ::cpp_core::DynamicCast<crate::QTexture2DMultisampleArray> for crate::QAbstractTexture {
105096    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisampleArray* dynamic_cast<Qt3DRender::QTexture2DMultisampleArray*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
105097    #[inline(always)]
105098    unsafe fn dynamic_cast(
105099        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
105100    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisampleArray> {
105101        let ffi_result = {
105102            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2DMultisampleArray_ptr(ptr.as_raw_ptr() as *mut crate::QAbstractTexture)
105103        };
105104        ::cpp_core::Ptr::from_raw(ffi_result)
105105    }
105106}
105107
105108impl ::cpp_core::StaticDowncast<crate::QTexture2DMultisampleArray> for ::qt_3d_core::QNode {
105109    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisampleArray* static_cast<Qt3DRender::QTexture2DMultisampleArray*>(Qt3DCore::QNode* ptr)```</span>.
105110    #[inline(always)]
105111    unsafe fn static_downcast(
105112        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105113    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisampleArray> {
105114        let ffi_result = {
105115            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2DMultisampleArray_ptr1(ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode)
105116        };
105117        ::cpp_core::Ptr::from_raw(ffi_result)
105118    }
105119}
105120
105121impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTexture2DMultisampleArray {
105122    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTexture2DMultisampleArray* ptr)```</span>.
105123    #[inline(always)]
105124    unsafe fn static_upcast(
105125        ptr: ::cpp_core::Ptr<crate::QTexture2DMultisampleArray>,
105126    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
105127        let ffi_result = {
105128            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr78(
105129                ptr.as_raw_ptr() as *mut crate::QTexture2DMultisampleArray
105130            )
105131        };
105132        ::cpp_core::Ptr::from_raw(ffi_result)
105133    }
105134}
105135
105136impl ::cpp_core::DynamicCast<crate::QTexture2DMultisampleArray> for ::qt_3d_core::QNode {
105137    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisampleArray* dynamic_cast<Qt3DRender::QTexture2DMultisampleArray*>(Qt3DCore::QNode* ptr)```</span>.
105138    #[inline(always)]
105139    unsafe fn dynamic_cast(
105140        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105141    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisampleArray> {
105142        let ffi_result = {
105143            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2DMultisampleArray_ptr1(ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode)
105144        };
105145        ::cpp_core::Ptr::from_raw(ffi_result)
105146    }
105147}
105148
105149impl ::cpp_core::StaticDowncast<crate::QTexture2DMultisampleArray> for ::qt_core::QObject {
105150    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisampleArray* static_cast<Qt3DRender::QTexture2DMultisampleArray*>(QObject* ptr)```</span>.
105151    #[inline(always)]
105152    unsafe fn static_downcast(
105153        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105154    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisampleArray> {
105155        let ffi_result = {
105156            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTexture2DMultisampleArray_ptr2(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
105157        };
105158        ::cpp_core::Ptr::from_raw(ffi_result)
105159    }
105160}
105161
105162impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTexture2DMultisampleArray {
105163    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTexture2DMultisampleArray* ptr)```</span>.
105164    #[inline(always)]
105165    unsafe fn static_upcast(
105166        ptr: ::cpp_core::Ptr<crate::QTexture2DMultisampleArray>,
105167    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
105168        let ffi_result = {
105169            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr86(
105170                ptr.as_raw_ptr() as *mut crate::QTexture2DMultisampleArray
105171            )
105172        };
105173        ::cpp_core::Ptr::from_raw(ffi_result)
105174    }
105175}
105176
105177impl ::cpp_core::DynamicCast<crate::QTexture2DMultisampleArray> for ::qt_core::QObject {
105178    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTexture2DMultisampleArray* dynamic_cast<Qt3DRender::QTexture2DMultisampleArray*>(QObject* ptr)```</span>.
105179    #[inline(always)]
105180    unsafe fn dynamic_cast(
105181        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105182    ) -> ::cpp_core::Ptr<crate::QTexture2DMultisampleArray> {
105183        let ffi_result = {
105184            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTexture2DMultisampleArray_ptr2(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
105185        };
105186        ::cpp_core::Ptr::from_raw(ffi_result)
105187    }
105188}
105189
105190impl ::cpp_core::StaticDowncast<crate::QTextureRectangle> for crate::QAbstractTexture {
105191    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureRectangle* static_cast<Qt3DRender::QTextureRectangle*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
105192    #[inline(always)]
105193    unsafe fn static_downcast(
105194        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
105195    ) -> ::cpp_core::Ptr<crate::QTextureRectangle> {
105196        let ffi_result = {
105197            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureRectangle_ptr(
105198                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
105199            )
105200        };
105201        ::cpp_core::Ptr::from_raw(ffi_result)
105202    }
105203}
105204
105205impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTextureRectangle {
105206    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureRectangle* ptr)```</span>.
105207    #[inline(always)]
105208    unsafe fn static_upcast(
105209        ptr: ::cpp_core::Ptr<crate::QTextureRectangle>,
105210    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
105211        let ffi_result = {
105212            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr11(
105213                ptr.as_raw_ptr() as *mut crate::QTextureRectangle,
105214            )
105215        };
105216        ::cpp_core::Ptr::from_raw(ffi_result)
105217    }
105218}
105219
105220impl ::std::ops::Deref for crate::QTextureRectangle {
105221    type Target = crate::QAbstractTexture;
105222    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureRectangle* ptr)```</span>.
105223    #[inline(always)]
105224    fn deref(&self) -> &crate::QAbstractTexture {
105225        let ffi_result = {
105226            unsafe {
105227                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr11(
105228                    self as *const crate::QTextureRectangle as *mut crate::QTextureRectangle,
105229                )
105230            }
105231        };
105232        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
105233    }
105234}
105235
105236impl ::cpp_core::DynamicCast<crate::QTextureRectangle> for crate::QAbstractTexture {
105237    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureRectangle* dynamic_cast<Qt3DRender::QTextureRectangle*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
105238    #[inline(always)]
105239    unsafe fn dynamic_cast(
105240        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
105241    ) -> ::cpp_core::Ptr<crate::QTextureRectangle> {
105242        let ffi_result = {
105243            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureRectangle_ptr(
105244                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
105245            )
105246        };
105247        ::cpp_core::Ptr::from_raw(ffi_result)
105248    }
105249}
105250
105251impl ::cpp_core::StaticDowncast<crate::QTextureRectangle> for ::qt_3d_core::QNode {
105252    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureRectangle* static_cast<Qt3DRender::QTextureRectangle*>(Qt3DCore::QNode* ptr)```</span>.
105253    #[inline(always)]
105254    unsafe fn static_downcast(
105255        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105256    ) -> ::cpp_core::Ptr<crate::QTextureRectangle> {
105257        let ffi_result = {
105258            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureRectangle_ptr1(
105259                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
105260            )
105261        };
105262        ::cpp_core::Ptr::from_raw(ffi_result)
105263    }
105264}
105265
105266impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTextureRectangle {
105267    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTextureRectangle* ptr)```</span>.
105268    #[inline(always)]
105269    unsafe fn static_upcast(
105270        ptr: ::cpp_core::Ptr<crate::QTextureRectangle>,
105271    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
105272        let ffi_result = {
105273            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr79(
105274                ptr.as_raw_ptr() as *mut crate::QTextureRectangle
105275            )
105276        };
105277        ::cpp_core::Ptr::from_raw(ffi_result)
105278    }
105279}
105280
105281impl ::cpp_core::DynamicCast<crate::QTextureRectangle> for ::qt_3d_core::QNode {
105282    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureRectangle* dynamic_cast<Qt3DRender::QTextureRectangle*>(Qt3DCore::QNode* ptr)```</span>.
105283    #[inline(always)]
105284    unsafe fn dynamic_cast(
105285        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105286    ) -> ::cpp_core::Ptr<crate::QTextureRectangle> {
105287        let ffi_result = {
105288            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureRectangle_ptr1(
105289                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
105290            )
105291        };
105292        ::cpp_core::Ptr::from_raw(ffi_result)
105293    }
105294}
105295
105296impl ::cpp_core::StaticDowncast<crate::QTextureRectangle> for ::qt_core::QObject {
105297    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureRectangle* static_cast<Qt3DRender::QTextureRectangle*>(QObject* ptr)```</span>.
105298    #[inline(always)]
105299    unsafe fn static_downcast(
105300        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105301    ) -> ::cpp_core::Ptr<crate::QTextureRectangle> {
105302        let ffi_result = {
105303            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureRectangle_ptr2(
105304                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105305            )
105306        };
105307        ::cpp_core::Ptr::from_raw(ffi_result)
105308    }
105309}
105310
105311impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTextureRectangle {
105312    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTextureRectangle* ptr)```</span>.
105313    #[inline(always)]
105314    unsafe fn static_upcast(
105315        ptr: ::cpp_core::Ptr<crate::QTextureRectangle>,
105316    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
105317        let ffi_result = {
105318            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr87(
105319                ptr.as_raw_ptr() as *mut crate::QTextureRectangle
105320            )
105321        };
105322        ::cpp_core::Ptr::from_raw(ffi_result)
105323    }
105324}
105325
105326impl ::cpp_core::DynamicCast<crate::QTextureRectangle> for ::qt_core::QObject {
105327    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureRectangle* dynamic_cast<Qt3DRender::QTextureRectangle*>(QObject* ptr)```</span>.
105328    #[inline(always)]
105329    unsafe fn dynamic_cast(
105330        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105331    ) -> ::cpp_core::Ptr<crate::QTextureRectangle> {
105332        let ffi_result = {
105333            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureRectangle_ptr2(
105334                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105335            )
105336        };
105337        ::cpp_core::Ptr::from_raw(ffi_result)
105338    }
105339}
105340
105341impl ::cpp_core::StaticDowncast<crate::QTextureBuffer> for crate::QAbstractTexture {
105342    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureBuffer* static_cast<Qt3DRender::QTextureBuffer*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
105343    #[inline(always)]
105344    unsafe fn static_downcast(
105345        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
105346    ) -> ::cpp_core::Ptr<crate::QTextureBuffer> {
105347        let ffi_result = {
105348            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureBuffer_ptr(
105349                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
105350            )
105351        };
105352        ::cpp_core::Ptr::from_raw(ffi_result)
105353    }
105354}
105355
105356impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTextureBuffer {
105357    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureBuffer* ptr)```</span>.
105358    #[inline(always)]
105359    unsafe fn static_upcast(
105360        ptr: ::cpp_core::Ptr<crate::QTextureBuffer>,
105361    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
105362        let ffi_result = {
105363            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr12(
105364                ptr.as_raw_ptr() as *mut crate::QTextureBuffer,
105365            )
105366        };
105367        ::cpp_core::Ptr::from_raw(ffi_result)
105368    }
105369}
105370
105371impl ::std::ops::Deref for crate::QTextureBuffer {
105372    type Target = crate::QAbstractTexture;
105373    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureBuffer* ptr)```</span>.
105374    #[inline(always)]
105375    fn deref(&self) -> &crate::QAbstractTexture {
105376        let ffi_result = {
105377            unsafe {
105378                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr12(
105379                    self as *const crate::QTextureBuffer as *mut crate::QTextureBuffer,
105380                )
105381            }
105382        };
105383        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
105384    }
105385}
105386
105387impl ::cpp_core::DynamicCast<crate::QTextureBuffer> for crate::QAbstractTexture {
105388    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureBuffer* dynamic_cast<Qt3DRender::QTextureBuffer*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
105389    #[inline(always)]
105390    unsafe fn dynamic_cast(
105391        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
105392    ) -> ::cpp_core::Ptr<crate::QTextureBuffer> {
105393        let ffi_result = {
105394            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureBuffer_ptr(
105395                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
105396            )
105397        };
105398        ::cpp_core::Ptr::from_raw(ffi_result)
105399    }
105400}
105401
105402impl ::cpp_core::StaticDowncast<crate::QTextureBuffer> for ::qt_3d_core::QNode {
105403    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureBuffer* static_cast<Qt3DRender::QTextureBuffer*>(Qt3DCore::QNode* ptr)```</span>.
105404    #[inline(always)]
105405    unsafe fn static_downcast(
105406        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105407    ) -> ::cpp_core::Ptr<crate::QTextureBuffer> {
105408        let ffi_result = {
105409            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureBuffer_ptr1(
105410                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
105411            )
105412        };
105413        ::cpp_core::Ptr::from_raw(ffi_result)
105414    }
105415}
105416
105417impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTextureBuffer {
105418    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTextureBuffer* ptr)```</span>.
105419    #[inline(always)]
105420    unsafe fn static_upcast(
105421        ptr: ::cpp_core::Ptr<crate::QTextureBuffer>,
105422    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
105423        let ffi_result = {
105424            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr80(
105425                ptr.as_raw_ptr() as *mut crate::QTextureBuffer
105426            )
105427        };
105428        ::cpp_core::Ptr::from_raw(ffi_result)
105429    }
105430}
105431
105432impl ::cpp_core::DynamicCast<crate::QTextureBuffer> for ::qt_3d_core::QNode {
105433    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureBuffer* dynamic_cast<Qt3DRender::QTextureBuffer*>(Qt3DCore::QNode* ptr)```</span>.
105434    #[inline(always)]
105435    unsafe fn dynamic_cast(
105436        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105437    ) -> ::cpp_core::Ptr<crate::QTextureBuffer> {
105438        let ffi_result = {
105439            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureBuffer_ptr1(
105440                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
105441            )
105442        };
105443        ::cpp_core::Ptr::from_raw(ffi_result)
105444    }
105445}
105446
105447impl ::cpp_core::StaticDowncast<crate::QTextureBuffer> for ::qt_core::QObject {
105448    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureBuffer* static_cast<Qt3DRender::QTextureBuffer*>(QObject* ptr)```</span>.
105449    #[inline(always)]
105450    unsafe fn static_downcast(
105451        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105452    ) -> ::cpp_core::Ptr<crate::QTextureBuffer> {
105453        let ffi_result = {
105454            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureBuffer_ptr2(
105455                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105456            )
105457        };
105458        ::cpp_core::Ptr::from_raw(ffi_result)
105459    }
105460}
105461
105462impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTextureBuffer {
105463    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTextureBuffer* ptr)```</span>.
105464    #[inline(always)]
105465    unsafe fn static_upcast(
105466        ptr: ::cpp_core::Ptr<crate::QTextureBuffer>,
105467    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
105468        let ffi_result = {
105469            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr88(
105470                ptr.as_raw_ptr() as *mut crate::QTextureBuffer
105471            )
105472        };
105473        ::cpp_core::Ptr::from_raw(ffi_result)
105474    }
105475}
105476
105477impl ::cpp_core::DynamicCast<crate::QTextureBuffer> for ::qt_core::QObject {
105478    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureBuffer* dynamic_cast<Qt3DRender::QTextureBuffer*>(QObject* ptr)```</span>.
105479    #[inline(always)]
105480    unsafe fn dynamic_cast(
105481        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105482    ) -> ::cpp_core::Ptr<crate::QTextureBuffer> {
105483        let ffi_result = {
105484            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureBuffer_ptr2(
105485                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105486            )
105487        };
105488        ::cpp_core::Ptr::from_raw(ffi_result)
105489    }
105490}
105491
105492impl ::cpp_core::StaticDowncast<crate::QTextureLoader> for crate::QAbstractTexture {
105493    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureLoader* static_cast<Qt3DRender::QTextureLoader*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
105494    #[inline(always)]
105495    unsafe fn static_downcast(
105496        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
105497    ) -> ::cpp_core::Ptr<crate::QTextureLoader> {
105498        let ffi_result = {
105499            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureLoader_ptr(
105500                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
105501            )
105502        };
105503        ::cpp_core::Ptr::from_raw(ffi_result)
105504    }
105505}
105506
105507impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QTextureLoader {
105508    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureLoader* ptr)```</span>.
105509    #[inline(always)]
105510    unsafe fn static_upcast(
105511        ptr: ::cpp_core::Ptr<crate::QTextureLoader>,
105512    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
105513        let ffi_result = {
105514            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr13(
105515                ptr.as_raw_ptr() as *mut crate::QTextureLoader,
105516            )
105517        };
105518        ::cpp_core::Ptr::from_raw(ffi_result)
105519    }
105520}
105521
105522impl ::std::ops::Deref for crate::QTextureLoader {
105523    type Target = crate::QAbstractTexture;
105524    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QTextureLoader* ptr)```</span>.
105525    #[inline(always)]
105526    fn deref(&self) -> &crate::QAbstractTexture {
105527        let ffi_result = {
105528            unsafe {
105529                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr13(
105530                    self as *const crate::QTextureLoader as *mut crate::QTextureLoader,
105531                )
105532            }
105533        };
105534        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
105535    }
105536}
105537
105538impl ::cpp_core::DynamicCast<crate::QTextureLoader> for crate::QAbstractTexture {
105539    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureLoader* dynamic_cast<Qt3DRender::QTextureLoader*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
105540    #[inline(always)]
105541    unsafe fn dynamic_cast(
105542        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
105543    ) -> ::cpp_core::Ptr<crate::QTextureLoader> {
105544        let ffi_result = {
105545            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureLoader_ptr(
105546                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
105547            )
105548        };
105549        ::cpp_core::Ptr::from_raw(ffi_result)
105550    }
105551}
105552
105553impl ::cpp_core::StaticDowncast<crate::QTextureLoader> for ::qt_3d_core::QNode {
105554    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureLoader* static_cast<Qt3DRender::QTextureLoader*>(Qt3DCore::QNode* ptr)```</span>.
105555    #[inline(always)]
105556    unsafe fn static_downcast(
105557        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105558    ) -> ::cpp_core::Ptr<crate::QTextureLoader> {
105559        let ffi_result = {
105560            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureLoader_ptr1(
105561                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
105562            )
105563        };
105564        ::cpp_core::Ptr::from_raw(ffi_result)
105565    }
105566}
105567
105568impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QTextureLoader {
105569    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QTextureLoader* ptr)```</span>.
105570    #[inline(always)]
105571    unsafe fn static_upcast(
105572        ptr: ::cpp_core::Ptr<crate::QTextureLoader>,
105573    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
105574        let ffi_result = {
105575            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr81(
105576                ptr.as_raw_ptr() as *mut crate::QTextureLoader
105577            )
105578        };
105579        ::cpp_core::Ptr::from_raw(ffi_result)
105580    }
105581}
105582
105583impl ::cpp_core::DynamicCast<crate::QTextureLoader> for ::qt_3d_core::QNode {
105584    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureLoader* dynamic_cast<Qt3DRender::QTextureLoader*>(Qt3DCore::QNode* ptr)```</span>.
105585    #[inline(always)]
105586    unsafe fn dynamic_cast(
105587        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105588    ) -> ::cpp_core::Ptr<crate::QTextureLoader> {
105589        let ffi_result = {
105590            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureLoader_ptr1(
105591                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
105592            )
105593        };
105594        ::cpp_core::Ptr::from_raw(ffi_result)
105595    }
105596}
105597
105598impl ::cpp_core::StaticDowncast<crate::QTextureLoader> for ::qt_core::QObject {
105599    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureLoader* static_cast<Qt3DRender::QTextureLoader*>(QObject* ptr)```</span>.
105600    #[inline(always)]
105601    unsafe fn static_downcast(
105602        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105603    ) -> ::cpp_core::Ptr<crate::QTextureLoader> {
105604        let ffi_result = {
105605            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureLoader_ptr2(
105606                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105607            )
105608        };
105609        ::cpp_core::Ptr::from_raw(ffi_result)
105610    }
105611}
105612
105613impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QTextureLoader {
105614    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QTextureLoader* ptr)```</span>.
105615    #[inline(always)]
105616    unsafe fn static_upcast(
105617        ptr: ::cpp_core::Ptr<crate::QTextureLoader>,
105618    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
105619        let ffi_result = {
105620            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr89(
105621                ptr.as_raw_ptr() as *mut crate::QTextureLoader
105622            )
105623        };
105624        ::cpp_core::Ptr::from_raw(ffi_result)
105625    }
105626}
105627
105628impl ::cpp_core::DynamicCast<crate::QTextureLoader> for ::qt_core::QObject {
105629    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureLoader* dynamic_cast<Qt3DRender::QTextureLoader*>(QObject* ptr)```</span>.
105630    #[inline(always)]
105631    unsafe fn dynamic_cast(
105632        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105633    ) -> ::cpp_core::Ptr<crate::QTextureLoader> {
105634        let ffi_result = {
105635            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureLoader_ptr2(
105636                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105637            )
105638        };
105639        ::cpp_core::Ptr::from_raw(ffi_result)
105640    }
105641}
105642
105643impl ::cpp_core::StaticDowncast<crate::QTextureGenerator> for crate::QAbstractFunctor {
105644    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureGenerator* static_cast<Qt3DRender::QTextureGenerator*>(Qt3DRender::QAbstractFunctor* ptr)```</span>.
105645    #[inline(always)]
105646    unsafe fn static_downcast(
105647        ptr: ::cpp_core::Ptr<crate::QAbstractFunctor>,
105648    ) -> ::cpp_core::Ptr<crate::QTextureGenerator> {
105649        let ffi_result = {
105650            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QTextureGenerator_ptr(
105651                ptr.as_raw_ptr() as *mut crate::QAbstractFunctor,
105652            )
105653        };
105654        ::cpp_core::Ptr::from_raw(ffi_result)
105655    }
105656}
105657
105658impl ::cpp_core::StaticUpcast<crate::QAbstractFunctor> for crate::QTextureGenerator {
105659    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractFunctor* static_cast<Qt3DRender::QAbstractFunctor*>(Qt3DRender::QTextureGenerator* ptr)```</span>.
105660    #[inline(always)]
105661    unsafe fn static_upcast(
105662        ptr: ::cpp_core::Ptr<crate::QTextureGenerator>,
105663    ) -> ::cpp_core::Ptr<crate::QAbstractFunctor> {
105664        let ffi_result = {
105665            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractFunctor_ptr3(
105666                ptr.as_raw_ptr() as *mut crate::QTextureGenerator,
105667            )
105668        };
105669        ::cpp_core::Ptr::from_raw(ffi_result)
105670    }
105671}
105672
105673impl ::std::ops::Deref for crate::QTextureGenerator {
105674    type Target = crate::QAbstractFunctor;
105675    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractFunctor* static_cast<Qt3DRender::QAbstractFunctor*>(Qt3DRender::QTextureGenerator* ptr)```</span>.
105676    #[inline(always)]
105677    fn deref(&self) -> &crate::QAbstractFunctor {
105678        let ffi_result = {
105679            unsafe {
105680                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractFunctor_ptr3(
105681                    self as *const crate::QTextureGenerator as *mut crate::QTextureGenerator,
105682                )
105683            }
105684        };
105685        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
105686    }
105687}
105688
105689impl ::cpp_core::DynamicCast<crate::QTextureGenerator> for crate::QAbstractFunctor {
105690    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QTextureGenerator* dynamic_cast<Qt3DRender::QTextureGenerator*>(Qt3DRender::QAbstractFunctor* ptr)```</span>.
105691    #[inline(always)]
105692    unsafe fn dynamic_cast(
105693        ptr: ::cpp_core::Ptr<crate::QAbstractFunctor>,
105694    ) -> ::cpp_core::Ptr<crate::QTextureGenerator> {
105695        let ffi_result = {
105696            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QTextureGenerator_ptr(
105697                ptr.as_raw_ptr() as *mut crate::QAbstractFunctor,
105698            )
105699        };
105700        ::cpp_core::Ptr::from_raw(ffi_result)
105701    }
105702}
105703
105704impl ::cpp_core::StaticDowncast<crate::QViewport> for crate::QFrameGraphNode {
105705    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QViewport* static_cast<Qt3DRender::QViewport*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
105706    #[inline(always)]
105707    unsafe fn static_downcast(
105708        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
105709    ) -> ::cpp_core::Ptr<crate::QViewport> {
105710        let ffi_result = {
105711            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QViewport_ptr(
105712                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
105713            )
105714        };
105715        ::cpp_core::Ptr::from_raw(ffi_result)
105716    }
105717}
105718
105719impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QViewport {
105720    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QViewport* ptr)```</span>.
105721    #[inline(always)]
105722    unsafe fn static_upcast(
105723        ptr: ::cpp_core::Ptr<crate::QViewport>,
105724    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
105725        let ffi_result = {
105726            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr17(
105727                ptr.as_raw_ptr() as *mut crate::QViewport,
105728            )
105729        };
105730        ::cpp_core::Ptr::from_raw(ffi_result)
105731    }
105732}
105733
105734impl ::std::ops::Deref for crate::QViewport {
105735    type Target = crate::QFrameGraphNode;
105736    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QViewport* ptr)```</span>.
105737    #[inline(always)]
105738    fn deref(&self) -> &crate::QFrameGraphNode {
105739        let ffi_result = {
105740            unsafe {
105741                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr17(
105742                    self as *const crate::QViewport as *mut crate::QViewport,
105743                )
105744            }
105745        };
105746        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
105747    }
105748}
105749
105750impl ::cpp_core::DynamicCast<crate::QViewport> for crate::QFrameGraphNode {
105751    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QViewport* dynamic_cast<Qt3DRender::QViewport*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
105752    #[inline(always)]
105753    unsafe fn dynamic_cast(
105754        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
105755    ) -> ::cpp_core::Ptr<crate::QViewport> {
105756        let ffi_result = {
105757            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QViewport_ptr(
105758                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
105759            )
105760        };
105761        ::cpp_core::Ptr::from_raw(ffi_result)
105762    }
105763}
105764
105765impl ::cpp_core::StaticDowncast<crate::QViewport> for ::qt_3d_core::QNode {
105766    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QViewport* static_cast<Qt3DRender::QViewport*>(Qt3DCore::QNode* ptr)```</span>.
105767    #[inline(always)]
105768    unsafe fn static_downcast(
105769        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105770    ) -> ::cpp_core::Ptr<crate::QViewport> {
105771        let ffi_result = {
105772            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QViewport_ptr1(
105773                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
105774            )
105775        };
105776        ::cpp_core::Ptr::from_raw(ffi_result)
105777    }
105778}
105779
105780impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QViewport {
105781    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QViewport* ptr)```</span>.
105782    #[inline(always)]
105783    unsafe fn static_upcast(
105784        ptr: ::cpp_core::Ptr<crate::QViewport>,
105785    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
105786        let ffi_result = {
105787            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr82(
105788                ptr.as_raw_ptr() as *mut crate::QViewport
105789            )
105790        };
105791        ::cpp_core::Ptr::from_raw(ffi_result)
105792    }
105793}
105794
105795impl ::cpp_core::DynamicCast<crate::QViewport> for ::qt_3d_core::QNode {
105796    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QViewport* dynamic_cast<Qt3DRender::QViewport*>(Qt3DCore::QNode* ptr)```</span>.
105797    #[inline(always)]
105798    unsafe fn dynamic_cast(
105799        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
105800    ) -> ::cpp_core::Ptr<crate::QViewport> {
105801        let ffi_result = {
105802            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QViewport_ptr1(
105803                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
105804            )
105805        };
105806        ::cpp_core::Ptr::from_raw(ffi_result)
105807    }
105808}
105809
105810impl ::cpp_core::StaticDowncast<crate::QViewport> for ::qt_core::QObject {
105811    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QViewport* static_cast<Qt3DRender::QViewport*>(QObject* ptr)```</span>.
105812    #[inline(always)]
105813    unsafe fn static_downcast(
105814        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105815    ) -> ::cpp_core::Ptr<crate::QViewport> {
105816        let ffi_result = {
105817            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QViewport_ptr2(
105818                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105819            )
105820        };
105821        ::cpp_core::Ptr::from_raw(ffi_result)
105822    }
105823}
105824
105825impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QViewport {
105826    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QViewport* ptr)```</span>.
105827    #[inline(always)]
105828    unsafe fn static_upcast(
105829        ptr: ::cpp_core::Ptr<crate::QViewport>,
105830    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
105831        let ffi_result = {
105832            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr90(
105833                ptr.as_raw_ptr() as *mut crate::QViewport
105834            )
105835        };
105836        ::cpp_core::Ptr::from_raw(ffi_result)
105837    }
105838}
105839
105840impl ::cpp_core::DynamicCast<crate::QViewport> for ::qt_core::QObject {
105841    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QViewport* dynamic_cast<Qt3DRender::QViewport*>(QObject* ptr)```</span>.
105842    #[inline(always)]
105843    unsafe fn dynamic_cast(
105844        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
105845    ) -> ::cpp_core::Ptr<crate::QViewport> {
105846        let ffi_result = {
105847            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QViewport_ptr2(
105848                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
105849            )
105850        };
105851        ::cpp_core::Ptr::from_raw(ffi_result)
105852    }
105853}
105854
105855#[cfg_attr(
105856    feature = "ritual_rustdoc_nightly",
105857    doc(cfg(any(
105858        cpp_lib_version = "5.11.3",
105859        cpp_lib_version = "5.12.2",
105860        cpp_lib_version = "5.13.0",
105861        cpp_lib_version = "5.14.0"
105862    )))
105863)]
105864#[cfg(any(
105865    any(
105866        cpp_lib_version = "5.11.3",
105867        cpp_lib_version = "5.12.2",
105868        cpp_lib_version = "5.13.0",
105869        cpp_lib_version = "5.14.0"
105870    ),
105871    feature = "ritual_rustdoc"
105872))]
105873impl ::cpp_core::CppDeletable for crate::QRayCasterHit {
105874    /// <p>Destroys the instance of QRayCasterHit.</p>
105875    ///
105876    /// Calls C++ function: <span style='color: green;'>```[destructor] void Qt3DRender::QRayCasterHit::~QRayCasterHit()```</span>.
105877    ///
105878    /// <a href="http://doc.qt.io/qt-5/qt3drender-qraycasterhit.html#dtor.QRayCasterHit">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QRayCasterHit.</p></div>
105879    #[inline(always)]
105880    unsafe fn delete(&self) {
105881        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCasterHit_dQRayCasterHit(
105882            self as *const crate::QRayCasterHit as *mut crate::QRayCasterHit,
105883        )
105884    }
105885}
105886
105887#[cfg_attr(
105888    feature = "ritual_rustdoc_nightly",
105889    doc(cfg(any(
105890        cpp_lib_version = "5.11.3",
105891        cpp_lib_version = "5.12.2",
105892        cpp_lib_version = "5.13.0",
105893        cpp_lib_version = "5.14.0"
105894    )))
105895)]
105896#[cfg(any(
105897    any(
105898        cpp_lib_version = "5.11.3",
105899        cpp_lib_version = "5.12.2",
105900        cpp_lib_version = "5.13.0",
105901        cpp_lib_version = "5.14.0"
105902    ),
105903    feature = "ritual_rustdoc"
105904))]
105905impl ::cpp_core::CppDeletable for crate::QAbstractRayCaster {
105906    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QAbstractRayCaster::~QAbstractRayCaster()```</span>.
105907    #[inline(always)]
105908    unsafe fn delete(&self) {
105909        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QAbstractRayCaster_dQAbstractRayCaster(
105910            self as *const crate::QAbstractRayCaster as *mut crate::QAbstractRayCaster,
105911        )
105912    }
105913}
105914
105915#[cfg_attr(
105916    feature = "ritual_rustdoc_nightly",
105917    doc(cfg(any(
105918        cpp_lib_version = "5.11.3",
105919        cpp_lib_version = "5.12.2",
105920        cpp_lib_version = "5.13.0",
105921        cpp_lib_version = "5.14.0"
105922    )))
105923)]
105924#[cfg(any(
105925    any(
105926        cpp_lib_version = "5.11.3",
105927        cpp_lib_version = "5.12.2",
105928        cpp_lib_version = "5.13.0",
105929        cpp_lib_version = "5.14.0"
105930    ),
105931    feature = "ritual_rustdoc"
105932))]
105933impl ::cpp_core::CppDeletable for crate::QBlitFramebuffer {
105934    /// <p>Destructor.</p>
105935    ///
105936    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QBlitFramebuffer::~QBlitFramebuffer()```</span>.
105937    ///
105938    /// <a href="http://doc.qt.io/qt-5/qt3drender-qblitframebuffer.html#dtor.QBlitFramebuffer">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destructor.</p></div>
105939    #[inline(always)]
105940    unsafe fn delete(&self) {
105941        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QBlitFramebuffer_dQBlitFramebuffer(
105942            self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
105943        )
105944    }
105945}
105946
105947#[cfg_attr(
105948    feature = "ritual_rustdoc_nightly",
105949    doc(cfg(any(
105950        cpp_lib_version = "5.11.3",
105951        cpp_lib_version = "5.12.2",
105952        cpp_lib_version = "5.13.0",
105953        cpp_lib_version = "5.14.0"
105954    )))
105955)]
105956#[cfg(any(
105957    any(
105958        cpp_lib_version = "5.11.3",
105959        cpp_lib_version = "5.12.2",
105960        cpp_lib_version = "5.13.0",
105961        cpp_lib_version = "5.14.0"
105962    ),
105963    feature = "ritual_rustdoc"
105964))]
105965impl ::cpp_core::CppDeletable for crate::QLineWidth {
105966    /// <p>Destroys the instance of QLineWidth. The destructor is virtual.</p>
105967    ///
105968    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QLineWidth::~QLineWidth()```</span>.
105969    ///
105970    /// <a href="http://doc.qt.io/qt-5/qt3drender-qlinewidth.html#dtor.QLineWidth">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QLineWidth. The destructor is virtual.</p></div>
105971    #[inline(always)]
105972    unsafe fn delete(&self) {
105973        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QLineWidth_dQLineWidth(
105974            self as *const crate::QLineWidth as *mut crate::QLineWidth,
105975        )
105976    }
105977}
105978
105979#[cfg_attr(
105980    feature = "ritual_rustdoc_nightly",
105981    doc(cfg(any(
105982        cpp_lib_version = "5.11.3",
105983        cpp_lib_version = "5.12.2",
105984        cpp_lib_version = "5.13.0",
105985        cpp_lib_version = "5.14.0"
105986    )))
105987)]
105988#[cfg(any(
105989    any(
105990        cpp_lib_version = "5.11.3",
105991        cpp_lib_version = "5.12.2",
105992        cpp_lib_version = "5.13.0",
105993        cpp_lib_version = "5.14.0"
105994    ),
105995    feature = "ritual_rustdoc"
105996))]
105997impl ::cpp_core::CppDeletable for crate::QPickLineEvent {
105998    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QPickLineEvent::~QPickLineEvent()```</span>.
105999    #[inline(always)]
106000    unsafe fn delete(&self) {
106001        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickLineEvent_dQPickLineEvent(
106002            self as *const crate::QPickLineEvent as *mut crate::QPickLineEvent,
106003        )
106004    }
106005}
106006
106007#[cfg_attr(
106008    feature = "ritual_rustdoc_nightly",
106009    doc(cfg(any(
106010        cpp_lib_version = "5.11.3",
106011        cpp_lib_version = "5.12.2",
106012        cpp_lib_version = "5.13.0",
106013        cpp_lib_version = "5.14.0"
106014    )))
106015)]
106016#[cfg(any(
106017    any(
106018        cpp_lib_version = "5.11.3",
106019        cpp_lib_version = "5.12.2",
106020        cpp_lib_version = "5.13.0",
106021        cpp_lib_version = "5.14.0"
106022    ),
106023    feature = "ritual_rustdoc"
106024))]
106025impl ::cpp_core::CppDeletable for crate::QPickPointEvent {
106026    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QPickPointEvent::~QPickPointEvent()```</span>.
106027    #[inline(always)]
106028    unsafe fn delete(&self) {
106029        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QPickPointEvent_dQPickPointEvent(
106030            self as *const crate::QPickPointEvent as *mut crate::QPickPointEvent,
106031        )
106032    }
106033}
106034
106035#[cfg_attr(
106036    feature = "ritual_rustdoc_nightly",
106037    doc(cfg(any(
106038        cpp_lib_version = "5.11.3",
106039        cpp_lib_version = "5.12.2",
106040        cpp_lib_version = "5.13.0",
106041        cpp_lib_version = "5.14.0"
106042    )))
106043)]
106044#[cfg(any(
106045    any(
106046        cpp_lib_version = "5.11.3",
106047        cpp_lib_version = "5.12.2",
106048        cpp_lib_version = "5.13.0",
106049        cpp_lib_version = "5.14.0"
106050    ),
106051    feature = "ritual_rustdoc"
106052))]
106053impl ::cpp_core::CppDeletable for crate::QProximityFilter {
106054    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QProximityFilter::~QProximityFilter()```</span>.
106055    #[inline(always)]
106056    unsafe fn delete(&self) {
106057        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QProximityFilter_dQProximityFilter(
106058            self as *const crate::QProximityFilter as *mut crate::QProximityFilter,
106059        )
106060    }
106061}
106062
106063#[cfg_attr(
106064    feature = "ritual_rustdoc_nightly",
106065    doc(cfg(any(
106066        cpp_lib_version = "5.11.3",
106067        cpp_lib_version = "5.12.2",
106068        cpp_lib_version = "5.13.0",
106069        cpp_lib_version = "5.14.0"
106070    )))
106071)]
106072#[cfg(any(
106073    any(
106074        cpp_lib_version = "5.11.3",
106075        cpp_lib_version = "5.12.2",
106076        cpp_lib_version = "5.13.0",
106077        cpp_lib_version = "5.14.0"
106078    ),
106079    feature = "ritual_rustdoc"
106080))]
106081impl ::cpp_core::CppDeletable for crate::QRayCaster {
106082    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRayCaster::~QRayCaster()```</span>.
106083    #[inline(always)]
106084    unsafe fn delete(&self) {
106085        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRayCaster_dQRayCaster(
106086            self as *const crate::QRayCaster as *mut crate::QRayCaster,
106087        )
106088    }
106089}
106090
106091#[cfg_attr(
106092    feature = "ritual_rustdoc_nightly",
106093    doc(cfg(any(
106094        cpp_lib_version = "5.11.3",
106095        cpp_lib_version = "5.12.2",
106096        cpp_lib_version = "5.13.0",
106097        cpp_lib_version = "5.14.0"
106098    )))
106099)]
106100#[cfg(any(
106101    any(
106102        cpp_lib_version = "5.11.3",
106103        cpp_lib_version = "5.12.2",
106104        cpp_lib_version = "5.13.0",
106105        cpp_lib_version = "5.14.0"
106106    ),
106107    feature = "ritual_rustdoc"
106108))]
106109impl ::cpp_core::CppDeletable for crate::QScreenRayCaster {
106110    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QScreenRayCaster::~QScreenRayCaster()```</span>.
106111    #[inline(always)]
106112    unsafe fn delete(&self) {
106113        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QScreenRayCaster_dQScreenRayCaster(
106114            self as *const crate::QScreenRayCaster as *mut crate::QScreenRayCaster,
106115        )
106116    }
106117}
106118
106119#[cfg_attr(
106120    feature = "ritual_rustdoc_nightly",
106121    doc(cfg(any(
106122        cpp_lib_version = "5.11.3",
106123        cpp_lib_version = "5.12.2",
106124        cpp_lib_version = "5.13.0",
106125        cpp_lib_version = "5.14.0"
106126    )))
106127)]
106128#[cfg(any(
106129    any(
106130        cpp_lib_version = "5.11.3",
106131        cpp_lib_version = "5.12.2",
106132        cpp_lib_version = "5.13.0",
106133        cpp_lib_version = "5.14.0"
106134    ),
106135    feature = "ritual_rustdoc"
106136))]
106137impl ::cpp_core::CppDeletable for crate::QShaderProgramBuilder {
106138    /// <p>Destroys the instance of QShaderProgramBuilder. The destructor is virtual.</p>
106139    ///
106140    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QShaderProgramBuilder::~QShaderProgramBuilder()```</span>.
106141    ///
106142    /// <a href="http://doc.qt.io/qt-5/qt3drender-qshaderprogrambuilder.html#dtor.QShaderProgramBuilder">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the instance of QShaderProgramBuilder. The destructor is virtual.</p></div>
106143    #[inline(always)]
106144    unsafe fn delete(&self) {
106145        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderProgramBuilder_dQShaderProgramBuilder(
106146            self as *const crate::QShaderProgramBuilder as *mut crate::QShaderProgramBuilder,
106147        )
106148    }
106149}
106150
106151#[cfg_attr(
106152    feature = "ritual_rustdoc_nightly",
106153    doc(cfg(any(
106154        cpp_lib_version = "5.11.3",
106155        cpp_lib_version = "5.12.2",
106156        cpp_lib_version = "5.13.0",
106157        cpp_lib_version = "5.14.0"
106158    )))
106159)]
106160#[cfg(any(
106161    any(
106162        cpp_lib_version = "5.11.3",
106163        cpp_lib_version = "5.12.2",
106164        cpp_lib_version = "5.13.0",
106165        cpp_lib_version = "5.14.0"
106166    ),
106167    feature = "ritual_rustdoc"
106168))]
106169impl ::cpp_core::CppDeletable for crate::QVectorOfQRayCasterHit {
106170    /// <p>Destroys the vector.</p>
106171    ///
106172    /// Calls C++ function: <span style='color: green;'>```[destructor] void QVector<Qt3DRender::QRayCasterHit>::~QVector()```</span>.
106173    ///
106174    /// <a href="http://doc.qt.io/qt-5/qvector.html#dtor.QVector">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Destroys the vector.</p></div>
106175    #[inline(always)]
106176    unsafe fn delete(&self) {
106177        crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_dQVector(
106178            self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
106179        )
106180    }
106181}
106182
106183#[cfg_attr(
106184    feature = "ritual_rustdoc_nightly",
106185    doc(cfg(any(
106186        cpp_lib_version = "5.11.3",
106187        cpp_lib_version = "5.12.2",
106188        cpp_lib_version = "5.13.0",
106189        cpp_lib_version = "5.14.0"
106190    )))
106191)]
106192#[cfg(any(
106193    any(
106194        cpp_lib_version = "5.11.3",
106195        cpp_lib_version = "5.12.2",
106196        cpp_lib_version = "5.13.0",
106197        cpp_lib_version = "5.14.0"
106198    ),
106199    feature = "ritual_rustdoc"
106200))]
106201impl ::cpp_core::vector_ops::Size for crate::QVectorOfQRayCasterHit {
106202    /// <p>Returns the number of items in the vector.</p>
106203    ///
106204    /// Calls C++ function: <span style='color: green;'>```int QVector<Qt3DRender::QRayCasterHit>::size() const```</span>.
106205    ///
106206    /// <a href="http://doc.qt.io/qt-5/qvector.html#size">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns the number of items in the vector.</p>
106207    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#isEmpty">isEmpty</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#resize">resize</a>().</p></div>
106208    #[inline(always)]
106209    unsafe fn size(&self) -> usize {
106210        let ffi_result = {
106211            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_size(
106212                self as *const crate::QVectorOfQRayCasterHit,
106213            )
106214        };
106215        ffi_result as usize
106216    }
106217}
106218
106219#[cfg_attr(
106220    feature = "ritual_rustdoc_nightly",
106221    doc(cfg(any(
106222        cpp_lib_version = "5.11.3",
106223        cpp_lib_version = "5.12.2",
106224        cpp_lib_version = "5.13.0",
106225        cpp_lib_version = "5.14.0"
106226    )))
106227)]
106228#[cfg(any(
106229    any(
106230        cpp_lib_version = "5.11.3",
106231        cpp_lib_version = "5.12.2",
106232        cpp_lib_version = "5.13.0",
106233        cpp_lib_version = "5.14.0"
106234    ),
106235    feature = "ritual_rustdoc"
106236))]
106237impl ::cpp_core::vector_ops::DataMut for crate::QVectorOfQRayCasterHit {
106238    type Output = ::cpp_core::Ptr<crate::QRayCasterHit>;
106239    /// <p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
106240    ///
106241    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCasterHit* QVector<Qt3DRender::QRayCasterHit>::data()```</span>.
106242    ///
106243    /// <a href="http://doc.qt.io/qt-5/qvector.html#data">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a pointer to the data stored in the vector. The pointer can be used to access and modify the items in the vector.</p>
106244    /// <p>Example:</p>
106245    /// <pre class="cpp">
106246    ///
106247    ///   <span class="type"><a href="http://doc.qt.io/qt-5/qvector.html#QVector">QVector</a></span><span class="operator">&lt;</span><span class="type">int</span><span class="operator">&gt;</span> vector(<span class="number">10</span>);
106248    ///   <span class="type">int</span> <span class="operator">*</span>data <span class="operator">=</span> vector<span class="operator">.</span>data();
106249    ///   <span class="keyword">for</span> (<span class="type">int</span> i <span class="operator">=</span> <span class="number">0</span>; i <span class="operator">&lt;</span> <span class="number">10</span>; <span class="operator">+</span><span class="operator">+</span>i)
106250    /// &#32;     data<span class="operator">[</span>i<span class="operator">]</span> <span class="operator">=</span> <span class="number">2</span> <span class="operator">*</span> i;
106251    ///
106252    /// </pre>
106253    /// <p>The pointer remains valid as long as the vector isn't reallocated.</p>
106254    /// <p>This function is mostly useful to pass a vector to a function that accepts a plain C++ array.</p>
106255    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#constData">constData</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-5b-5d">operator[]</a>().</p></div>
106256    #[inline(always)]
106257    unsafe fn data_mut(&self) -> ::cpp_core::Ptr<crate::QRayCasterHit> {
106258        let ffi_result = {
106259            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_data(
106260                self as *const crate::QVectorOfQRayCasterHit as *mut crate::QVectorOfQRayCasterHit,
106261            )
106262        };
106263        ::cpp_core::Ptr::from_raw(ffi_result)
106264    }
106265}
106266
106267#[cfg_attr(
106268    feature = "ritual_rustdoc_nightly",
106269    doc(cfg(any(
106270        cpp_lib_version = "5.11.3",
106271        cpp_lib_version = "5.12.2",
106272        cpp_lib_version = "5.13.0",
106273        cpp_lib_version = "5.14.0"
106274    )))
106275)]
106276#[cfg(any(
106277    any(
106278        cpp_lib_version = "5.11.3",
106279        cpp_lib_version = "5.12.2",
106280        cpp_lib_version = "5.13.0",
106281        cpp_lib_version = "5.14.0"
106282    ),
106283    feature = "ritual_rustdoc"
106284))]
106285impl ::cpp_core::vector_ops::Data for crate::QVectorOfQRayCasterHit {
106286    type Output = ::cpp_core::Ptr<crate::QRayCasterHit>;
106287    /// <p>This is an overloaded function.</p>
106288    ///
106289    /// Calls C++ function: <span style='color: green;'>```const Qt3DRender::QRayCasterHit* QVector<Qt3DRender::QRayCasterHit>::data() const```</span>.
106290    ///
106291    /// <a href="http://doc.qt.io/qt-5/qvector.html#data-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>This is an overloaded function.</p></div>
106292    #[inline(always)]
106293    unsafe fn data(&self) -> ::cpp_core::Ptr<crate::QRayCasterHit> {
106294        let ffi_result = {
106295            crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_data1(
106296                self as *const crate::QVectorOfQRayCasterHit,
106297            )
106298        };
106299        ::cpp_core::Ptr::from_raw(ffi_result as *mut crate::QRayCasterHit)
106300    }
106301}
106302
106303#[cfg_attr(
106304    feature = "ritual_rustdoc_nightly",
106305    doc(cfg(any(
106306        cpp_lib_version = "5.11.3",
106307        cpp_lib_version = "5.12.2",
106308        cpp_lib_version = "5.13.0",
106309        cpp_lib_version = "5.14.0"
106310    )))
106311)]
106312#[cfg(any(
106313    any(
106314        cpp_lib_version = "5.11.3",
106315        cpp_lib_version = "5.12.2",
106316        cpp_lib_version = "5.13.0",
106317        cpp_lib_version = "5.14.0"
106318    ),
106319    feature = "ritual_rustdoc"
106320))]
106321impl ::std::ops::Add<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>
106322    for &crate::QVectorOfQRayCasterHit
106323{
106324    type Output = ::cpp_core::CppBox<crate::QVectorOfQRayCasterHit>;
106325    /// <p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
106326    ///
106327    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit> QVector<Qt3DRender::QRayCasterHit>::operator+(const QVector<Qt3DRender::QRayCasterHit>& l) const```</span>.
106328    ///
106329    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Returns a vector that contains all the items in this vector followed by all the items in the <i>other</i> vector.</p>
106330    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
106331    #[inline(always)]
106332    fn add(
106333        self,
106334        l: ::cpp_core::Ref<crate::QVectorOfQRayCasterHit>,
106335    ) -> ::cpp_core::CppBox<crate::QVectorOfQRayCasterHit> {
106336        let ffi_result = {
106337            unsafe {
106338                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_operator_2(
106339                    self as *const crate::QVectorOfQRayCasterHit,
106340                    l.as_raw_ptr(),
106341                )
106342            }
106343        };
106344        unsafe {
106345            ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
106346        }
106347    }
106348}
106349
106350#[cfg_attr(
106351    feature = "ritual_rustdoc_nightly",
106352    doc(cfg(any(
106353        cpp_lib_version = "5.11.3",
106354        cpp_lib_version = "5.12.2",
106355        cpp_lib_version = "5.13.0",
106356        cpp_lib_version = "5.14.0"
106357    )))
106358)]
106359#[cfg(any(
106360    any(
106361        cpp_lib_version = "5.11.3",
106362        cpp_lib_version = "5.12.2",
106363        cpp_lib_version = "5.13.0",
106364        cpp_lib_version = "5.14.0"
106365    ),
106366    feature = "ritual_rustdoc"
106367))]
106368impl ::std::ops::Shl<::cpp_core::Ref<crate::QRayCasterHit>> for &crate::QVectorOfQRayCasterHit {
106369    type Output = ::cpp_core::Ref<crate::QVectorOfQRayCasterHit>;
106370    /// <p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
106371    ///
106372    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit>& QVector<Qt3DRender::QRayCasterHit>::operator<<(const Qt3DRender::QRayCasterHit& t)```</span>.
106373    ///
106374    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>value</i> to the vector and returns a reference to this vector.</p>
106375    /// <p><b>See also </b><a href="http://doc.qt.io/qt-5/qvector.html#append">append</a>() and <a href="http://doc.qt.io/qt-5/qvector.html#operator-2b-eq">operator+=</a>().</p></div>
106376    #[inline(always)]
106377    fn shl(
106378        self,
106379        t: ::cpp_core::Ref<crate::QRayCasterHit>,
106380    ) -> ::cpp_core::Ref<crate::QVectorOfQRayCasterHit> {
106381        let ffi_result = {
106382            unsafe {
106383                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_operator__6(
106384                    self as *const crate::QVectorOfQRayCasterHit
106385                        as *mut crate::QVectorOfQRayCasterHit,
106386                    t.as_raw_ptr(),
106387                )
106388            }
106389        };
106390        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
106391    }
106392}
106393
106394#[cfg_attr(
106395    feature = "ritual_rustdoc_nightly",
106396    doc(cfg(any(
106397        cpp_lib_version = "5.11.3",
106398        cpp_lib_version = "5.12.2",
106399        cpp_lib_version = "5.13.0",
106400        cpp_lib_version = "5.14.0"
106401    )))
106402)]
106403#[cfg(any(
106404    any(
106405        cpp_lib_version = "5.11.3",
106406        cpp_lib_version = "5.12.2",
106407        cpp_lib_version = "5.13.0",
106408        cpp_lib_version = "5.14.0"
106409    ),
106410    feature = "ritual_rustdoc"
106411))]
106412impl ::std::ops::Shl<::cpp_core::Ref<crate::QVectorOfQRayCasterHit>>
106413    for &crate::QVectorOfQRayCasterHit
106414{
106415    type Output = ::cpp_core::Ref<crate::QVectorOfQRayCasterHit>;
106416    /// <p>Appends <i>other</i> to the vector and returns a reference to the vector.</p>
106417    ///
106418    /// Calls C++ function: <span style='color: green;'>```QVector<Qt3DRender::QRayCasterHit>& QVector<Qt3DRender::QRayCasterHit>::operator<<(const QVector<Qt3DRender::QRayCasterHit>& l)```</span>.
106419    ///
106420    /// <a href="http://doc.qt.io/qt-5/qvector.html#operator-lt-lt-1">C++ documentation</a>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Appends <i>other</i> to the vector and returns a reference to the vector.</p></div>
106421    #[inline(always)]
106422    fn shl(
106423        self,
106424        l: ::cpp_core::Ref<crate::QVectorOfQRayCasterHit>,
106425    ) -> ::cpp_core::Ref<crate::QVectorOfQRayCasterHit> {
106426        let ffi_result = {
106427            unsafe {
106428                crate::__ffi::ctr_qt_3d_render_ffi_QVector_Qt3DRender_QRayCasterHit_operator__7(
106429                    self as *const crate::QVectorOfQRayCasterHit
106430                        as *mut crate::QVectorOfQRayCasterHit,
106431                    l.as_raw_ptr(),
106432                )
106433            }
106434        };
106435        unsafe { ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref") }
106436    }
106437}
106438
106439#[cfg_attr(
106440    feature = "ritual_rustdoc_nightly",
106441    doc(cfg(any(
106442        cpp_lib_version = "5.11.3",
106443        cpp_lib_version = "5.12.2",
106444        cpp_lib_version = "5.13.0",
106445        cpp_lib_version = "5.14.0"
106446    )))
106447)]
106448#[cfg(any(
106449    any(
106450        cpp_lib_version = "5.11.3",
106451        cpp_lib_version = "5.12.2",
106452        cpp_lib_version = "5.13.0",
106453        cpp_lib_version = "5.14.0"
106454    ),
106455    feature = "ritual_rustdoc"
106456))]
106457impl ::cpp_core::StaticDowncast<crate::QAbstractRayCaster> for ::qt_3d_core::QComponent {
106458    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DCore::QComponent* ptr)```</span>.
106459    #[inline(always)]
106460    unsafe fn static_downcast(
106461        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
106462    ) -> ::cpp_core::Ptr<crate::QAbstractRayCaster> {
106463        let ffi_result = {
106464            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractRayCaster_ptr(
106465                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
106466            )
106467        };
106468        ::cpp_core::Ptr::from_raw(ffi_result)
106469    }
106470}
106471
106472#[cfg_attr(
106473    feature = "ritual_rustdoc_nightly",
106474    doc(cfg(any(
106475        cpp_lib_version = "5.11.3",
106476        cpp_lib_version = "5.12.2",
106477        cpp_lib_version = "5.13.0",
106478        cpp_lib_version = "5.14.0"
106479    )))
106480)]
106481#[cfg(any(
106482    any(
106483        cpp_lib_version = "5.11.3",
106484        cpp_lib_version = "5.12.2",
106485        cpp_lib_version = "5.13.0",
106486        cpp_lib_version = "5.14.0"
106487    ),
106488    feature = "ritual_rustdoc"
106489))]
106490impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QAbstractRayCaster {
106491    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QAbstractRayCaster* ptr)```</span>.
106492    #[inline(always)]
106493    unsafe fn static_upcast(
106494        ptr: ::cpp_core::Ptr<crate::QAbstractRayCaster>,
106495    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
106496        let ffi_result = {
106497            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr36(
106498                ptr.as_raw_ptr() as *mut crate::QAbstractRayCaster,
106499            )
106500        };
106501        ::cpp_core::Ptr::from_raw(ffi_result)
106502    }
106503}
106504
106505#[cfg_attr(
106506    feature = "ritual_rustdoc_nightly",
106507    doc(cfg(any(
106508        cpp_lib_version = "5.11.3",
106509        cpp_lib_version = "5.12.2",
106510        cpp_lib_version = "5.13.0",
106511        cpp_lib_version = "5.14.0"
106512    )))
106513)]
106514#[cfg(any(
106515    any(
106516        cpp_lib_version = "5.11.3",
106517        cpp_lib_version = "5.12.2",
106518        cpp_lib_version = "5.13.0",
106519        cpp_lib_version = "5.14.0"
106520    ),
106521    feature = "ritual_rustdoc"
106522))]
106523impl ::std::ops::Deref for crate::QAbstractRayCaster {
106524    type Target = ::qt_3d_core::QComponent;
106525    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QAbstractRayCaster* ptr)```</span>.
106526    #[inline(always)]
106527    fn deref(&self) -> &::qt_3d_core::QComponent {
106528        let ffi_result = {
106529            unsafe {
106530                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr36(
106531                    self as *const crate::QAbstractRayCaster as *mut crate::QAbstractRayCaster,
106532                )
106533            }
106534        };
106535        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
106536    }
106537}
106538
106539#[cfg_attr(
106540    feature = "ritual_rustdoc_nightly",
106541    doc(cfg(any(
106542        cpp_lib_version = "5.11.3",
106543        cpp_lib_version = "5.12.2",
106544        cpp_lib_version = "5.13.0",
106545        cpp_lib_version = "5.14.0"
106546    )))
106547)]
106548#[cfg(any(
106549    any(
106550        cpp_lib_version = "5.11.3",
106551        cpp_lib_version = "5.12.2",
106552        cpp_lib_version = "5.13.0",
106553        cpp_lib_version = "5.14.0"
106554    ),
106555    feature = "ritual_rustdoc"
106556))]
106557impl ::cpp_core::DynamicCast<crate::QAbstractRayCaster> for ::qt_3d_core::QComponent {
106558    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* dynamic_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DCore::QComponent* ptr)```</span>.
106559    #[inline(always)]
106560    unsafe fn dynamic_cast(
106561        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
106562    ) -> ::cpp_core::Ptr<crate::QAbstractRayCaster> {
106563        let ffi_result = {
106564            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractRayCaster_ptr(
106565                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
106566            )
106567        };
106568        ::cpp_core::Ptr::from_raw(ffi_result)
106569    }
106570}
106571
106572#[cfg_attr(
106573    feature = "ritual_rustdoc_nightly",
106574    doc(cfg(any(
106575        cpp_lib_version = "5.11.3",
106576        cpp_lib_version = "5.12.2",
106577        cpp_lib_version = "5.13.0",
106578        cpp_lib_version = "5.14.0"
106579    )))
106580)]
106581#[cfg(any(
106582    any(
106583        cpp_lib_version = "5.11.3",
106584        cpp_lib_version = "5.12.2",
106585        cpp_lib_version = "5.13.0",
106586        cpp_lib_version = "5.14.0"
106587    ),
106588    feature = "ritual_rustdoc"
106589))]
106590impl ::cpp_core::StaticDowncast<crate::QAbstractRayCaster> for ::qt_3d_core::QNode {
106591    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DCore::QNode* ptr)```</span>.
106592    #[inline(always)]
106593    unsafe fn static_downcast(
106594        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
106595    ) -> ::cpp_core::Ptr<crate::QAbstractRayCaster> {
106596        let ffi_result = {
106597            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractRayCaster_ptr1(
106598                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
106599            )
106600        };
106601        ::cpp_core::Ptr::from_raw(ffi_result)
106602    }
106603}
106604
106605#[cfg_attr(
106606    feature = "ritual_rustdoc_nightly",
106607    doc(cfg(any(
106608        cpp_lib_version = "5.11.3",
106609        cpp_lib_version = "5.12.2",
106610        cpp_lib_version = "5.13.0",
106611        cpp_lib_version = "5.14.0"
106612    )))
106613)]
106614#[cfg(any(
106615    any(
106616        cpp_lib_version = "5.11.3",
106617        cpp_lib_version = "5.12.2",
106618        cpp_lib_version = "5.13.0",
106619        cpp_lib_version = "5.14.0"
106620    ),
106621    feature = "ritual_rustdoc"
106622))]
106623impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QAbstractRayCaster {
106624    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAbstractRayCaster* ptr)```</span>.
106625    #[inline(always)]
106626    unsafe fn static_upcast(
106627        ptr: ::cpp_core::Ptr<crate::QAbstractRayCaster>,
106628    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
106629        let ffi_result = {
106630            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr166(
106631                ptr.as_raw_ptr() as *mut crate::QAbstractRayCaster
106632            )
106633        };
106634        ::cpp_core::Ptr::from_raw(ffi_result)
106635    }
106636}
106637
106638#[cfg_attr(
106639    feature = "ritual_rustdoc_nightly",
106640    doc(cfg(any(
106641        cpp_lib_version = "5.11.3",
106642        cpp_lib_version = "5.12.2",
106643        cpp_lib_version = "5.13.0",
106644        cpp_lib_version = "5.14.0"
106645    )))
106646)]
106647#[cfg(any(
106648    any(
106649        cpp_lib_version = "5.11.3",
106650        cpp_lib_version = "5.12.2",
106651        cpp_lib_version = "5.13.0",
106652        cpp_lib_version = "5.14.0"
106653    ),
106654    feature = "ritual_rustdoc"
106655))]
106656impl ::cpp_core::DynamicCast<crate::QAbstractRayCaster> for ::qt_3d_core::QNode {
106657    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* dynamic_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DCore::QNode* ptr)```</span>.
106658    #[inline(always)]
106659    unsafe fn dynamic_cast(
106660        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
106661    ) -> ::cpp_core::Ptr<crate::QAbstractRayCaster> {
106662        let ffi_result = {
106663            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractRayCaster_ptr1(
106664                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
106665            )
106666        };
106667        ::cpp_core::Ptr::from_raw(ffi_result)
106668    }
106669}
106670
106671#[cfg_attr(
106672    feature = "ritual_rustdoc_nightly",
106673    doc(cfg(any(
106674        cpp_lib_version = "5.11.3",
106675        cpp_lib_version = "5.12.2",
106676        cpp_lib_version = "5.13.0",
106677        cpp_lib_version = "5.14.0"
106678    )))
106679)]
106680#[cfg(any(
106681    any(
106682        cpp_lib_version = "5.11.3",
106683        cpp_lib_version = "5.12.2",
106684        cpp_lib_version = "5.13.0",
106685        cpp_lib_version = "5.14.0"
106686    ),
106687    feature = "ritual_rustdoc"
106688))]
106689impl ::cpp_core::StaticDowncast<crate::QAbstractRayCaster> for ::qt_core::QObject {
106690    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(QObject* ptr)```</span>.
106691    #[inline(always)]
106692    unsafe fn static_downcast(
106693        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
106694    ) -> ::cpp_core::Ptr<crate::QAbstractRayCaster> {
106695        let ffi_result = {
106696            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractRayCaster_ptr2(
106697                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
106698            )
106699        };
106700        ::cpp_core::Ptr::from_raw(ffi_result)
106701    }
106702}
106703
106704#[cfg_attr(
106705    feature = "ritual_rustdoc_nightly",
106706    doc(cfg(any(
106707        cpp_lib_version = "5.11.3",
106708        cpp_lib_version = "5.12.2",
106709        cpp_lib_version = "5.13.0",
106710        cpp_lib_version = "5.14.0"
106711    )))
106712)]
106713#[cfg(any(
106714    any(
106715        cpp_lib_version = "5.11.3",
106716        cpp_lib_version = "5.12.2",
106717        cpp_lib_version = "5.13.0",
106718        cpp_lib_version = "5.14.0"
106719    ),
106720    feature = "ritual_rustdoc"
106721))]
106722impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QAbstractRayCaster {
106723    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QAbstractRayCaster* ptr)```</span>.
106724    #[inline(always)]
106725    unsafe fn static_upcast(
106726        ptr: ::cpp_core::Ptr<crate::QAbstractRayCaster>,
106727    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
106728        let ffi_result = {
106729            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr302(
106730                ptr.as_raw_ptr() as *mut crate::QAbstractRayCaster
106731            )
106732        };
106733        ::cpp_core::Ptr::from_raw(ffi_result)
106734    }
106735}
106736
106737#[cfg_attr(
106738    feature = "ritual_rustdoc_nightly",
106739    doc(cfg(any(
106740        cpp_lib_version = "5.11.3",
106741        cpp_lib_version = "5.12.2",
106742        cpp_lib_version = "5.13.0",
106743        cpp_lib_version = "5.14.0"
106744    )))
106745)]
106746#[cfg(any(
106747    any(
106748        cpp_lib_version = "5.11.3",
106749        cpp_lib_version = "5.12.2",
106750        cpp_lib_version = "5.13.0",
106751        cpp_lib_version = "5.14.0"
106752    ),
106753    feature = "ritual_rustdoc"
106754))]
106755impl ::cpp_core::DynamicCast<crate::QAbstractRayCaster> for ::qt_core::QObject {
106756    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* dynamic_cast<Qt3DRender::QAbstractRayCaster*>(QObject* ptr)```</span>.
106757    #[inline(always)]
106758    unsafe fn dynamic_cast(
106759        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
106760    ) -> ::cpp_core::Ptr<crate::QAbstractRayCaster> {
106761        let ffi_result = {
106762            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QAbstractRayCaster_ptr2(
106763                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
106764            )
106765        };
106766        ::cpp_core::Ptr::from_raw(ffi_result)
106767    }
106768}
106769
106770#[cfg_attr(
106771    feature = "ritual_rustdoc_nightly",
106772    doc(cfg(any(
106773        cpp_lib_version = "5.11.3",
106774        cpp_lib_version = "5.12.2",
106775        cpp_lib_version = "5.13.0",
106776        cpp_lib_version = "5.14.0"
106777    )))
106778)]
106779#[cfg(any(
106780    any(
106781        cpp_lib_version = "5.11.3",
106782        cpp_lib_version = "5.12.2",
106783        cpp_lib_version = "5.13.0",
106784        cpp_lib_version = "5.14.0"
106785    ),
106786    feature = "ritual_rustdoc"
106787))]
106788impl ::cpp_core::StaticDowncast<crate::QBlitFramebuffer> for crate::QFrameGraphNode {
106789    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer* static_cast<Qt3DRender::QBlitFramebuffer*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
106790    #[inline(always)]
106791    unsafe fn static_downcast(
106792        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
106793    ) -> ::cpp_core::Ptr<crate::QBlitFramebuffer> {
106794        let ffi_result = {
106795            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBlitFramebuffer_ptr(
106796                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
106797            )
106798        };
106799        ::cpp_core::Ptr::from_raw(ffi_result)
106800    }
106801}
106802
106803#[cfg_attr(
106804    feature = "ritual_rustdoc_nightly",
106805    doc(cfg(any(
106806        cpp_lib_version = "5.11.3",
106807        cpp_lib_version = "5.12.2",
106808        cpp_lib_version = "5.13.0",
106809        cpp_lib_version = "5.14.0"
106810    )))
106811)]
106812#[cfg(any(
106813    any(
106814        cpp_lib_version = "5.11.3",
106815        cpp_lib_version = "5.12.2",
106816        cpp_lib_version = "5.13.0",
106817        cpp_lib_version = "5.14.0"
106818    ),
106819    feature = "ritual_rustdoc"
106820))]
106821impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QBlitFramebuffer {
106822    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QBlitFramebuffer* ptr)```</span>.
106823    #[inline(always)]
106824    unsafe fn static_upcast(
106825        ptr: ::cpp_core::Ptr<crate::QBlitFramebuffer>,
106826    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
106827        let ffi_result = {
106828            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr36(
106829                ptr.as_raw_ptr() as *mut crate::QBlitFramebuffer,
106830            )
106831        };
106832        ::cpp_core::Ptr::from_raw(ffi_result)
106833    }
106834}
106835
106836#[cfg_attr(
106837    feature = "ritual_rustdoc_nightly",
106838    doc(cfg(any(
106839        cpp_lib_version = "5.11.3",
106840        cpp_lib_version = "5.12.2",
106841        cpp_lib_version = "5.13.0",
106842        cpp_lib_version = "5.14.0"
106843    )))
106844)]
106845#[cfg(any(
106846    any(
106847        cpp_lib_version = "5.11.3",
106848        cpp_lib_version = "5.12.2",
106849        cpp_lib_version = "5.13.0",
106850        cpp_lib_version = "5.14.0"
106851    ),
106852    feature = "ritual_rustdoc"
106853))]
106854impl ::std::ops::Deref for crate::QBlitFramebuffer {
106855    type Target = crate::QFrameGraphNode;
106856    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QBlitFramebuffer* ptr)```</span>.
106857    #[inline(always)]
106858    fn deref(&self) -> &crate::QFrameGraphNode {
106859        let ffi_result = {
106860            unsafe {
106861                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr36(
106862                    self as *const crate::QBlitFramebuffer as *mut crate::QBlitFramebuffer,
106863                )
106864            }
106865        };
106866        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
106867    }
106868}
106869
106870#[cfg_attr(
106871    feature = "ritual_rustdoc_nightly",
106872    doc(cfg(any(
106873        cpp_lib_version = "5.11.3",
106874        cpp_lib_version = "5.12.2",
106875        cpp_lib_version = "5.13.0",
106876        cpp_lib_version = "5.14.0"
106877    )))
106878)]
106879#[cfg(any(
106880    any(
106881        cpp_lib_version = "5.11.3",
106882        cpp_lib_version = "5.12.2",
106883        cpp_lib_version = "5.13.0",
106884        cpp_lib_version = "5.14.0"
106885    ),
106886    feature = "ritual_rustdoc"
106887))]
106888impl ::cpp_core::DynamicCast<crate::QBlitFramebuffer> for crate::QFrameGraphNode {
106889    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer* dynamic_cast<Qt3DRender::QBlitFramebuffer*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
106890    #[inline(always)]
106891    unsafe fn dynamic_cast(
106892        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
106893    ) -> ::cpp_core::Ptr<crate::QBlitFramebuffer> {
106894        let ffi_result = {
106895            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBlitFramebuffer_ptr(
106896                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
106897            )
106898        };
106899        ::cpp_core::Ptr::from_raw(ffi_result)
106900    }
106901}
106902
106903#[cfg_attr(
106904    feature = "ritual_rustdoc_nightly",
106905    doc(cfg(any(
106906        cpp_lib_version = "5.11.3",
106907        cpp_lib_version = "5.12.2",
106908        cpp_lib_version = "5.13.0",
106909        cpp_lib_version = "5.14.0"
106910    )))
106911)]
106912#[cfg(any(
106913    any(
106914        cpp_lib_version = "5.11.3",
106915        cpp_lib_version = "5.12.2",
106916        cpp_lib_version = "5.13.0",
106917        cpp_lib_version = "5.14.0"
106918    ),
106919    feature = "ritual_rustdoc"
106920))]
106921impl ::cpp_core::StaticDowncast<crate::QBlitFramebuffer> for ::qt_3d_core::QNode {
106922    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer* static_cast<Qt3DRender::QBlitFramebuffer*>(Qt3DCore::QNode* ptr)```</span>.
106923    #[inline(always)]
106924    unsafe fn static_downcast(
106925        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
106926    ) -> ::cpp_core::Ptr<crate::QBlitFramebuffer> {
106927        let ffi_result = {
106928            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBlitFramebuffer_ptr1(
106929                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
106930            )
106931        };
106932        ::cpp_core::Ptr::from_raw(ffi_result)
106933    }
106934}
106935
106936#[cfg_attr(
106937    feature = "ritual_rustdoc_nightly",
106938    doc(cfg(any(
106939        cpp_lib_version = "5.11.3",
106940        cpp_lib_version = "5.12.2",
106941        cpp_lib_version = "5.13.0",
106942        cpp_lib_version = "5.14.0"
106943    )))
106944)]
106945#[cfg(any(
106946    any(
106947        cpp_lib_version = "5.11.3",
106948        cpp_lib_version = "5.12.2",
106949        cpp_lib_version = "5.13.0",
106950        cpp_lib_version = "5.14.0"
106951    ),
106952    feature = "ritual_rustdoc"
106953))]
106954impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QBlitFramebuffer {
106955    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QBlitFramebuffer* ptr)```</span>.
106956    #[inline(always)]
106957    unsafe fn static_upcast(
106958        ptr: ::cpp_core::Ptr<crate::QBlitFramebuffer>,
106959    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
106960        let ffi_result = {
106961            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr167(
106962                ptr.as_raw_ptr() as *mut crate::QBlitFramebuffer
106963            )
106964        };
106965        ::cpp_core::Ptr::from_raw(ffi_result)
106966    }
106967}
106968
106969#[cfg_attr(
106970    feature = "ritual_rustdoc_nightly",
106971    doc(cfg(any(
106972        cpp_lib_version = "5.11.3",
106973        cpp_lib_version = "5.12.2",
106974        cpp_lib_version = "5.13.0",
106975        cpp_lib_version = "5.14.0"
106976    )))
106977)]
106978#[cfg(any(
106979    any(
106980        cpp_lib_version = "5.11.3",
106981        cpp_lib_version = "5.12.2",
106982        cpp_lib_version = "5.13.0",
106983        cpp_lib_version = "5.14.0"
106984    ),
106985    feature = "ritual_rustdoc"
106986))]
106987impl ::cpp_core::DynamicCast<crate::QBlitFramebuffer> for ::qt_3d_core::QNode {
106988    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer* dynamic_cast<Qt3DRender::QBlitFramebuffer*>(Qt3DCore::QNode* ptr)```</span>.
106989    #[inline(always)]
106990    unsafe fn dynamic_cast(
106991        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
106992    ) -> ::cpp_core::Ptr<crate::QBlitFramebuffer> {
106993        let ffi_result = {
106994            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBlitFramebuffer_ptr1(
106995                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
106996            )
106997        };
106998        ::cpp_core::Ptr::from_raw(ffi_result)
106999    }
107000}
107001
107002#[cfg_attr(
107003    feature = "ritual_rustdoc_nightly",
107004    doc(cfg(any(
107005        cpp_lib_version = "5.11.3",
107006        cpp_lib_version = "5.12.2",
107007        cpp_lib_version = "5.13.0",
107008        cpp_lib_version = "5.14.0"
107009    )))
107010)]
107011#[cfg(any(
107012    any(
107013        cpp_lib_version = "5.11.3",
107014        cpp_lib_version = "5.12.2",
107015        cpp_lib_version = "5.13.0",
107016        cpp_lib_version = "5.14.0"
107017    ),
107018    feature = "ritual_rustdoc"
107019))]
107020impl ::cpp_core::StaticDowncast<crate::QBlitFramebuffer> for ::qt_core::QObject {
107021    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer* static_cast<Qt3DRender::QBlitFramebuffer*>(QObject* ptr)```</span>.
107022    #[inline(always)]
107023    unsafe fn static_downcast(
107024        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
107025    ) -> ::cpp_core::Ptr<crate::QBlitFramebuffer> {
107026        let ffi_result = {
107027            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QBlitFramebuffer_ptr2(
107028                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
107029            )
107030        };
107031        ::cpp_core::Ptr::from_raw(ffi_result)
107032    }
107033}
107034
107035#[cfg_attr(
107036    feature = "ritual_rustdoc_nightly",
107037    doc(cfg(any(
107038        cpp_lib_version = "5.11.3",
107039        cpp_lib_version = "5.12.2",
107040        cpp_lib_version = "5.13.0",
107041        cpp_lib_version = "5.14.0"
107042    )))
107043)]
107044#[cfg(any(
107045    any(
107046        cpp_lib_version = "5.11.3",
107047        cpp_lib_version = "5.12.2",
107048        cpp_lib_version = "5.13.0",
107049        cpp_lib_version = "5.14.0"
107050    ),
107051    feature = "ritual_rustdoc"
107052))]
107053impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QBlitFramebuffer {
107054    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QBlitFramebuffer* ptr)```</span>.
107055    #[inline(always)]
107056    unsafe fn static_upcast(
107057        ptr: ::cpp_core::Ptr<crate::QBlitFramebuffer>,
107058    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
107059        let ffi_result = {
107060            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr303(
107061                ptr.as_raw_ptr() as *mut crate::QBlitFramebuffer
107062            )
107063        };
107064        ::cpp_core::Ptr::from_raw(ffi_result)
107065    }
107066}
107067
107068#[cfg_attr(
107069    feature = "ritual_rustdoc_nightly",
107070    doc(cfg(any(
107071        cpp_lib_version = "5.11.3",
107072        cpp_lib_version = "5.12.2",
107073        cpp_lib_version = "5.13.0",
107074        cpp_lib_version = "5.14.0"
107075    )))
107076)]
107077#[cfg(any(
107078    any(
107079        cpp_lib_version = "5.11.3",
107080        cpp_lib_version = "5.12.2",
107081        cpp_lib_version = "5.13.0",
107082        cpp_lib_version = "5.14.0"
107083    ),
107084    feature = "ritual_rustdoc"
107085))]
107086impl ::cpp_core::DynamicCast<crate::QBlitFramebuffer> for ::qt_core::QObject {
107087    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QBlitFramebuffer* dynamic_cast<Qt3DRender::QBlitFramebuffer*>(QObject* ptr)```</span>.
107088    #[inline(always)]
107089    unsafe fn dynamic_cast(
107090        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
107091    ) -> ::cpp_core::Ptr<crate::QBlitFramebuffer> {
107092        let ffi_result = {
107093            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QBlitFramebuffer_ptr2(
107094                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
107095            )
107096        };
107097        ::cpp_core::Ptr::from_raw(ffi_result)
107098    }
107099}
107100
107101#[cfg_attr(
107102    feature = "ritual_rustdoc_nightly",
107103    doc(cfg(any(
107104        cpp_lib_version = "5.11.3",
107105        cpp_lib_version = "5.12.2",
107106        cpp_lib_version = "5.13.0",
107107        cpp_lib_version = "5.14.0"
107108    )))
107109)]
107110#[cfg(any(
107111    any(
107112        cpp_lib_version = "5.11.3",
107113        cpp_lib_version = "5.12.2",
107114        cpp_lib_version = "5.13.0",
107115        cpp_lib_version = "5.14.0"
107116    ),
107117    feature = "ritual_rustdoc"
107118))]
107119impl ::cpp_core::StaticDowncast<crate::QLineWidth> for crate::QRenderState {
107120    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLineWidth* static_cast<Qt3DRender::QLineWidth*>(Qt3DRender::QRenderState* ptr)```</span>.
107121    #[inline(always)]
107122    unsafe fn static_downcast(
107123        ptr: ::cpp_core::Ptr<crate::QRenderState>,
107124    ) -> ::cpp_core::Ptr<crate::QLineWidth> {
107125        let ffi_result = {
107126            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLineWidth_ptr(
107127                ptr.as_raw_ptr() as *mut crate::QRenderState,
107128            )
107129        };
107130        ::cpp_core::Ptr::from_raw(ffi_result)
107131    }
107132}
107133
107134#[cfg_attr(
107135    feature = "ritual_rustdoc_nightly",
107136    doc(cfg(any(
107137        cpp_lib_version = "5.11.3",
107138        cpp_lib_version = "5.12.2",
107139        cpp_lib_version = "5.13.0",
107140        cpp_lib_version = "5.14.0"
107141    )))
107142)]
107143#[cfg(any(
107144    any(
107145        cpp_lib_version = "5.11.3",
107146        cpp_lib_version = "5.12.2",
107147        cpp_lib_version = "5.13.0",
107148        cpp_lib_version = "5.14.0"
107149    ),
107150    feature = "ritual_rustdoc"
107151))]
107152impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QLineWidth {
107153    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QLineWidth* ptr)```</span>.
107154    #[inline(always)]
107155    unsafe fn static_upcast(
107156        ptr: ::cpp_core::Ptr<crate::QLineWidth>,
107157    ) -> ::cpp_core::Ptr<crate::QRenderState> {
107158        let ffi_result = {
107159            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr42(
107160                ptr.as_raw_ptr() as *mut crate::QLineWidth,
107161            )
107162        };
107163        ::cpp_core::Ptr::from_raw(ffi_result)
107164    }
107165}
107166
107167#[cfg_attr(
107168    feature = "ritual_rustdoc_nightly",
107169    doc(cfg(any(
107170        cpp_lib_version = "5.11.3",
107171        cpp_lib_version = "5.12.2",
107172        cpp_lib_version = "5.13.0",
107173        cpp_lib_version = "5.14.0"
107174    )))
107175)]
107176#[cfg(any(
107177    any(
107178        cpp_lib_version = "5.11.3",
107179        cpp_lib_version = "5.12.2",
107180        cpp_lib_version = "5.13.0",
107181        cpp_lib_version = "5.14.0"
107182    ),
107183    feature = "ritual_rustdoc"
107184))]
107185impl ::std::ops::Deref for crate::QLineWidth {
107186    type Target = crate::QRenderState;
107187    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QLineWidth* ptr)```</span>.
107188    #[inline(always)]
107189    fn deref(&self) -> &crate::QRenderState {
107190        let ffi_result = {
107191            unsafe {
107192                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr42(
107193                    self as *const crate::QLineWidth as *mut crate::QLineWidth,
107194                )
107195            }
107196        };
107197        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
107198    }
107199}
107200
107201#[cfg_attr(
107202    feature = "ritual_rustdoc_nightly",
107203    doc(cfg(any(
107204        cpp_lib_version = "5.11.3",
107205        cpp_lib_version = "5.12.2",
107206        cpp_lib_version = "5.13.0",
107207        cpp_lib_version = "5.14.0"
107208    )))
107209)]
107210#[cfg(any(
107211    any(
107212        cpp_lib_version = "5.11.3",
107213        cpp_lib_version = "5.12.2",
107214        cpp_lib_version = "5.13.0",
107215        cpp_lib_version = "5.14.0"
107216    ),
107217    feature = "ritual_rustdoc"
107218))]
107219impl ::cpp_core::DynamicCast<crate::QLineWidth> for crate::QRenderState {
107220    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLineWidth* dynamic_cast<Qt3DRender::QLineWidth*>(Qt3DRender::QRenderState* ptr)```</span>.
107221    #[inline(always)]
107222    unsafe fn dynamic_cast(
107223        ptr: ::cpp_core::Ptr<crate::QRenderState>,
107224    ) -> ::cpp_core::Ptr<crate::QLineWidth> {
107225        let ffi_result = {
107226            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLineWidth_ptr(
107227                ptr.as_raw_ptr() as *mut crate::QRenderState,
107228            )
107229        };
107230        ::cpp_core::Ptr::from_raw(ffi_result)
107231    }
107232}
107233
107234#[cfg_attr(
107235    feature = "ritual_rustdoc_nightly",
107236    doc(cfg(any(
107237        cpp_lib_version = "5.11.3",
107238        cpp_lib_version = "5.12.2",
107239        cpp_lib_version = "5.13.0",
107240        cpp_lib_version = "5.14.0"
107241    )))
107242)]
107243#[cfg(any(
107244    any(
107245        cpp_lib_version = "5.11.3",
107246        cpp_lib_version = "5.12.2",
107247        cpp_lib_version = "5.13.0",
107248        cpp_lib_version = "5.14.0"
107249    ),
107250    feature = "ritual_rustdoc"
107251))]
107252impl ::cpp_core::StaticDowncast<crate::QLineWidth> for ::qt_3d_core::QNode {
107253    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLineWidth* static_cast<Qt3DRender::QLineWidth*>(Qt3DCore::QNode* ptr)```</span>.
107254    #[inline(always)]
107255    unsafe fn static_downcast(
107256        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
107257    ) -> ::cpp_core::Ptr<crate::QLineWidth> {
107258        let ffi_result = {
107259            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLineWidth_ptr1(
107260                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
107261            )
107262        };
107263        ::cpp_core::Ptr::from_raw(ffi_result)
107264    }
107265}
107266
107267#[cfg_attr(
107268    feature = "ritual_rustdoc_nightly",
107269    doc(cfg(any(
107270        cpp_lib_version = "5.11.3",
107271        cpp_lib_version = "5.12.2",
107272        cpp_lib_version = "5.13.0",
107273        cpp_lib_version = "5.14.0"
107274    )))
107275)]
107276#[cfg(any(
107277    any(
107278        cpp_lib_version = "5.11.3",
107279        cpp_lib_version = "5.12.2",
107280        cpp_lib_version = "5.13.0",
107281        cpp_lib_version = "5.14.0"
107282    ),
107283    feature = "ritual_rustdoc"
107284))]
107285impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QLineWidth {
107286    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QLineWidth* ptr)```</span>.
107287    #[inline(always)]
107288    unsafe fn static_upcast(
107289        ptr: ::cpp_core::Ptr<crate::QLineWidth>,
107290    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
107291        let ffi_result = {
107292            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr168(
107293                ptr.as_raw_ptr() as *mut crate::QLineWidth
107294            )
107295        };
107296        ::cpp_core::Ptr::from_raw(ffi_result)
107297    }
107298}
107299
107300#[cfg_attr(
107301    feature = "ritual_rustdoc_nightly",
107302    doc(cfg(any(
107303        cpp_lib_version = "5.11.3",
107304        cpp_lib_version = "5.12.2",
107305        cpp_lib_version = "5.13.0",
107306        cpp_lib_version = "5.14.0"
107307    )))
107308)]
107309#[cfg(any(
107310    any(
107311        cpp_lib_version = "5.11.3",
107312        cpp_lib_version = "5.12.2",
107313        cpp_lib_version = "5.13.0",
107314        cpp_lib_version = "5.14.0"
107315    ),
107316    feature = "ritual_rustdoc"
107317))]
107318impl ::cpp_core::DynamicCast<crate::QLineWidth> for ::qt_3d_core::QNode {
107319    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLineWidth* dynamic_cast<Qt3DRender::QLineWidth*>(Qt3DCore::QNode* ptr)```</span>.
107320    #[inline(always)]
107321    unsafe fn dynamic_cast(
107322        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
107323    ) -> ::cpp_core::Ptr<crate::QLineWidth> {
107324        let ffi_result = {
107325            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLineWidth_ptr1(
107326                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
107327            )
107328        };
107329        ::cpp_core::Ptr::from_raw(ffi_result)
107330    }
107331}
107332
107333#[cfg_attr(
107334    feature = "ritual_rustdoc_nightly",
107335    doc(cfg(any(
107336        cpp_lib_version = "5.11.3",
107337        cpp_lib_version = "5.12.2",
107338        cpp_lib_version = "5.13.0",
107339        cpp_lib_version = "5.14.0"
107340    )))
107341)]
107342#[cfg(any(
107343    any(
107344        cpp_lib_version = "5.11.3",
107345        cpp_lib_version = "5.12.2",
107346        cpp_lib_version = "5.13.0",
107347        cpp_lib_version = "5.14.0"
107348    ),
107349    feature = "ritual_rustdoc"
107350))]
107351impl ::cpp_core::StaticDowncast<crate::QLineWidth> for ::qt_core::QObject {
107352    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLineWidth* static_cast<Qt3DRender::QLineWidth*>(QObject* ptr)```</span>.
107353    #[inline(always)]
107354    unsafe fn static_downcast(
107355        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
107356    ) -> ::cpp_core::Ptr<crate::QLineWidth> {
107357        let ffi_result = {
107358            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QLineWidth_ptr2(
107359                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
107360            )
107361        };
107362        ::cpp_core::Ptr::from_raw(ffi_result)
107363    }
107364}
107365
107366#[cfg_attr(
107367    feature = "ritual_rustdoc_nightly",
107368    doc(cfg(any(
107369        cpp_lib_version = "5.11.3",
107370        cpp_lib_version = "5.12.2",
107371        cpp_lib_version = "5.13.0",
107372        cpp_lib_version = "5.14.0"
107373    )))
107374)]
107375#[cfg(any(
107376    any(
107377        cpp_lib_version = "5.11.3",
107378        cpp_lib_version = "5.12.2",
107379        cpp_lib_version = "5.13.0",
107380        cpp_lib_version = "5.14.0"
107381    ),
107382    feature = "ritual_rustdoc"
107383))]
107384impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QLineWidth {
107385    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QLineWidth* ptr)```</span>.
107386    #[inline(always)]
107387    unsafe fn static_upcast(
107388        ptr: ::cpp_core::Ptr<crate::QLineWidth>,
107389    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
107390        let ffi_result = {
107391            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr304(
107392                ptr.as_raw_ptr() as *mut crate::QLineWidth
107393            )
107394        };
107395        ::cpp_core::Ptr::from_raw(ffi_result)
107396    }
107397}
107398
107399#[cfg_attr(
107400    feature = "ritual_rustdoc_nightly",
107401    doc(cfg(any(
107402        cpp_lib_version = "5.11.3",
107403        cpp_lib_version = "5.12.2",
107404        cpp_lib_version = "5.13.0",
107405        cpp_lib_version = "5.14.0"
107406    )))
107407)]
107408#[cfg(any(
107409    any(
107410        cpp_lib_version = "5.11.3",
107411        cpp_lib_version = "5.12.2",
107412        cpp_lib_version = "5.13.0",
107413        cpp_lib_version = "5.14.0"
107414    ),
107415    feature = "ritual_rustdoc"
107416))]
107417impl ::cpp_core::DynamicCast<crate::QLineWidth> for ::qt_core::QObject {
107418    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QLineWidth* dynamic_cast<Qt3DRender::QLineWidth*>(QObject* ptr)```</span>.
107419    #[inline(always)]
107420    unsafe fn dynamic_cast(
107421        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
107422    ) -> ::cpp_core::Ptr<crate::QLineWidth> {
107423        let ffi_result = {
107424            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QLineWidth_ptr2(
107425                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
107426            )
107427        };
107428        ::cpp_core::Ptr::from_raw(ffi_result)
107429    }
107430}
107431
107432#[cfg_attr(
107433    feature = "ritual_rustdoc_nightly",
107434    doc(cfg(any(
107435        cpp_lib_version = "5.11.3",
107436        cpp_lib_version = "5.12.2",
107437        cpp_lib_version = "5.13.0",
107438        cpp_lib_version = "5.14.0"
107439    )))
107440)]
107441#[cfg(any(
107442    any(
107443        cpp_lib_version = "5.11.3",
107444        cpp_lib_version = "5.12.2",
107445        cpp_lib_version = "5.13.0",
107446        cpp_lib_version = "5.14.0"
107447    ),
107448    feature = "ritual_rustdoc"
107449))]
107450impl ::cpp_core::StaticDowncast<crate::QPickLineEvent> for crate::QPickEvent {
107451    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickLineEvent* static_cast<Qt3DRender::QPickLineEvent*>(Qt3DRender::QPickEvent* ptr)```</span>.
107452    #[inline(always)]
107453    unsafe fn static_downcast(
107454        ptr: ::cpp_core::Ptr<crate::QPickEvent>,
107455    ) -> ::cpp_core::Ptr<crate::QPickLineEvent> {
107456        let ffi_result = {
107457            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickLineEvent_ptr(
107458                ptr.as_raw_ptr() as *mut crate::QPickEvent,
107459            )
107460        };
107461        ::cpp_core::Ptr::from_raw(ffi_result)
107462    }
107463}
107464
107465#[cfg_attr(
107466    feature = "ritual_rustdoc_nightly",
107467    doc(cfg(any(
107468        cpp_lib_version = "5.11.3",
107469        cpp_lib_version = "5.12.2",
107470        cpp_lib_version = "5.13.0",
107471        cpp_lib_version = "5.14.0"
107472    )))
107473)]
107474#[cfg(any(
107475    any(
107476        cpp_lib_version = "5.11.3",
107477        cpp_lib_version = "5.12.2",
107478        cpp_lib_version = "5.13.0",
107479        cpp_lib_version = "5.14.0"
107480    ),
107481    feature = "ritual_rustdoc"
107482))]
107483impl ::cpp_core::StaticUpcast<crate::QPickEvent> for crate::QPickLineEvent {
107484    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickEvent* static_cast<Qt3DRender::QPickEvent*>(Qt3DRender::QPickLineEvent* ptr)```</span>.
107485    #[inline(always)]
107486    unsafe fn static_upcast(
107487        ptr: ::cpp_core::Ptr<crate::QPickLineEvent>,
107488    ) -> ::cpp_core::Ptr<crate::QPickEvent> {
107489        let ffi_result = {
107490            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickEvent_ptr4(
107491                ptr.as_raw_ptr() as *mut crate::QPickLineEvent,
107492            )
107493        };
107494        ::cpp_core::Ptr::from_raw(ffi_result)
107495    }
107496}
107497
107498#[cfg_attr(
107499    feature = "ritual_rustdoc_nightly",
107500    doc(cfg(any(
107501        cpp_lib_version = "5.11.3",
107502        cpp_lib_version = "5.12.2",
107503        cpp_lib_version = "5.13.0",
107504        cpp_lib_version = "5.14.0"
107505    )))
107506)]
107507#[cfg(any(
107508    any(
107509        cpp_lib_version = "5.11.3",
107510        cpp_lib_version = "5.12.2",
107511        cpp_lib_version = "5.13.0",
107512        cpp_lib_version = "5.14.0"
107513    ),
107514    feature = "ritual_rustdoc"
107515))]
107516impl ::std::ops::Deref for crate::QPickLineEvent {
107517    type Target = crate::QPickEvent;
107518    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickEvent* static_cast<Qt3DRender::QPickEvent*>(Qt3DRender::QPickLineEvent* ptr)```</span>.
107519    #[inline(always)]
107520    fn deref(&self) -> &crate::QPickEvent {
107521        let ffi_result = {
107522            unsafe {
107523                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickEvent_ptr4(
107524                    self as *const crate::QPickLineEvent as *mut crate::QPickLineEvent,
107525                )
107526            }
107527        };
107528        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
107529    }
107530}
107531
107532#[cfg_attr(
107533    feature = "ritual_rustdoc_nightly",
107534    doc(cfg(any(
107535        cpp_lib_version = "5.11.3",
107536        cpp_lib_version = "5.12.2",
107537        cpp_lib_version = "5.13.0",
107538        cpp_lib_version = "5.14.0"
107539    )))
107540)]
107541#[cfg(any(
107542    any(
107543        cpp_lib_version = "5.11.3",
107544        cpp_lib_version = "5.12.2",
107545        cpp_lib_version = "5.13.0",
107546        cpp_lib_version = "5.14.0"
107547    ),
107548    feature = "ritual_rustdoc"
107549))]
107550impl ::cpp_core::DynamicCast<crate::QPickLineEvent> for crate::QPickEvent {
107551    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickLineEvent* dynamic_cast<Qt3DRender::QPickLineEvent*>(Qt3DRender::QPickEvent* ptr)```</span>.
107552    #[inline(always)]
107553    unsafe fn dynamic_cast(
107554        ptr: ::cpp_core::Ptr<crate::QPickEvent>,
107555    ) -> ::cpp_core::Ptr<crate::QPickLineEvent> {
107556        let ffi_result = {
107557            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPickLineEvent_ptr(
107558                ptr.as_raw_ptr() as *mut crate::QPickEvent,
107559            )
107560        };
107561        ::cpp_core::Ptr::from_raw(ffi_result)
107562    }
107563}
107564
107565#[cfg_attr(
107566    feature = "ritual_rustdoc_nightly",
107567    doc(cfg(any(
107568        cpp_lib_version = "5.11.3",
107569        cpp_lib_version = "5.12.2",
107570        cpp_lib_version = "5.13.0",
107571        cpp_lib_version = "5.14.0"
107572    )))
107573)]
107574#[cfg(any(
107575    any(
107576        cpp_lib_version = "5.11.3",
107577        cpp_lib_version = "5.12.2",
107578        cpp_lib_version = "5.13.0",
107579        cpp_lib_version = "5.14.0"
107580    ),
107581    feature = "ritual_rustdoc"
107582))]
107583impl ::cpp_core::StaticDowncast<crate::QPickLineEvent> for ::qt_core::QObject {
107584    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickLineEvent* static_cast<Qt3DRender::QPickLineEvent*>(QObject* ptr)```</span>.
107585    #[inline(always)]
107586    unsafe fn static_downcast(
107587        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
107588    ) -> ::cpp_core::Ptr<crate::QPickLineEvent> {
107589        let ffi_result = {
107590            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickLineEvent_ptr1(
107591                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
107592            )
107593        };
107594        ::cpp_core::Ptr::from_raw(ffi_result)
107595    }
107596}
107597
107598#[cfg_attr(
107599    feature = "ritual_rustdoc_nightly",
107600    doc(cfg(any(
107601        cpp_lib_version = "5.11.3",
107602        cpp_lib_version = "5.12.2",
107603        cpp_lib_version = "5.13.0",
107604        cpp_lib_version = "5.14.0"
107605    )))
107606)]
107607#[cfg(any(
107608    any(
107609        cpp_lib_version = "5.11.3",
107610        cpp_lib_version = "5.12.2",
107611        cpp_lib_version = "5.13.0",
107612        cpp_lib_version = "5.14.0"
107613    ),
107614    feature = "ritual_rustdoc"
107615))]
107616impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QPickLineEvent {
107617    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPickLineEvent* ptr)```</span>.
107618    #[inline(always)]
107619    unsafe fn static_upcast(
107620        ptr: ::cpp_core::Ptr<crate::QPickLineEvent>,
107621    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
107622        let ffi_result = {
107623            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr305(
107624                ptr.as_raw_ptr() as *mut crate::QPickLineEvent
107625            )
107626        };
107627        ::cpp_core::Ptr::from_raw(ffi_result)
107628    }
107629}
107630
107631#[cfg_attr(
107632    feature = "ritual_rustdoc_nightly",
107633    doc(cfg(any(
107634        cpp_lib_version = "5.11.3",
107635        cpp_lib_version = "5.12.2",
107636        cpp_lib_version = "5.13.0",
107637        cpp_lib_version = "5.14.0"
107638    )))
107639)]
107640#[cfg(any(
107641    any(
107642        cpp_lib_version = "5.11.3",
107643        cpp_lib_version = "5.12.2",
107644        cpp_lib_version = "5.13.0",
107645        cpp_lib_version = "5.14.0"
107646    ),
107647    feature = "ritual_rustdoc"
107648))]
107649impl ::cpp_core::DynamicCast<crate::QPickLineEvent> for ::qt_core::QObject {
107650    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickLineEvent* dynamic_cast<Qt3DRender::QPickLineEvent*>(QObject* ptr)```</span>.
107651    #[inline(always)]
107652    unsafe fn dynamic_cast(
107653        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
107654    ) -> ::cpp_core::Ptr<crate::QPickLineEvent> {
107655        let ffi_result = {
107656            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPickLineEvent_ptr1(
107657                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
107658            )
107659        };
107660        ::cpp_core::Ptr::from_raw(ffi_result)
107661    }
107662}
107663
107664#[cfg_attr(
107665    feature = "ritual_rustdoc_nightly",
107666    doc(cfg(any(
107667        cpp_lib_version = "5.11.3",
107668        cpp_lib_version = "5.12.2",
107669        cpp_lib_version = "5.13.0",
107670        cpp_lib_version = "5.14.0"
107671    )))
107672)]
107673#[cfg(any(
107674    any(
107675        cpp_lib_version = "5.11.3",
107676        cpp_lib_version = "5.12.2",
107677        cpp_lib_version = "5.13.0",
107678        cpp_lib_version = "5.14.0"
107679    ),
107680    feature = "ritual_rustdoc"
107681))]
107682impl ::cpp_core::StaticDowncast<crate::QPickPointEvent> for crate::QPickEvent {
107683    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickPointEvent* static_cast<Qt3DRender::QPickPointEvent*>(Qt3DRender::QPickEvent* ptr)```</span>.
107684    #[inline(always)]
107685    unsafe fn static_downcast(
107686        ptr: ::cpp_core::Ptr<crate::QPickEvent>,
107687    ) -> ::cpp_core::Ptr<crate::QPickPointEvent> {
107688        let ffi_result = {
107689            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickPointEvent_ptr(
107690                ptr.as_raw_ptr() as *mut crate::QPickEvent,
107691            )
107692        };
107693        ::cpp_core::Ptr::from_raw(ffi_result)
107694    }
107695}
107696
107697#[cfg_attr(
107698    feature = "ritual_rustdoc_nightly",
107699    doc(cfg(any(
107700        cpp_lib_version = "5.11.3",
107701        cpp_lib_version = "5.12.2",
107702        cpp_lib_version = "5.13.0",
107703        cpp_lib_version = "5.14.0"
107704    )))
107705)]
107706#[cfg(any(
107707    any(
107708        cpp_lib_version = "5.11.3",
107709        cpp_lib_version = "5.12.2",
107710        cpp_lib_version = "5.13.0",
107711        cpp_lib_version = "5.14.0"
107712    ),
107713    feature = "ritual_rustdoc"
107714))]
107715impl ::cpp_core::StaticUpcast<crate::QPickEvent> for crate::QPickPointEvent {
107716    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickEvent* static_cast<Qt3DRender::QPickEvent*>(Qt3DRender::QPickPointEvent* ptr)```</span>.
107717    #[inline(always)]
107718    unsafe fn static_upcast(
107719        ptr: ::cpp_core::Ptr<crate::QPickPointEvent>,
107720    ) -> ::cpp_core::Ptr<crate::QPickEvent> {
107721        let ffi_result = {
107722            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickEvent_ptr5(
107723                ptr.as_raw_ptr() as *mut crate::QPickPointEvent,
107724            )
107725        };
107726        ::cpp_core::Ptr::from_raw(ffi_result)
107727    }
107728}
107729
107730#[cfg_attr(
107731    feature = "ritual_rustdoc_nightly",
107732    doc(cfg(any(
107733        cpp_lib_version = "5.11.3",
107734        cpp_lib_version = "5.12.2",
107735        cpp_lib_version = "5.13.0",
107736        cpp_lib_version = "5.14.0"
107737    )))
107738)]
107739#[cfg(any(
107740    any(
107741        cpp_lib_version = "5.11.3",
107742        cpp_lib_version = "5.12.2",
107743        cpp_lib_version = "5.13.0",
107744        cpp_lib_version = "5.14.0"
107745    ),
107746    feature = "ritual_rustdoc"
107747))]
107748impl ::std::ops::Deref for crate::QPickPointEvent {
107749    type Target = crate::QPickEvent;
107750    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickEvent* static_cast<Qt3DRender::QPickEvent*>(Qt3DRender::QPickPointEvent* ptr)```</span>.
107751    #[inline(always)]
107752    fn deref(&self) -> &crate::QPickEvent {
107753        let ffi_result = {
107754            unsafe {
107755                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickEvent_ptr5(
107756                    self as *const crate::QPickPointEvent as *mut crate::QPickPointEvent,
107757                )
107758            }
107759        };
107760        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
107761    }
107762}
107763
107764#[cfg_attr(
107765    feature = "ritual_rustdoc_nightly",
107766    doc(cfg(any(
107767        cpp_lib_version = "5.11.3",
107768        cpp_lib_version = "5.12.2",
107769        cpp_lib_version = "5.13.0",
107770        cpp_lib_version = "5.14.0"
107771    )))
107772)]
107773#[cfg(any(
107774    any(
107775        cpp_lib_version = "5.11.3",
107776        cpp_lib_version = "5.12.2",
107777        cpp_lib_version = "5.13.0",
107778        cpp_lib_version = "5.14.0"
107779    ),
107780    feature = "ritual_rustdoc"
107781))]
107782impl ::cpp_core::DynamicCast<crate::QPickPointEvent> for crate::QPickEvent {
107783    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickPointEvent* dynamic_cast<Qt3DRender::QPickPointEvent*>(Qt3DRender::QPickEvent* ptr)```</span>.
107784    #[inline(always)]
107785    unsafe fn dynamic_cast(
107786        ptr: ::cpp_core::Ptr<crate::QPickEvent>,
107787    ) -> ::cpp_core::Ptr<crate::QPickPointEvent> {
107788        let ffi_result = {
107789            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPickPointEvent_ptr(
107790                ptr.as_raw_ptr() as *mut crate::QPickEvent,
107791            )
107792        };
107793        ::cpp_core::Ptr::from_raw(ffi_result)
107794    }
107795}
107796
107797#[cfg_attr(
107798    feature = "ritual_rustdoc_nightly",
107799    doc(cfg(any(
107800        cpp_lib_version = "5.11.3",
107801        cpp_lib_version = "5.12.2",
107802        cpp_lib_version = "5.13.0",
107803        cpp_lib_version = "5.14.0"
107804    )))
107805)]
107806#[cfg(any(
107807    any(
107808        cpp_lib_version = "5.11.3",
107809        cpp_lib_version = "5.12.2",
107810        cpp_lib_version = "5.13.0",
107811        cpp_lib_version = "5.14.0"
107812    ),
107813    feature = "ritual_rustdoc"
107814))]
107815impl ::cpp_core::StaticDowncast<crate::QPickPointEvent> for ::qt_core::QObject {
107816    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickPointEvent* static_cast<Qt3DRender::QPickPointEvent*>(QObject* ptr)```</span>.
107817    #[inline(always)]
107818    unsafe fn static_downcast(
107819        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
107820    ) -> ::cpp_core::Ptr<crate::QPickPointEvent> {
107821        let ffi_result = {
107822            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QPickPointEvent_ptr1(
107823                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
107824            )
107825        };
107826        ::cpp_core::Ptr::from_raw(ffi_result)
107827    }
107828}
107829
107830#[cfg_attr(
107831    feature = "ritual_rustdoc_nightly",
107832    doc(cfg(any(
107833        cpp_lib_version = "5.11.3",
107834        cpp_lib_version = "5.12.2",
107835        cpp_lib_version = "5.13.0",
107836        cpp_lib_version = "5.14.0"
107837    )))
107838)]
107839#[cfg(any(
107840    any(
107841        cpp_lib_version = "5.11.3",
107842        cpp_lib_version = "5.12.2",
107843        cpp_lib_version = "5.13.0",
107844        cpp_lib_version = "5.14.0"
107845    ),
107846    feature = "ritual_rustdoc"
107847))]
107848impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QPickPointEvent {
107849    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QPickPointEvent* ptr)```</span>.
107850    #[inline(always)]
107851    unsafe fn static_upcast(
107852        ptr: ::cpp_core::Ptr<crate::QPickPointEvent>,
107853    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
107854        let ffi_result = {
107855            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr306(
107856                ptr.as_raw_ptr() as *mut crate::QPickPointEvent
107857            )
107858        };
107859        ::cpp_core::Ptr::from_raw(ffi_result)
107860    }
107861}
107862
107863#[cfg_attr(
107864    feature = "ritual_rustdoc_nightly",
107865    doc(cfg(any(
107866        cpp_lib_version = "5.11.3",
107867        cpp_lib_version = "5.12.2",
107868        cpp_lib_version = "5.13.0",
107869        cpp_lib_version = "5.14.0"
107870    )))
107871)]
107872#[cfg(any(
107873    any(
107874        cpp_lib_version = "5.11.3",
107875        cpp_lib_version = "5.12.2",
107876        cpp_lib_version = "5.13.0",
107877        cpp_lib_version = "5.14.0"
107878    ),
107879    feature = "ritual_rustdoc"
107880))]
107881impl ::cpp_core::DynamicCast<crate::QPickPointEvent> for ::qt_core::QObject {
107882    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QPickPointEvent* dynamic_cast<Qt3DRender::QPickPointEvent*>(QObject* ptr)```</span>.
107883    #[inline(always)]
107884    unsafe fn dynamic_cast(
107885        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
107886    ) -> ::cpp_core::Ptr<crate::QPickPointEvent> {
107887        let ffi_result = {
107888            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QPickPointEvent_ptr1(
107889                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
107890            )
107891        };
107892        ::cpp_core::Ptr::from_raw(ffi_result)
107893    }
107894}
107895
107896#[cfg_attr(
107897    feature = "ritual_rustdoc_nightly",
107898    doc(cfg(any(
107899        cpp_lib_version = "5.11.3",
107900        cpp_lib_version = "5.12.2",
107901        cpp_lib_version = "5.13.0",
107902        cpp_lib_version = "5.14.0"
107903    )))
107904)]
107905#[cfg(any(
107906    any(
107907        cpp_lib_version = "5.11.3",
107908        cpp_lib_version = "5.12.2",
107909        cpp_lib_version = "5.13.0",
107910        cpp_lib_version = "5.14.0"
107911    ),
107912    feature = "ritual_rustdoc"
107913))]
107914impl ::cpp_core::StaticDowncast<crate::QProximityFilter> for crate::QFrameGraphNode {
107915    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QProximityFilter* static_cast<Qt3DRender::QProximityFilter*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
107916    #[inline(always)]
107917    unsafe fn static_downcast(
107918        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
107919    ) -> ::cpp_core::Ptr<crate::QProximityFilter> {
107920        let ffi_result = {
107921            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QProximityFilter_ptr(
107922                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
107923            )
107924        };
107925        ::cpp_core::Ptr::from_raw(ffi_result)
107926    }
107927}
107928
107929#[cfg_attr(
107930    feature = "ritual_rustdoc_nightly",
107931    doc(cfg(any(
107932        cpp_lib_version = "5.11.3",
107933        cpp_lib_version = "5.12.2",
107934        cpp_lib_version = "5.13.0",
107935        cpp_lib_version = "5.14.0"
107936    )))
107937)]
107938#[cfg(any(
107939    any(
107940        cpp_lib_version = "5.11.3",
107941        cpp_lib_version = "5.12.2",
107942        cpp_lib_version = "5.13.0",
107943        cpp_lib_version = "5.14.0"
107944    ),
107945    feature = "ritual_rustdoc"
107946))]
107947impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QProximityFilter {
107948    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QProximityFilter* ptr)```</span>.
107949    #[inline(always)]
107950    unsafe fn static_upcast(
107951        ptr: ::cpp_core::Ptr<crate::QProximityFilter>,
107952    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
107953        let ffi_result = {
107954            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr37(
107955                ptr.as_raw_ptr() as *mut crate::QProximityFilter,
107956            )
107957        };
107958        ::cpp_core::Ptr::from_raw(ffi_result)
107959    }
107960}
107961
107962#[cfg_attr(
107963    feature = "ritual_rustdoc_nightly",
107964    doc(cfg(any(
107965        cpp_lib_version = "5.11.3",
107966        cpp_lib_version = "5.12.2",
107967        cpp_lib_version = "5.13.0",
107968        cpp_lib_version = "5.14.0"
107969    )))
107970)]
107971#[cfg(any(
107972    any(
107973        cpp_lib_version = "5.11.3",
107974        cpp_lib_version = "5.12.2",
107975        cpp_lib_version = "5.13.0",
107976        cpp_lib_version = "5.14.0"
107977    ),
107978    feature = "ritual_rustdoc"
107979))]
107980impl ::std::ops::Deref for crate::QProximityFilter {
107981    type Target = crate::QFrameGraphNode;
107982    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QProximityFilter* ptr)```</span>.
107983    #[inline(always)]
107984    fn deref(&self) -> &crate::QFrameGraphNode {
107985        let ffi_result = {
107986            unsafe {
107987                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr37(
107988                    self as *const crate::QProximityFilter as *mut crate::QProximityFilter,
107989                )
107990            }
107991        };
107992        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
107993    }
107994}
107995
107996#[cfg_attr(
107997    feature = "ritual_rustdoc_nightly",
107998    doc(cfg(any(
107999        cpp_lib_version = "5.11.3",
108000        cpp_lib_version = "5.12.2",
108001        cpp_lib_version = "5.13.0",
108002        cpp_lib_version = "5.14.0"
108003    )))
108004)]
108005#[cfg(any(
108006    any(
108007        cpp_lib_version = "5.11.3",
108008        cpp_lib_version = "5.12.2",
108009        cpp_lib_version = "5.13.0",
108010        cpp_lib_version = "5.14.0"
108011    ),
108012    feature = "ritual_rustdoc"
108013))]
108014impl ::cpp_core::DynamicCast<crate::QProximityFilter> for crate::QFrameGraphNode {
108015    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QProximityFilter* dynamic_cast<Qt3DRender::QProximityFilter*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
108016    #[inline(always)]
108017    unsafe fn dynamic_cast(
108018        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
108019    ) -> ::cpp_core::Ptr<crate::QProximityFilter> {
108020        let ffi_result = {
108021            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QProximityFilter_ptr(
108022                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
108023            )
108024        };
108025        ::cpp_core::Ptr::from_raw(ffi_result)
108026    }
108027}
108028
108029#[cfg_attr(
108030    feature = "ritual_rustdoc_nightly",
108031    doc(cfg(any(
108032        cpp_lib_version = "5.11.3",
108033        cpp_lib_version = "5.12.2",
108034        cpp_lib_version = "5.13.0",
108035        cpp_lib_version = "5.14.0"
108036    )))
108037)]
108038#[cfg(any(
108039    any(
108040        cpp_lib_version = "5.11.3",
108041        cpp_lib_version = "5.12.2",
108042        cpp_lib_version = "5.13.0",
108043        cpp_lib_version = "5.14.0"
108044    ),
108045    feature = "ritual_rustdoc"
108046))]
108047impl ::cpp_core::StaticDowncast<crate::QProximityFilter> for ::qt_3d_core::QNode {
108048    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QProximityFilter* static_cast<Qt3DRender::QProximityFilter*>(Qt3DCore::QNode* ptr)```</span>.
108049    #[inline(always)]
108050    unsafe fn static_downcast(
108051        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
108052    ) -> ::cpp_core::Ptr<crate::QProximityFilter> {
108053        let ffi_result = {
108054            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QProximityFilter_ptr1(
108055                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
108056            )
108057        };
108058        ::cpp_core::Ptr::from_raw(ffi_result)
108059    }
108060}
108061
108062#[cfg_attr(
108063    feature = "ritual_rustdoc_nightly",
108064    doc(cfg(any(
108065        cpp_lib_version = "5.11.3",
108066        cpp_lib_version = "5.12.2",
108067        cpp_lib_version = "5.13.0",
108068        cpp_lib_version = "5.14.0"
108069    )))
108070)]
108071#[cfg(any(
108072    any(
108073        cpp_lib_version = "5.11.3",
108074        cpp_lib_version = "5.12.2",
108075        cpp_lib_version = "5.13.0",
108076        cpp_lib_version = "5.14.0"
108077    ),
108078    feature = "ritual_rustdoc"
108079))]
108080impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QProximityFilter {
108081    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QProximityFilter* ptr)```</span>.
108082    #[inline(always)]
108083    unsafe fn static_upcast(
108084        ptr: ::cpp_core::Ptr<crate::QProximityFilter>,
108085    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
108086        let ffi_result = {
108087            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr169(
108088                ptr.as_raw_ptr() as *mut crate::QProximityFilter
108089            )
108090        };
108091        ::cpp_core::Ptr::from_raw(ffi_result)
108092    }
108093}
108094
108095#[cfg_attr(
108096    feature = "ritual_rustdoc_nightly",
108097    doc(cfg(any(
108098        cpp_lib_version = "5.11.3",
108099        cpp_lib_version = "5.12.2",
108100        cpp_lib_version = "5.13.0",
108101        cpp_lib_version = "5.14.0"
108102    )))
108103)]
108104#[cfg(any(
108105    any(
108106        cpp_lib_version = "5.11.3",
108107        cpp_lib_version = "5.12.2",
108108        cpp_lib_version = "5.13.0",
108109        cpp_lib_version = "5.14.0"
108110    ),
108111    feature = "ritual_rustdoc"
108112))]
108113impl ::cpp_core::DynamicCast<crate::QProximityFilter> for ::qt_3d_core::QNode {
108114    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QProximityFilter* dynamic_cast<Qt3DRender::QProximityFilter*>(Qt3DCore::QNode* ptr)```</span>.
108115    #[inline(always)]
108116    unsafe fn dynamic_cast(
108117        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
108118    ) -> ::cpp_core::Ptr<crate::QProximityFilter> {
108119        let ffi_result = {
108120            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QProximityFilter_ptr1(
108121                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
108122            )
108123        };
108124        ::cpp_core::Ptr::from_raw(ffi_result)
108125    }
108126}
108127
108128#[cfg_attr(
108129    feature = "ritual_rustdoc_nightly",
108130    doc(cfg(any(
108131        cpp_lib_version = "5.11.3",
108132        cpp_lib_version = "5.12.2",
108133        cpp_lib_version = "5.13.0",
108134        cpp_lib_version = "5.14.0"
108135    )))
108136)]
108137#[cfg(any(
108138    any(
108139        cpp_lib_version = "5.11.3",
108140        cpp_lib_version = "5.12.2",
108141        cpp_lib_version = "5.13.0",
108142        cpp_lib_version = "5.14.0"
108143    ),
108144    feature = "ritual_rustdoc"
108145))]
108146impl ::cpp_core::StaticDowncast<crate::QProximityFilter> for ::qt_core::QObject {
108147    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QProximityFilter* static_cast<Qt3DRender::QProximityFilter*>(QObject* ptr)```</span>.
108148    #[inline(always)]
108149    unsafe fn static_downcast(
108150        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
108151    ) -> ::cpp_core::Ptr<crate::QProximityFilter> {
108152        let ffi_result = {
108153            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QProximityFilter_ptr2(
108154                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
108155            )
108156        };
108157        ::cpp_core::Ptr::from_raw(ffi_result)
108158    }
108159}
108160
108161#[cfg_attr(
108162    feature = "ritual_rustdoc_nightly",
108163    doc(cfg(any(
108164        cpp_lib_version = "5.11.3",
108165        cpp_lib_version = "5.12.2",
108166        cpp_lib_version = "5.13.0",
108167        cpp_lib_version = "5.14.0"
108168    )))
108169)]
108170#[cfg(any(
108171    any(
108172        cpp_lib_version = "5.11.3",
108173        cpp_lib_version = "5.12.2",
108174        cpp_lib_version = "5.13.0",
108175        cpp_lib_version = "5.14.0"
108176    ),
108177    feature = "ritual_rustdoc"
108178))]
108179impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QProximityFilter {
108180    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QProximityFilter* ptr)```</span>.
108181    #[inline(always)]
108182    unsafe fn static_upcast(
108183        ptr: ::cpp_core::Ptr<crate::QProximityFilter>,
108184    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
108185        let ffi_result = {
108186            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr307(
108187                ptr.as_raw_ptr() as *mut crate::QProximityFilter
108188            )
108189        };
108190        ::cpp_core::Ptr::from_raw(ffi_result)
108191    }
108192}
108193
108194#[cfg_attr(
108195    feature = "ritual_rustdoc_nightly",
108196    doc(cfg(any(
108197        cpp_lib_version = "5.11.3",
108198        cpp_lib_version = "5.12.2",
108199        cpp_lib_version = "5.13.0",
108200        cpp_lib_version = "5.14.0"
108201    )))
108202)]
108203#[cfg(any(
108204    any(
108205        cpp_lib_version = "5.11.3",
108206        cpp_lib_version = "5.12.2",
108207        cpp_lib_version = "5.13.0",
108208        cpp_lib_version = "5.14.0"
108209    ),
108210    feature = "ritual_rustdoc"
108211))]
108212impl ::cpp_core::DynamicCast<crate::QProximityFilter> for ::qt_core::QObject {
108213    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QProximityFilter* dynamic_cast<Qt3DRender::QProximityFilter*>(QObject* ptr)```</span>.
108214    #[inline(always)]
108215    unsafe fn dynamic_cast(
108216        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
108217    ) -> ::cpp_core::Ptr<crate::QProximityFilter> {
108218        let ffi_result = {
108219            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QProximityFilter_ptr2(
108220                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
108221            )
108222        };
108223        ::cpp_core::Ptr::from_raw(ffi_result)
108224    }
108225}
108226
108227#[cfg_attr(
108228    feature = "ritual_rustdoc_nightly",
108229    doc(cfg(any(
108230        cpp_lib_version = "5.11.3",
108231        cpp_lib_version = "5.12.2",
108232        cpp_lib_version = "5.13.0",
108233        cpp_lib_version = "5.14.0"
108234    )))
108235)]
108236#[cfg(any(
108237    any(
108238        cpp_lib_version = "5.11.3",
108239        cpp_lib_version = "5.12.2",
108240        cpp_lib_version = "5.13.0",
108241        cpp_lib_version = "5.14.0"
108242    ),
108243    feature = "ritual_rustdoc"
108244))]
108245impl ::cpp_core::StaticDowncast<crate::QRayCaster> for crate::QAbstractRayCaster {
108246    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCaster* static_cast<Qt3DRender::QRayCaster*>(Qt3DRender::QAbstractRayCaster* ptr)```</span>.
108247    #[inline(always)]
108248    unsafe fn static_downcast(
108249        ptr: ::cpp_core::Ptr<crate::QAbstractRayCaster>,
108250    ) -> ::cpp_core::Ptr<crate::QRayCaster> {
108251        let ffi_result = {
108252            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRayCaster_ptr(
108253                ptr.as_raw_ptr() as *mut crate::QAbstractRayCaster,
108254            )
108255        };
108256        ::cpp_core::Ptr::from_raw(ffi_result)
108257    }
108258}
108259
108260#[cfg_attr(
108261    feature = "ritual_rustdoc_nightly",
108262    doc(cfg(any(
108263        cpp_lib_version = "5.11.3",
108264        cpp_lib_version = "5.12.2",
108265        cpp_lib_version = "5.13.0",
108266        cpp_lib_version = "5.14.0"
108267    )))
108268)]
108269#[cfg(any(
108270    any(
108271        cpp_lib_version = "5.11.3",
108272        cpp_lib_version = "5.12.2",
108273        cpp_lib_version = "5.13.0",
108274        cpp_lib_version = "5.14.0"
108275    ),
108276    feature = "ritual_rustdoc"
108277))]
108278impl ::cpp_core::StaticUpcast<crate::QAbstractRayCaster> for crate::QRayCaster {
108279    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DRender::QRayCaster* ptr)```</span>.
108280    #[inline(always)]
108281    unsafe fn static_upcast(
108282        ptr: ::cpp_core::Ptr<crate::QRayCaster>,
108283    ) -> ::cpp_core::Ptr<crate::QAbstractRayCaster> {
108284        let ffi_result = {
108285            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractRayCaster_ptr3(
108286                ptr.as_raw_ptr() as *mut crate::QRayCaster,
108287            )
108288        };
108289        ::cpp_core::Ptr::from_raw(ffi_result)
108290    }
108291}
108292
108293#[cfg_attr(
108294    feature = "ritual_rustdoc_nightly",
108295    doc(cfg(any(
108296        cpp_lib_version = "5.11.3",
108297        cpp_lib_version = "5.12.2",
108298        cpp_lib_version = "5.13.0",
108299        cpp_lib_version = "5.14.0"
108300    )))
108301)]
108302#[cfg(any(
108303    any(
108304        cpp_lib_version = "5.11.3",
108305        cpp_lib_version = "5.12.2",
108306        cpp_lib_version = "5.13.0",
108307        cpp_lib_version = "5.14.0"
108308    ),
108309    feature = "ritual_rustdoc"
108310))]
108311impl ::std::ops::Deref for crate::QRayCaster {
108312    type Target = crate::QAbstractRayCaster;
108313    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DRender::QRayCaster* ptr)```</span>.
108314    #[inline(always)]
108315    fn deref(&self) -> &crate::QAbstractRayCaster {
108316        let ffi_result = {
108317            unsafe {
108318                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractRayCaster_ptr3(
108319                    self as *const crate::QRayCaster as *mut crate::QRayCaster,
108320                )
108321            }
108322        };
108323        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
108324    }
108325}
108326
108327#[cfg_attr(
108328    feature = "ritual_rustdoc_nightly",
108329    doc(cfg(any(
108330        cpp_lib_version = "5.11.3",
108331        cpp_lib_version = "5.12.2",
108332        cpp_lib_version = "5.13.0",
108333        cpp_lib_version = "5.14.0"
108334    )))
108335)]
108336#[cfg(any(
108337    any(
108338        cpp_lib_version = "5.11.3",
108339        cpp_lib_version = "5.12.2",
108340        cpp_lib_version = "5.13.0",
108341        cpp_lib_version = "5.14.0"
108342    ),
108343    feature = "ritual_rustdoc"
108344))]
108345impl ::cpp_core::DynamicCast<crate::QRayCaster> for crate::QAbstractRayCaster {
108346    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCaster* dynamic_cast<Qt3DRender::QRayCaster*>(Qt3DRender::QAbstractRayCaster* ptr)```</span>.
108347    #[inline(always)]
108348    unsafe fn dynamic_cast(
108349        ptr: ::cpp_core::Ptr<crate::QAbstractRayCaster>,
108350    ) -> ::cpp_core::Ptr<crate::QRayCaster> {
108351        let ffi_result = {
108352            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRayCaster_ptr(
108353                ptr.as_raw_ptr() as *mut crate::QAbstractRayCaster,
108354            )
108355        };
108356        ::cpp_core::Ptr::from_raw(ffi_result)
108357    }
108358}
108359
108360#[cfg_attr(
108361    feature = "ritual_rustdoc_nightly",
108362    doc(cfg(any(
108363        cpp_lib_version = "5.11.3",
108364        cpp_lib_version = "5.12.2",
108365        cpp_lib_version = "5.13.0",
108366        cpp_lib_version = "5.14.0"
108367    )))
108368)]
108369#[cfg(any(
108370    any(
108371        cpp_lib_version = "5.11.3",
108372        cpp_lib_version = "5.12.2",
108373        cpp_lib_version = "5.13.0",
108374        cpp_lib_version = "5.14.0"
108375    ),
108376    feature = "ritual_rustdoc"
108377))]
108378impl ::cpp_core::StaticDowncast<crate::QRayCaster> for ::qt_3d_core::QComponent {
108379    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCaster* static_cast<Qt3DRender::QRayCaster*>(Qt3DCore::QComponent* ptr)```</span>.
108380    #[inline(always)]
108381    unsafe fn static_downcast(
108382        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
108383    ) -> ::cpp_core::Ptr<crate::QRayCaster> {
108384        let ffi_result = {
108385            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRayCaster_ptr1(
108386                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
108387            )
108388        };
108389        ::cpp_core::Ptr::from_raw(ffi_result)
108390    }
108391}
108392
108393#[cfg_attr(
108394    feature = "ritual_rustdoc_nightly",
108395    doc(cfg(any(
108396        cpp_lib_version = "5.11.3",
108397        cpp_lib_version = "5.12.2",
108398        cpp_lib_version = "5.13.0",
108399        cpp_lib_version = "5.14.0"
108400    )))
108401)]
108402#[cfg(any(
108403    any(
108404        cpp_lib_version = "5.11.3",
108405        cpp_lib_version = "5.12.2",
108406        cpp_lib_version = "5.13.0",
108407        cpp_lib_version = "5.14.0"
108408    ),
108409    feature = "ritual_rustdoc"
108410))]
108411impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QRayCaster {
108412    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QRayCaster* ptr)```</span>.
108413    #[inline(always)]
108414    unsafe fn static_upcast(
108415        ptr: ::cpp_core::Ptr<crate::QRayCaster>,
108416    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
108417        let ffi_result = {
108418            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr37(
108419                ptr.as_raw_ptr() as *mut crate::QRayCaster,
108420            )
108421        };
108422        ::cpp_core::Ptr::from_raw(ffi_result)
108423    }
108424}
108425
108426#[cfg_attr(
108427    feature = "ritual_rustdoc_nightly",
108428    doc(cfg(any(
108429        cpp_lib_version = "5.11.3",
108430        cpp_lib_version = "5.12.2",
108431        cpp_lib_version = "5.13.0",
108432        cpp_lib_version = "5.14.0"
108433    )))
108434)]
108435#[cfg(any(
108436    any(
108437        cpp_lib_version = "5.11.3",
108438        cpp_lib_version = "5.12.2",
108439        cpp_lib_version = "5.13.0",
108440        cpp_lib_version = "5.14.0"
108441    ),
108442    feature = "ritual_rustdoc"
108443))]
108444impl ::cpp_core::DynamicCast<crate::QRayCaster> for ::qt_3d_core::QComponent {
108445    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCaster* dynamic_cast<Qt3DRender::QRayCaster*>(Qt3DCore::QComponent* ptr)```</span>.
108446    #[inline(always)]
108447    unsafe fn dynamic_cast(
108448        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
108449    ) -> ::cpp_core::Ptr<crate::QRayCaster> {
108450        let ffi_result = {
108451            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRayCaster_ptr1(
108452                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
108453            )
108454        };
108455        ::cpp_core::Ptr::from_raw(ffi_result)
108456    }
108457}
108458
108459#[cfg_attr(
108460    feature = "ritual_rustdoc_nightly",
108461    doc(cfg(any(
108462        cpp_lib_version = "5.11.3",
108463        cpp_lib_version = "5.12.2",
108464        cpp_lib_version = "5.13.0",
108465        cpp_lib_version = "5.14.0"
108466    )))
108467)]
108468#[cfg(any(
108469    any(
108470        cpp_lib_version = "5.11.3",
108471        cpp_lib_version = "5.12.2",
108472        cpp_lib_version = "5.13.0",
108473        cpp_lib_version = "5.14.0"
108474    ),
108475    feature = "ritual_rustdoc"
108476))]
108477impl ::cpp_core::StaticDowncast<crate::QRayCaster> for ::qt_3d_core::QNode {
108478    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCaster* static_cast<Qt3DRender::QRayCaster*>(Qt3DCore::QNode* ptr)```</span>.
108479    #[inline(always)]
108480    unsafe fn static_downcast(
108481        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
108482    ) -> ::cpp_core::Ptr<crate::QRayCaster> {
108483        let ffi_result = {
108484            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRayCaster_ptr2(
108485                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
108486            )
108487        };
108488        ::cpp_core::Ptr::from_raw(ffi_result)
108489    }
108490}
108491
108492#[cfg_attr(
108493    feature = "ritual_rustdoc_nightly",
108494    doc(cfg(any(
108495        cpp_lib_version = "5.11.3",
108496        cpp_lib_version = "5.12.2",
108497        cpp_lib_version = "5.13.0",
108498        cpp_lib_version = "5.14.0"
108499    )))
108500)]
108501#[cfg(any(
108502    any(
108503        cpp_lib_version = "5.11.3",
108504        cpp_lib_version = "5.12.2",
108505        cpp_lib_version = "5.13.0",
108506        cpp_lib_version = "5.14.0"
108507    ),
108508    feature = "ritual_rustdoc"
108509))]
108510impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRayCaster {
108511    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRayCaster* ptr)```</span>.
108512    #[inline(always)]
108513    unsafe fn static_upcast(
108514        ptr: ::cpp_core::Ptr<crate::QRayCaster>,
108515    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
108516        let ffi_result = {
108517            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr170(
108518                ptr.as_raw_ptr() as *mut crate::QRayCaster
108519            )
108520        };
108521        ::cpp_core::Ptr::from_raw(ffi_result)
108522    }
108523}
108524
108525#[cfg_attr(
108526    feature = "ritual_rustdoc_nightly",
108527    doc(cfg(any(
108528        cpp_lib_version = "5.11.3",
108529        cpp_lib_version = "5.12.2",
108530        cpp_lib_version = "5.13.0",
108531        cpp_lib_version = "5.14.0"
108532    )))
108533)]
108534#[cfg(any(
108535    any(
108536        cpp_lib_version = "5.11.3",
108537        cpp_lib_version = "5.12.2",
108538        cpp_lib_version = "5.13.0",
108539        cpp_lib_version = "5.14.0"
108540    ),
108541    feature = "ritual_rustdoc"
108542))]
108543impl ::cpp_core::DynamicCast<crate::QRayCaster> for ::qt_3d_core::QNode {
108544    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCaster* dynamic_cast<Qt3DRender::QRayCaster*>(Qt3DCore::QNode* ptr)```</span>.
108545    #[inline(always)]
108546    unsafe fn dynamic_cast(
108547        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
108548    ) -> ::cpp_core::Ptr<crate::QRayCaster> {
108549        let ffi_result = {
108550            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRayCaster_ptr2(
108551                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
108552            )
108553        };
108554        ::cpp_core::Ptr::from_raw(ffi_result)
108555    }
108556}
108557
108558#[cfg_attr(
108559    feature = "ritual_rustdoc_nightly",
108560    doc(cfg(any(
108561        cpp_lib_version = "5.11.3",
108562        cpp_lib_version = "5.12.2",
108563        cpp_lib_version = "5.13.0",
108564        cpp_lib_version = "5.14.0"
108565    )))
108566)]
108567#[cfg(any(
108568    any(
108569        cpp_lib_version = "5.11.3",
108570        cpp_lib_version = "5.12.2",
108571        cpp_lib_version = "5.13.0",
108572        cpp_lib_version = "5.14.0"
108573    ),
108574    feature = "ritual_rustdoc"
108575))]
108576impl ::cpp_core::StaticDowncast<crate::QRayCaster> for ::qt_core::QObject {
108577    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCaster* static_cast<Qt3DRender::QRayCaster*>(QObject* ptr)```</span>.
108578    #[inline(always)]
108579    unsafe fn static_downcast(
108580        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
108581    ) -> ::cpp_core::Ptr<crate::QRayCaster> {
108582        let ffi_result = {
108583            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRayCaster_ptr3(
108584                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
108585            )
108586        };
108587        ::cpp_core::Ptr::from_raw(ffi_result)
108588    }
108589}
108590
108591#[cfg_attr(
108592    feature = "ritual_rustdoc_nightly",
108593    doc(cfg(any(
108594        cpp_lib_version = "5.11.3",
108595        cpp_lib_version = "5.12.2",
108596        cpp_lib_version = "5.13.0",
108597        cpp_lib_version = "5.14.0"
108598    )))
108599)]
108600#[cfg(any(
108601    any(
108602        cpp_lib_version = "5.11.3",
108603        cpp_lib_version = "5.12.2",
108604        cpp_lib_version = "5.13.0",
108605        cpp_lib_version = "5.14.0"
108606    ),
108607    feature = "ritual_rustdoc"
108608))]
108609impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRayCaster {
108610    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRayCaster* ptr)```</span>.
108611    #[inline(always)]
108612    unsafe fn static_upcast(
108613        ptr: ::cpp_core::Ptr<crate::QRayCaster>,
108614    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
108615        let ffi_result = {
108616            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr308(
108617                ptr.as_raw_ptr() as *mut crate::QRayCaster
108618            )
108619        };
108620        ::cpp_core::Ptr::from_raw(ffi_result)
108621    }
108622}
108623
108624#[cfg_attr(
108625    feature = "ritual_rustdoc_nightly",
108626    doc(cfg(any(
108627        cpp_lib_version = "5.11.3",
108628        cpp_lib_version = "5.12.2",
108629        cpp_lib_version = "5.13.0",
108630        cpp_lib_version = "5.14.0"
108631    )))
108632)]
108633#[cfg(any(
108634    any(
108635        cpp_lib_version = "5.11.3",
108636        cpp_lib_version = "5.12.2",
108637        cpp_lib_version = "5.13.0",
108638        cpp_lib_version = "5.14.0"
108639    ),
108640    feature = "ritual_rustdoc"
108641))]
108642impl ::cpp_core::DynamicCast<crate::QRayCaster> for ::qt_core::QObject {
108643    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRayCaster* dynamic_cast<Qt3DRender::QRayCaster*>(QObject* ptr)```</span>.
108644    #[inline(always)]
108645    unsafe fn dynamic_cast(
108646        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
108647    ) -> ::cpp_core::Ptr<crate::QRayCaster> {
108648        let ffi_result = {
108649            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRayCaster_ptr3(
108650                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
108651            )
108652        };
108653        ::cpp_core::Ptr::from_raw(ffi_result)
108654    }
108655}
108656
108657#[cfg_attr(
108658    feature = "ritual_rustdoc_nightly",
108659    doc(cfg(any(
108660        cpp_lib_version = "5.11.3",
108661        cpp_lib_version = "5.12.2",
108662        cpp_lib_version = "5.13.0",
108663        cpp_lib_version = "5.14.0"
108664    )))
108665)]
108666#[cfg(any(
108667    any(
108668        cpp_lib_version = "5.11.3",
108669        cpp_lib_version = "5.12.2",
108670        cpp_lib_version = "5.13.0",
108671        cpp_lib_version = "5.14.0"
108672    ),
108673    feature = "ritual_rustdoc"
108674))]
108675impl ::cpp_core::StaticDowncast<crate::QScreenRayCaster> for crate::QAbstractRayCaster {
108676    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScreenRayCaster* static_cast<Qt3DRender::QScreenRayCaster*>(Qt3DRender::QAbstractRayCaster* ptr)```</span>.
108677    #[inline(always)]
108678    unsafe fn static_downcast(
108679        ptr: ::cpp_core::Ptr<crate::QAbstractRayCaster>,
108680    ) -> ::cpp_core::Ptr<crate::QScreenRayCaster> {
108681        let ffi_result = {
108682            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QScreenRayCaster_ptr(
108683                ptr.as_raw_ptr() as *mut crate::QAbstractRayCaster,
108684            )
108685        };
108686        ::cpp_core::Ptr::from_raw(ffi_result)
108687    }
108688}
108689
108690#[cfg_attr(
108691    feature = "ritual_rustdoc_nightly",
108692    doc(cfg(any(
108693        cpp_lib_version = "5.11.3",
108694        cpp_lib_version = "5.12.2",
108695        cpp_lib_version = "5.13.0",
108696        cpp_lib_version = "5.14.0"
108697    )))
108698)]
108699#[cfg(any(
108700    any(
108701        cpp_lib_version = "5.11.3",
108702        cpp_lib_version = "5.12.2",
108703        cpp_lib_version = "5.13.0",
108704        cpp_lib_version = "5.14.0"
108705    ),
108706    feature = "ritual_rustdoc"
108707))]
108708impl ::cpp_core::StaticUpcast<crate::QAbstractRayCaster> for crate::QScreenRayCaster {
108709    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DRender::QScreenRayCaster* ptr)```</span>.
108710    #[inline(always)]
108711    unsafe fn static_upcast(
108712        ptr: ::cpp_core::Ptr<crate::QScreenRayCaster>,
108713    ) -> ::cpp_core::Ptr<crate::QAbstractRayCaster> {
108714        let ffi_result = {
108715            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractRayCaster_ptr4(
108716                ptr.as_raw_ptr() as *mut crate::QScreenRayCaster,
108717            )
108718        };
108719        ::cpp_core::Ptr::from_raw(ffi_result)
108720    }
108721}
108722
108723#[cfg_attr(
108724    feature = "ritual_rustdoc_nightly",
108725    doc(cfg(any(
108726        cpp_lib_version = "5.11.3",
108727        cpp_lib_version = "5.12.2",
108728        cpp_lib_version = "5.13.0",
108729        cpp_lib_version = "5.14.0"
108730    )))
108731)]
108732#[cfg(any(
108733    any(
108734        cpp_lib_version = "5.11.3",
108735        cpp_lib_version = "5.12.2",
108736        cpp_lib_version = "5.13.0",
108737        cpp_lib_version = "5.14.0"
108738    ),
108739    feature = "ritual_rustdoc"
108740))]
108741impl ::std::ops::Deref for crate::QScreenRayCaster {
108742    type Target = crate::QAbstractRayCaster;
108743    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DRender::QScreenRayCaster* ptr)```</span>.
108744    #[inline(always)]
108745    fn deref(&self) -> &crate::QAbstractRayCaster {
108746        let ffi_result = {
108747            unsafe {
108748                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractRayCaster_ptr4(
108749                    self as *const crate::QScreenRayCaster as *mut crate::QScreenRayCaster,
108750                )
108751            }
108752        };
108753        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
108754    }
108755}
108756
108757#[cfg_attr(
108758    feature = "ritual_rustdoc_nightly",
108759    doc(cfg(any(
108760        cpp_lib_version = "5.11.3",
108761        cpp_lib_version = "5.12.2",
108762        cpp_lib_version = "5.13.0",
108763        cpp_lib_version = "5.14.0"
108764    )))
108765)]
108766#[cfg(any(
108767    any(
108768        cpp_lib_version = "5.11.3",
108769        cpp_lib_version = "5.12.2",
108770        cpp_lib_version = "5.13.0",
108771        cpp_lib_version = "5.14.0"
108772    ),
108773    feature = "ritual_rustdoc"
108774))]
108775impl ::cpp_core::DynamicCast<crate::QScreenRayCaster> for crate::QAbstractRayCaster {
108776    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScreenRayCaster* dynamic_cast<Qt3DRender::QScreenRayCaster*>(Qt3DRender::QAbstractRayCaster* ptr)```</span>.
108777    #[inline(always)]
108778    unsafe fn dynamic_cast(
108779        ptr: ::cpp_core::Ptr<crate::QAbstractRayCaster>,
108780    ) -> ::cpp_core::Ptr<crate::QScreenRayCaster> {
108781        let ffi_result = {
108782            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QScreenRayCaster_ptr(
108783                ptr.as_raw_ptr() as *mut crate::QAbstractRayCaster,
108784            )
108785        };
108786        ::cpp_core::Ptr::from_raw(ffi_result)
108787    }
108788}
108789
108790#[cfg_attr(
108791    feature = "ritual_rustdoc_nightly",
108792    doc(cfg(any(
108793        cpp_lib_version = "5.11.3",
108794        cpp_lib_version = "5.12.2",
108795        cpp_lib_version = "5.13.0",
108796        cpp_lib_version = "5.14.0"
108797    )))
108798)]
108799#[cfg(any(
108800    any(
108801        cpp_lib_version = "5.11.3",
108802        cpp_lib_version = "5.12.2",
108803        cpp_lib_version = "5.13.0",
108804        cpp_lib_version = "5.14.0"
108805    ),
108806    feature = "ritual_rustdoc"
108807))]
108808impl ::cpp_core::StaticDowncast<crate::QScreenRayCaster> for ::qt_3d_core::QComponent {
108809    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScreenRayCaster* static_cast<Qt3DRender::QScreenRayCaster*>(Qt3DCore::QComponent* ptr)```</span>.
108810    #[inline(always)]
108811    unsafe fn static_downcast(
108812        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
108813    ) -> ::cpp_core::Ptr<crate::QScreenRayCaster> {
108814        let ffi_result = {
108815            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QScreenRayCaster_ptr1(
108816                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
108817            )
108818        };
108819        ::cpp_core::Ptr::from_raw(ffi_result)
108820    }
108821}
108822
108823#[cfg_attr(
108824    feature = "ritual_rustdoc_nightly",
108825    doc(cfg(any(
108826        cpp_lib_version = "5.11.3",
108827        cpp_lib_version = "5.12.2",
108828        cpp_lib_version = "5.13.0",
108829        cpp_lib_version = "5.14.0"
108830    )))
108831)]
108832#[cfg(any(
108833    any(
108834        cpp_lib_version = "5.11.3",
108835        cpp_lib_version = "5.12.2",
108836        cpp_lib_version = "5.13.0",
108837        cpp_lib_version = "5.14.0"
108838    ),
108839    feature = "ritual_rustdoc"
108840))]
108841impl ::cpp_core::StaticUpcast<::qt_3d_core::QComponent> for crate::QScreenRayCaster {
108842    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QScreenRayCaster* ptr)```</span>.
108843    #[inline(always)]
108844    unsafe fn static_upcast(
108845        ptr: ::cpp_core::Ptr<crate::QScreenRayCaster>,
108846    ) -> ::cpp_core::Ptr<::qt_3d_core::QComponent> {
108847        let ffi_result = {
108848            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QComponent_ptr38(
108849                ptr.as_raw_ptr() as *mut crate::QScreenRayCaster,
108850            )
108851        };
108852        ::cpp_core::Ptr::from_raw(ffi_result)
108853    }
108854}
108855
108856#[cfg_attr(
108857    feature = "ritual_rustdoc_nightly",
108858    doc(cfg(any(
108859        cpp_lib_version = "5.11.3",
108860        cpp_lib_version = "5.12.2",
108861        cpp_lib_version = "5.13.0",
108862        cpp_lib_version = "5.14.0"
108863    )))
108864)]
108865#[cfg(any(
108866    any(
108867        cpp_lib_version = "5.11.3",
108868        cpp_lib_version = "5.12.2",
108869        cpp_lib_version = "5.13.0",
108870        cpp_lib_version = "5.14.0"
108871    ),
108872    feature = "ritual_rustdoc"
108873))]
108874impl ::cpp_core::DynamicCast<crate::QScreenRayCaster> for ::qt_3d_core::QComponent {
108875    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScreenRayCaster* dynamic_cast<Qt3DRender::QScreenRayCaster*>(Qt3DCore::QComponent* ptr)```</span>.
108876    #[inline(always)]
108877    unsafe fn dynamic_cast(
108878        ptr: ::cpp_core::Ptr<::qt_3d_core::QComponent>,
108879    ) -> ::cpp_core::Ptr<crate::QScreenRayCaster> {
108880        let ffi_result = {
108881            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QScreenRayCaster_ptr1(
108882                ptr.as_raw_ptr() as *mut ::qt_3d_core::QComponent,
108883            )
108884        };
108885        ::cpp_core::Ptr::from_raw(ffi_result)
108886    }
108887}
108888
108889#[cfg_attr(
108890    feature = "ritual_rustdoc_nightly",
108891    doc(cfg(any(
108892        cpp_lib_version = "5.11.3",
108893        cpp_lib_version = "5.12.2",
108894        cpp_lib_version = "5.13.0",
108895        cpp_lib_version = "5.14.0"
108896    )))
108897)]
108898#[cfg(any(
108899    any(
108900        cpp_lib_version = "5.11.3",
108901        cpp_lib_version = "5.12.2",
108902        cpp_lib_version = "5.13.0",
108903        cpp_lib_version = "5.14.0"
108904    ),
108905    feature = "ritual_rustdoc"
108906))]
108907impl ::cpp_core::StaticDowncast<crate::QScreenRayCaster> for ::qt_3d_core::QNode {
108908    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScreenRayCaster* static_cast<Qt3DRender::QScreenRayCaster*>(Qt3DCore::QNode* ptr)```</span>.
108909    #[inline(always)]
108910    unsafe fn static_downcast(
108911        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
108912    ) -> ::cpp_core::Ptr<crate::QScreenRayCaster> {
108913        let ffi_result = {
108914            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QScreenRayCaster_ptr2(
108915                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
108916            )
108917        };
108918        ::cpp_core::Ptr::from_raw(ffi_result)
108919    }
108920}
108921
108922#[cfg_attr(
108923    feature = "ritual_rustdoc_nightly",
108924    doc(cfg(any(
108925        cpp_lib_version = "5.11.3",
108926        cpp_lib_version = "5.12.2",
108927        cpp_lib_version = "5.13.0",
108928        cpp_lib_version = "5.14.0"
108929    )))
108930)]
108931#[cfg(any(
108932    any(
108933        cpp_lib_version = "5.11.3",
108934        cpp_lib_version = "5.12.2",
108935        cpp_lib_version = "5.13.0",
108936        cpp_lib_version = "5.14.0"
108937    ),
108938    feature = "ritual_rustdoc"
108939))]
108940impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QScreenRayCaster {
108941    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QScreenRayCaster* ptr)```</span>.
108942    #[inline(always)]
108943    unsafe fn static_upcast(
108944        ptr: ::cpp_core::Ptr<crate::QScreenRayCaster>,
108945    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
108946        let ffi_result = {
108947            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr171(
108948                ptr.as_raw_ptr() as *mut crate::QScreenRayCaster
108949            )
108950        };
108951        ::cpp_core::Ptr::from_raw(ffi_result)
108952    }
108953}
108954
108955#[cfg_attr(
108956    feature = "ritual_rustdoc_nightly",
108957    doc(cfg(any(
108958        cpp_lib_version = "5.11.3",
108959        cpp_lib_version = "5.12.2",
108960        cpp_lib_version = "5.13.0",
108961        cpp_lib_version = "5.14.0"
108962    )))
108963)]
108964#[cfg(any(
108965    any(
108966        cpp_lib_version = "5.11.3",
108967        cpp_lib_version = "5.12.2",
108968        cpp_lib_version = "5.13.0",
108969        cpp_lib_version = "5.14.0"
108970    ),
108971    feature = "ritual_rustdoc"
108972))]
108973impl ::cpp_core::DynamicCast<crate::QScreenRayCaster> for ::qt_3d_core::QNode {
108974    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScreenRayCaster* dynamic_cast<Qt3DRender::QScreenRayCaster*>(Qt3DCore::QNode* ptr)```</span>.
108975    #[inline(always)]
108976    unsafe fn dynamic_cast(
108977        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
108978    ) -> ::cpp_core::Ptr<crate::QScreenRayCaster> {
108979        let ffi_result = {
108980            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QScreenRayCaster_ptr2(
108981                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
108982            )
108983        };
108984        ::cpp_core::Ptr::from_raw(ffi_result)
108985    }
108986}
108987
108988#[cfg_attr(
108989    feature = "ritual_rustdoc_nightly",
108990    doc(cfg(any(
108991        cpp_lib_version = "5.11.3",
108992        cpp_lib_version = "5.12.2",
108993        cpp_lib_version = "5.13.0",
108994        cpp_lib_version = "5.14.0"
108995    )))
108996)]
108997#[cfg(any(
108998    any(
108999        cpp_lib_version = "5.11.3",
109000        cpp_lib_version = "5.12.2",
109001        cpp_lib_version = "5.13.0",
109002        cpp_lib_version = "5.14.0"
109003    ),
109004    feature = "ritual_rustdoc"
109005))]
109006impl ::cpp_core::StaticDowncast<crate::QScreenRayCaster> for ::qt_core::QObject {
109007    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScreenRayCaster* static_cast<Qt3DRender::QScreenRayCaster*>(QObject* ptr)```</span>.
109008    #[inline(always)]
109009    unsafe fn static_downcast(
109010        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
109011    ) -> ::cpp_core::Ptr<crate::QScreenRayCaster> {
109012        let ffi_result = {
109013            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QScreenRayCaster_ptr3(
109014                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
109015            )
109016        };
109017        ::cpp_core::Ptr::from_raw(ffi_result)
109018    }
109019}
109020
109021#[cfg_attr(
109022    feature = "ritual_rustdoc_nightly",
109023    doc(cfg(any(
109024        cpp_lib_version = "5.11.3",
109025        cpp_lib_version = "5.12.2",
109026        cpp_lib_version = "5.13.0",
109027        cpp_lib_version = "5.14.0"
109028    )))
109029)]
109030#[cfg(any(
109031    any(
109032        cpp_lib_version = "5.11.3",
109033        cpp_lib_version = "5.12.2",
109034        cpp_lib_version = "5.13.0",
109035        cpp_lib_version = "5.14.0"
109036    ),
109037    feature = "ritual_rustdoc"
109038))]
109039impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QScreenRayCaster {
109040    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QScreenRayCaster* ptr)```</span>.
109041    #[inline(always)]
109042    unsafe fn static_upcast(
109043        ptr: ::cpp_core::Ptr<crate::QScreenRayCaster>,
109044    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
109045        let ffi_result = {
109046            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr309(
109047                ptr.as_raw_ptr() as *mut crate::QScreenRayCaster
109048            )
109049        };
109050        ::cpp_core::Ptr::from_raw(ffi_result)
109051    }
109052}
109053
109054#[cfg_attr(
109055    feature = "ritual_rustdoc_nightly",
109056    doc(cfg(any(
109057        cpp_lib_version = "5.11.3",
109058        cpp_lib_version = "5.12.2",
109059        cpp_lib_version = "5.13.0",
109060        cpp_lib_version = "5.14.0"
109061    )))
109062)]
109063#[cfg(any(
109064    any(
109065        cpp_lib_version = "5.11.3",
109066        cpp_lib_version = "5.12.2",
109067        cpp_lib_version = "5.13.0",
109068        cpp_lib_version = "5.14.0"
109069    ),
109070    feature = "ritual_rustdoc"
109071))]
109072impl ::cpp_core::DynamicCast<crate::QScreenRayCaster> for ::qt_core::QObject {
109073    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QScreenRayCaster* dynamic_cast<Qt3DRender::QScreenRayCaster*>(QObject* ptr)```</span>.
109074    #[inline(always)]
109075    unsafe fn dynamic_cast(
109076        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
109077    ) -> ::cpp_core::Ptr<crate::QScreenRayCaster> {
109078        let ffi_result = {
109079            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QScreenRayCaster_ptr3(
109080                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
109081            )
109082        };
109083        ::cpp_core::Ptr::from_raw(ffi_result)
109084    }
109085}
109086
109087#[cfg_attr(
109088    feature = "ritual_rustdoc_nightly",
109089    doc(cfg(any(
109090        cpp_lib_version = "5.11.3",
109091        cpp_lib_version = "5.12.2",
109092        cpp_lib_version = "5.13.0",
109093        cpp_lib_version = "5.14.0"
109094    )))
109095)]
109096#[cfg(any(
109097    any(
109098        cpp_lib_version = "5.11.3",
109099        cpp_lib_version = "5.12.2",
109100        cpp_lib_version = "5.13.0",
109101        cpp_lib_version = "5.14.0"
109102    ),
109103    feature = "ritual_rustdoc"
109104))]
109105impl ::cpp_core::StaticDowncast<crate::QShaderProgramBuilder> for ::qt_3d_core::QNode {
109106    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgramBuilder* static_cast<Qt3DRender::QShaderProgramBuilder*>(Qt3DCore::QNode* ptr)```</span>.
109107    #[inline(always)]
109108    unsafe fn static_downcast(
109109        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
109110    ) -> ::cpp_core::Ptr<crate::QShaderProgramBuilder> {
109111        let ffi_result = {
109112            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QShaderProgramBuilder_ptr(
109113                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
109114            )
109115        };
109116        ::cpp_core::Ptr::from_raw(ffi_result)
109117    }
109118}
109119
109120#[cfg_attr(
109121    feature = "ritual_rustdoc_nightly",
109122    doc(cfg(any(
109123        cpp_lib_version = "5.11.3",
109124        cpp_lib_version = "5.12.2",
109125        cpp_lib_version = "5.13.0",
109126        cpp_lib_version = "5.14.0"
109127    )))
109128)]
109129#[cfg(any(
109130    any(
109131        cpp_lib_version = "5.11.3",
109132        cpp_lib_version = "5.12.2",
109133        cpp_lib_version = "5.13.0",
109134        cpp_lib_version = "5.14.0"
109135    ),
109136    feature = "ritual_rustdoc"
109137))]
109138impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QShaderProgramBuilder {
109139    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QShaderProgramBuilder* ptr)```</span>.
109140    #[inline(always)]
109141    unsafe fn static_upcast(
109142        ptr: ::cpp_core::Ptr<crate::QShaderProgramBuilder>,
109143    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
109144        let ffi_result = {
109145            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr172(
109146                ptr.as_raw_ptr() as *mut crate::QShaderProgramBuilder
109147            )
109148        };
109149        ::cpp_core::Ptr::from_raw(ffi_result)
109150    }
109151}
109152
109153#[cfg_attr(
109154    feature = "ritual_rustdoc_nightly",
109155    doc(cfg(any(
109156        cpp_lib_version = "5.11.3",
109157        cpp_lib_version = "5.12.2",
109158        cpp_lib_version = "5.13.0",
109159        cpp_lib_version = "5.14.0"
109160    )))
109161)]
109162#[cfg(any(
109163    any(
109164        cpp_lib_version = "5.11.3",
109165        cpp_lib_version = "5.12.2",
109166        cpp_lib_version = "5.13.0",
109167        cpp_lib_version = "5.14.0"
109168    ),
109169    feature = "ritual_rustdoc"
109170))]
109171impl ::std::ops::Deref for crate::QShaderProgramBuilder {
109172    type Target = ::qt_3d_core::QNode;
109173    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QShaderProgramBuilder* ptr)```</span>.
109174    #[inline(always)]
109175    fn deref(&self) -> &::qt_3d_core::QNode {
109176        let ffi_result = {
109177            unsafe {
109178                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr172(
109179                    self as *const crate::QShaderProgramBuilder
109180                        as *mut crate::QShaderProgramBuilder,
109181                )
109182            }
109183        };
109184        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
109185    }
109186}
109187
109188#[cfg_attr(
109189    feature = "ritual_rustdoc_nightly",
109190    doc(cfg(any(
109191        cpp_lib_version = "5.11.3",
109192        cpp_lib_version = "5.12.2",
109193        cpp_lib_version = "5.13.0",
109194        cpp_lib_version = "5.14.0"
109195    )))
109196)]
109197#[cfg(any(
109198    any(
109199        cpp_lib_version = "5.11.3",
109200        cpp_lib_version = "5.12.2",
109201        cpp_lib_version = "5.13.0",
109202        cpp_lib_version = "5.14.0"
109203    ),
109204    feature = "ritual_rustdoc"
109205))]
109206impl ::cpp_core::DynamicCast<crate::QShaderProgramBuilder> for ::qt_3d_core::QNode {
109207    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgramBuilder* dynamic_cast<Qt3DRender::QShaderProgramBuilder*>(Qt3DCore::QNode* ptr)```</span>.
109208    #[inline(always)]
109209    unsafe fn dynamic_cast(
109210        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
109211    ) -> ::cpp_core::Ptr<crate::QShaderProgramBuilder> {
109212        let ffi_result = {
109213            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QShaderProgramBuilder_ptr(
109214                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
109215            )
109216        };
109217        ::cpp_core::Ptr::from_raw(ffi_result)
109218    }
109219}
109220
109221#[cfg_attr(
109222    feature = "ritual_rustdoc_nightly",
109223    doc(cfg(any(
109224        cpp_lib_version = "5.11.3",
109225        cpp_lib_version = "5.12.2",
109226        cpp_lib_version = "5.13.0",
109227        cpp_lib_version = "5.14.0"
109228    )))
109229)]
109230#[cfg(any(
109231    any(
109232        cpp_lib_version = "5.11.3",
109233        cpp_lib_version = "5.12.2",
109234        cpp_lib_version = "5.13.0",
109235        cpp_lib_version = "5.14.0"
109236    ),
109237    feature = "ritual_rustdoc"
109238))]
109239impl ::cpp_core::StaticDowncast<crate::QShaderProgramBuilder> for ::qt_core::QObject {
109240    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgramBuilder* static_cast<Qt3DRender::QShaderProgramBuilder*>(QObject* ptr)```</span>.
109241    #[inline(always)]
109242    unsafe fn static_downcast(
109243        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
109244    ) -> ::cpp_core::Ptr<crate::QShaderProgramBuilder> {
109245        let ffi_result = {
109246            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QShaderProgramBuilder_ptr1(
109247                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
109248            )
109249        };
109250        ::cpp_core::Ptr::from_raw(ffi_result)
109251    }
109252}
109253
109254#[cfg_attr(
109255    feature = "ritual_rustdoc_nightly",
109256    doc(cfg(any(
109257        cpp_lib_version = "5.11.3",
109258        cpp_lib_version = "5.12.2",
109259        cpp_lib_version = "5.13.0",
109260        cpp_lib_version = "5.14.0"
109261    )))
109262)]
109263#[cfg(any(
109264    any(
109265        cpp_lib_version = "5.11.3",
109266        cpp_lib_version = "5.12.2",
109267        cpp_lib_version = "5.13.0",
109268        cpp_lib_version = "5.14.0"
109269    ),
109270    feature = "ritual_rustdoc"
109271))]
109272impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QShaderProgramBuilder {
109273    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QShaderProgramBuilder* ptr)```</span>.
109274    #[inline(always)]
109275    unsafe fn static_upcast(
109276        ptr: ::cpp_core::Ptr<crate::QShaderProgramBuilder>,
109277    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
109278        let ffi_result = {
109279            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr310(
109280                ptr.as_raw_ptr() as *mut crate::QShaderProgramBuilder
109281            )
109282        };
109283        ::cpp_core::Ptr::from_raw(ffi_result)
109284    }
109285}
109286
109287#[cfg_attr(
109288    feature = "ritual_rustdoc_nightly",
109289    doc(cfg(any(
109290        cpp_lib_version = "5.11.3",
109291        cpp_lib_version = "5.12.2",
109292        cpp_lib_version = "5.13.0",
109293        cpp_lib_version = "5.14.0"
109294    )))
109295)]
109296#[cfg(any(
109297    any(
109298        cpp_lib_version = "5.11.3",
109299        cpp_lib_version = "5.12.2",
109300        cpp_lib_version = "5.13.0",
109301        cpp_lib_version = "5.14.0"
109302    ),
109303    feature = "ritual_rustdoc"
109304))]
109305impl ::cpp_core::DynamicCast<crate::QShaderProgramBuilder> for ::qt_core::QObject {
109306    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderProgramBuilder* dynamic_cast<Qt3DRender::QShaderProgramBuilder*>(QObject* ptr)```</span>.
109307    #[inline(always)]
109308    unsafe fn dynamic_cast(
109309        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
109310    ) -> ::cpp_core::Ptr<crate::QShaderProgramBuilder> {
109311        let ffi_result = {
109312            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QShaderProgramBuilder_ptr1(
109313                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
109314            )
109315        };
109316        ::cpp_core::Ptr::from_raw(ffi_result)
109317    }
109318}
109319
109320#[cfg_attr(
109321    feature = "ritual_rustdoc_nightly",
109322    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109323)]
109324#[cfg(any(
109325    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109326    feature = "ritual_rustdoc"
109327))]
109328impl ::cpp_core::CppDeletable for crate::QSetFence {
109329    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QSetFence::~QSetFence()```</span>.
109330    #[inline(always)]
109331    unsafe fn delete(&self) {
109332        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSetFence_dQSetFence(
109333            self as *const crate::QSetFence as *mut crate::QSetFence,
109334        )
109335    }
109336}
109337
109338#[cfg_attr(
109339    feature = "ritual_rustdoc_nightly",
109340    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109341)]
109342#[cfg(any(
109343    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109344    feature = "ritual_rustdoc"
109345))]
109346impl ::cpp_core::CppDeletable for crate::QSharedGLTexture {
109347    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QSharedGLTexture::~QSharedGLTexture()```</span>.
109348    #[inline(always)]
109349    unsafe fn delete(&self) {
109350        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSharedGLTexture_dQSharedGLTexture(
109351            self as *const crate::QSharedGLTexture as *mut crate::QSharedGLTexture,
109352        )
109353    }
109354}
109355
109356#[cfg_attr(
109357    feature = "ritual_rustdoc_nightly",
109358    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109359)]
109360#[cfg(any(
109361    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109362    feature = "ritual_rustdoc"
109363))]
109364impl ::cpp_core::CppDeletable for crate::QWaitFence {
109365    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QWaitFence::~QWaitFence()```</span>.
109366    #[inline(always)]
109367    unsafe fn delete(&self) {
109368        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QWaitFence_dQWaitFence(
109369            self as *const crate::QWaitFence as *mut crate::QWaitFence,
109370        )
109371    }
109372}
109373
109374#[cfg_attr(
109375    feature = "ritual_rustdoc_nightly",
109376    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109377)]
109378#[cfg(any(
109379    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109380    feature = "ritual_rustdoc"
109381))]
109382impl ::cpp_core::StaticDowncast<crate::QSetFence> for crate::QFrameGraphNode {
109383    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSetFence* static_cast<Qt3DRender::QSetFence*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
109384    #[inline(always)]
109385    unsafe fn static_downcast(
109386        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
109387    ) -> ::cpp_core::Ptr<crate::QSetFence> {
109388        let ffi_result = {
109389            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSetFence_ptr(
109390                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
109391            )
109392        };
109393        ::cpp_core::Ptr::from_raw(ffi_result)
109394    }
109395}
109396
109397#[cfg_attr(
109398    feature = "ritual_rustdoc_nightly",
109399    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109400)]
109401#[cfg(any(
109402    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109403    feature = "ritual_rustdoc"
109404))]
109405impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QSetFence {
109406    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QSetFence* ptr)```</span>.
109407    #[inline(always)]
109408    unsafe fn static_upcast(
109409        ptr: ::cpp_core::Ptr<crate::QSetFence>,
109410    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
109411        let ffi_result = {
109412            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr40(
109413                ptr.as_raw_ptr() as *mut crate::QSetFence,
109414            )
109415        };
109416        ::cpp_core::Ptr::from_raw(ffi_result)
109417    }
109418}
109419
109420#[cfg_attr(
109421    feature = "ritual_rustdoc_nightly",
109422    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109423)]
109424#[cfg(any(
109425    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109426    feature = "ritual_rustdoc"
109427))]
109428impl ::std::ops::Deref for crate::QSetFence {
109429    type Target = crate::QFrameGraphNode;
109430    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QSetFence* ptr)```</span>.
109431    #[inline(always)]
109432    fn deref(&self) -> &crate::QFrameGraphNode {
109433        let ffi_result = {
109434            unsafe {
109435                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr40(
109436                    self as *const crate::QSetFence as *mut crate::QSetFence,
109437                )
109438            }
109439        };
109440        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
109441    }
109442}
109443
109444#[cfg_attr(
109445    feature = "ritual_rustdoc_nightly",
109446    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109447)]
109448#[cfg(any(
109449    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109450    feature = "ritual_rustdoc"
109451))]
109452impl ::cpp_core::DynamicCast<crate::QSetFence> for crate::QFrameGraphNode {
109453    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSetFence* dynamic_cast<Qt3DRender::QSetFence*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
109454    #[inline(always)]
109455    unsafe fn dynamic_cast(
109456        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
109457    ) -> ::cpp_core::Ptr<crate::QSetFence> {
109458        let ffi_result = {
109459            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSetFence_ptr(
109460                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
109461            )
109462        };
109463        ::cpp_core::Ptr::from_raw(ffi_result)
109464    }
109465}
109466
109467#[cfg_attr(
109468    feature = "ritual_rustdoc_nightly",
109469    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109470)]
109471#[cfg(any(
109472    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109473    feature = "ritual_rustdoc"
109474))]
109475impl ::cpp_core::StaticDowncast<crate::QSetFence> for ::qt_3d_core::QNode {
109476    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSetFence* static_cast<Qt3DRender::QSetFence*>(Qt3DCore::QNode* ptr)```</span>.
109477    #[inline(always)]
109478    unsafe fn static_downcast(
109479        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
109480    ) -> ::cpp_core::Ptr<crate::QSetFence> {
109481        let ffi_result = {
109482            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSetFence_ptr1(
109483                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
109484            )
109485        };
109486        ::cpp_core::Ptr::from_raw(ffi_result)
109487    }
109488}
109489
109490#[cfg_attr(
109491    feature = "ritual_rustdoc_nightly",
109492    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109493)]
109494#[cfg(any(
109495    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109496    feature = "ritual_rustdoc"
109497))]
109498impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QSetFence {
109499    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QSetFence* ptr)```</span>.
109500    #[inline(always)]
109501    unsafe fn static_upcast(
109502        ptr: ::cpp_core::Ptr<crate::QSetFence>,
109503    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
109504        let ffi_result = {
109505            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr180(
109506                ptr.as_raw_ptr() as *mut crate::QSetFence
109507            )
109508        };
109509        ::cpp_core::Ptr::from_raw(ffi_result)
109510    }
109511}
109512
109513#[cfg_attr(
109514    feature = "ritual_rustdoc_nightly",
109515    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109516)]
109517#[cfg(any(
109518    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109519    feature = "ritual_rustdoc"
109520))]
109521impl ::cpp_core::DynamicCast<crate::QSetFence> for ::qt_3d_core::QNode {
109522    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSetFence* dynamic_cast<Qt3DRender::QSetFence*>(Qt3DCore::QNode* ptr)```</span>.
109523    #[inline(always)]
109524    unsafe fn dynamic_cast(
109525        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
109526    ) -> ::cpp_core::Ptr<crate::QSetFence> {
109527        let ffi_result = {
109528            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSetFence_ptr1(
109529                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
109530            )
109531        };
109532        ::cpp_core::Ptr::from_raw(ffi_result)
109533    }
109534}
109535
109536#[cfg_attr(
109537    feature = "ritual_rustdoc_nightly",
109538    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109539)]
109540#[cfg(any(
109541    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109542    feature = "ritual_rustdoc"
109543))]
109544impl ::cpp_core::StaticDowncast<crate::QSetFence> for ::qt_core::QObject {
109545    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSetFence* static_cast<Qt3DRender::QSetFence*>(QObject* ptr)```</span>.
109546    #[inline(always)]
109547    unsafe fn static_downcast(
109548        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
109549    ) -> ::cpp_core::Ptr<crate::QSetFence> {
109550        let ffi_result = {
109551            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSetFence_ptr2(
109552                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
109553            )
109554        };
109555        ::cpp_core::Ptr::from_raw(ffi_result)
109556    }
109557}
109558
109559#[cfg_attr(
109560    feature = "ritual_rustdoc_nightly",
109561    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109562)]
109563#[cfg(any(
109564    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109565    feature = "ritual_rustdoc"
109566))]
109567impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QSetFence {
109568    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QSetFence* ptr)```</span>.
109569    #[inline(always)]
109570    unsafe fn static_upcast(
109571        ptr: ::cpp_core::Ptr<crate::QSetFence>,
109572    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
109573        let ffi_result = {
109574            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr328(
109575                ptr.as_raw_ptr() as *mut crate::QSetFence
109576            )
109577        };
109578        ::cpp_core::Ptr::from_raw(ffi_result)
109579    }
109580}
109581
109582#[cfg_attr(
109583    feature = "ritual_rustdoc_nightly",
109584    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109585)]
109586#[cfg(any(
109587    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109588    feature = "ritual_rustdoc"
109589))]
109590impl ::cpp_core::DynamicCast<crate::QSetFence> for ::qt_core::QObject {
109591    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSetFence* dynamic_cast<Qt3DRender::QSetFence*>(QObject* ptr)```</span>.
109592    #[inline(always)]
109593    unsafe fn dynamic_cast(
109594        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
109595    ) -> ::cpp_core::Ptr<crate::QSetFence> {
109596        let ffi_result = {
109597            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSetFence_ptr2(
109598                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
109599            )
109600        };
109601        ::cpp_core::Ptr::from_raw(ffi_result)
109602    }
109603}
109604
109605#[cfg_attr(
109606    feature = "ritual_rustdoc_nightly",
109607    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109608)]
109609#[cfg(any(
109610    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109611    feature = "ritual_rustdoc"
109612))]
109613impl ::cpp_core::StaticDowncast<crate::QSharedGLTexture> for crate::QAbstractTexture {
109614    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSharedGLTexture* static_cast<Qt3DRender::QSharedGLTexture*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
109615    #[inline(always)]
109616    unsafe fn static_downcast(
109617        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
109618    ) -> ::cpp_core::Ptr<crate::QSharedGLTexture> {
109619        let ffi_result = {
109620            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSharedGLTexture_ptr(
109621                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
109622            )
109623        };
109624        ::cpp_core::Ptr::from_raw(ffi_result)
109625    }
109626}
109627
109628#[cfg_attr(
109629    feature = "ritual_rustdoc_nightly",
109630    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109631)]
109632#[cfg(any(
109633    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109634    feature = "ritual_rustdoc"
109635))]
109636impl ::cpp_core::StaticUpcast<crate::QAbstractTexture> for crate::QSharedGLTexture {
109637    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QSharedGLTexture* ptr)```</span>.
109638    #[inline(always)]
109639    unsafe fn static_upcast(
109640        ptr: ::cpp_core::Ptr<crate::QSharedGLTexture>,
109641    ) -> ::cpp_core::Ptr<crate::QAbstractTexture> {
109642        let ffi_result = {
109643            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr28(
109644                ptr.as_raw_ptr() as *mut crate::QSharedGLTexture,
109645            )
109646        };
109647        ::cpp_core::Ptr::from_raw(ffi_result)
109648    }
109649}
109650
109651#[cfg_attr(
109652    feature = "ritual_rustdoc_nightly",
109653    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109654)]
109655#[cfg(any(
109656    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109657    feature = "ritual_rustdoc"
109658))]
109659impl ::std::ops::Deref for crate::QSharedGLTexture {
109660    type Target = crate::QAbstractTexture;
109661    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QAbstractTexture* static_cast<Qt3DRender::QAbstractTexture*>(Qt3DRender::QSharedGLTexture* ptr)```</span>.
109662    #[inline(always)]
109663    fn deref(&self) -> &crate::QAbstractTexture {
109664        let ffi_result = {
109665            unsafe {
109666                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QAbstractTexture_ptr28(
109667                    self as *const crate::QSharedGLTexture as *mut crate::QSharedGLTexture,
109668                )
109669            }
109670        };
109671        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
109672    }
109673}
109674
109675#[cfg_attr(
109676    feature = "ritual_rustdoc_nightly",
109677    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109678)]
109679#[cfg(any(
109680    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109681    feature = "ritual_rustdoc"
109682))]
109683impl ::cpp_core::DynamicCast<crate::QSharedGLTexture> for crate::QAbstractTexture {
109684    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSharedGLTexture* dynamic_cast<Qt3DRender::QSharedGLTexture*>(Qt3DRender::QAbstractTexture* ptr)```</span>.
109685    #[inline(always)]
109686    unsafe fn dynamic_cast(
109687        ptr: ::cpp_core::Ptr<crate::QAbstractTexture>,
109688    ) -> ::cpp_core::Ptr<crate::QSharedGLTexture> {
109689        let ffi_result = {
109690            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSharedGLTexture_ptr(
109691                ptr.as_raw_ptr() as *mut crate::QAbstractTexture,
109692            )
109693        };
109694        ::cpp_core::Ptr::from_raw(ffi_result)
109695    }
109696}
109697
109698#[cfg_attr(
109699    feature = "ritual_rustdoc_nightly",
109700    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109701)]
109702#[cfg(any(
109703    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109704    feature = "ritual_rustdoc"
109705))]
109706impl ::cpp_core::StaticDowncast<crate::QSharedGLTexture> for ::qt_3d_core::QNode {
109707    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSharedGLTexture* static_cast<Qt3DRender::QSharedGLTexture*>(Qt3DCore::QNode* ptr)```</span>.
109708    #[inline(always)]
109709    unsafe fn static_downcast(
109710        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
109711    ) -> ::cpp_core::Ptr<crate::QSharedGLTexture> {
109712        let ffi_result = {
109713            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSharedGLTexture_ptr1(
109714                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
109715            )
109716        };
109717        ::cpp_core::Ptr::from_raw(ffi_result)
109718    }
109719}
109720
109721#[cfg_attr(
109722    feature = "ritual_rustdoc_nightly",
109723    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109724)]
109725#[cfg(any(
109726    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109727    feature = "ritual_rustdoc"
109728))]
109729impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QSharedGLTexture {
109730    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QSharedGLTexture* ptr)```</span>.
109731    #[inline(always)]
109732    unsafe fn static_upcast(
109733        ptr: ::cpp_core::Ptr<crate::QSharedGLTexture>,
109734    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
109735        let ffi_result = {
109736            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr181(
109737                ptr.as_raw_ptr() as *mut crate::QSharedGLTexture
109738            )
109739        };
109740        ::cpp_core::Ptr::from_raw(ffi_result)
109741    }
109742}
109743
109744#[cfg_attr(
109745    feature = "ritual_rustdoc_nightly",
109746    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109747)]
109748#[cfg(any(
109749    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109750    feature = "ritual_rustdoc"
109751))]
109752impl ::cpp_core::DynamicCast<crate::QSharedGLTexture> for ::qt_3d_core::QNode {
109753    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSharedGLTexture* dynamic_cast<Qt3DRender::QSharedGLTexture*>(Qt3DCore::QNode* ptr)```</span>.
109754    #[inline(always)]
109755    unsafe fn dynamic_cast(
109756        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
109757    ) -> ::cpp_core::Ptr<crate::QSharedGLTexture> {
109758        let ffi_result = {
109759            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSharedGLTexture_ptr1(
109760                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
109761            )
109762        };
109763        ::cpp_core::Ptr::from_raw(ffi_result)
109764    }
109765}
109766
109767#[cfg_attr(
109768    feature = "ritual_rustdoc_nightly",
109769    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109770)]
109771#[cfg(any(
109772    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109773    feature = "ritual_rustdoc"
109774))]
109775impl ::cpp_core::StaticDowncast<crate::QSharedGLTexture> for ::qt_core::QObject {
109776    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSharedGLTexture* static_cast<Qt3DRender::QSharedGLTexture*>(QObject* ptr)```</span>.
109777    #[inline(always)]
109778    unsafe fn static_downcast(
109779        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
109780    ) -> ::cpp_core::Ptr<crate::QSharedGLTexture> {
109781        let ffi_result = {
109782            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSharedGLTexture_ptr2(
109783                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
109784            )
109785        };
109786        ::cpp_core::Ptr::from_raw(ffi_result)
109787    }
109788}
109789
109790#[cfg_attr(
109791    feature = "ritual_rustdoc_nightly",
109792    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109793)]
109794#[cfg(any(
109795    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109796    feature = "ritual_rustdoc"
109797))]
109798impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QSharedGLTexture {
109799    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QSharedGLTexture* ptr)```</span>.
109800    #[inline(always)]
109801    unsafe fn static_upcast(
109802        ptr: ::cpp_core::Ptr<crate::QSharedGLTexture>,
109803    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
109804        let ffi_result = {
109805            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr329(
109806                ptr.as_raw_ptr() as *mut crate::QSharedGLTexture
109807            )
109808        };
109809        ::cpp_core::Ptr::from_raw(ffi_result)
109810    }
109811}
109812
109813#[cfg_attr(
109814    feature = "ritual_rustdoc_nightly",
109815    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109816)]
109817#[cfg(any(
109818    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109819    feature = "ritual_rustdoc"
109820))]
109821impl ::cpp_core::DynamicCast<crate::QSharedGLTexture> for ::qt_core::QObject {
109822    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSharedGLTexture* dynamic_cast<Qt3DRender::QSharedGLTexture*>(QObject* ptr)```</span>.
109823    #[inline(always)]
109824    unsafe fn dynamic_cast(
109825        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
109826    ) -> ::cpp_core::Ptr<crate::QSharedGLTexture> {
109827        let ffi_result = {
109828            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSharedGLTexture_ptr2(
109829                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
109830            )
109831        };
109832        ::cpp_core::Ptr::from_raw(ffi_result)
109833    }
109834}
109835
109836#[cfg_attr(
109837    feature = "ritual_rustdoc_nightly",
109838    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109839)]
109840#[cfg(any(
109841    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109842    feature = "ritual_rustdoc"
109843))]
109844impl ::cpp_core::StaticDowncast<crate::QWaitFence> for crate::QFrameGraphNode {
109845    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QWaitFence* static_cast<Qt3DRender::QWaitFence*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
109846    #[inline(always)]
109847    unsafe fn static_downcast(
109848        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
109849    ) -> ::cpp_core::Ptr<crate::QWaitFence> {
109850        let ffi_result = {
109851            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QWaitFence_ptr(
109852                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
109853            )
109854        };
109855        ::cpp_core::Ptr::from_raw(ffi_result)
109856    }
109857}
109858
109859#[cfg_attr(
109860    feature = "ritual_rustdoc_nightly",
109861    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109862)]
109863#[cfg(any(
109864    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109865    feature = "ritual_rustdoc"
109866))]
109867impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QWaitFence {
109868    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QWaitFence* ptr)```</span>.
109869    #[inline(always)]
109870    unsafe fn static_upcast(
109871        ptr: ::cpp_core::Ptr<crate::QWaitFence>,
109872    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
109873        let ffi_result = {
109874            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr41(
109875                ptr.as_raw_ptr() as *mut crate::QWaitFence,
109876            )
109877        };
109878        ::cpp_core::Ptr::from_raw(ffi_result)
109879    }
109880}
109881
109882#[cfg_attr(
109883    feature = "ritual_rustdoc_nightly",
109884    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109885)]
109886#[cfg(any(
109887    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109888    feature = "ritual_rustdoc"
109889))]
109890impl ::std::ops::Deref for crate::QWaitFence {
109891    type Target = crate::QFrameGraphNode;
109892    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QWaitFence* ptr)```</span>.
109893    #[inline(always)]
109894    fn deref(&self) -> &crate::QFrameGraphNode {
109895        let ffi_result = {
109896            unsafe {
109897                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr41(
109898                    self as *const crate::QWaitFence as *mut crate::QWaitFence,
109899                )
109900            }
109901        };
109902        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
109903    }
109904}
109905
109906#[cfg_attr(
109907    feature = "ritual_rustdoc_nightly",
109908    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109909)]
109910#[cfg(any(
109911    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109912    feature = "ritual_rustdoc"
109913))]
109914impl ::cpp_core::DynamicCast<crate::QWaitFence> for crate::QFrameGraphNode {
109915    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QWaitFence* dynamic_cast<Qt3DRender::QWaitFence*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
109916    #[inline(always)]
109917    unsafe fn dynamic_cast(
109918        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
109919    ) -> ::cpp_core::Ptr<crate::QWaitFence> {
109920        let ffi_result = {
109921            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QWaitFence_ptr(
109922                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
109923            )
109924        };
109925        ::cpp_core::Ptr::from_raw(ffi_result)
109926    }
109927}
109928
109929#[cfg_attr(
109930    feature = "ritual_rustdoc_nightly",
109931    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109932)]
109933#[cfg(any(
109934    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109935    feature = "ritual_rustdoc"
109936))]
109937impl ::cpp_core::StaticDowncast<crate::QWaitFence> for ::qt_3d_core::QNode {
109938    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QWaitFence* static_cast<Qt3DRender::QWaitFence*>(Qt3DCore::QNode* ptr)```</span>.
109939    #[inline(always)]
109940    unsafe fn static_downcast(
109941        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
109942    ) -> ::cpp_core::Ptr<crate::QWaitFence> {
109943        let ffi_result = {
109944            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QWaitFence_ptr1(
109945                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
109946            )
109947        };
109948        ::cpp_core::Ptr::from_raw(ffi_result)
109949    }
109950}
109951
109952#[cfg_attr(
109953    feature = "ritual_rustdoc_nightly",
109954    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109955)]
109956#[cfg(any(
109957    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109958    feature = "ritual_rustdoc"
109959))]
109960impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QWaitFence {
109961    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QWaitFence* ptr)```</span>.
109962    #[inline(always)]
109963    unsafe fn static_upcast(
109964        ptr: ::cpp_core::Ptr<crate::QWaitFence>,
109965    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
109966        let ffi_result = {
109967            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr182(
109968                ptr.as_raw_ptr() as *mut crate::QWaitFence
109969            )
109970        };
109971        ::cpp_core::Ptr::from_raw(ffi_result)
109972    }
109973}
109974
109975#[cfg_attr(
109976    feature = "ritual_rustdoc_nightly",
109977    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
109978)]
109979#[cfg(any(
109980    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
109981    feature = "ritual_rustdoc"
109982))]
109983impl ::cpp_core::DynamicCast<crate::QWaitFence> for ::qt_3d_core::QNode {
109984    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QWaitFence* dynamic_cast<Qt3DRender::QWaitFence*>(Qt3DCore::QNode* ptr)```</span>.
109985    #[inline(always)]
109986    unsafe fn dynamic_cast(
109987        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
109988    ) -> ::cpp_core::Ptr<crate::QWaitFence> {
109989        let ffi_result = {
109990            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QWaitFence_ptr1(
109991                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
109992            )
109993        };
109994        ::cpp_core::Ptr::from_raw(ffi_result)
109995    }
109996}
109997
109998#[cfg_attr(
109999    feature = "ritual_rustdoc_nightly",
110000    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
110001)]
110002#[cfg(any(
110003    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
110004    feature = "ritual_rustdoc"
110005))]
110006impl ::cpp_core::StaticDowncast<crate::QWaitFence> for ::qt_core::QObject {
110007    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QWaitFence* static_cast<Qt3DRender::QWaitFence*>(QObject* ptr)```</span>.
110008    #[inline(always)]
110009    unsafe fn static_downcast(
110010        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110011    ) -> ::cpp_core::Ptr<crate::QWaitFence> {
110012        let ffi_result = {
110013            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QWaitFence_ptr2(
110014                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110015            )
110016        };
110017        ::cpp_core::Ptr::from_raw(ffi_result)
110018    }
110019}
110020
110021#[cfg_attr(
110022    feature = "ritual_rustdoc_nightly",
110023    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
110024)]
110025#[cfg(any(
110026    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
110027    feature = "ritual_rustdoc"
110028))]
110029impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QWaitFence {
110030    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QWaitFence* ptr)```</span>.
110031    #[inline(always)]
110032    unsafe fn static_upcast(
110033        ptr: ::cpp_core::Ptr<crate::QWaitFence>,
110034    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
110035        let ffi_result = {
110036            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr330(
110037                ptr.as_raw_ptr() as *mut crate::QWaitFence
110038            )
110039        };
110040        ::cpp_core::Ptr::from_raw(ffi_result)
110041    }
110042}
110043
110044#[cfg_attr(
110045    feature = "ritual_rustdoc_nightly",
110046    doc(cfg(any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0")))
110047)]
110048#[cfg(any(
110049    any(cpp_lib_version = "5.13.0", cpp_lib_version = "5.14.0"),
110050    feature = "ritual_rustdoc"
110051))]
110052impl ::cpp_core::DynamicCast<crate::QWaitFence> for ::qt_core::QObject {
110053    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QWaitFence* dynamic_cast<Qt3DRender::QWaitFence*>(QObject* ptr)```</span>.
110054    #[inline(always)]
110055    unsafe fn dynamic_cast(
110056        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110057    ) -> ::cpp_core::Ptr<crate::QWaitFence> {
110058        let ffi_result = {
110059            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QWaitFence_ptr2(
110060                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110061            )
110062        };
110063        ::cpp_core::Ptr::from_raw(ffi_result)
110064    }
110065}
110066
110067#[cfg_attr(
110068    feature = "ritual_rustdoc_nightly",
110069    doc(cfg(cpp_lib_version = "5.14.0"))
110070)]
110071#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110072impl ::cpp_core::CppDeletable for crate::QDepthRange {
110073    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QDepthRange::~QDepthRange()```</span>.
110074    #[inline(always)]
110075    unsafe fn delete(&self) {
110076        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QDepthRange_dQDepthRange(
110077            self as *const crate::QDepthRange as *mut crate::QDepthRange,
110078        )
110079    }
110080}
110081
110082#[cfg_attr(
110083    feature = "ritual_rustdoc_nightly",
110084    doc(cfg(cpp_lib_version = "5.14.0"))
110085)]
110086#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110087impl ::cpp_core::CppDeletable for crate::QNoPicking {
110088    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QNoPicking::~QNoPicking()```</span>.
110089    #[inline(always)]
110090    unsafe fn delete(&self) {
110091        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QNoPicking_dQNoPicking(
110092            self as *const crate::QNoPicking as *mut crate::QNoPicking,
110093        )
110094    }
110095}
110096
110097#[cfg_attr(
110098    feature = "ritual_rustdoc_nightly",
110099    doc(cfg(cpp_lib_version = "5.14.0"))
110100)]
110101#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110102impl ::cpp_core::CppDeletable for crate::QRasterMode {
110103    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QRasterMode::~QRasterMode()```</span>.
110104    #[inline(always)]
110105    unsafe fn delete(&self) {
110106        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QRasterMode_dQRasterMode(
110107            self as *const crate::QRasterMode as *mut crate::QRasterMode,
110108        )
110109    }
110110}
110111
110112#[cfg_attr(
110113    feature = "ritual_rustdoc_nightly",
110114    doc(cfg(cpp_lib_version = "5.14.0"))
110115)]
110116#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110117impl ::cpp_core::CppDeletable for crate::QShaderImage {
110118    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QShaderImage::~QShaderImage()```</span>.
110119    #[inline(always)]
110120    unsafe fn delete(&self) {
110121        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QShaderImage_dQShaderImage(
110122            self as *const crate::QShaderImage as *mut crate::QShaderImage,
110123        )
110124    }
110125}
110126
110127#[cfg_attr(
110128    feature = "ritual_rustdoc_nightly",
110129    doc(cfg(cpp_lib_version = "5.14.0"))
110130)]
110131#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110132impl ::cpp_core::CppDeletable for crate::QSubtreeEnabler {
110133    /// Calls C++ function: <span style='color: green;'>```virtual [destructor] void Qt3DRender::QSubtreeEnabler::~QSubtreeEnabler()```</span>.
110134    #[inline(always)]
110135    unsafe fn delete(&self) {
110136        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QSubtreeEnabler_dQSubtreeEnabler(
110137            self as *const crate::QSubtreeEnabler as *mut crate::QSubtreeEnabler,
110138        )
110139    }
110140}
110141
110142#[cfg_attr(
110143    feature = "ritual_rustdoc_nightly",
110144    doc(cfg(cpp_lib_version = "5.14.0"))
110145)]
110146#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110147impl ::std::cmp::PartialEq<::cpp_core::Ref<crate::QTextureDataUpdate>>
110148    for crate::QTextureDataUpdate
110149{
110150    /// Calls C++ function: <span style='color: green;'>```bool Qt3DRender::operator==(const Qt3DRender::QTextureDataUpdate& lhs, const Qt3DRender::QTextureDataUpdate& rhs)```</span>.
110151    #[inline(always)]
110152    fn eq(&self, rhs: &::cpp_core::Ref<crate::QTextureDataUpdate>) -> bool {
110153        unsafe {
110154            crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_operator__4(
110155                self as *const crate::QTextureDataUpdate,
110156                rhs.as_raw_ptr(),
110157            )
110158        }
110159    }
110160}
110161
110162#[cfg_attr(
110163    feature = "ritual_rustdoc_nightly",
110164    doc(cfg(cpp_lib_version = "5.14.0"))
110165)]
110166#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110167impl ::cpp_core::CppDeletable for crate::QTextureDataUpdate {
110168    /// Calls C++ function: <span style='color: green;'>```[destructor] void Qt3DRender::QTextureDataUpdate::~QTextureDataUpdate()```</span>.
110169    #[inline(always)]
110170    unsafe fn delete(&self) {
110171        crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_QTextureDataUpdate_dQTextureDataUpdate(
110172            self as *const crate::QTextureDataUpdate as *mut crate::QTextureDataUpdate,
110173        )
110174    }
110175}
110176
110177#[cfg_attr(
110178    feature = "ritual_rustdoc_nightly",
110179    doc(cfg(cpp_lib_version = "5.14.0"))
110180)]
110181#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110182impl ::cpp_core::StaticDowncast<crate::QDepthRange> for crate::QRenderState {
110183    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthRange* static_cast<Qt3DRender::QDepthRange*>(Qt3DRender::QRenderState* ptr)```</span>.
110184    #[inline(always)]
110185    unsafe fn static_downcast(
110186        ptr: ::cpp_core::Ptr<crate::QRenderState>,
110187    ) -> ::cpp_core::Ptr<crate::QDepthRange> {
110188        let ffi_result = {
110189            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDepthRange_ptr(
110190                ptr.as_raw_ptr() as *mut crate::QRenderState,
110191            )
110192        };
110193        ::cpp_core::Ptr::from_raw(ffi_result)
110194    }
110195}
110196
110197#[cfg_attr(
110198    feature = "ritual_rustdoc_nightly",
110199    doc(cfg(cpp_lib_version = "5.14.0"))
110200)]
110201#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110202impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QDepthRange {
110203    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QDepthRange* ptr)```</span>.
110204    #[inline(always)]
110205    unsafe fn static_upcast(
110206        ptr: ::cpp_core::Ptr<crate::QDepthRange>,
110207    ) -> ::cpp_core::Ptr<crate::QRenderState> {
110208        let ffi_result = {
110209            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr44(
110210                ptr.as_raw_ptr() as *mut crate::QDepthRange,
110211            )
110212        };
110213        ::cpp_core::Ptr::from_raw(ffi_result)
110214    }
110215}
110216
110217#[cfg_attr(
110218    feature = "ritual_rustdoc_nightly",
110219    doc(cfg(cpp_lib_version = "5.14.0"))
110220)]
110221#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110222impl ::std::ops::Deref for crate::QDepthRange {
110223    type Target = crate::QRenderState;
110224    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QDepthRange* ptr)```</span>.
110225    #[inline(always)]
110226    fn deref(&self) -> &crate::QRenderState {
110227        let ffi_result = {
110228            unsafe {
110229                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr44(
110230                    self as *const crate::QDepthRange as *mut crate::QDepthRange,
110231                )
110232            }
110233        };
110234        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
110235    }
110236}
110237
110238#[cfg_attr(
110239    feature = "ritual_rustdoc_nightly",
110240    doc(cfg(cpp_lib_version = "5.14.0"))
110241)]
110242#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110243impl ::cpp_core::DynamicCast<crate::QDepthRange> for crate::QRenderState {
110244    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthRange* dynamic_cast<Qt3DRender::QDepthRange*>(Qt3DRender::QRenderState* ptr)```</span>.
110245    #[inline(always)]
110246    unsafe fn dynamic_cast(
110247        ptr: ::cpp_core::Ptr<crate::QRenderState>,
110248    ) -> ::cpp_core::Ptr<crate::QDepthRange> {
110249        let ffi_result = {
110250            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDepthRange_ptr(
110251                ptr.as_raw_ptr() as *mut crate::QRenderState,
110252            )
110253        };
110254        ::cpp_core::Ptr::from_raw(ffi_result)
110255    }
110256}
110257
110258#[cfg_attr(
110259    feature = "ritual_rustdoc_nightly",
110260    doc(cfg(cpp_lib_version = "5.14.0"))
110261)]
110262#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110263impl ::cpp_core::StaticDowncast<crate::QDepthRange> for ::qt_3d_core::QNode {
110264    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthRange* static_cast<Qt3DRender::QDepthRange*>(Qt3DCore::QNode* ptr)```</span>.
110265    #[inline(always)]
110266    unsafe fn static_downcast(
110267        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
110268    ) -> ::cpp_core::Ptr<crate::QDepthRange> {
110269        let ffi_result = {
110270            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDepthRange_ptr1(
110271                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
110272            )
110273        };
110274        ::cpp_core::Ptr::from_raw(ffi_result)
110275    }
110276}
110277
110278#[cfg_attr(
110279    feature = "ritual_rustdoc_nightly",
110280    doc(cfg(cpp_lib_version = "5.14.0"))
110281)]
110282#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110283impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QDepthRange {
110284    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QDepthRange* ptr)```</span>.
110285    #[inline(always)]
110286    unsafe fn static_upcast(
110287        ptr: ::cpp_core::Ptr<crate::QDepthRange>,
110288    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
110289        let ffi_result = {
110290            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr186(
110291                ptr.as_raw_ptr() as *mut crate::QDepthRange
110292            )
110293        };
110294        ::cpp_core::Ptr::from_raw(ffi_result)
110295    }
110296}
110297
110298#[cfg_attr(
110299    feature = "ritual_rustdoc_nightly",
110300    doc(cfg(cpp_lib_version = "5.14.0"))
110301)]
110302#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110303impl ::cpp_core::DynamicCast<crate::QDepthRange> for ::qt_3d_core::QNode {
110304    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthRange* dynamic_cast<Qt3DRender::QDepthRange*>(Qt3DCore::QNode* ptr)```</span>.
110305    #[inline(always)]
110306    unsafe fn dynamic_cast(
110307        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
110308    ) -> ::cpp_core::Ptr<crate::QDepthRange> {
110309        let ffi_result = {
110310            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDepthRange_ptr1(
110311                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
110312            )
110313        };
110314        ::cpp_core::Ptr::from_raw(ffi_result)
110315    }
110316}
110317
110318#[cfg_attr(
110319    feature = "ritual_rustdoc_nightly",
110320    doc(cfg(cpp_lib_version = "5.14.0"))
110321)]
110322#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110323impl ::cpp_core::StaticDowncast<crate::QDepthRange> for ::qt_core::QObject {
110324    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthRange* static_cast<Qt3DRender::QDepthRange*>(QObject* ptr)```</span>.
110325    #[inline(always)]
110326    unsafe fn static_downcast(
110327        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110328    ) -> ::cpp_core::Ptr<crate::QDepthRange> {
110329        let ffi_result = {
110330            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QDepthRange_ptr2(
110331                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110332            )
110333        };
110334        ::cpp_core::Ptr::from_raw(ffi_result)
110335    }
110336}
110337
110338#[cfg_attr(
110339    feature = "ritual_rustdoc_nightly",
110340    doc(cfg(cpp_lib_version = "5.14.0"))
110341)]
110342#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110343impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QDepthRange {
110344    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QDepthRange* ptr)```</span>.
110345    #[inline(always)]
110346    unsafe fn static_upcast(
110347        ptr: ::cpp_core::Ptr<crate::QDepthRange>,
110348    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
110349        let ffi_result = {
110350            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr342(
110351                ptr.as_raw_ptr() as *mut crate::QDepthRange
110352            )
110353        };
110354        ::cpp_core::Ptr::from_raw(ffi_result)
110355    }
110356}
110357
110358#[cfg_attr(
110359    feature = "ritual_rustdoc_nightly",
110360    doc(cfg(cpp_lib_version = "5.14.0"))
110361)]
110362#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110363impl ::cpp_core::DynamicCast<crate::QDepthRange> for ::qt_core::QObject {
110364    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QDepthRange* dynamic_cast<Qt3DRender::QDepthRange*>(QObject* ptr)```</span>.
110365    #[inline(always)]
110366    unsafe fn dynamic_cast(
110367        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110368    ) -> ::cpp_core::Ptr<crate::QDepthRange> {
110369        let ffi_result = {
110370            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QDepthRange_ptr2(
110371                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110372            )
110373        };
110374        ::cpp_core::Ptr::from_raw(ffi_result)
110375    }
110376}
110377
110378#[cfg_attr(
110379    feature = "ritual_rustdoc_nightly",
110380    doc(cfg(cpp_lib_version = "5.14.0"))
110381)]
110382#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110383impl ::cpp_core::StaticDowncast<crate::QNoPicking> for crate::QFrameGraphNode {
110384    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoPicking* static_cast<Qt3DRender::QNoPicking*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
110385    #[inline(always)]
110386    unsafe fn static_downcast(
110387        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
110388    ) -> ::cpp_core::Ptr<crate::QNoPicking> {
110389        let ffi_result = {
110390            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QNoPicking_ptr(
110391                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
110392            )
110393        };
110394        ::cpp_core::Ptr::from_raw(ffi_result)
110395    }
110396}
110397
110398#[cfg_attr(
110399    feature = "ritual_rustdoc_nightly",
110400    doc(cfg(cpp_lib_version = "5.14.0"))
110401)]
110402#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110403impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QNoPicking {
110404    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QNoPicking* ptr)```</span>.
110405    #[inline(always)]
110406    unsafe fn static_upcast(
110407        ptr: ::cpp_core::Ptr<crate::QNoPicking>,
110408    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
110409        let ffi_result = {
110410            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr44(
110411                ptr.as_raw_ptr() as *mut crate::QNoPicking,
110412            )
110413        };
110414        ::cpp_core::Ptr::from_raw(ffi_result)
110415    }
110416}
110417
110418#[cfg_attr(
110419    feature = "ritual_rustdoc_nightly",
110420    doc(cfg(cpp_lib_version = "5.14.0"))
110421)]
110422#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110423impl ::std::ops::Deref for crate::QNoPicking {
110424    type Target = crate::QFrameGraphNode;
110425    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QNoPicking* ptr)```</span>.
110426    #[inline(always)]
110427    fn deref(&self) -> &crate::QFrameGraphNode {
110428        let ffi_result = {
110429            unsafe {
110430                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr44(
110431                    self as *const crate::QNoPicking as *mut crate::QNoPicking,
110432                )
110433            }
110434        };
110435        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
110436    }
110437}
110438
110439#[cfg_attr(
110440    feature = "ritual_rustdoc_nightly",
110441    doc(cfg(cpp_lib_version = "5.14.0"))
110442)]
110443#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110444impl ::cpp_core::DynamicCast<crate::QNoPicking> for crate::QFrameGraphNode {
110445    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoPicking* dynamic_cast<Qt3DRender::QNoPicking*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
110446    #[inline(always)]
110447    unsafe fn dynamic_cast(
110448        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
110449    ) -> ::cpp_core::Ptr<crate::QNoPicking> {
110450        let ffi_result = {
110451            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QNoPicking_ptr(
110452                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
110453            )
110454        };
110455        ::cpp_core::Ptr::from_raw(ffi_result)
110456    }
110457}
110458
110459#[cfg_attr(
110460    feature = "ritual_rustdoc_nightly",
110461    doc(cfg(cpp_lib_version = "5.14.0"))
110462)]
110463#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110464impl ::cpp_core::StaticDowncast<crate::QNoPicking> for ::qt_3d_core::QNode {
110465    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoPicking* static_cast<Qt3DRender::QNoPicking*>(Qt3DCore::QNode* ptr)```</span>.
110466    #[inline(always)]
110467    unsafe fn static_downcast(
110468        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
110469    ) -> ::cpp_core::Ptr<crate::QNoPicking> {
110470        let ffi_result = {
110471            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QNoPicking_ptr1(
110472                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
110473            )
110474        };
110475        ::cpp_core::Ptr::from_raw(ffi_result)
110476    }
110477}
110478
110479#[cfg_attr(
110480    feature = "ritual_rustdoc_nightly",
110481    doc(cfg(cpp_lib_version = "5.14.0"))
110482)]
110483#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110484impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QNoPicking {
110485    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QNoPicking* ptr)```</span>.
110486    #[inline(always)]
110487    unsafe fn static_upcast(
110488        ptr: ::cpp_core::Ptr<crate::QNoPicking>,
110489    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
110490        let ffi_result = {
110491            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr187(
110492                ptr.as_raw_ptr() as *mut crate::QNoPicking
110493            )
110494        };
110495        ::cpp_core::Ptr::from_raw(ffi_result)
110496    }
110497}
110498
110499#[cfg_attr(
110500    feature = "ritual_rustdoc_nightly",
110501    doc(cfg(cpp_lib_version = "5.14.0"))
110502)]
110503#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110504impl ::cpp_core::DynamicCast<crate::QNoPicking> for ::qt_3d_core::QNode {
110505    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoPicking* dynamic_cast<Qt3DRender::QNoPicking*>(Qt3DCore::QNode* ptr)```</span>.
110506    #[inline(always)]
110507    unsafe fn dynamic_cast(
110508        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
110509    ) -> ::cpp_core::Ptr<crate::QNoPicking> {
110510        let ffi_result = {
110511            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QNoPicking_ptr1(
110512                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
110513            )
110514        };
110515        ::cpp_core::Ptr::from_raw(ffi_result)
110516    }
110517}
110518
110519#[cfg_attr(
110520    feature = "ritual_rustdoc_nightly",
110521    doc(cfg(cpp_lib_version = "5.14.0"))
110522)]
110523#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110524impl ::cpp_core::StaticDowncast<crate::QNoPicking> for ::qt_core::QObject {
110525    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoPicking* static_cast<Qt3DRender::QNoPicking*>(QObject* ptr)```</span>.
110526    #[inline(always)]
110527    unsafe fn static_downcast(
110528        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110529    ) -> ::cpp_core::Ptr<crate::QNoPicking> {
110530        let ffi_result = {
110531            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QNoPicking_ptr2(
110532                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110533            )
110534        };
110535        ::cpp_core::Ptr::from_raw(ffi_result)
110536    }
110537}
110538
110539#[cfg_attr(
110540    feature = "ritual_rustdoc_nightly",
110541    doc(cfg(cpp_lib_version = "5.14.0"))
110542)]
110543#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110544impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QNoPicking {
110545    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QNoPicking* ptr)```</span>.
110546    #[inline(always)]
110547    unsafe fn static_upcast(
110548        ptr: ::cpp_core::Ptr<crate::QNoPicking>,
110549    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
110550        let ffi_result = {
110551            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr343(
110552                ptr.as_raw_ptr() as *mut crate::QNoPicking
110553            )
110554        };
110555        ::cpp_core::Ptr::from_raw(ffi_result)
110556    }
110557}
110558
110559#[cfg_attr(
110560    feature = "ritual_rustdoc_nightly",
110561    doc(cfg(cpp_lib_version = "5.14.0"))
110562)]
110563#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110564impl ::cpp_core::DynamicCast<crate::QNoPicking> for ::qt_core::QObject {
110565    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QNoPicking* dynamic_cast<Qt3DRender::QNoPicking*>(QObject* ptr)```</span>.
110566    #[inline(always)]
110567    unsafe fn dynamic_cast(
110568        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110569    ) -> ::cpp_core::Ptr<crate::QNoPicking> {
110570        let ffi_result = {
110571            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QNoPicking_ptr2(
110572                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110573            )
110574        };
110575        ::cpp_core::Ptr::from_raw(ffi_result)
110576    }
110577}
110578
110579#[cfg_attr(
110580    feature = "ritual_rustdoc_nightly",
110581    doc(cfg(cpp_lib_version = "5.14.0"))
110582)]
110583#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110584impl ::cpp_core::StaticDowncast<crate::QRasterMode> for crate::QRenderState {
110585    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRasterMode* static_cast<Qt3DRender::QRasterMode*>(Qt3DRender::QRenderState* ptr)```</span>.
110586    #[inline(always)]
110587    unsafe fn static_downcast(
110588        ptr: ::cpp_core::Ptr<crate::QRenderState>,
110589    ) -> ::cpp_core::Ptr<crate::QRasterMode> {
110590        let ffi_result = {
110591            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRasterMode_ptr(
110592                ptr.as_raw_ptr() as *mut crate::QRenderState,
110593            )
110594        };
110595        ::cpp_core::Ptr::from_raw(ffi_result)
110596    }
110597}
110598
110599#[cfg_attr(
110600    feature = "ritual_rustdoc_nightly",
110601    doc(cfg(cpp_lib_version = "5.14.0"))
110602)]
110603#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110604impl ::cpp_core::StaticUpcast<crate::QRenderState> for crate::QRasterMode {
110605    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QRasterMode* ptr)```</span>.
110606    #[inline(always)]
110607    unsafe fn static_upcast(
110608        ptr: ::cpp_core::Ptr<crate::QRasterMode>,
110609    ) -> ::cpp_core::Ptr<crate::QRenderState> {
110610        let ffi_result = {
110611            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr45(
110612                ptr.as_raw_ptr() as *mut crate::QRasterMode,
110613            )
110614        };
110615        ::cpp_core::Ptr::from_raw(ffi_result)
110616    }
110617}
110618
110619#[cfg_attr(
110620    feature = "ritual_rustdoc_nightly",
110621    doc(cfg(cpp_lib_version = "5.14.0"))
110622)]
110623#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110624impl ::std::ops::Deref for crate::QRasterMode {
110625    type Target = crate::QRenderState;
110626    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRenderState* static_cast<Qt3DRender::QRenderState*>(Qt3DRender::QRasterMode* ptr)```</span>.
110627    #[inline(always)]
110628    fn deref(&self) -> &crate::QRenderState {
110629        let ffi_result = {
110630            unsafe {
110631                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRenderState_ptr45(
110632                    self as *const crate::QRasterMode as *mut crate::QRasterMode,
110633                )
110634            }
110635        };
110636        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
110637    }
110638}
110639
110640#[cfg_attr(
110641    feature = "ritual_rustdoc_nightly",
110642    doc(cfg(cpp_lib_version = "5.14.0"))
110643)]
110644#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110645impl ::cpp_core::DynamicCast<crate::QRasterMode> for crate::QRenderState {
110646    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRasterMode* dynamic_cast<Qt3DRender::QRasterMode*>(Qt3DRender::QRenderState* ptr)```</span>.
110647    #[inline(always)]
110648    unsafe fn dynamic_cast(
110649        ptr: ::cpp_core::Ptr<crate::QRenderState>,
110650    ) -> ::cpp_core::Ptr<crate::QRasterMode> {
110651        let ffi_result = {
110652            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRasterMode_ptr(
110653                ptr.as_raw_ptr() as *mut crate::QRenderState,
110654            )
110655        };
110656        ::cpp_core::Ptr::from_raw(ffi_result)
110657    }
110658}
110659
110660#[cfg_attr(
110661    feature = "ritual_rustdoc_nightly",
110662    doc(cfg(cpp_lib_version = "5.14.0"))
110663)]
110664#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110665impl ::cpp_core::StaticDowncast<crate::QRasterMode> for ::qt_3d_core::QNode {
110666    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRasterMode* static_cast<Qt3DRender::QRasterMode*>(Qt3DCore::QNode* ptr)```</span>.
110667    #[inline(always)]
110668    unsafe fn static_downcast(
110669        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
110670    ) -> ::cpp_core::Ptr<crate::QRasterMode> {
110671        let ffi_result = {
110672            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRasterMode_ptr1(
110673                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
110674            )
110675        };
110676        ::cpp_core::Ptr::from_raw(ffi_result)
110677    }
110678}
110679
110680#[cfg_attr(
110681    feature = "ritual_rustdoc_nightly",
110682    doc(cfg(cpp_lib_version = "5.14.0"))
110683)]
110684#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110685impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QRasterMode {
110686    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QRasterMode* ptr)```</span>.
110687    #[inline(always)]
110688    unsafe fn static_upcast(
110689        ptr: ::cpp_core::Ptr<crate::QRasterMode>,
110690    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
110691        let ffi_result = {
110692            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr188(
110693                ptr.as_raw_ptr() as *mut crate::QRasterMode
110694            )
110695        };
110696        ::cpp_core::Ptr::from_raw(ffi_result)
110697    }
110698}
110699
110700#[cfg_attr(
110701    feature = "ritual_rustdoc_nightly",
110702    doc(cfg(cpp_lib_version = "5.14.0"))
110703)]
110704#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110705impl ::cpp_core::DynamicCast<crate::QRasterMode> for ::qt_3d_core::QNode {
110706    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRasterMode* dynamic_cast<Qt3DRender::QRasterMode*>(Qt3DCore::QNode* ptr)```</span>.
110707    #[inline(always)]
110708    unsafe fn dynamic_cast(
110709        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
110710    ) -> ::cpp_core::Ptr<crate::QRasterMode> {
110711        let ffi_result = {
110712            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRasterMode_ptr1(
110713                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
110714            )
110715        };
110716        ::cpp_core::Ptr::from_raw(ffi_result)
110717    }
110718}
110719
110720#[cfg_attr(
110721    feature = "ritual_rustdoc_nightly",
110722    doc(cfg(cpp_lib_version = "5.14.0"))
110723)]
110724#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110725impl ::cpp_core::StaticDowncast<crate::QRasterMode> for ::qt_core::QObject {
110726    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRasterMode* static_cast<Qt3DRender::QRasterMode*>(QObject* ptr)```</span>.
110727    #[inline(always)]
110728    unsafe fn static_downcast(
110729        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110730    ) -> ::cpp_core::Ptr<crate::QRasterMode> {
110731        let ffi_result = {
110732            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QRasterMode_ptr2(
110733                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110734            )
110735        };
110736        ::cpp_core::Ptr::from_raw(ffi_result)
110737    }
110738}
110739
110740#[cfg_attr(
110741    feature = "ritual_rustdoc_nightly",
110742    doc(cfg(cpp_lib_version = "5.14.0"))
110743)]
110744#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110745impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QRasterMode {
110746    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QRasterMode* ptr)```</span>.
110747    #[inline(always)]
110748    unsafe fn static_upcast(
110749        ptr: ::cpp_core::Ptr<crate::QRasterMode>,
110750    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
110751        let ffi_result = {
110752            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr344(
110753                ptr.as_raw_ptr() as *mut crate::QRasterMode
110754            )
110755        };
110756        ::cpp_core::Ptr::from_raw(ffi_result)
110757    }
110758}
110759
110760#[cfg_attr(
110761    feature = "ritual_rustdoc_nightly",
110762    doc(cfg(cpp_lib_version = "5.14.0"))
110763)]
110764#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110765impl ::cpp_core::DynamicCast<crate::QRasterMode> for ::qt_core::QObject {
110766    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QRasterMode* dynamic_cast<Qt3DRender::QRasterMode*>(QObject* ptr)```</span>.
110767    #[inline(always)]
110768    unsafe fn dynamic_cast(
110769        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110770    ) -> ::cpp_core::Ptr<crate::QRasterMode> {
110771        let ffi_result = {
110772            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QRasterMode_ptr2(
110773                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110774            )
110775        };
110776        ::cpp_core::Ptr::from_raw(ffi_result)
110777    }
110778}
110779
110780#[cfg_attr(
110781    feature = "ritual_rustdoc_nightly",
110782    doc(cfg(cpp_lib_version = "5.14.0"))
110783)]
110784#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110785impl ::cpp_core::StaticDowncast<crate::QShaderImage> for ::qt_3d_core::QNode {
110786    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderImage* static_cast<Qt3DRender::QShaderImage*>(Qt3DCore::QNode* ptr)```</span>.
110787    #[inline(always)]
110788    unsafe fn static_downcast(
110789        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
110790    ) -> ::cpp_core::Ptr<crate::QShaderImage> {
110791        let ffi_result = {
110792            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QShaderImage_ptr(
110793                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
110794            )
110795        };
110796        ::cpp_core::Ptr::from_raw(ffi_result)
110797    }
110798}
110799
110800#[cfg_attr(
110801    feature = "ritual_rustdoc_nightly",
110802    doc(cfg(cpp_lib_version = "5.14.0"))
110803)]
110804#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110805impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QShaderImage {
110806    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QShaderImage* ptr)```</span>.
110807    #[inline(always)]
110808    unsafe fn static_upcast(
110809        ptr: ::cpp_core::Ptr<crate::QShaderImage>,
110810    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
110811        let ffi_result = {
110812            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr189(
110813                ptr.as_raw_ptr() as *mut crate::QShaderImage
110814            )
110815        };
110816        ::cpp_core::Ptr::from_raw(ffi_result)
110817    }
110818}
110819
110820#[cfg_attr(
110821    feature = "ritual_rustdoc_nightly",
110822    doc(cfg(cpp_lib_version = "5.14.0"))
110823)]
110824#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110825impl ::std::ops::Deref for crate::QShaderImage {
110826    type Target = ::qt_3d_core::QNode;
110827    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QShaderImage* ptr)```</span>.
110828    #[inline(always)]
110829    fn deref(&self) -> &::qt_3d_core::QNode {
110830        let ffi_result = {
110831            unsafe {
110832                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr189(
110833                    self as *const crate::QShaderImage as *mut crate::QShaderImage,
110834                )
110835            }
110836        };
110837        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
110838    }
110839}
110840
110841#[cfg_attr(
110842    feature = "ritual_rustdoc_nightly",
110843    doc(cfg(cpp_lib_version = "5.14.0"))
110844)]
110845#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110846impl ::cpp_core::DynamicCast<crate::QShaderImage> for ::qt_3d_core::QNode {
110847    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderImage* dynamic_cast<Qt3DRender::QShaderImage*>(Qt3DCore::QNode* ptr)```</span>.
110848    #[inline(always)]
110849    unsafe fn dynamic_cast(
110850        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
110851    ) -> ::cpp_core::Ptr<crate::QShaderImage> {
110852        let ffi_result = {
110853            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QShaderImage_ptr(
110854                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
110855            )
110856        };
110857        ::cpp_core::Ptr::from_raw(ffi_result)
110858    }
110859}
110860
110861#[cfg_attr(
110862    feature = "ritual_rustdoc_nightly",
110863    doc(cfg(cpp_lib_version = "5.14.0"))
110864)]
110865#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110866impl ::cpp_core::StaticDowncast<crate::QShaderImage> for ::qt_core::QObject {
110867    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderImage* static_cast<Qt3DRender::QShaderImage*>(QObject* ptr)```</span>.
110868    #[inline(always)]
110869    unsafe fn static_downcast(
110870        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110871    ) -> ::cpp_core::Ptr<crate::QShaderImage> {
110872        let ffi_result = {
110873            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QShaderImage_ptr1(
110874                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110875            )
110876        };
110877        ::cpp_core::Ptr::from_raw(ffi_result)
110878    }
110879}
110880
110881#[cfg_attr(
110882    feature = "ritual_rustdoc_nightly",
110883    doc(cfg(cpp_lib_version = "5.14.0"))
110884)]
110885#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110886impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QShaderImage {
110887    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QShaderImage* ptr)```</span>.
110888    #[inline(always)]
110889    unsafe fn static_upcast(
110890        ptr: ::cpp_core::Ptr<crate::QShaderImage>,
110891    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
110892        let ffi_result = {
110893            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr345(
110894                ptr.as_raw_ptr() as *mut crate::QShaderImage
110895            )
110896        };
110897        ::cpp_core::Ptr::from_raw(ffi_result)
110898    }
110899}
110900
110901#[cfg_attr(
110902    feature = "ritual_rustdoc_nightly",
110903    doc(cfg(cpp_lib_version = "5.14.0"))
110904)]
110905#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110906impl ::cpp_core::DynamicCast<crate::QShaderImage> for ::qt_core::QObject {
110907    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QShaderImage* dynamic_cast<Qt3DRender::QShaderImage*>(QObject* ptr)```</span>.
110908    #[inline(always)]
110909    unsafe fn dynamic_cast(
110910        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
110911    ) -> ::cpp_core::Ptr<crate::QShaderImage> {
110912        let ffi_result = {
110913            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QShaderImage_ptr1(
110914                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
110915            )
110916        };
110917        ::cpp_core::Ptr::from_raw(ffi_result)
110918    }
110919}
110920
110921#[cfg_attr(
110922    feature = "ritual_rustdoc_nightly",
110923    doc(cfg(cpp_lib_version = "5.14.0"))
110924)]
110925#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110926impl ::cpp_core::StaticDowncast<crate::QSubtreeEnabler> for crate::QFrameGraphNode {
110927    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler* static_cast<Qt3DRender::QSubtreeEnabler*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
110928    #[inline(always)]
110929    unsafe fn static_downcast(
110930        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
110931    ) -> ::cpp_core::Ptr<crate::QSubtreeEnabler> {
110932        let ffi_result = {
110933            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSubtreeEnabler_ptr(
110934                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
110935            )
110936        };
110937        ::cpp_core::Ptr::from_raw(ffi_result)
110938    }
110939}
110940
110941#[cfg_attr(
110942    feature = "ritual_rustdoc_nightly",
110943    doc(cfg(cpp_lib_version = "5.14.0"))
110944)]
110945#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110946impl ::cpp_core::StaticUpcast<crate::QFrameGraphNode> for crate::QSubtreeEnabler {
110947    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QSubtreeEnabler* ptr)```</span>.
110948    #[inline(always)]
110949    unsafe fn static_upcast(
110950        ptr: ::cpp_core::Ptr<crate::QSubtreeEnabler>,
110951    ) -> ::cpp_core::Ptr<crate::QFrameGraphNode> {
110952        let ffi_result = {
110953            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr45(
110954                ptr.as_raw_ptr() as *mut crate::QSubtreeEnabler,
110955            )
110956        };
110957        ::cpp_core::Ptr::from_raw(ffi_result)
110958    }
110959}
110960
110961#[cfg_attr(
110962    feature = "ritual_rustdoc_nightly",
110963    doc(cfg(cpp_lib_version = "5.14.0"))
110964)]
110965#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110966impl ::std::ops::Deref for crate::QSubtreeEnabler {
110967    type Target = crate::QFrameGraphNode;
110968    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QFrameGraphNode* static_cast<Qt3DRender::QFrameGraphNode*>(Qt3DRender::QSubtreeEnabler* ptr)```</span>.
110969    #[inline(always)]
110970    fn deref(&self) -> &crate::QFrameGraphNode {
110971        let ffi_result = {
110972            unsafe {
110973                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QFrameGraphNode_ptr45(
110974                    self as *const crate::QSubtreeEnabler as *mut crate::QSubtreeEnabler,
110975                )
110976            }
110977        };
110978        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
110979    }
110980}
110981
110982#[cfg_attr(
110983    feature = "ritual_rustdoc_nightly",
110984    doc(cfg(cpp_lib_version = "5.14.0"))
110985)]
110986#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
110987impl ::cpp_core::DynamicCast<crate::QSubtreeEnabler> for crate::QFrameGraphNode {
110988    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler* dynamic_cast<Qt3DRender::QSubtreeEnabler*>(Qt3DRender::QFrameGraphNode* ptr)```</span>.
110989    #[inline(always)]
110990    unsafe fn dynamic_cast(
110991        ptr: ::cpp_core::Ptr<crate::QFrameGraphNode>,
110992    ) -> ::cpp_core::Ptr<crate::QSubtreeEnabler> {
110993        let ffi_result = {
110994            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSubtreeEnabler_ptr(
110995                ptr.as_raw_ptr() as *mut crate::QFrameGraphNode,
110996            )
110997        };
110998        ::cpp_core::Ptr::from_raw(ffi_result)
110999    }
111000}
111001
111002#[cfg_attr(
111003    feature = "ritual_rustdoc_nightly",
111004    doc(cfg(cpp_lib_version = "5.14.0"))
111005)]
111006#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111007impl ::cpp_core::StaticDowncast<crate::QSubtreeEnabler> for ::qt_3d_core::QNode {
111008    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler* static_cast<Qt3DRender::QSubtreeEnabler*>(Qt3DCore::QNode* ptr)```</span>.
111009    #[inline(always)]
111010    unsafe fn static_downcast(
111011        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
111012    ) -> ::cpp_core::Ptr<crate::QSubtreeEnabler> {
111013        let ffi_result = {
111014            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSubtreeEnabler_ptr1(
111015                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
111016            )
111017        };
111018        ::cpp_core::Ptr::from_raw(ffi_result)
111019    }
111020}
111021
111022#[cfg_attr(
111023    feature = "ritual_rustdoc_nightly",
111024    doc(cfg(cpp_lib_version = "5.14.0"))
111025)]
111026#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111027impl ::cpp_core::StaticUpcast<::qt_3d_core::QNode> for crate::QSubtreeEnabler {
111028    /// Calls C++ function: <span style='color: green;'>```Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QSubtreeEnabler* ptr)```</span>.
111029    #[inline(always)]
111030    unsafe fn static_upcast(
111031        ptr: ::cpp_core::Ptr<crate::QSubtreeEnabler>,
111032    ) -> ::cpp_core::Ptr<::qt_3d_core::QNode> {
111033        let ffi_result = {
111034            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DCore_QNode_ptr190(
111035                ptr.as_raw_ptr() as *mut crate::QSubtreeEnabler
111036            )
111037        };
111038        ::cpp_core::Ptr::from_raw(ffi_result)
111039    }
111040}
111041
111042#[cfg_attr(
111043    feature = "ritual_rustdoc_nightly",
111044    doc(cfg(cpp_lib_version = "5.14.0"))
111045)]
111046#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111047impl ::cpp_core::DynamicCast<crate::QSubtreeEnabler> for ::qt_3d_core::QNode {
111048    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler* dynamic_cast<Qt3DRender::QSubtreeEnabler*>(Qt3DCore::QNode* ptr)```</span>.
111049    #[inline(always)]
111050    unsafe fn dynamic_cast(
111051        ptr: ::cpp_core::Ptr<::qt_3d_core::QNode>,
111052    ) -> ::cpp_core::Ptr<crate::QSubtreeEnabler> {
111053        let ffi_result = {
111054            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSubtreeEnabler_ptr1(
111055                ptr.as_raw_ptr() as *mut ::qt_3d_core::QNode,
111056            )
111057        };
111058        ::cpp_core::Ptr::from_raw(ffi_result)
111059    }
111060}
111061
111062#[cfg_attr(
111063    feature = "ritual_rustdoc_nightly",
111064    doc(cfg(cpp_lib_version = "5.14.0"))
111065)]
111066#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111067impl ::cpp_core::StaticDowncast<crate::QSubtreeEnabler> for ::qt_core::QObject {
111068    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler* static_cast<Qt3DRender::QSubtreeEnabler*>(QObject* ptr)```</span>.
111069    #[inline(always)]
111070    unsafe fn static_downcast(
111071        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
111072    ) -> ::cpp_core::Ptr<crate::QSubtreeEnabler> {
111073        let ffi_result = {
111074            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_Qt3DRender_QSubtreeEnabler_ptr2(
111075                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
111076            )
111077        };
111078        ::cpp_core::Ptr::from_raw(ffi_result)
111079    }
111080}
111081
111082#[cfg_attr(
111083    feature = "ritual_rustdoc_nightly",
111084    doc(cfg(cpp_lib_version = "5.14.0"))
111085)]
111086#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111087impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::QSubtreeEnabler {
111088    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(Qt3DRender::QSubtreeEnabler* ptr)```</span>.
111089    #[inline(always)]
111090    unsafe fn static_upcast(
111091        ptr: ::cpp_core::Ptr<crate::QSubtreeEnabler>,
111092    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
111093        let ffi_result = {
111094            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr346(
111095                ptr.as_raw_ptr() as *mut crate::QSubtreeEnabler
111096            )
111097        };
111098        ::cpp_core::Ptr::from_raw(ffi_result)
111099    }
111100}
111101
111102#[cfg_attr(
111103    feature = "ritual_rustdoc_nightly",
111104    doc(cfg(cpp_lib_version = "5.14.0"))
111105)]
111106#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111107impl ::cpp_core::DynamicCast<crate::QSubtreeEnabler> for ::qt_core::QObject {
111108    /// Calls C++ function: <span style='color: green;'>```Qt3DRender::QSubtreeEnabler* dynamic_cast<Qt3DRender::QSubtreeEnabler*>(QObject* ptr)```</span>.
111109    #[inline(always)]
111110    unsafe fn dynamic_cast(
111111        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
111112    ) -> ::cpp_core::Ptr<crate::QSubtreeEnabler> {
111113        let ffi_result = {
111114            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_Qt3DRender_QSubtreeEnabler_ptr2(
111115                ptr.as_raw_ptr() as *mut ::qt_core::QObject,
111116            )
111117        };
111118        ::cpp_core::Ptr::from_raw(ffi_result)
111119    }
111120}
111121
111122impl ::cpp_core::CppDeletable for crate::SignalOfCubeMapFace {
111123    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace()```</span>.
111124    #[inline(always)]
111125    unsafe fn delete(&self) {
111126        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace(self as *const crate::SignalOfCubeMapFace as *mut crate::SignalOfCubeMapFace)
111127    }
111128}
111129
111130impl ::cpp_core::CppDeletable for crate::SignalOfQPickEvent {
111131    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr()```</span>.
111132    #[inline(always)]
111133    unsafe fn delete(&self) {
111134        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr(self as *const crate::SignalOfQPickEvent as *mut crate::SignalOfQPickEvent)
111135    }
111136}
111137
111138impl ::cpp_core::CppDeletable for crate::SignalOfUsageType {
111139    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType()```</span>.
111140    #[inline(always)]
111141    unsafe fn delete(&self) {
111142        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType(self as *const crate::SignalOfUsageType as *mut crate::SignalOfUsageType)
111143    }
111144}
111145
111146impl ::cpp_core::CppDeletable for crate::SignalOfQAttribute {
111147    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr()```</span>.
111148    #[inline(always)]
111149    unsafe fn delete(&self) {
111150        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr(self as *const crate::SignalOfQAttribute as *mut crate::SignalOfQAttribute)
111151    }
111152}
111153
111154impl ::cpp_core::CppDeletable for crate::SignalOfQByteArray {
111155    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref::~ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref()```</span>.
111156    #[inline(always)]
111157    unsafe fn delete(&self) {
111158        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_dctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref(self as *const crate::SignalOfQByteArray as *mut crate::SignalOfQByteArray)
111159    }
111160}
111161
111162impl ::cpp_core::CppDeletable for crate::SignalOfCullingMode {
111163    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode()```</span>.
111164    #[inline(always)]
111165    unsafe fn delete(&self) {
111166        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode(self as *const crate::SignalOfCullingMode as *mut crate::SignalOfCullingMode)
111167    }
111168}
111169
111170impl ::cpp_core::CppDeletable for crate::SignalOfAlphaFunction {
111171    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction()```</span>.
111172    #[inline(always)]
111173    unsafe fn delete(&self) {
111174        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction(self as *const crate::SignalOfAlphaFunction as *mut crate::SignalOfAlphaFunction)
111175    }
111176}
111177
111178impl ::cpp_core::CppDeletable for crate::SignalOfQStringList {
111179    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref::~ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref()```</span>.
111180    #[inline(always)]
111181    unsafe fn delete(&self) {
111182        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_dctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref(self as *const crate::SignalOfQStringList as *mut crate::SignalOfQStringList)
111183    }
111184}
111185
111186impl ::cpp_core::CppDeletable for crate::SignalOfStencilFaceMode {
111187    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode()```</span>.
111188    #[inline(always)]
111189    unsafe fn delete(&self) {
111190        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode(self as *const crate::SignalOfStencilFaceMode as *mut crate::SignalOfStencilFaceMode)
111191    }
111192}
111193
111194#[cfg_attr(
111195    feature = "ritual_rustdoc_nightly",
111196    doc(cfg(cpp_lib_version = "5.14.0"))
111197)]
111198#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111199impl ::cpp_core::CppDeletable for crate::SignalOfAccess {
111200    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access()```</span>.
111201    #[inline(always)]
111202    unsafe fn delete(&self) {
111203        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access(self as *const crate::SignalOfAccess as *mut crate::SignalOfAccess)
111204    }
111205}
111206
111207#[cfg_attr(
111208    feature = "ritual_rustdoc_nightly",
111209    doc(cfg(cpp_lib_version = "5.14.0"))
111210)]
111211#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111212impl ::cpp_core::CppDeletable for crate::SignalOfEnablement {
111213    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement()```</span>.
111214    #[inline(always)]
111215    unsafe fn delete(&self) {
111216        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement(self as *const crate::SignalOfEnablement as *mut crate::SignalOfEnablement)
111217    }
111218}
111219
111220impl ::cpp_core::CppDeletable for crate::SignalOfQGeometry {
111221    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr()```</span>.
111222    #[inline(always)]
111223    unsafe fn delete(&self) {
111224        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr(self as *const crate::SignalOfQGeometry as *mut crate::SignalOfQGeometry)
111225    }
111226}
111227
111228impl ::cpp_core::CppDeletable for crate::SignalOfRenderPolicy {
111229    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy()```</span>.
111230    #[inline(always)]
111231    unsafe fn delete(&self) {
111232        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy(self as *const crate::SignalOfRenderPolicy as *mut crate::SignalOfRenderPolicy)
111233    }
111234}
111235
111236impl ::cpp_core::CppDeletable for crate::SignalOfQVectorOfDouble {
111237    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref::~ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref()```</span>.
111238    #[inline(always)]
111239    unsafe fn delete(&self) {
111240        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_dctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref(self as *const crate::SignalOfQVectorOfDouble as *mut crate::SignalOfQVectorOfDouble)
111241    }
111242}
111243
111244impl ::cpp_core::CppDeletable for crate::SignalOfQEffect {
111245    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr()```</span>.
111246    #[inline(always)]
111247    unsafe fn delete(&self) {
111248        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr(self as *const crate::SignalOfQEffect as *mut crate::SignalOfQEffect)
111249    }
111250}
111251
111252impl ::cpp_core::CppDeletable for crate::SignalOfComparisonFunction {
111253    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction()```</span>.
111254    #[inline(always)]
111255    unsafe fn delete(&self) {
111256        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction(self as *const crate::SignalOfComparisonFunction as *mut crate::SignalOfComparisonFunction)
111257    }
111258}
111259
111260impl ::cpp_core::CppDeletable for crate::SignalOfQCamera {
111261    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr()```</span>.
111262    #[inline(always)]
111263    unsafe fn delete(&self) {
111264        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr(self as *const crate::SignalOfQCamera as *mut crate::SignalOfQCamera)
111265    }
111266}
111267
111268impl ::cpp_core::CppDeletable for crate::SignalOfProjectionType {
111269    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType()```</span>.
111270    #[inline(always)]
111271    unsafe fn delete(&self) {
111272        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType(self as *const crate::SignalOfProjectionType as *mut crate::SignalOfProjectionType)
111273    }
111274}
111275
111276impl ::cpp_core::CppDeletable for crate::SignalOfQColor {
111277    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref::~ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref()```</span>.
111278    #[inline(always)]
111279    unsafe fn delete(&self) {
111280        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_dctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref(self as *const crate::SignalOfQColor as *mut crate::SignalOfQColor)
111281    }
111282}
111283
111284impl ::cpp_core::CppDeletable for crate::SignalOfVertexBaseType {
111285    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType()```</span>.
111286    #[inline(always)]
111287    unsafe fn delete(&self) {
111288        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType(self as *const crate::SignalOfVertexBaseType as *mut crate::SignalOfVertexBaseType)
111289    }
111290}
111291
111292impl ::cpp_core::CppDeletable for crate::SignalOfFaceMode {
111293    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode()```</span>.
111294    #[inline(always)]
111295    unsafe fn delete(&self) {
111296        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode(self as *const crate::SignalOfFaceMode as *mut crate::SignalOfFaceMode)
111297    }
111298}
111299
111300impl ::cpp_core::CppDeletable for crate::SignalOfWrapMode {
111301    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode()```</span>.
111302    #[inline(always)]
111303    unsafe fn delete(&self) {
111304        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode(self as *const crate::SignalOfWrapMode as *mut crate::SignalOfWrapMode)
111305    }
111306}
111307
111308impl ::cpp_core::CppDeletable for crate::SignalOfBlending {
111309    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending()```</span>.
111310    #[inline(always)]
111311    unsafe fn delete(&self) {
111312        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending(self as *const crate::SignalOfBlending as *mut crate::SignalOfBlending)
111313    }
111314}
111315
111316impl ::cpp_core::CppDeletable for crate::SignalOfQRenderTargetOutput {
111317    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr()```</span>.
111318    #[inline(always)]
111319    unsafe fn delete(&self) {
111320        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr(self as *const crate::SignalOfQRenderTargetOutput as *mut crate::SignalOfQRenderTargetOutput)
111321    }
111322}
111323
111324impl ::cpp_core::CppDeletable for crate::SignalOfAccessType {
111325    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType()```</span>.
111326    #[inline(always)]
111327    unsafe fn delete(&self) {
111328        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType(self as *const crate::SignalOfAccessType as *mut crate::SignalOfAccessType)
111329    }
111330}
111331
111332impl ::cpp_core::CppDeletable for crate::SignalOfPrimitiveType {
111333    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType()```</span>.
111334    #[inline(always)]
111335    unsafe fn delete(&self) {
111336        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType(self as *const crate::SignalOfPrimitiveType as *mut crate::SignalOfPrimitiveType)
111337    }
111338}
111339
111340impl ::cpp_core::CppDeletable for crate::SignalOfQLevelOfDetailBoundingSphere {
111341    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref()```</span>.
111342    #[inline(always)]
111343    unsafe fn delete(&self) {
111344        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref(self as *const crate::SignalOfQLevelOfDetailBoundingSphere as *mut crate::SignalOfQLevelOfDetailBoundingSphere)
111345    }
111346}
111347
111348impl ::cpp_core::CppDeletable for crate::SignalOfPickMethod {
111349    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod()```</span>.
111350    #[inline(always)]
111351    unsafe fn delete(&self) {
111352        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod(self as *const crate::SignalOfPickMethod as *mut crate::SignalOfPickMethod)
111353    }
111354}
111355
111356impl ::cpp_core::CppDeletable for crate::SignalOfSizeMode {
111357    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode()```</span>.
111358    #[inline(always)]
111359    unsafe fn delete(&self) {
111360        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode(self as *const crate::SignalOfSizeMode as *mut crate::SignalOfSizeMode)
111361    }
111362}
111363
111364impl ::cpp_core::CppDeletable for crate::SignalOfOperation {
111365    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation()```</span>.
111366    #[inline(always)]
111367    unsafe fn delete(&self) {
111368        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation(self as *const crate::SignalOfOperation as *mut crate::SignalOfOperation)
111369    }
111370}
111371
111372impl ::cpp_core::CppDeletable for crate::SignalOfQPoint {
111373    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref::~ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref()```</span>.
111374    #[inline(always)]
111375    unsafe fn delete(&self) {
111376        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_dctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref(self as *const crate::SignalOfQPoint as *mut crate::SignalOfQPoint)
111377    }
111378}
111379
111380impl ::cpp_core::CppDeletable for crate::SignalOfQVariant {
111381    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QVariant::~ctr_qt_3d_render_ffi_signal_wrapper_QVariant()```</span>.
111382    #[inline(always)]
111383    unsafe fn delete(&self) {
111384        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_dctr_qt_3d_render_ffi_signal_wrapper_QVariant(self as *const crate::SignalOfQVariant as *mut crate::SignalOfQVariant)
111385    }
111386}
111387
111388impl ::cpp_core::CppDeletable for crate::SignalOfQFlagsOperation {
111389    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation::~ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation()```</span>.
111390    #[inline(always)]
111391    unsafe fn delete(&self) {
111392        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_dctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation(self as *const crate::SignalOfQFlagsOperation as *mut crate::SignalOfQFlagsOperation)
111393    }
111394}
111395
111396#[cfg_attr(
111397    feature = "ritual_rustdoc_nightly",
111398    doc(cfg(any(
111399        cpp_lib_version = "5.14.0",
111400        cpp_lib_version = "5.11.3",
111401        cpp_lib_version = "5.12.2",
111402        cpp_lib_version = "5.13.0"
111403    )))
111404)]
111405#[cfg(any(
111406    any(
111407        cpp_lib_version = "5.14.0",
111408        cpp_lib_version = "5.11.3",
111409        cpp_lib_version = "5.12.2",
111410        cpp_lib_version = "5.13.0"
111411    ),
111412    feature = "ritual_rustdoc"
111413))]
111414impl ::cpp_core::CppDeletable for crate::SignalOfRunMode {
111415    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode()```</span>.
111416    #[inline(always)]
111417    unsafe fn delete(&self) {
111418        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode(self as *const crate::SignalOfRunMode as *mut crate::SignalOfRunMode)
111419    }
111420}
111421
111422#[cfg_attr(
111423    feature = "ritual_rustdoc_nightly",
111424    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
111425)]
111426#[cfg(any(
111427    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
111428    feature = "ritual_rustdoc"
111429))]
111430impl ::cpp_core::CppDeletable for crate::SignalOfHandleType {
111431    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType()```</span>.
111432    #[inline(always)]
111433    unsafe fn delete(&self) {
111434        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType(self as *const crate::SignalOfHandleType as *mut crate::SignalOfHandleType)
111435    }
111436}
111437
111438impl ::cpp_core::CppDeletable for crate::SignalOfU64 {
111439    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_quint64::~ctr_qt_3d_render_ffi_signal_wrapper_quint64()```</span>.
111440    #[inline(always)]
111441    unsafe fn delete(&self) {
111442        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_quint64_dctr_qt_3d_render_ffi_signal_wrapper_quint64(self as *const crate::SignalOfU64 as *mut crate::SignalOfU64)
111443    }
111444}
111445
111446impl ::cpp_core::CppDeletable for crate::SignalOfQRenderTarget {
111447    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr()```</span>.
111448    #[inline(always)]
111449    unsafe fn delete(&self) {
111450        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr(self as *const crate::SignalOfQRenderTarget as *mut crate::SignalOfQRenderTarget)
111451    }
111452}
111453
111454impl ::cpp_core::CppDeletable for crate::SignalOfStatus {
111455    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status()```</span>.
111456    #[inline(always)]
111457    unsafe fn delete(&self) {
111458        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status(self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus)
111459    }
111460}
111461
111462impl ::cpp_core::CppDeletable for crate::SignalOfBufferType {
111463    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType()```</span>.
111464    #[inline(always)]
111465    unsafe fn delete(&self) {
111466        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType(self as *const crate::SignalOfBufferType as *mut crate::SignalOfBufferType)
111467    }
111468}
111469
111470impl ::cpp_core::CppDeletable for crate::SignalOfAttributeType {
111471    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType()```</span>.
111472    #[inline(always)]
111473    unsafe fn delete(&self) {
111474        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType(self as *const crate::SignalOfAttributeType as *mut crate::SignalOfAttributeType)
111475    }
111476}
111477
111478impl ::cpp_core::CppDeletable for crate::SignalOfQVectorOfInt {
111479    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref::~ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref()```</span>.
111480    #[inline(always)]
111481    unsafe fn delete(&self) {
111482        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_dctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref(self as *const crate::SignalOfQVectorOfInt as *mut crate::SignalOfQVectorOfInt)
111483    }
111484}
111485
111486impl ::cpp_core::CppDeletable for crate::SignalOfQFrameGraphNode {
111487    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr()```</span>.
111488    #[inline(always)]
111489    unsafe fn delete(&self) {
111490        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr(self as *const crate::SignalOfQFrameGraphNode as *mut crate::SignalOfQFrameGraphNode)
111491    }
111492}
111493
111494impl ::cpp_core::CppDeletable for crate::SignalOfStatus2 {
111495    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status()```</span>.
111496    #[inline(always)]
111497    unsafe fn delete(&self) {
111498        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status(self as *const crate::SignalOfStatus2 as *mut crate::SignalOfStatus2)
111499    }
111500}
111501
111502#[cfg_attr(
111503    feature = "ritual_rustdoc_nightly",
111504    doc(cfg(any(
111505        cpp_lib_version = "5.14.0",
111506        cpp_lib_version = "5.11.3",
111507        cpp_lib_version = "5.12.2",
111508        cpp_lib_version = "5.13.0"
111509    )))
111510)]
111511#[cfg(any(
111512    any(
111513        cpp_lib_version = "5.14.0",
111514        cpp_lib_version = "5.11.3",
111515        cpp_lib_version = "5.12.2",
111516        cpp_lib_version = "5.13.0"
111517    ),
111518    feature = "ritual_rustdoc"
111519))]
111520impl ::cpp_core::CppDeletable for crate::SignalOfQVectorOfQRayCasterHit {
111521    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref::~ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref()```</span>.
111522    #[inline(always)]
111523    unsafe fn delete(&self) {
111524        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_dctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref(self as *const crate::SignalOfQVectorOfQRayCasterHit as *mut crate::SignalOfQVectorOfQRayCasterHit)
111525    }
111526}
111527
111528impl ::cpp_core::CppDeletable for crate::SignalOfBlendFunction {
111529    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction()```</span>.
111530    #[inline(always)]
111531    unsafe fn delete(&self) {
111532        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction(self as *const crate::SignalOfBlendFunction as *mut crate::SignalOfBlendFunction)
111533    }
111534}
111535
111536impl ::cpp_core::CppDeletable for crate::SignalOfApi {
111537    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api()```</span>.
111538    #[inline(always)]
111539    unsafe fn delete(&self) {
111540        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api(self as *const crate::SignalOfApi as *mut crate::SignalOfApi)
111541    }
111542}
111543
111544impl ::cpp_core::CppDeletable for crate::SignalOfThresholdType {
111545    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType()```</span>.
111546    #[inline(always)]
111547    unsafe fn delete(&self) {
111548        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType(self as *const crate::SignalOfThresholdType as *mut crate::SignalOfThresholdType)
111549    }
111550}
111551
111552#[cfg_attr(
111553    feature = "ritual_rustdoc_nightly",
111554    doc(cfg(any(
111555        cpp_lib_version = "5.14.0",
111556        cpp_lib_version = "5.11.3",
111557        cpp_lib_version = "5.12.2",
111558        cpp_lib_version = "5.13.0"
111559    )))
111560)]
111561#[cfg(any(
111562    any(
111563        cpp_lib_version = "5.14.0",
111564        cpp_lib_version = "5.11.3",
111565        cpp_lib_version = "5.12.2",
111566        cpp_lib_version = "5.13.0"
111567    ),
111568    feature = "ritual_rustdoc"
111569))]
111570impl ::cpp_core::CppDeletable for crate::SignalOfFilterMode {
111571    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode()```</span>.
111572    #[inline(always)]
111573    unsafe fn delete(&self) {
111574        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode(self as *const crate::SignalOfFilterMode as *mut crate::SignalOfFilterMode)
111575    }
111576}
111577
111578impl ::cpp_core::CppDeletable for crate::SignalOfQBuffer {
111579    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr()```</span>.
111580    #[inline(always)]
111581    unsafe fn delete(&self) {
111582        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr(self as *const crate::SignalOfQBuffer as *mut crate::SignalOfQBuffer)
111583    }
111584}
111585
111586impl ::cpp_core::CppDeletable for crate::SignalOfQAbstractTexture {
111587    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr()```</span>.
111588    #[inline(always)]
111589    unsafe fn delete(&self) {
111590        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr(self as *const crate::SignalOfQAbstractTexture as *mut crate::SignalOfQAbstractTexture)
111591    }
111592}
111593
111594#[cfg_attr(
111595    feature = "ritual_rustdoc_nightly",
111596    doc(cfg(cpp_lib_version = "5.14.0"))
111597)]
111598#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111599impl ::cpp_core::CppDeletable for crate::SignalOfImageFormat {
111600    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat()```</span>.
111601    #[inline(always)]
111602    unsafe fn delete(&self) {
111603        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat(self as *const crate::SignalOfImageFormat as *mut crate::SignalOfImageFormat)
111604    }
111605}
111606
111607impl ::cpp_core::CppDeletable for crate::SignalOfQShaderProgram {
111608    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr()```</span>.
111609    #[inline(always)]
111610    unsafe fn delete(&self) {
111611        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr(self as *const crate::SignalOfQShaderProgram as *mut crate::SignalOfQShaderProgram)
111612    }
111613}
111614
111615impl ::cpp_core::CppDeletable for crate::SignalOfStatus3 {
111616    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status()```</span>.
111617    #[inline(always)]
111618    unsafe fn delete(&self) {
111619        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status(self as *const crate::SignalOfStatus3 as *mut crate::SignalOfStatus3)
111620    }
111621}
111622
111623impl ::cpp_core::CppDeletable for crate::SignalOfDepthFunction {
111624    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction()```</span>.
111625    #[inline(always)]
111626    unsafe fn delete(&self) {
111627        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction(self as *const crate::SignalOfDepthFunction as *mut crate::SignalOfDepthFunction)
111628    }
111629}
111630
111631impl ::cpp_core::CppDeletable for crate::SignalOfWindingDirection {
111632    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection()```</span>.
111633    #[inline(always)]
111634    unsafe fn delete(&self) {
111635        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection(self as *const crate::SignalOfWindingDirection as *mut crate::SignalOfWindingDirection)
111636    }
111637}
111638
111639impl ::cpp_core::CppDeletable for crate::SignalOfStencilFunction {
111640    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction()```</span>.
111641    #[inline(always)]
111642    unsafe fn delete(&self) {
111643        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction(self as *const crate::SignalOfStencilFunction as *mut crate::SignalOfStencilFunction)
111644    }
111645}
111646
111647impl ::cpp_core::CppDeletable for crate::SignalOfComparisonMode {
111648    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode()```</span>.
111649    #[inline(always)]
111650    unsafe fn delete(&self) {
111651        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode(self as *const crate::SignalOfComparisonMode as *mut crate::SignalOfComparisonMode)
111652    }
111653}
111654
111655impl ::cpp_core::CppDeletable for crate::SignalOfBufferType2 {
111656    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType()```</span>.
111657    #[inline(always)]
111658    unsafe fn delete(&self) {
111659        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType(self as *const crate::SignalOfBufferType2 as *mut crate::SignalOfBufferType2)
111660    }
111661}
111662
111663impl ::cpp_core::CppDeletable for crate::SignalOfQVectorOfSortType {
111664    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref::~ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref()```</span>.
111665    #[inline(always)]
111666    unsafe fn delete(&self) {
111667        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_dctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref(self as *const crate::SignalOfQVectorOfSortType as *mut crate::SignalOfQVectorOfSortType)
111668    }
111669}
111670
111671impl ::cpp_core::CppDeletable for crate::SignalOfUint {
111672    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int::~ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int()```</span>.
111673    #[inline(always)]
111674    unsafe fn delete(&self) {
111675        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_dctr_qt_3d_render_ffi_signal_wrapper_unsigned_int(self as *const crate::SignalOfUint as *mut crate::SignalOfUint)
111676    }
111677}
111678
111679impl ::cpp_core::CppDeletable for crate::SignalOfStatus4 {
111680    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status()```</span>.
111681    #[inline(always)]
111682    unsafe fn delete(&self) {
111683        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status(self as *const crate::SignalOfStatus4 as *mut crate::SignalOfStatus4)
111684    }
111685}
111686
111687impl ::cpp_core::CppDeletable for crate::SignalOfTextureFormat {
111688    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat()```</span>.
111689    #[inline(always)]
111690    unsafe fn delete(&self) {
111691        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat(self as *const crate::SignalOfTextureFormat as *mut crate::SignalOfTextureFormat)
111692    }
111693}
111694
111695impl ::cpp_core::CppDeletable for crate::SignalOfPickResultMode {
111696    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode()```</span>.
111697    #[inline(always)]
111698    unsafe fn delete(&self) {
111699        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode(self as *const crate::SignalOfPickResultMode as *mut crate::SignalOfPickResultMode)
111700    }
111701}
111702
111703impl ::cpp_core::CppDeletable for crate::SignalOfFaceOrientationPickingMode {
111704    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode()```</span>.
111705    #[inline(always)]
111706    unsafe fn delete(&self) {
111707        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode(self as *const crate::SignalOfFaceOrientationPickingMode as *mut crate::SignalOfFaceOrientationPickingMode)
111708    }
111709}
111710
111711impl ::cpp_core::CppDeletable for crate::SignalOfAttachmentPoint {
111712    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint()```</span>.
111713    #[inline(always)]
111714    unsafe fn delete(&self) {
111715        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint(self as *const crate::SignalOfAttachmentPoint as *mut crate::SignalOfAttachmentPoint)
111716    }
111717}
111718
111719#[cfg_attr(
111720    feature = "ritual_rustdoc_nightly",
111721    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
111722)]
111723#[cfg(any(
111724    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
111725    feature = "ritual_rustdoc"
111726))]
111727impl ::cpp_core::CppDeletable for crate::SignalOfHandleType2 {
111728    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType()```</span>.
111729    #[inline(always)]
111730    unsafe fn delete(&self) {
111731        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType(self as *const crate::SignalOfHandleType2 as *mut crate::SignalOfHandleType2)
111732    }
111733}
111734
111735impl ::cpp_core::CppDeletable for crate::SignalOfOpenglProfile {
111736    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile()```</span>.
111737    #[inline(always)]
111738    unsafe fn delete(&self) {
111739        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile(self as *const crate::SignalOfOpenglProfile as *mut crate::SignalOfOpenglProfile)
111740    }
111741}
111742
111743#[cfg_attr(
111744    feature = "ritual_rustdoc_nightly",
111745    doc(cfg(cpp_lib_version = "5.14.0"))
111746)]
111747#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111748impl ::cpp_core::CppDeletable for crate::SignalOfFaceMode2 {
111749    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode()```</span>.
111750    #[inline(always)]
111751    unsafe fn delete(&self) {
111752        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode(self as *const crate::SignalOfFaceMode2 as *mut crate::SignalOfFaceMode2)
111753    }
111754}
111755
111756impl ::cpp_core::CppDeletable for crate::SignalOfFilter {
111757    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter()```</span>.
111758    #[inline(always)]
111759    unsafe fn delete(&self) {
111760        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter(self as *const crate::SignalOfFilter as *mut crate::SignalOfFilter)
111761    }
111762}
111763
111764impl ::cpp_core::CppDeletable for crate::SignalOfQVector3D {
111765    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QVector3D::~ctr_qt_3d_render_ffi_signal_wrapper_QVector3D()```</span>.
111766    #[inline(always)]
111767    unsafe fn delete(&self) {
111768        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_dctr_qt_3d_render_ffi_signal_wrapper_QVector3D(self as *const crate::SignalOfQVector3D as *mut crate::SignalOfQVector3D)
111769    }
111770}
111771
111772#[cfg_attr(
111773    feature = "ritual_rustdoc_nightly",
111774    doc(cfg(cpp_lib_version = "5.14.0"))
111775)]
111776#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
111777impl ::cpp_core::CppDeletable for crate::SignalOfRasterMode {
111778    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode::~ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode()```</span>.
111779    #[inline(always)]
111780    unsafe fn delete(&self) {
111781        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_dctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode(self as *const crate::SignalOfRasterMode as *mut crate::SignalOfRasterMode)
111782    }
111783}
111784
111785impl ::cpp_core::CppDeletable for crate::SignalOfQSize {
111786    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_signal_wrapper_QSize::~ctr_qt_3d_render_ffi_signal_wrapper_QSize()```</span>.
111787    #[inline(always)]
111788    unsafe fn delete(&self) {
111789        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_signal_wrapper_QSize_dctr_qt_3d_render_ffi_signal_wrapper_QSize(self as *const crate::SignalOfQSize as *mut crate::SignalOfQSize)
111790    }
111791}
111792
111793impl ::cpp_core::StaticDowncast<crate::SignalOfCubeMapFace> for ::qt_core::QObject {
111794    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace*>(QObject* ptr)```</span>.
111795    #[inline(always)]
111796    unsafe fn static_downcast(
111797        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
111798    ) -> ::cpp_core::Ptr<crate::SignalOfCubeMapFace> {
111799        let ffi_result = {
111800            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
111801        };
111802        ::cpp_core::Ptr::from_raw(ffi_result)
111803    }
111804}
111805
111806impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfCubeMapFace {
111807    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace* ptr)```</span>.
111808    #[inline(always)]
111809    unsafe fn static_upcast(
111810        ptr: ::cpp_core::Ptr<crate::SignalOfCubeMapFace>,
111811    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
111812        let ffi_result = {
111813            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr200(
111814                ptr.as_raw_ptr() as *mut crate::SignalOfCubeMapFace
111815            )
111816        };
111817        ::cpp_core::Ptr::from_raw(ffi_result)
111818    }
111819}
111820
111821impl ::std::ops::Deref for crate::SignalOfCubeMapFace {
111822    type Target = ::qt_core::QObject;
111823    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace* ptr)```</span>.
111824    #[inline(always)]
111825    fn deref(&self) -> &::qt_core::QObject {
111826        let ffi_result = {
111827            unsafe {
111828                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr200(
111829                    self as *const crate::SignalOfCubeMapFace as *mut crate::SignalOfCubeMapFace,
111830                )
111831            }
111832        };
111833        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
111834    }
111835}
111836
111837impl ::cpp_core::DynamicCast<crate::SignalOfCubeMapFace> for ::qt_core::QObject {
111838    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace*>(QObject* ptr)```</span>.
111839    #[inline(always)]
111840    unsafe fn dynamic_cast(
111841        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
111842    ) -> ::cpp_core::Ptr<crate::SignalOfCubeMapFace> {
111843        let ffi_result = {
111844            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
111845        };
111846        ::cpp_core::Ptr::from_raw(ffi_result)
111847    }
111848}
111849
111850impl ::cpp_core::StaticDowncast<crate::SignalOfQPickEvent> for ::qt_core::QObject {
111851    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr*>(QObject* ptr)```</span>.
111852    #[inline(always)]
111853    unsafe fn static_downcast(
111854        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
111855    ) -> ::cpp_core::Ptr<crate::SignalOfQPickEvent> {
111856        let ffi_result = {
111857            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
111858        };
111859        ::cpp_core::Ptr::from_raw(ffi_result)
111860    }
111861}
111862
111863impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQPickEvent {
111864    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr* ptr)```</span>.
111865    #[inline(always)]
111866    unsafe fn static_upcast(
111867        ptr: ::cpp_core::Ptr<crate::SignalOfQPickEvent>,
111868    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
111869        let ffi_result = {
111870            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr202(
111871                ptr.as_raw_ptr() as *mut crate::SignalOfQPickEvent
111872            )
111873        };
111874        ::cpp_core::Ptr::from_raw(ffi_result)
111875    }
111876}
111877
111878impl ::std::ops::Deref for crate::SignalOfQPickEvent {
111879    type Target = ::qt_core::QObject;
111880    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr* ptr)```</span>.
111881    #[inline(always)]
111882    fn deref(&self) -> &::qt_core::QObject {
111883        let ffi_result = {
111884            unsafe {
111885                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr202(
111886                    self as *const crate::SignalOfQPickEvent as *mut crate::SignalOfQPickEvent,
111887                )
111888            }
111889        };
111890        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
111891    }
111892}
111893
111894impl ::cpp_core::DynamicCast<crate::SignalOfQPickEvent> for ::qt_core::QObject {
111895    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr*>(QObject* ptr)```</span>.
111896    #[inline(always)]
111897    unsafe fn dynamic_cast(
111898        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
111899    ) -> ::cpp_core::Ptr<crate::SignalOfQPickEvent> {
111900        let ffi_result = {
111901            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickEvent_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
111902        };
111903        ::cpp_core::Ptr::from_raw(ffi_result)
111904    }
111905}
111906
111907impl ::cpp_core::StaticDowncast<crate::SignalOfUsageType> for ::qt_core::QObject {
111908    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType*>(QObject* ptr)```</span>.
111909    #[inline(always)]
111910    unsafe fn static_downcast(
111911        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
111912    ) -> ::cpp_core::Ptr<crate::SignalOfUsageType> {
111913        let ffi_result = {
111914            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
111915        };
111916        ::cpp_core::Ptr::from_raw(ffi_result)
111917    }
111918}
111919
111920impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfUsageType {
111921    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType* ptr)```</span>.
111922    #[inline(always)]
111923    unsafe fn static_upcast(
111924        ptr: ::cpp_core::Ptr<crate::SignalOfUsageType>,
111925    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
111926        let ffi_result = {
111927            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr204(
111928                ptr.as_raw_ptr() as *mut crate::SignalOfUsageType
111929            )
111930        };
111931        ::cpp_core::Ptr::from_raw(ffi_result)
111932    }
111933}
111934
111935impl ::std::ops::Deref for crate::SignalOfUsageType {
111936    type Target = ::qt_core::QObject;
111937    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType* ptr)```</span>.
111938    #[inline(always)]
111939    fn deref(&self) -> &::qt_core::QObject {
111940        let ffi_result = {
111941            unsafe {
111942                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr204(
111943                    self as *const crate::SignalOfUsageType as *mut crate::SignalOfUsageType,
111944                )
111945            }
111946        };
111947        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
111948    }
111949}
111950
111951impl ::cpp_core::DynamicCast<crate::SignalOfUsageType> for ::qt_core::QObject {
111952    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType*>(QObject* ptr)```</span>.
111953    #[inline(always)]
111954    unsafe fn dynamic_cast(
111955        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
111956    ) -> ::cpp_core::Ptr<crate::SignalOfUsageType> {
111957        let ffi_result = {
111958            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_UsageType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
111959        };
111960        ::cpp_core::Ptr::from_raw(ffi_result)
111961    }
111962}
111963
111964impl ::cpp_core::StaticDowncast<crate::SignalOfQAttribute> for ::qt_core::QObject {
111965    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr*>(QObject* ptr)```</span>.
111966    #[inline(always)]
111967    unsafe fn static_downcast(
111968        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
111969    ) -> ::cpp_core::Ptr<crate::SignalOfQAttribute> {
111970        let ffi_result = {
111971            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
111972        };
111973        ::cpp_core::Ptr::from_raw(ffi_result)
111974    }
111975}
111976
111977impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQAttribute {
111978    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr* ptr)```</span>.
111979    #[inline(always)]
111980    unsafe fn static_upcast(
111981        ptr: ::cpp_core::Ptr<crate::SignalOfQAttribute>,
111982    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
111983        let ffi_result = {
111984            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr206(
111985                ptr.as_raw_ptr() as *mut crate::SignalOfQAttribute
111986            )
111987        };
111988        ::cpp_core::Ptr::from_raw(ffi_result)
111989    }
111990}
111991
111992impl ::std::ops::Deref for crate::SignalOfQAttribute {
111993    type Target = ::qt_core::QObject;
111994    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr* ptr)```</span>.
111995    #[inline(always)]
111996    fn deref(&self) -> &::qt_core::QObject {
111997        let ffi_result = {
111998            unsafe {
111999                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr206(
112000                    self as *const crate::SignalOfQAttribute as *mut crate::SignalOfQAttribute,
112001                )
112002            }
112003        };
112004        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112005    }
112006}
112007
112008impl ::cpp_core::DynamicCast<crate::SignalOfQAttribute> for ::qt_core::QObject {
112009    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr*>(QObject* ptr)```</span>.
112010    #[inline(always)]
112011    unsafe fn dynamic_cast(
112012        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112013    ) -> ::cpp_core::Ptr<crate::SignalOfQAttribute> {
112014        let ffi_result = {
112015            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112016        };
112017        ::cpp_core::Ptr::from_raw(ffi_result)
112018    }
112019}
112020
112021impl ::cpp_core::StaticDowncast<crate::SignalOfQByteArray> for ::qt_core::QObject {
112022    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref*>(QObject* ptr)```</span>.
112023    #[inline(always)]
112024    unsafe fn static_downcast(
112025        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112026    ) -> ::cpp_core::Ptr<crate::SignalOfQByteArray> {
112027        let ffi_result = {
112028            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112029        };
112030        ::cpp_core::Ptr::from_raw(ffi_result)
112031    }
112032}
112033
112034impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQByteArray {
112035    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref* ptr)```</span>.
112036    #[inline(always)]
112037    unsafe fn static_upcast(
112038        ptr: ::cpp_core::Ptr<crate::SignalOfQByteArray>,
112039    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112040        let ffi_result = {
112041            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr208(
112042                ptr.as_raw_ptr() as *mut crate::SignalOfQByteArray
112043            )
112044        };
112045        ::cpp_core::Ptr::from_raw(ffi_result)
112046    }
112047}
112048
112049impl ::std::ops::Deref for crate::SignalOfQByteArray {
112050    type Target = ::qt_core::QObject;
112051    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref* ptr)```</span>.
112052    #[inline(always)]
112053    fn deref(&self) -> &::qt_core::QObject {
112054        let ffi_result = {
112055            unsafe {
112056                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr208(
112057                    self as *const crate::SignalOfQByteArray as *mut crate::SignalOfQByteArray,
112058                )
112059            }
112060        };
112061        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112062    }
112063}
112064
112065impl ::cpp_core::DynamicCast<crate::SignalOfQByteArray> for ::qt_core::QObject {
112066    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref*>(QObject* ptr)```</span>.
112067    #[inline(always)]
112068    unsafe fn dynamic_cast(
112069        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112070    ) -> ::cpp_core::Ptr<crate::SignalOfQByteArray> {
112071        let ffi_result = {
112072            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QByteArray_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112073        };
112074        ::cpp_core::Ptr::from_raw(ffi_result)
112075    }
112076}
112077
112078impl ::cpp_core::StaticDowncast<crate::SignalOfCullingMode> for ::qt_core::QObject {
112079    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode*>(QObject* ptr)```</span>.
112080    #[inline(always)]
112081    unsafe fn static_downcast(
112082        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112083    ) -> ::cpp_core::Ptr<crate::SignalOfCullingMode> {
112084        let ffi_result = {
112085            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112086        };
112087        ::cpp_core::Ptr::from_raw(ffi_result)
112088    }
112089}
112090
112091impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfCullingMode {
112092    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode* ptr)```</span>.
112093    #[inline(always)]
112094    unsafe fn static_upcast(
112095        ptr: ::cpp_core::Ptr<crate::SignalOfCullingMode>,
112096    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112097        let ffi_result = {
112098            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr210(
112099                ptr.as_raw_ptr() as *mut crate::SignalOfCullingMode
112100            )
112101        };
112102        ::cpp_core::Ptr::from_raw(ffi_result)
112103    }
112104}
112105
112106impl ::std::ops::Deref for crate::SignalOfCullingMode {
112107    type Target = ::qt_core::QObject;
112108    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode* ptr)```</span>.
112109    #[inline(always)]
112110    fn deref(&self) -> &::qt_core::QObject {
112111        let ffi_result = {
112112            unsafe {
112113                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr210(
112114                    self as *const crate::SignalOfCullingMode as *mut crate::SignalOfCullingMode,
112115                )
112116            }
112117        };
112118        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112119    }
112120}
112121
112122impl ::cpp_core::DynamicCast<crate::SignalOfCullingMode> for ::qt_core::QObject {
112123    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode*>(QObject* ptr)```</span>.
112124    #[inline(always)]
112125    unsafe fn dynamic_cast(
112126        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112127    ) -> ::cpp_core::Ptr<crate::SignalOfCullingMode> {
112128        let ffi_result = {
112129            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCullFace_CullingMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112130        };
112131        ::cpp_core::Ptr::from_raw(ffi_result)
112132    }
112133}
112134
112135impl ::cpp_core::StaticDowncast<crate::SignalOfAlphaFunction> for ::qt_core::QObject {
112136    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction*>(QObject* ptr)```</span>.
112137    #[inline(always)]
112138    unsafe fn static_downcast(
112139        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112140    ) -> ::cpp_core::Ptr<crate::SignalOfAlphaFunction> {
112141        let ffi_result = {
112142            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112143        };
112144        ::cpp_core::Ptr::from_raw(ffi_result)
112145    }
112146}
112147
112148impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfAlphaFunction {
112149    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction* ptr)```</span>.
112150    #[inline(always)]
112151    unsafe fn static_upcast(
112152        ptr: ::cpp_core::Ptr<crate::SignalOfAlphaFunction>,
112153    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112154        let ffi_result = {
112155            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr212(
112156                ptr.as_raw_ptr() as *mut crate::SignalOfAlphaFunction
112157            )
112158        };
112159        ::cpp_core::Ptr::from_raw(ffi_result)
112160    }
112161}
112162
112163impl ::std::ops::Deref for crate::SignalOfAlphaFunction {
112164    type Target = ::qt_core::QObject;
112165    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction* ptr)```</span>.
112166    #[inline(always)]
112167    fn deref(&self) -> &::qt_core::QObject {
112168        let ffi_result = {
112169            unsafe {
112170                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr212(
112171                    self as *const crate::SignalOfAlphaFunction
112172                        as *mut crate::SignalOfAlphaFunction,
112173                )
112174            }
112175        };
112176        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112177    }
112178}
112179
112180impl ::cpp_core::DynamicCast<crate::SignalOfAlphaFunction> for ::qt_core::QObject {
112181    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction*>(QObject* ptr)```</span>.
112182    #[inline(always)]
112183    unsafe fn dynamic_cast(
112184        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112185    ) -> ::cpp_core::Ptr<crate::SignalOfAlphaFunction> {
112186        let ffi_result = {
112187            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112188        };
112189        ::cpp_core::Ptr::from_raw(ffi_result)
112190    }
112191}
112192
112193impl ::cpp_core::StaticDowncast<crate::SignalOfQStringList> for ::qt_core::QObject {
112194    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref*>(QObject* ptr)```</span>.
112195    #[inline(always)]
112196    unsafe fn static_downcast(
112197        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112198    ) -> ::cpp_core::Ptr<crate::SignalOfQStringList> {
112199        let ffi_result = {
112200            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112201        };
112202        ::cpp_core::Ptr::from_raw(ffi_result)
112203    }
112204}
112205
112206impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQStringList {
112207    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref* ptr)```</span>.
112208    #[inline(always)]
112209    unsafe fn static_upcast(
112210        ptr: ::cpp_core::Ptr<crate::SignalOfQStringList>,
112211    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112212        let ffi_result = {
112213            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr214(
112214                ptr.as_raw_ptr() as *mut crate::SignalOfQStringList
112215            )
112216        };
112217        ::cpp_core::Ptr::from_raw(ffi_result)
112218    }
112219}
112220
112221impl ::std::ops::Deref for crate::SignalOfQStringList {
112222    type Target = ::qt_core::QObject;
112223    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref* ptr)```</span>.
112224    #[inline(always)]
112225    fn deref(&self) -> &::qt_core::QObject {
112226        let ffi_result = {
112227            unsafe {
112228                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr214(
112229                    self as *const crate::SignalOfQStringList as *mut crate::SignalOfQStringList,
112230                )
112231            }
112232        };
112233        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112234    }
112235}
112236
112237impl ::cpp_core::DynamicCast<crate::SignalOfQStringList> for ::qt_core::QObject {
112238    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref*>(QObject* ptr)```</span>.
112239    #[inline(always)]
112240    unsafe fn dynamic_cast(
112241        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112242    ) -> ::cpp_core::Ptr<crate::SignalOfQStringList> {
112243        let ffi_result = {
112244            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QStringList_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112245        };
112246        ::cpp_core::Ptr::from_raw(ffi_result)
112247    }
112248}
112249
112250impl ::cpp_core::StaticDowncast<crate::SignalOfStencilFaceMode> for ::qt_core::QObject {
112251    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode*>(QObject* ptr)```</span>.
112252    #[inline(always)]
112253    unsafe fn static_downcast(
112254        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112255    ) -> ::cpp_core::Ptr<crate::SignalOfStencilFaceMode> {
112256        let ffi_result = {
112257            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112258        };
112259        ::cpp_core::Ptr::from_raw(ffi_result)
112260    }
112261}
112262
112263impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfStencilFaceMode {
112264    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode* ptr)```</span>.
112265    #[inline(always)]
112266    unsafe fn static_upcast(
112267        ptr: ::cpp_core::Ptr<crate::SignalOfStencilFaceMode>,
112268    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112269        let ffi_result = {
112270            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr216(
112271                ptr.as_raw_ptr() as *mut crate::SignalOfStencilFaceMode
112272            )
112273        };
112274        ::cpp_core::Ptr::from_raw(ffi_result)
112275    }
112276}
112277
112278impl ::std::ops::Deref for crate::SignalOfStencilFaceMode {
112279    type Target = ::qt_core::QObject;
112280    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode* ptr)```</span>.
112281    #[inline(always)]
112282    fn deref(&self) -> &::qt_core::QObject {
112283        let ffi_result = {
112284            unsafe {
112285                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr216(
112286                    self as *const crate::SignalOfStencilFaceMode
112287                        as *mut crate::SignalOfStencilFaceMode,
112288                )
112289            }
112290        };
112291        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112292    }
112293}
112294
112295impl ::cpp_core::DynamicCast<crate::SignalOfStencilFaceMode> for ::qt_core::QObject {
112296    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode*>(QObject* ptr)```</span>.
112297    #[inline(always)]
112298    unsafe fn dynamic_cast(
112299        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112300    ) -> ::cpp_core::Ptr<crate::SignalOfStencilFaceMode> {
112301        let ffi_result = {
112302            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112303        };
112304        ::cpp_core::Ptr::from_raw(ffi_result)
112305    }
112306}
112307
112308#[cfg_attr(
112309    feature = "ritual_rustdoc_nightly",
112310    doc(cfg(cpp_lib_version = "5.14.0"))
112311)]
112312#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
112313impl ::cpp_core::StaticDowncast<crate::SignalOfAccess> for ::qt_core::QObject {
112314    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access*>(QObject* ptr)```</span>.
112315    #[inline(always)]
112316    unsafe fn static_downcast(
112317        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112318    ) -> ::cpp_core::Ptr<crate::SignalOfAccess> {
112319        let ffi_result = {
112320            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112321        };
112322        ::cpp_core::Ptr::from_raw(ffi_result)
112323    }
112324}
112325
112326#[cfg_attr(
112327    feature = "ritual_rustdoc_nightly",
112328    doc(cfg(cpp_lib_version = "5.14.0"))
112329)]
112330#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
112331impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfAccess {
112332    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access* ptr)```</span>.
112333    #[inline(always)]
112334    unsafe fn static_upcast(
112335        ptr: ::cpp_core::Ptr<crate::SignalOfAccess>,
112336    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112337        let ffi_result = {
112338            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr218(
112339                ptr.as_raw_ptr() as *mut crate::SignalOfAccess
112340            )
112341        };
112342        ::cpp_core::Ptr::from_raw(ffi_result)
112343    }
112344}
112345
112346#[cfg_attr(
112347    feature = "ritual_rustdoc_nightly",
112348    doc(cfg(cpp_lib_version = "5.14.0"))
112349)]
112350#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
112351impl ::std::ops::Deref for crate::SignalOfAccess {
112352    type Target = ::qt_core::QObject;
112353    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access* ptr)```</span>.
112354    #[inline(always)]
112355    fn deref(&self) -> &::qt_core::QObject {
112356        let ffi_result = {
112357            unsafe {
112358                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr218(
112359                    self as *const crate::SignalOfAccess as *mut crate::SignalOfAccess,
112360                )
112361            }
112362        };
112363        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112364    }
112365}
112366
112367#[cfg_attr(
112368    feature = "ritual_rustdoc_nightly",
112369    doc(cfg(cpp_lib_version = "5.14.0"))
112370)]
112371#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
112372impl ::cpp_core::DynamicCast<crate::SignalOfAccess> for ::qt_core::QObject {
112373    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access*>(QObject* ptr)```</span>.
112374    #[inline(always)]
112375    unsafe fn dynamic_cast(
112376        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112377    ) -> ::cpp_core::Ptr<crate::SignalOfAccess> {
112378        let ffi_result = {
112379            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_Access_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112380        };
112381        ::cpp_core::Ptr::from_raw(ffi_result)
112382    }
112383}
112384
112385#[cfg_attr(
112386    feature = "ritual_rustdoc_nightly",
112387    doc(cfg(cpp_lib_version = "5.14.0"))
112388)]
112389#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
112390impl ::cpp_core::StaticDowncast<crate::SignalOfEnablement> for ::qt_core::QObject {
112391    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement*>(QObject* ptr)```</span>.
112392    #[inline(always)]
112393    unsafe fn static_downcast(
112394        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112395    ) -> ::cpp_core::Ptr<crate::SignalOfEnablement> {
112396        let ffi_result = {
112397            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112398        };
112399        ::cpp_core::Ptr::from_raw(ffi_result)
112400    }
112401}
112402
112403#[cfg_attr(
112404    feature = "ritual_rustdoc_nightly",
112405    doc(cfg(cpp_lib_version = "5.14.0"))
112406)]
112407#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
112408impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfEnablement {
112409    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement* ptr)```</span>.
112410    #[inline(always)]
112411    unsafe fn static_upcast(
112412        ptr: ::cpp_core::Ptr<crate::SignalOfEnablement>,
112413    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112414        let ffi_result = {
112415            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr220(
112416                ptr.as_raw_ptr() as *mut crate::SignalOfEnablement
112417            )
112418        };
112419        ::cpp_core::Ptr::from_raw(ffi_result)
112420    }
112421}
112422
112423#[cfg_attr(
112424    feature = "ritual_rustdoc_nightly",
112425    doc(cfg(cpp_lib_version = "5.14.0"))
112426)]
112427#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
112428impl ::std::ops::Deref for crate::SignalOfEnablement {
112429    type Target = ::qt_core::QObject;
112430    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement* ptr)```</span>.
112431    #[inline(always)]
112432    fn deref(&self) -> &::qt_core::QObject {
112433        let ffi_result = {
112434            unsafe {
112435                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr220(
112436                    self as *const crate::SignalOfEnablement as *mut crate::SignalOfEnablement,
112437                )
112438            }
112439        };
112440        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112441    }
112442}
112443
112444#[cfg_attr(
112445    feature = "ritual_rustdoc_nightly",
112446    doc(cfg(cpp_lib_version = "5.14.0"))
112447)]
112448#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
112449impl ::cpp_core::DynamicCast<crate::SignalOfEnablement> for ::qt_core::QObject {
112450    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement*>(QObject* ptr)```</span>.
112451    #[inline(always)]
112452    unsafe fn dynamic_cast(
112453        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112454    ) -> ::cpp_core::Ptr<crate::SignalOfEnablement> {
112455        let ffi_result = {
112456            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112457        };
112458        ::cpp_core::Ptr::from_raw(ffi_result)
112459    }
112460}
112461
112462impl ::cpp_core::StaticDowncast<crate::SignalOfQGeometry> for ::qt_core::QObject {
112463    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr*>(QObject* ptr)```</span>.
112464    #[inline(always)]
112465    unsafe fn static_downcast(
112466        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112467    ) -> ::cpp_core::Ptr<crate::SignalOfQGeometry> {
112468        let ffi_result = {
112469            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112470        };
112471        ::cpp_core::Ptr::from_raw(ffi_result)
112472    }
112473}
112474
112475impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQGeometry {
112476    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr* ptr)```</span>.
112477    #[inline(always)]
112478    unsafe fn static_upcast(
112479        ptr: ::cpp_core::Ptr<crate::SignalOfQGeometry>,
112480    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112481        let ffi_result = {
112482            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr222(
112483                ptr.as_raw_ptr() as *mut crate::SignalOfQGeometry
112484            )
112485        };
112486        ::cpp_core::Ptr::from_raw(ffi_result)
112487    }
112488}
112489
112490impl ::std::ops::Deref for crate::SignalOfQGeometry {
112491    type Target = ::qt_core::QObject;
112492    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr* ptr)```</span>.
112493    #[inline(always)]
112494    fn deref(&self) -> &::qt_core::QObject {
112495        let ffi_result = {
112496            unsafe {
112497                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr222(
112498                    self as *const crate::SignalOfQGeometry as *mut crate::SignalOfQGeometry,
112499                )
112500            }
112501        };
112502        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112503    }
112504}
112505
112506impl ::cpp_core::DynamicCast<crate::SignalOfQGeometry> for ::qt_core::QObject {
112507    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr*>(QObject* ptr)```</span>.
112508    #[inline(always)]
112509    unsafe fn dynamic_cast(
112510        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112511    ) -> ::cpp_core::Ptr<crate::SignalOfQGeometry> {
112512        let ffi_result = {
112513            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometry_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112514        };
112515        ::cpp_core::Ptr::from_raw(ffi_result)
112516    }
112517}
112518
112519impl ::cpp_core::StaticDowncast<crate::SignalOfRenderPolicy> for ::qt_core::QObject {
112520    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy*>(QObject* ptr)```</span>.
112521    #[inline(always)]
112522    unsafe fn static_downcast(
112523        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112524    ) -> ::cpp_core::Ptr<crate::SignalOfRenderPolicy> {
112525        let ffi_result = {
112526            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112527        };
112528        ::cpp_core::Ptr::from_raw(ffi_result)
112529    }
112530}
112531
112532impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfRenderPolicy {
112533    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy* ptr)```</span>.
112534    #[inline(always)]
112535    unsafe fn static_upcast(
112536        ptr: ::cpp_core::Ptr<crate::SignalOfRenderPolicy>,
112537    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112538        let ffi_result = {
112539            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr224(
112540                ptr.as_raw_ptr() as *mut crate::SignalOfRenderPolicy
112541            )
112542        };
112543        ::cpp_core::Ptr::from_raw(ffi_result)
112544    }
112545}
112546
112547impl ::std::ops::Deref for crate::SignalOfRenderPolicy {
112548    type Target = ::qt_core::QObject;
112549    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy* ptr)```</span>.
112550    #[inline(always)]
112551    fn deref(&self) -> &::qt_core::QObject {
112552        let ffi_result = {
112553            unsafe {
112554                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr224(
112555                    self as *const crate::SignalOfRenderPolicy as *mut crate::SignalOfRenderPolicy,
112556                )
112557            }
112558        };
112559        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112560    }
112561}
112562
112563impl ::cpp_core::DynamicCast<crate::SignalOfRenderPolicy> for ::qt_core::QObject {
112564    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy*>(QObject* ptr)```</span>.
112565    #[inline(always)]
112566    unsafe fn dynamic_cast(
112567        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112568    ) -> ::cpp_core::Ptr<crate::SignalOfRenderPolicy> {
112569        let ffi_result = {
112570            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112571        };
112572        ::cpp_core::Ptr::from_raw(ffi_result)
112573    }
112574}
112575
112576impl ::cpp_core::StaticDowncast<crate::SignalOfQVectorOfDouble> for ::qt_core::QObject {
112577    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref*>(QObject* ptr)```</span>.
112578    #[inline(always)]
112579    unsafe fn static_downcast(
112580        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112581    ) -> ::cpp_core::Ptr<crate::SignalOfQVectorOfDouble> {
112582        let ffi_result = {
112583            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112584        };
112585        ::cpp_core::Ptr::from_raw(ffi_result)
112586    }
112587}
112588
112589impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQVectorOfDouble {
112590    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref* ptr)```</span>.
112591    #[inline(always)]
112592    unsafe fn static_upcast(
112593        ptr: ::cpp_core::Ptr<crate::SignalOfQVectorOfDouble>,
112594    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112595        let ffi_result = {
112596            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr226(
112597                ptr.as_raw_ptr() as *mut crate::SignalOfQVectorOfDouble
112598            )
112599        };
112600        ::cpp_core::Ptr::from_raw(ffi_result)
112601    }
112602}
112603
112604impl ::std::ops::Deref for crate::SignalOfQVectorOfDouble {
112605    type Target = ::qt_core::QObject;
112606    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref* ptr)```</span>.
112607    #[inline(always)]
112608    fn deref(&self) -> &::qt_core::QObject {
112609        let ffi_result = {
112610            unsafe {
112611                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr226(
112612                    self as *const crate::SignalOfQVectorOfDouble
112613                        as *mut crate::SignalOfQVectorOfDouble,
112614                )
112615            }
112616        };
112617        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112618    }
112619}
112620
112621impl ::cpp_core::DynamicCast<crate::SignalOfQVectorOfDouble> for ::qt_core::QObject {
112622    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref*>(QObject* ptr)```</span>.
112623    #[inline(always)]
112624    unsafe fn dynamic_cast(
112625        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112626    ) -> ::cpp_core::Ptr<crate::SignalOfQVectorOfDouble> {
112627        let ffi_result = {
112628            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector_double_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112629        };
112630        ::cpp_core::Ptr::from_raw(ffi_result)
112631    }
112632}
112633
112634impl ::cpp_core::StaticDowncast<crate::SignalOfQEffect> for ::qt_core::QObject {
112635    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr*>(QObject* ptr)```</span>.
112636    #[inline(always)]
112637    unsafe fn static_downcast(
112638        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112639    ) -> ::cpp_core::Ptr<crate::SignalOfQEffect> {
112640        let ffi_result = {
112641            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112642        };
112643        ::cpp_core::Ptr::from_raw(ffi_result)
112644    }
112645}
112646
112647impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQEffect {
112648    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr* ptr)```</span>.
112649    #[inline(always)]
112650    unsafe fn static_upcast(
112651        ptr: ::cpp_core::Ptr<crate::SignalOfQEffect>,
112652    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112653        let ffi_result = {
112654            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr228(
112655                ptr.as_raw_ptr() as *mut crate::SignalOfQEffect
112656            )
112657        };
112658        ::cpp_core::Ptr::from_raw(ffi_result)
112659    }
112660}
112661
112662impl ::std::ops::Deref for crate::SignalOfQEffect {
112663    type Target = ::qt_core::QObject;
112664    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr* ptr)```</span>.
112665    #[inline(always)]
112666    fn deref(&self) -> &::qt_core::QObject {
112667        let ffi_result = {
112668            unsafe {
112669                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr228(
112670                    self as *const crate::SignalOfQEffect as *mut crate::SignalOfQEffect,
112671                )
112672            }
112673        };
112674        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112675    }
112676}
112677
112678impl ::cpp_core::DynamicCast<crate::SignalOfQEffect> for ::qt_core::QObject {
112679    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr*>(QObject* ptr)```</span>.
112680    #[inline(always)]
112681    unsafe fn dynamic_cast(
112682        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112683    ) -> ::cpp_core::Ptr<crate::SignalOfQEffect> {
112684        let ffi_result = {
112685            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QEffect_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112686        };
112687        ::cpp_core::Ptr::from_raw(ffi_result)
112688    }
112689}
112690
112691impl ::cpp_core::StaticDowncast<crate::SignalOfComparisonFunction> for ::qt_core::QObject {
112692    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction*>(QObject* ptr)```</span>.
112693    #[inline(always)]
112694    unsafe fn static_downcast(
112695        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112696    ) -> ::cpp_core::Ptr<crate::SignalOfComparisonFunction> {
112697        let ffi_result = {
112698            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112699        };
112700        ::cpp_core::Ptr::from_raw(ffi_result)
112701    }
112702}
112703
112704impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfComparisonFunction {
112705    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction* ptr)```</span>.
112706    #[inline(always)]
112707    unsafe fn static_upcast(
112708        ptr: ::cpp_core::Ptr<crate::SignalOfComparisonFunction>,
112709    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112710        let ffi_result = {
112711            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr230(
112712                ptr.as_raw_ptr() as *mut crate::SignalOfComparisonFunction
112713            )
112714        };
112715        ::cpp_core::Ptr::from_raw(ffi_result)
112716    }
112717}
112718
112719impl ::std::ops::Deref for crate::SignalOfComparisonFunction {
112720    type Target = ::qt_core::QObject;
112721    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction* ptr)```</span>.
112722    #[inline(always)]
112723    fn deref(&self) -> &::qt_core::QObject {
112724        let ffi_result = {
112725            unsafe {
112726                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr230(
112727                    self as *const crate::SignalOfComparisonFunction
112728                        as *mut crate::SignalOfComparisonFunction,
112729                )
112730            }
112731        };
112732        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112733    }
112734}
112735
112736impl ::cpp_core::DynamicCast<crate::SignalOfComparisonFunction> for ::qt_core::QObject {
112737    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction*>(QObject* ptr)```</span>.
112738    #[inline(always)]
112739    unsafe fn dynamic_cast(
112740        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112741    ) -> ::cpp_core::Ptr<crate::SignalOfComparisonFunction> {
112742        let ffi_result = {
112743            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112744        };
112745        ::cpp_core::Ptr::from_raw(ffi_result)
112746    }
112747}
112748
112749impl ::cpp_core::StaticDowncast<crate::SignalOfQCamera> for ::qt_core::QObject {
112750    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr*>(QObject* ptr)```</span>.
112751    #[inline(always)]
112752    unsafe fn static_downcast(
112753        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112754    ) -> ::cpp_core::Ptr<crate::SignalOfQCamera> {
112755        let ffi_result = {
112756            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112757        };
112758        ::cpp_core::Ptr::from_raw(ffi_result)
112759    }
112760}
112761
112762impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQCamera {
112763    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr* ptr)```</span>.
112764    #[inline(always)]
112765    unsafe fn static_upcast(
112766        ptr: ::cpp_core::Ptr<crate::SignalOfQCamera>,
112767    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112768        let ffi_result = {
112769            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr232(
112770                ptr.as_raw_ptr() as *mut crate::SignalOfQCamera
112771            )
112772        };
112773        ::cpp_core::Ptr::from_raw(ffi_result)
112774    }
112775}
112776
112777impl ::std::ops::Deref for crate::SignalOfQCamera {
112778    type Target = ::qt_core::QObject;
112779    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr* ptr)```</span>.
112780    #[inline(always)]
112781    fn deref(&self) -> &::qt_core::QObject {
112782        let ffi_result = {
112783            unsafe {
112784                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr232(
112785                    self as *const crate::SignalOfQCamera as *mut crate::SignalOfQCamera,
112786                )
112787            }
112788        };
112789        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112790    }
112791}
112792
112793impl ::cpp_core::DynamicCast<crate::SignalOfQCamera> for ::qt_core::QObject {
112794    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr*>(QObject* ptr)```</span>.
112795    #[inline(always)]
112796    unsafe fn dynamic_cast(
112797        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112798    ) -> ::cpp_core::Ptr<crate::SignalOfQCamera> {
112799        let ffi_result = {
112800            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCamera_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112801        };
112802        ::cpp_core::Ptr::from_raw(ffi_result)
112803    }
112804}
112805
112806impl ::cpp_core::StaticDowncast<crate::SignalOfProjectionType> for ::qt_core::QObject {
112807    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType*>(QObject* ptr)```</span>.
112808    #[inline(always)]
112809    unsafe fn static_downcast(
112810        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112811    ) -> ::cpp_core::Ptr<crate::SignalOfProjectionType> {
112812        let ffi_result = {
112813            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112814        };
112815        ::cpp_core::Ptr::from_raw(ffi_result)
112816    }
112817}
112818
112819impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfProjectionType {
112820    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType* ptr)```</span>.
112821    #[inline(always)]
112822    unsafe fn static_upcast(
112823        ptr: ::cpp_core::Ptr<crate::SignalOfProjectionType>,
112824    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112825        let ffi_result = {
112826            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr234(
112827                ptr.as_raw_ptr() as *mut crate::SignalOfProjectionType
112828            )
112829        };
112830        ::cpp_core::Ptr::from_raw(ffi_result)
112831    }
112832}
112833
112834impl ::std::ops::Deref for crate::SignalOfProjectionType {
112835    type Target = ::qt_core::QObject;
112836    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType* ptr)```</span>.
112837    #[inline(always)]
112838    fn deref(&self) -> &::qt_core::QObject {
112839        let ffi_result = {
112840            unsafe {
112841                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr234(
112842                    self as *const crate::SignalOfProjectionType
112843                        as *mut crate::SignalOfProjectionType,
112844                )
112845            }
112846        };
112847        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112848    }
112849}
112850
112851impl ::cpp_core::DynamicCast<crate::SignalOfProjectionType> for ::qt_core::QObject {
112852    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType*>(QObject* ptr)```</span>.
112853    #[inline(always)]
112854    unsafe fn dynamic_cast(
112855        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112856    ) -> ::cpp_core::Ptr<crate::SignalOfProjectionType> {
112857        let ffi_result = {
112858            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QCameraLens_ProjectionType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112859        };
112860        ::cpp_core::Ptr::from_raw(ffi_result)
112861    }
112862}
112863
112864impl ::cpp_core::StaticDowncast<crate::SignalOfQColor> for ::qt_core::QObject {
112865    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref*>(QObject* ptr)```</span>.
112866    #[inline(always)]
112867    unsafe fn static_downcast(
112868        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112869    ) -> ::cpp_core::Ptr<crate::SignalOfQColor> {
112870        let ffi_result = {
112871            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112872        };
112873        ::cpp_core::Ptr::from_raw(ffi_result)
112874    }
112875}
112876
112877impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQColor {
112878    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref* ptr)```</span>.
112879    #[inline(always)]
112880    unsafe fn static_upcast(
112881        ptr: ::cpp_core::Ptr<crate::SignalOfQColor>,
112882    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112883        let ffi_result = {
112884            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr236(
112885                ptr.as_raw_ptr() as *mut crate::SignalOfQColor
112886            )
112887        };
112888        ::cpp_core::Ptr::from_raw(ffi_result)
112889    }
112890}
112891
112892impl ::std::ops::Deref for crate::SignalOfQColor {
112893    type Target = ::qt_core::QObject;
112894    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref* ptr)```</span>.
112895    #[inline(always)]
112896    fn deref(&self) -> &::qt_core::QObject {
112897        let ffi_result = {
112898            unsafe {
112899                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr236(
112900                    self as *const crate::SignalOfQColor as *mut crate::SignalOfQColor,
112901                )
112902            }
112903        };
112904        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112905    }
112906}
112907
112908impl ::cpp_core::DynamicCast<crate::SignalOfQColor> for ::qt_core::QObject {
112909    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref*>(QObject* ptr)```</span>.
112910    #[inline(always)]
112911    unsafe fn dynamic_cast(
112912        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112913    ) -> ::cpp_core::Ptr<crate::SignalOfQColor> {
112914        let ffi_result = {
112915            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QColor_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112916        };
112917        ::cpp_core::Ptr::from_raw(ffi_result)
112918    }
112919}
112920
112921impl ::cpp_core::StaticDowncast<crate::SignalOfVertexBaseType> for ::qt_core::QObject {
112922    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType*>(QObject* ptr)```</span>.
112923    #[inline(always)]
112924    unsafe fn static_downcast(
112925        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112926    ) -> ::cpp_core::Ptr<crate::SignalOfVertexBaseType> {
112927        let ffi_result = {
112928            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112929        };
112930        ::cpp_core::Ptr::from_raw(ffi_result)
112931    }
112932}
112933
112934impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfVertexBaseType {
112935    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType* ptr)```</span>.
112936    #[inline(always)]
112937    unsafe fn static_upcast(
112938        ptr: ::cpp_core::Ptr<crate::SignalOfVertexBaseType>,
112939    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112940        let ffi_result = {
112941            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr238(
112942                ptr.as_raw_ptr() as *mut crate::SignalOfVertexBaseType
112943            )
112944        };
112945        ::cpp_core::Ptr::from_raw(ffi_result)
112946    }
112947}
112948
112949impl ::std::ops::Deref for crate::SignalOfVertexBaseType {
112950    type Target = ::qt_core::QObject;
112951    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType* ptr)```</span>.
112952    #[inline(always)]
112953    fn deref(&self) -> &::qt_core::QObject {
112954        let ffi_result = {
112955            unsafe {
112956                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr238(
112957                    self as *const crate::SignalOfVertexBaseType
112958                        as *mut crate::SignalOfVertexBaseType,
112959                )
112960            }
112961        };
112962        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
112963    }
112964}
112965
112966impl ::cpp_core::DynamicCast<crate::SignalOfVertexBaseType> for ::qt_core::QObject {
112967    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType*>(QObject* ptr)```</span>.
112968    #[inline(always)]
112969    unsafe fn dynamic_cast(
112970        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112971    ) -> ::cpp_core::Ptr<crate::SignalOfVertexBaseType> {
112972        let ffi_result = {
112973            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_VertexBaseType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112974        };
112975        ::cpp_core::Ptr::from_raw(ffi_result)
112976    }
112977}
112978
112979impl ::cpp_core::StaticDowncast<crate::SignalOfFaceMode> for ::qt_core::QObject {
112980    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode*>(QObject* ptr)```</span>.
112981    #[inline(always)]
112982    unsafe fn static_downcast(
112983        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
112984    ) -> ::cpp_core::Ptr<crate::SignalOfFaceMode> {
112985        let ffi_result = {
112986            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
112987        };
112988        ::cpp_core::Ptr::from_raw(ffi_result)
112989    }
112990}
112991
112992impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfFaceMode {
112993    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode* ptr)```</span>.
112994    #[inline(always)]
112995    unsafe fn static_upcast(
112996        ptr: ::cpp_core::Ptr<crate::SignalOfFaceMode>,
112997    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
112998        let ffi_result = {
112999            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr240(
113000                ptr.as_raw_ptr() as *mut crate::SignalOfFaceMode
113001            )
113002        };
113003        ::cpp_core::Ptr::from_raw(ffi_result)
113004    }
113005}
113006
113007impl ::std::ops::Deref for crate::SignalOfFaceMode {
113008    type Target = ::qt_core::QObject;
113009    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode* ptr)```</span>.
113010    #[inline(always)]
113011    fn deref(&self) -> &::qt_core::QObject {
113012        let ffi_result = {
113013            unsafe {
113014                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr240(
113015                    self as *const crate::SignalOfFaceMode as *mut crate::SignalOfFaceMode,
113016                )
113017            }
113018        };
113019        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113020    }
113021}
113022
113023impl ::cpp_core::DynamicCast<crate::SignalOfFaceMode> for ::qt_core::QObject {
113024    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode*>(QObject* ptr)```</span>.
113025    #[inline(always)]
113026    unsafe fn dynamic_cast(
113027        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113028    ) -> ::cpp_core::Ptr<crate::SignalOfFaceMode> {
113029        let ffi_result = {
113030            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113031        };
113032        ::cpp_core::Ptr::from_raw(ffi_result)
113033    }
113034}
113035
113036impl ::cpp_core::StaticDowncast<crate::SignalOfWrapMode> for ::qt_core::QObject {
113037    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode*>(QObject* ptr)```</span>.
113038    #[inline(always)]
113039    unsafe fn static_downcast(
113040        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113041    ) -> ::cpp_core::Ptr<crate::SignalOfWrapMode> {
113042        let ffi_result = {
113043            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113044        };
113045        ::cpp_core::Ptr::from_raw(ffi_result)
113046    }
113047}
113048
113049impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfWrapMode {
113050    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode* ptr)```</span>.
113051    #[inline(always)]
113052    unsafe fn static_upcast(
113053        ptr: ::cpp_core::Ptr<crate::SignalOfWrapMode>,
113054    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113055        let ffi_result = {
113056            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr242(
113057                ptr.as_raw_ptr() as *mut crate::SignalOfWrapMode
113058            )
113059        };
113060        ::cpp_core::Ptr::from_raw(ffi_result)
113061    }
113062}
113063
113064impl ::std::ops::Deref for crate::SignalOfWrapMode {
113065    type Target = ::qt_core::QObject;
113066    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode* ptr)```</span>.
113067    #[inline(always)]
113068    fn deref(&self) -> &::qt_core::QObject {
113069        let ffi_result = {
113070            unsafe {
113071                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr242(
113072                    self as *const crate::SignalOfWrapMode as *mut crate::SignalOfWrapMode,
113073                )
113074            }
113075        };
113076        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113077    }
113078}
113079
113080impl ::cpp_core::DynamicCast<crate::SignalOfWrapMode> for ::qt_core::QObject {
113081    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode*>(QObject* ptr)```</span>.
113082    #[inline(always)]
113083    unsafe fn dynamic_cast(
113084        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113085    ) -> ::cpp_core::Ptr<crate::SignalOfWrapMode> {
113086        let ffi_result = {
113087            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113088        };
113089        ::cpp_core::Ptr::from_raw(ffi_result)
113090    }
113091}
113092
113093impl ::cpp_core::StaticDowncast<crate::SignalOfBlending> for ::qt_core::QObject {
113094    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending*>(QObject* ptr)```</span>.
113095    #[inline(always)]
113096    unsafe fn static_downcast(
113097        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113098    ) -> ::cpp_core::Ptr<crate::SignalOfBlending> {
113099        let ffi_result = {
113100            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113101        };
113102        ::cpp_core::Ptr::from_raw(ffi_result)
113103    }
113104}
113105
113106impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfBlending {
113107    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending* ptr)```</span>.
113108    #[inline(always)]
113109    unsafe fn static_upcast(
113110        ptr: ::cpp_core::Ptr<crate::SignalOfBlending>,
113111    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113112        let ffi_result = {
113113            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr244(
113114                ptr.as_raw_ptr() as *mut crate::SignalOfBlending
113115            )
113116        };
113117        ::cpp_core::Ptr::from_raw(ffi_result)
113118    }
113119}
113120
113121impl ::std::ops::Deref for crate::SignalOfBlending {
113122    type Target = ::qt_core::QObject;
113123    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending* ptr)```</span>.
113124    #[inline(always)]
113125    fn deref(&self) -> &::qt_core::QObject {
113126        let ffi_result = {
113127            unsafe {
113128                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr244(
113129                    self as *const crate::SignalOfBlending as *mut crate::SignalOfBlending,
113130                )
113131            }
113132        };
113133        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113134    }
113135}
113136
113137impl ::cpp_core::DynamicCast<crate::SignalOfBlending> for ::qt_core::QObject {
113138    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending*>(QObject* ptr)```</span>.
113139    #[inline(always)]
113140    unsafe fn dynamic_cast(
113141        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113142    ) -> ::cpp_core::Ptr<crate::SignalOfBlending> {
113143        let ffi_result = {
113144            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquationArguments_Blending_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113145        };
113146        ::cpp_core::Ptr::from_raw(ffi_result)
113147    }
113148}
113149
113150impl ::cpp_core::StaticDowncast<crate::SignalOfQRenderTargetOutput> for ::qt_core::QObject {
113151    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr*>(QObject* ptr)```</span>.
113152    #[inline(always)]
113153    unsafe fn static_downcast(
113154        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113155    ) -> ::cpp_core::Ptr<crate::SignalOfQRenderTargetOutput> {
113156        let ffi_result = {
113157            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113158        };
113159        ::cpp_core::Ptr::from_raw(ffi_result)
113160    }
113161}
113162
113163impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQRenderTargetOutput {
113164    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr* ptr)```</span>.
113165    #[inline(always)]
113166    unsafe fn static_upcast(
113167        ptr: ::cpp_core::Ptr<crate::SignalOfQRenderTargetOutput>,
113168    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113169        let ffi_result = {
113170            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr246(
113171                ptr.as_raw_ptr() as *mut crate::SignalOfQRenderTargetOutput
113172            )
113173        };
113174        ::cpp_core::Ptr::from_raw(ffi_result)
113175    }
113176}
113177
113178impl ::std::ops::Deref for crate::SignalOfQRenderTargetOutput {
113179    type Target = ::qt_core::QObject;
113180    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr* ptr)```</span>.
113181    #[inline(always)]
113182    fn deref(&self) -> &::qt_core::QObject {
113183        let ffi_result = {
113184            unsafe {
113185                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr246(
113186                    self as *const crate::SignalOfQRenderTargetOutput
113187                        as *mut crate::SignalOfQRenderTargetOutput,
113188                )
113189            }
113190        };
113191        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113192    }
113193}
113194
113195impl ::cpp_core::DynamicCast<crate::SignalOfQRenderTargetOutput> for ::qt_core::QObject {
113196    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr*>(QObject* ptr)```</span>.
113197    #[inline(always)]
113198    unsafe fn dynamic_cast(
113199        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113200    ) -> ::cpp_core::Ptr<crate::SignalOfQRenderTargetOutput> {
113201        let ffi_result = {
113202            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113203        };
113204        ::cpp_core::Ptr::from_raw(ffi_result)
113205    }
113206}
113207
113208impl ::cpp_core::StaticDowncast<crate::SignalOfAccessType> for ::qt_core::QObject {
113209    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType*>(QObject* ptr)```</span>.
113210    #[inline(always)]
113211    unsafe fn static_downcast(
113212        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113213    ) -> ::cpp_core::Ptr<crate::SignalOfAccessType> {
113214        let ffi_result = {
113215            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113216        };
113217        ::cpp_core::Ptr::from_raw(ffi_result)
113218    }
113219}
113220
113221impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfAccessType {
113222    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType* ptr)```</span>.
113223    #[inline(always)]
113224    unsafe fn static_upcast(
113225        ptr: ::cpp_core::Ptr<crate::SignalOfAccessType>,
113226    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113227        let ffi_result = {
113228            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr248(
113229                ptr.as_raw_ptr() as *mut crate::SignalOfAccessType
113230            )
113231        };
113232        ::cpp_core::Ptr::from_raw(ffi_result)
113233    }
113234}
113235
113236impl ::std::ops::Deref for crate::SignalOfAccessType {
113237    type Target = ::qt_core::QObject;
113238    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType* ptr)```</span>.
113239    #[inline(always)]
113240    fn deref(&self) -> &::qt_core::QObject {
113241        let ffi_result = {
113242            unsafe {
113243                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr248(
113244                    self as *const crate::SignalOfAccessType as *mut crate::SignalOfAccessType,
113245                )
113246            }
113247        };
113248        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113249    }
113250}
113251
113252impl ::cpp_core::DynamicCast<crate::SignalOfAccessType> for ::qt_core::QObject {
113253    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType*>(QObject* ptr)```</span>.
113254    #[inline(always)]
113255    unsafe fn dynamic_cast(
113256        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113257    ) -> ::cpp_core::Ptr<crate::SignalOfAccessType> {
113258        let ffi_result = {
113259            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_AccessType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113260        };
113261        ::cpp_core::Ptr::from_raw(ffi_result)
113262    }
113263}
113264
113265impl ::cpp_core::StaticDowncast<crate::SignalOfPrimitiveType> for ::qt_core::QObject {
113266    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType*>(QObject* ptr)```</span>.
113267    #[inline(always)]
113268    unsafe fn static_downcast(
113269        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113270    ) -> ::cpp_core::Ptr<crate::SignalOfPrimitiveType> {
113271        let ffi_result = {
113272            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113273        };
113274        ::cpp_core::Ptr::from_raw(ffi_result)
113275    }
113276}
113277
113278impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfPrimitiveType {
113279    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType* ptr)```</span>.
113280    #[inline(always)]
113281    unsafe fn static_upcast(
113282        ptr: ::cpp_core::Ptr<crate::SignalOfPrimitiveType>,
113283    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113284        let ffi_result = {
113285            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr250(
113286                ptr.as_raw_ptr() as *mut crate::SignalOfPrimitiveType
113287            )
113288        };
113289        ::cpp_core::Ptr::from_raw(ffi_result)
113290    }
113291}
113292
113293impl ::std::ops::Deref for crate::SignalOfPrimitiveType {
113294    type Target = ::qt_core::QObject;
113295    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType* ptr)```</span>.
113296    #[inline(always)]
113297    fn deref(&self) -> &::qt_core::QObject {
113298        let ffi_result = {
113299            unsafe {
113300                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr250(
113301                    self as *const crate::SignalOfPrimitiveType
113302                        as *mut crate::SignalOfPrimitiveType,
113303                )
113304            }
113305        };
113306        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113307    }
113308}
113309
113310impl ::cpp_core::DynamicCast<crate::SignalOfPrimitiveType> for ::qt_core::QObject {
113311    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType*>(QObject* ptr)```</span>.
113312    #[inline(always)]
113313    unsafe fn dynamic_cast(
113314        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113315    ) -> ::cpp_core::Ptr<crate::SignalOfPrimitiveType> {
113316        let ffi_result = {
113317            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113318        };
113319        ::cpp_core::Ptr::from_raw(ffi_result)
113320    }
113321}
113322
113323impl ::cpp_core::StaticDowncast<crate::SignalOfQLevelOfDetailBoundingSphere>
113324    for ::qt_core::QObject
113325{
113326    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref*>(QObject* ptr)```</span>.
113327    #[inline(always)]
113328    unsafe fn static_downcast(
113329        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113330    ) -> ::cpp_core::Ptr<crate::SignalOfQLevelOfDetailBoundingSphere> {
113331        let ffi_result = {
113332            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113333        };
113334        ::cpp_core::Ptr::from_raw(ffi_result)
113335    }
113336}
113337
113338impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQLevelOfDetailBoundingSphere {
113339    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref* ptr)```</span>.
113340    #[inline(always)]
113341    unsafe fn static_upcast(
113342        ptr: ::cpp_core::Ptr<crate::SignalOfQLevelOfDetailBoundingSphere>,
113343    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113344        let ffi_result = {
113345            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr252(
113346                ptr.as_raw_ptr() as *mut crate::SignalOfQLevelOfDetailBoundingSphere
113347            )
113348        };
113349        ::cpp_core::Ptr::from_raw(ffi_result)
113350    }
113351}
113352
113353impl ::std::ops::Deref for crate::SignalOfQLevelOfDetailBoundingSphere {
113354    type Target = ::qt_core::QObject;
113355    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref* ptr)```</span>.
113356    #[inline(always)]
113357    fn deref(&self) -> &::qt_core::QObject {
113358        let ffi_result = {
113359            unsafe {
113360                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr252(
113361                    self as *const crate::SignalOfQLevelOfDetailBoundingSphere
113362                        as *mut crate::SignalOfQLevelOfDetailBoundingSphere,
113363                )
113364            }
113365        };
113366        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113367    }
113368}
113369
113370impl ::cpp_core::DynamicCast<crate::SignalOfQLevelOfDetailBoundingSphere> for ::qt_core::QObject {
113371    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref*>(QObject* ptr)```</span>.
113372    #[inline(always)]
113373    unsafe fn dynamic_cast(
113374        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113375    ) -> ::cpp_core::Ptr<crate::SignalOfQLevelOfDetailBoundingSphere> {
113376        let ffi_result = {
113377            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113378        };
113379        ::cpp_core::Ptr::from_raw(ffi_result)
113380    }
113381}
113382
113383impl ::cpp_core::StaticDowncast<crate::SignalOfPickMethod> for ::qt_core::QObject {
113384    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod*>(QObject* ptr)```</span>.
113385    #[inline(always)]
113386    unsafe fn static_downcast(
113387        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113388    ) -> ::cpp_core::Ptr<crate::SignalOfPickMethod> {
113389        let ffi_result = {
113390            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113391        };
113392        ::cpp_core::Ptr::from_raw(ffi_result)
113393    }
113394}
113395
113396impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfPickMethod {
113397    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod* ptr)```</span>.
113398    #[inline(always)]
113399    unsafe fn static_upcast(
113400        ptr: ::cpp_core::Ptr<crate::SignalOfPickMethod>,
113401    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113402        let ffi_result = {
113403            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr254(
113404                ptr.as_raw_ptr() as *mut crate::SignalOfPickMethod
113405            )
113406        };
113407        ::cpp_core::Ptr::from_raw(ffi_result)
113408    }
113409}
113410
113411impl ::std::ops::Deref for crate::SignalOfPickMethod {
113412    type Target = ::qt_core::QObject;
113413    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod* ptr)```</span>.
113414    #[inline(always)]
113415    fn deref(&self) -> &::qt_core::QObject {
113416        let ffi_result = {
113417            unsafe {
113418                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr254(
113419                    self as *const crate::SignalOfPickMethod as *mut crate::SignalOfPickMethod,
113420                )
113421            }
113422        };
113423        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113424    }
113425}
113426
113427impl ::cpp_core::DynamicCast<crate::SignalOfPickMethod> for ::qt_core::QObject {
113428    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod*>(QObject* ptr)```</span>.
113429    #[inline(always)]
113430    unsafe fn dynamic_cast(
113431        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113432    ) -> ::cpp_core::Ptr<crate::SignalOfPickMethod> {
113433        let ffi_result = {
113434            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickMethod_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113435        };
113436        ::cpp_core::Ptr::from_raw(ffi_result)
113437    }
113438}
113439
113440impl ::cpp_core::StaticDowncast<crate::SignalOfSizeMode> for ::qt_core::QObject {
113441    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode*>(QObject* ptr)```</span>.
113442    #[inline(always)]
113443    unsafe fn static_downcast(
113444        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113445    ) -> ::cpp_core::Ptr<crate::SignalOfSizeMode> {
113446        let ffi_result = {
113447            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113448        };
113449        ::cpp_core::Ptr::from_raw(ffi_result)
113450    }
113451}
113452
113453impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfSizeMode {
113454    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode* ptr)```</span>.
113455    #[inline(always)]
113456    unsafe fn static_upcast(
113457        ptr: ::cpp_core::Ptr<crate::SignalOfSizeMode>,
113458    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113459        let ffi_result = {
113460            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr256(
113461                ptr.as_raw_ptr() as *mut crate::SignalOfSizeMode
113462            )
113463        };
113464        ::cpp_core::Ptr::from_raw(ffi_result)
113465    }
113466}
113467
113468impl ::std::ops::Deref for crate::SignalOfSizeMode {
113469    type Target = ::qt_core::QObject;
113470    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode* ptr)```</span>.
113471    #[inline(always)]
113472    fn deref(&self) -> &::qt_core::QObject {
113473        let ffi_result = {
113474            unsafe {
113475                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr256(
113476                    self as *const crate::SignalOfSizeMode as *mut crate::SignalOfSizeMode,
113477                )
113478            }
113479        };
113480        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113481    }
113482}
113483
113484impl ::cpp_core::DynamicCast<crate::SignalOfSizeMode> for ::qt_core::QObject {
113485    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode*>(QObject* ptr)```</span>.
113486    #[inline(always)]
113487    unsafe fn dynamic_cast(
113488        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113489    ) -> ::cpp_core::Ptr<crate::SignalOfSizeMode> {
113490        let ffi_result = {
113491            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPointSize_SizeMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113492        };
113493        ::cpp_core::Ptr::from_raw(ffi_result)
113494    }
113495}
113496
113497impl ::cpp_core::StaticDowncast<crate::SignalOfOperation> for ::qt_core::QObject {
113498    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation*>(QObject* ptr)```</span>.
113499    #[inline(always)]
113500    unsafe fn static_downcast(
113501        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113502    ) -> ::cpp_core::Ptr<crate::SignalOfOperation> {
113503        let ffi_result = {
113504            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113505        };
113506        ::cpp_core::Ptr::from_raw(ffi_result)
113507    }
113508}
113509
113510impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfOperation {
113511    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation* ptr)```</span>.
113512    #[inline(always)]
113513    unsafe fn static_upcast(
113514        ptr: ::cpp_core::Ptr<crate::SignalOfOperation>,
113515    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113516        let ffi_result = {
113517            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr258(
113518                ptr.as_raw_ptr() as *mut crate::SignalOfOperation
113519            )
113520        };
113521        ::cpp_core::Ptr::from_raw(ffi_result)
113522    }
113523}
113524
113525impl ::std::ops::Deref for crate::SignalOfOperation {
113526    type Target = ::qt_core::QObject;
113527    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation* ptr)```</span>.
113528    #[inline(always)]
113529    fn deref(&self) -> &::qt_core::QObject {
113530        let ffi_result = {
113531            unsafe {
113532                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr258(
113533                    self as *const crate::SignalOfOperation as *mut crate::SignalOfOperation,
113534                )
113535            }
113536        };
113537        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113538    }
113539}
113540
113541impl ::cpp_core::DynamicCast<crate::SignalOfOperation> for ::qt_core::QObject {
113542    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation*>(QObject* ptr)```</span>.
113543    #[inline(always)]
113544    unsafe fn dynamic_cast(
113545        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113546    ) -> ::cpp_core::Ptr<crate::SignalOfOperation> {
113547        let ffi_result = {
113548            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilOperationArguments_Operation_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113549        };
113550        ::cpp_core::Ptr::from_raw(ffi_result)
113551    }
113552}
113553
113554impl ::cpp_core::StaticDowncast<crate::SignalOfQPoint> for ::qt_core::QObject {
113555    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref*>(QObject* ptr)```</span>.
113556    #[inline(always)]
113557    unsafe fn static_downcast(
113558        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113559    ) -> ::cpp_core::Ptr<crate::SignalOfQPoint> {
113560        let ffi_result = {
113561            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113562        };
113563        ::cpp_core::Ptr::from_raw(ffi_result)
113564    }
113565}
113566
113567impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQPoint {
113568    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref* ptr)```</span>.
113569    #[inline(always)]
113570    unsafe fn static_upcast(
113571        ptr: ::cpp_core::Ptr<crate::SignalOfQPoint>,
113572    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113573        let ffi_result = {
113574            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr260(
113575                ptr.as_raw_ptr() as *mut crate::SignalOfQPoint
113576            )
113577        };
113578        ::cpp_core::Ptr::from_raw(ffi_result)
113579    }
113580}
113581
113582impl ::std::ops::Deref for crate::SignalOfQPoint {
113583    type Target = ::qt_core::QObject;
113584    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref* ptr)```</span>.
113585    #[inline(always)]
113586    fn deref(&self) -> &::qt_core::QObject {
113587        let ffi_result = {
113588            unsafe {
113589                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr260(
113590                    self as *const crate::SignalOfQPoint as *mut crate::SignalOfQPoint,
113591                )
113592            }
113593        };
113594        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113595    }
113596}
113597
113598impl ::cpp_core::DynamicCast<crate::SignalOfQPoint> for ::qt_core::QObject {
113599    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref*>(QObject* ptr)```</span>.
113600    #[inline(always)]
113601    unsafe fn dynamic_cast(
113602        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113603    ) -> ::cpp_core::Ptr<crate::SignalOfQPoint> {
113604        let ffi_result = {
113605            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QPoint_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113606        };
113607        ::cpp_core::Ptr::from_raw(ffi_result)
113608    }
113609}
113610
113611impl ::cpp_core::StaticDowncast<crate::SignalOfQVariant> for ::qt_core::QObject {
113612    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVariant* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVariant*>(QObject* ptr)```</span>.
113613    #[inline(always)]
113614    unsafe fn static_downcast(
113615        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113616    ) -> ::cpp_core::Ptr<crate::SignalOfQVariant> {
113617        let ffi_result = {
113618            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113619        };
113620        ::cpp_core::Ptr::from_raw(ffi_result)
113621    }
113622}
113623
113624impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQVariant {
113625    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVariant* ptr)```</span>.
113626    #[inline(always)]
113627    unsafe fn static_upcast(
113628        ptr: ::cpp_core::Ptr<crate::SignalOfQVariant>,
113629    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113630        let ffi_result = {
113631            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr262(
113632                ptr.as_raw_ptr() as *mut crate::SignalOfQVariant
113633            )
113634        };
113635        ::cpp_core::Ptr::from_raw(ffi_result)
113636    }
113637}
113638
113639impl ::std::ops::Deref for crate::SignalOfQVariant {
113640    type Target = ::qt_core::QObject;
113641    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVariant* ptr)```</span>.
113642    #[inline(always)]
113643    fn deref(&self) -> &::qt_core::QObject {
113644        let ffi_result = {
113645            unsafe {
113646                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr262(
113647                    self as *const crate::SignalOfQVariant as *mut crate::SignalOfQVariant,
113648                )
113649            }
113650        };
113651        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113652    }
113653}
113654
113655impl ::cpp_core::DynamicCast<crate::SignalOfQVariant> for ::qt_core::QObject {
113656    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVariant* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVariant*>(QObject* ptr)```</span>.
113657    #[inline(always)]
113658    unsafe fn dynamic_cast(
113659        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113660    ) -> ::cpp_core::Ptr<crate::SignalOfQVariant> {
113661        let ffi_result = {
113662            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVariant_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113663        };
113664        ::cpp_core::Ptr::from_raw(ffi_result)
113665    }
113666}
113667
113668impl ::cpp_core::StaticDowncast<crate::SignalOfQFlagsOperation> for ::qt_core::QObject {
113669    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation*>(QObject* ptr)```</span>.
113670    #[inline(always)]
113671    unsafe fn static_downcast(
113672        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113673    ) -> ::cpp_core::Ptr<crate::SignalOfQFlagsOperation> {
113674        let ffi_result = {
113675            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113676        };
113677        ::cpp_core::Ptr::from_raw(ffi_result)
113678    }
113679}
113680
113681impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQFlagsOperation {
113682    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation* ptr)```</span>.
113683    #[inline(always)]
113684    unsafe fn static_upcast(
113685        ptr: ::cpp_core::Ptr<crate::SignalOfQFlagsOperation>,
113686    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113687        let ffi_result = {
113688            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr264(
113689                ptr.as_raw_ptr() as *mut crate::SignalOfQFlagsOperation
113690            )
113691        };
113692        ::cpp_core::Ptr::from_raw(ffi_result)
113693    }
113694}
113695
113696impl ::std::ops::Deref for crate::SignalOfQFlagsOperation {
113697    type Target = ::qt_core::QObject;
113698    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation* ptr)```</span>.
113699    #[inline(always)]
113700    fn deref(&self) -> &::qt_core::QObject {
113701        let ffi_result = {
113702            unsafe {
113703                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr264(
113704                    self as *const crate::SignalOfQFlagsOperation
113705                        as *mut crate::SignalOfQFlagsOperation,
113706                )
113707            }
113708        };
113709        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113710    }
113711}
113712
113713impl ::cpp_core::DynamicCast<crate::SignalOfQFlagsOperation> for ::qt_core::QObject {
113714    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation*>(QObject* ptr)```</span>.
113715    #[inline(always)]
113716    unsafe fn dynamic_cast(
113717        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113718    ) -> ::cpp_core::Ptr<crate::SignalOfQFlagsOperation> {
113719        let ffi_result = {
113720            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113721        };
113722        ::cpp_core::Ptr::from_raw(ffi_result)
113723    }
113724}
113725
113726#[cfg_attr(
113727    feature = "ritual_rustdoc_nightly",
113728    doc(cfg(any(
113729        cpp_lib_version = "5.14.0",
113730        cpp_lib_version = "5.11.3",
113731        cpp_lib_version = "5.12.2",
113732        cpp_lib_version = "5.13.0"
113733    )))
113734)]
113735#[cfg(any(
113736    any(
113737        cpp_lib_version = "5.14.0",
113738        cpp_lib_version = "5.11.3",
113739        cpp_lib_version = "5.12.2",
113740        cpp_lib_version = "5.13.0"
113741    ),
113742    feature = "ritual_rustdoc"
113743))]
113744impl ::cpp_core::StaticDowncast<crate::SignalOfRunMode> for ::qt_core::QObject {
113745    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode*>(QObject* ptr)```</span>.
113746    #[inline(always)]
113747    unsafe fn static_downcast(
113748        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113749    ) -> ::cpp_core::Ptr<crate::SignalOfRunMode> {
113750        let ffi_result = {
113751            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113752        };
113753        ::cpp_core::Ptr::from_raw(ffi_result)
113754    }
113755}
113756
113757#[cfg_attr(
113758    feature = "ritual_rustdoc_nightly",
113759    doc(cfg(any(
113760        cpp_lib_version = "5.14.0",
113761        cpp_lib_version = "5.11.3",
113762        cpp_lib_version = "5.12.2",
113763        cpp_lib_version = "5.13.0"
113764    )))
113765)]
113766#[cfg(any(
113767    any(
113768        cpp_lib_version = "5.14.0",
113769        cpp_lib_version = "5.11.3",
113770        cpp_lib_version = "5.12.2",
113771        cpp_lib_version = "5.13.0"
113772    ),
113773    feature = "ritual_rustdoc"
113774))]
113775impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfRunMode {
113776    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode* ptr)```</span>.
113777    #[inline(always)]
113778    unsafe fn static_upcast(
113779        ptr: ::cpp_core::Ptr<crate::SignalOfRunMode>,
113780    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113781        let ffi_result = {
113782            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr266(
113783                ptr.as_raw_ptr() as *mut crate::SignalOfRunMode
113784            )
113785        };
113786        ::cpp_core::Ptr::from_raw(ffi_result)
113787    }
113788}
113789
113790#[cfg_attr(
113791    feature = "ritual_rustdoc_nightly",
113792    doc(cfg(any(
113793        cpp_lib_version = "5.14.0",
113794        cpp_lib_version = "5.11.3",
113795        cpp_lib_version = "5.12.2",
113796        cpp_lib_version = "5.13.0"
113797    )))
113798)]
113799#[cfg(any(
113800    any(
113801        cpp_lib_version = "5.14.0",
113802        cpp_lib_version = "5.11.3",
113803        cpp_lib_version = "5.12.2",
113804        cpp_lib_version = "5.13.0"
113805    ),
113806    feature = "ritual_rustdoc"
113807))]
113808impl ::std::ops::Deref for crate::SignalOfRunMode {
113809    type Target = ::qt_core::QObject;
113810    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode* ptr)```</span>.
113811    #[inline(always)]
113812    fn deref(&self) -> &::qt_core::QObject {
113813        let ffi_result = {
113814            unsafe {
113815                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr266(
113816                    self as *const crate::SignalOfRunMode as *mut crate::SignalOfRunMode,
113817                )
113818            }
113819        };
113820        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113821    }
113822}
113823
113824#[cfg_attr(
113825    feature = "ritual_rustdoc_nightly",
113826    doc(cfg(any(
113827        cpp_lib_version = "5.14.0",
113828        cpp_lib_version = "5.11.3",
113829        cpp_lib_version = "5.12.2",
113830        cpp_lib_version = "5.13.0"
113831    )))
113832)]
113833#[cfg(any(
113834    any(
113835        cpp_lib_version = "5.14.0",
113836        cpp_lib_version = "5.11.3",
113837        cpp_lib_version = "5.12.2",
113838        cpp_lib_version = "5.13.0"
113839    ),
113840    feature = "ritual_rustdoc"
113841))]
113842impl ::cpp_core::DynamicCast<crate::SignalOfRunMode> for ::qt_core::QObject {
113843    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode*>(QObject* ptr)```</span>.
113844    #[inline(always)]
113845    unsafe fn dynamic_cast(
113846        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113847    ) -> ::cpp_core::Ptr<crate::SignalOfRunMode> {
113848        let ffi_result = {
113849            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113850        };
113851        ::cpp_core::Ptr::from_raw(ffi_result)
113852    }
113853}
113854
113855#[cfg_attr(
113856    feature = "ritual_rustdoc_nightly",
113857    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
113858)]
113859#[cfg(any(
113860    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
113861    feature = "ritual_rustdoc"
113862))]
113863impl ::cpp_core::StaticDowncast<crate::SignalOfHandleType> for ::qt_core::QObject {
113864    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType*>(QObject* ptr)```</span>.
113865    #[inline(always)]
113866    unsafe fn static_downcast(
113867        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113868    ) -> ::cpp_core::Ptr<crate::SignalOfHandleType> {
113869        let ffi_result = {
113870            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113871        };
113872        ::cpp_core::Ptr::from_raw(ffi_result)
113873    }
113874}
113875
113876#[cfg_attr(
113877    feature = "ritual_rustdoc_nightly",
113878    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
113879)]
113880#[cfg(any(
113881    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
113882    feature = "ritual_rustdoc"
113883))]
113884impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfHandleType {
113885    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType* ptr)```</span>.
113886    #[inline(always)]
113887    unsafe fn static_upcast(
113888        ptr: ::cpp_core::Ptr<crate::SignalOfHandleType>,
113889    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113890        let ffi_result = {
113891            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr268(
113892                ptr.as_raw_ptr() as *mut crate::SignalOfHandleType
113893            )
113894        };
113895        ::cpp_core::Ptr::from_raw(ffi_result)
113896    }
113897}
113898
113899#[cfg_attr(
113900    feature = "ritual_rustdoc_nightly",
113901    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
113902)]
113903#[cfg(any(
113904    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
113905    feature = "ritual_rustdoc"
113906))]
113907impl ::std::ops::Deref for crate::SignalOfHandleType {
113908    type Target = ::qt_core::QObject;
113909    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType* ptr)```</span>.
113910    #[inline(always)]
113911    fn deref(&self) -> &::qt_core::QObject {
113912        let ffi_result = {
113913            unsafe {
113914                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr268(
113915                    self as *const crate::SignalOfHandleType as *mut crate::SignalOfHandleType,
113916                )
113917            }
113918        };
113919        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113920    }
113921}
113922
113923#[cfg_attr(
113924    feature = "ritual_rustdoc_nightly",
113925    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
113926)]
113927#[cfg(any(
113928    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
113929    feature = "ritual_rustdoc"
113930))]
113931impl ::cpp_core::DynamicCast<crate::SignalOfHandleType> for ::qt_core::QObject {
113932    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType*>(QObject* ptr)```</span>.
113933    #[inline(always)]
113934    unsafe fn dynamic_cast(
113935        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113936    ) -> ::cpp_core::Ptr<crate::SignalOfHandleType> {
113937        let ffi_result = {
113938            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSetFence_HandleType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113939        };
113940        ::cpp_core::Ptr::from_raw(ffi_result)
113941    }
113942}
113943
113944impl ::cpp_core::StaticDowncast<crate::SignalOfU64> for ::qt_core::QObject {
113945    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_quint64* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_quint64*>(QObject* ptr)```</span>.
113946    #[inline(always)]
113947    unsafe fn static_downcast(
113948        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113949    ) -> ::cpp_core::Ptr<crate::SignalOfU64> {
113950        let ffi_result = {
113951            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_quint64_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113952        };
113953        ::cpp_core::Ptr::from_raw(ffi_result)
113954    }
113955}
113956
113957impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfU64 {
113958    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_quint64* ptr)```</span>.
113959    #[inline(always)]
113960    unsafe fn static_upcast(
113961        ptr: ::cpp_core::Ptr<crate::SignalOfU64>,
113962    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
113963        let ffi_result = {
113964            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr270(
113965                ptr.as_raw_ptr() as *mut crate::SignalOfU64
113966            )
113967        };
113968        ::cpp_core::Ptr::from_raw(ffi_result)
113969    }
113970}
113971
113972impl ::std::ops::Deref for crate::SignalOfU64 {
113973    type Target = ::qt_core::QObject;
113974    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_quint64* ptr)```</span>.
113975    #[inline(always)]
113976    fn deref(&self) -> &::qt_core::QObject {
113977        let ffi_result = {
113978            unsafe {
113979                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr270(
113980                    self as *const crate::SignalOfU64 as *mut crate::SignalOfU64,
113981                )
113982            }
113983        };
113984        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
113985    }
113986}
113987
113988impl ::cpp_core::DynamicCast<crate::SignalOfU64> for ::qt_core::QObject {
113989    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_quint64* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_quint64*>(QObject* ptr)```</span>.
113990    #[inline(always)]
113991    unsafe fn dynamic_cast(
113992        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
113993    ) -> ::cpp_core::Ptr<crate::SignalOfU64> {
113994        let ffi_result = {
113995            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_quint64_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
113996        };
113997        ::cpp_core::Ptr::from_raw(ffi_result)
113998    }
113999}
114000
114001impl ::cpp_core::StaticDowncast<crate::SignalOfQRenderTarget> for ::qt_core::QObject {
114002    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr*>(QObject* ptr)```</span>.
114003    #[inline(always)]
114004    unsafe fn static_downcast(
114005        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114006    ) -> ::cpp_core::Ptr<crate::SignalOfQRenderTarget> {
114007        let ffi_result = {
114008            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114009        };
114010        ::cpp_core::Ptr::from_raw(ffi_result)
114011    }
114012}
114013
114014impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQRenderTarget {
114015    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr* ptr)```</span>.
114016    #[inline(always)]
114017    unsafe fn static_upcast(
114018        ptr: ::cpp_core::Ptr<crate::SignalOfQRenderTarget>,
114019    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114020        let ffi_result = {
114021            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr272(
114022                ptr.as_raw_ptr() as *mut crate::SignalOfQRenderTarget
114023            )
114024        };
114025        ::cpp_core::Ptr::from_raw(ffi_result)
114026    }
114027}
114028
114029impl ::std::ops::Deref for crate::SignalOfQRenderTarget {
114030    type Target = ::qt_core::QObject;
114031    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr* ptr)```</span>.
114032    #[inline(always)]
114033    fn deref(&self) -> &::qt_core::QObject {
114034        let ffi_result = {
114035            unsafe {
114036                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr272(
114037                    self as *const crate::SignalOfQRenderTarget
114038                        as *mut crate::SignalOfQRenderTarget,
114039                )
114040            }
114041        };
114042        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114043    }
114044}
114045
114046impl ::cpp_core::DynamicCast<crate::SignalOfQRenderTarget> for ::qt_core::QObject {
114047    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr*>(QObject* ptr)```</span>.
114048    #[inline(always)]
114049    unsafe fn dynamic_cast(
114050        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114051    ) -> ::cpp_core::Ptr<crate::SignalOfQRenderTarget> {
114052        let ffi_result = {
114053            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTarget_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114054        };
114055        ::cpp_core::Ptr::from_raw(ffi_result)
114056    }
114057}
114058
114059impl ::cpp_core::StaticDowncast<crate::SignalOfStatus> for ::qt_core::QObject {
114060    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status*>(QObject* ptr)```</span>.
114061    #[inline(always)]
114062    unsafe fn static_downcast(
114063        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114064    ) -> ::cpp_core::Ptr<crate::SignalOfStatus> {
114065        let ffi_result = {
114066            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114067        };
114068        ::cpp_core::Ptr::from_raw(ffi_result)
114069    }
114070}
114071
114072impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfStatus {
114073    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status* ptr)```</span>.
114074    #[inline(always)]
114075    unsafe fn static_upcast(
114076        ptr: ::cpp_core::Ptr<crate::SignalOfStatus>,
114077    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114078        let ffi_result = {
114079            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr274(
114080                ptr.as_raw_ptr() as *mut crate::SignalOfStatus
114081            )
114082        };
114083        ::cpp_core::Ptr::from_raw(ffi_result)
114084    }
114085}
114086
114087impl ::std::ops::Deref for crate::SignalOfStatus {
114088    type Target = ::qt_core::QObject;
114089    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status* ptr)```</span>.
114090    #[inline(always)]
114091    fn deref(&self) -> &::qt_core::QObject {
114092        let ffi_result = {
114093            unsafe {
114094                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr274(
114095                    self as *const crate::SignalOfStatus as *mut crate::SignalOfStatus,
114096                )
114097            }
114098        };
114099        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114100    }
114101}
114102
114103impl ::cpp_core::DynamicCast<crate::SignalOfStatus> for ::qt_core::QObject {
114104    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status*>(QObject* ptr)```</span>.
114105    #[inline(always)]
114106    unsafe fn dynamic_cast(
114107        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114108    ) -> ::cpp_core::Ptr<crate::SignalOfStatus> {
114109        let ffi_result = {
114110            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114111        };
114112        ::cpp_core::Ptr::from_raw(ffi_result)
114113    }
114114}
114115
114116impl ::cpp_core::StaticDowncast<crate::SignalOfBufferType> for ::qt_core::QObject {
114117    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType*>(QObject* ptr)```</span>.
114118    #[inline(always)]
114119    unsafe fn static_downcast(
114120        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114121    ) -> ::cpp_core::Ptr<crate::SignalOfBufferType> {
114122        let ffi_result = {
114123            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114124        };
114125        ::cpp_core::Ptr::from_raw(ffi_result)
114126    }
114127}
114128
114129impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfBufferType {
114130    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType* ptr)```</span>.
114131    #[inline(always)]
114132    unsafe fn static_upcast(
114133        ptr: ::cpp_core::Ptr<crate::SignalOfBufferType>,
114134    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114135        let ffi_result = {
114136            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr276(
114137                ptr.as_raw_ptr() as *mut crate::SignalOfBufferType
114138            )
114139        };
114140        ::cpp_core::Ptr::from_raw(ffi_result)
114141    }
114142}
114143
114144impl ::std::ops::Deref for crate::SignalOfBufferType {
114145    type Target = ::qt_core::QObject;
114146    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType* ptr)```</span>.
114147    #[inline(always)]
114148    fn deref(&self) -> &::qt_core::QObject {
114149        let ffi_result = {
114150            unsafe {
114151                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr276(
114152                    self as *const crate::SignalOfBufferType as *mut crate::SignalOfBufferType,
114153                )
114154            }
114155        };
114156        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114157    }
114158}
114159
114160impl ::cpp_core::DynamicCast<crate::SignalOfBufferType> for ::qt_core::QObject {
114161    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType*>(QObject* ptr)```</span>.
114162    #[inline(always)]
114163    unsafe fn dynamic_cast(
114164        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114165    ) -> ::cpp_core::Ptr<crate::SignalOfBufferType> {
114166        let ffi_result = {
114167            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_BufferType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114168        };
114169        ::cpp_core::Ptr::from_raw(ffi_result)
114170    }
114171}
114172
114173impl ::cpp_core::StaticDowncast<crate::SignalOfAttributeType> for ::qt_core::QObject {
114174    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType*>(QObject* ptr)```</span>.
114175    #[inline(always)]
114176    unsafe fn static_downcast(
114177        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114178    ) -> ::cpp_core::Ptr<crate::SignalOfAttributeType> {
114179        let ffi_result = {
114180            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114181        };
114182        ::cpp_core::Ptr::from_raw(ffi_result)
114183    }
114184}
114185
114186impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfAttributeType {
114187    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType* ptr)```</span>.
114188    #[inline(always)]
114189    unsafe fn static_upcast(
114190        ptr: ::cpp_core::Ptr<crate::SignalOfAttributeType>,
114191    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114192        let ffi_result = {
114193            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr278(
114194                ptr.as_raw_ptr() as *mut crate::SignalOfAttributeType
114195            )
114196        };
114197        ::cpp_core::Ptr::from_raw(ffi_result)
114198    }
114199}
114200
114201impl ::std::ops::Deref for crate::SignalOfAttributeType {
114202    type Target = ::qt_core::QObject;
114203    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType* ptr)```</span>.
114204    #[inline(always)]
114205    fn deref(&self) -> &::qt_core::QObject {
114206        let ffi_result = {
114207            unsafe {
114208                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr278(
114209                    self as *const crate::SignalOfAttributeType
114210                        as *mut crate::SignalOfAttributeType,
114211                )
114212            }
114213        };
114214        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114215    }
114216}
114217
114218impl ::cpp_core::DynamicCast<crate::SignalOfAttributeType> for ::qt_core::QObject {
114219    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType*>(QObject* ptr)```</span>.
114220    #[inline(always)]
114221    unsafe fn dynamic_cast(
114222        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114223    ) -> ::cpp_core::Ptr<crate::SignalOfAttributeType> {
114224        let ffi_result = {
114225            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAttribute_AttributeType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114226        };
114227        ::cpp_core::Ptr::from_raw(ffi_result)
114228    }
114229}
114230
114231impl ::cpp_core::StaticDowncast<crate::SignalOfQVectorOfInt> for ::qt_core::QObject {
114232    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref*>(QObject* ptr)```</span>.
114233    #[inline(always)]
114234    unsafe fn static_downcast(
114235        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114236    ) -> ::cpp_core::Ptr<crate::SignalOfQVectorOfInt> {
114237        let ffi_result = {
114238            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114239        };
114240        ::cpp_core::Ptr::from_raw(ffi_result)
114241    }
114242}
114243
114244impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQVectorOfInt {
114245    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref* ptr)```</span>.
114246    #[inline(always)]
114247    unsafe fn static_upcast(
114248        ptr: ::cpp_core::Ptr<crate::SignalOfQVectorOfInt>,
114249    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114250        let ffi_result = {
114251            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr280(
114252                ptr.as_raw_ptr() as *mut crate::SignalOfQVectorOfInt
114253            )
114254        };
114255        ::cpp_core::Ptr::from_raw(ffi_result)
114256    }
114257}
114258
114259impl ::std::ops::Deref for crate::SignalOfQVectorOfInt {
114260    type Target = ::qt_core::QObject;
114261    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref* ptr)```</span>.
114262    #[inline(always)]
114263    fn deref(&self) -> &::qt_core::QObject {
114264        let ffi_result = {
114265            unsafe {
114266                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr280(
114267                    self as *const crate::SignalOfQVectorOfInt as *mut crate::SignalOfQVectorOfInt,
114268                )
114269            }
114270        };
114271        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114272    }
114273}
114274
114275impl ::cpp_core::DynamicCast<crate::SignalOfQVectorOfInt> for ::qt_core::QObject {
114276    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref*>(QObject* ptr)```</span>.
114277    #[inline(always)]
114278    unsafe fn dynamic_cast(
114279        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114280    ) -> ::cpp_core::Ptr<crate::SignalOfQVectorOfInt> {
114281        let ffi_result = {
114282            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector_int_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114283        };
114284        ::cpp_core::Ptr::from_raw(ffi_result)
114285    }
114286}
114287
114288impl ::cpp_core::StaticDowncast<crate::SignalOfQFrameGraphNode> for ::qt_core::QObject {
114289    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr*>(QObject* ptr)```</span>.
114290    #[inline(always)]
114291    unsafe fn static_downcast(
114292        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114293    ) -> ::cpp_core::Ptr<crate::SignalOfQFrameGraphNode> {
114294        let ffi_result = {
114295            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114296        };
114297        ::cpp_core::Ptr::from_raw(ffi_result)
114298    }
114299}
114300
114301impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQFrameGraphNode {
114302    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr* ptr)```</span>.
114303    #[inline(always)]
114304    unsafe fn static_upcast(
114305        ptr: ::cpp_core::Ptr<crate::SignalOfQFrameGraphNode>,
114306    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114307        let ffi_result = {
114308            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr282(
114309                ptr.as_raw_ptr() as *mut crate::SignalOfQFrameGraphNode
114310            )
114311        };
114312        ::cpp_core::Ptr::from_raw(ffi_result)
114313    }
114314}
114315
114316impl ::std::ops::Deref for crate::SignalOfQFrameGraphNode {
114317    type Target = ::qt_core::QObject;
114318    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr* ptr)```</span>.
114319    #[inline(always)]
114320    fn deref(&self) -> &::qt_core::QObject {
114321        let ffi_result = {
114322            unsafe {
114323                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr282(
114324                    self as *const crate::SignalOfQFrameGraphNode
114325                        as *mut crate::SignalOfQFrameGraphNode,
114326                )
114327            }
114328        };
114329        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114330    }
114331}
114332
114333impl ::cpp_core::DynamicCast<crate::SignalOfQFrameGraphNode> for ::qt_core::QObject {
114334    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr*>(QObject* ptr)```</span>.
114335    #[inline(always)]
114336    unsafe fn dynamic_cast(
114337        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114338    ) -> ::cpp_core::Ptr<crate::SignalOfQFrameGraphNode> {
114339        let ffi_result = {
114340            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrameGraphNode_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114341        };
114342        ::cpp_core::Ptr::from_raw(ffi_result)
114343    }
114344}
114345
114346impl ::cpp_core::StaticDowncast<crate::SignalOfStatus2> for ::qt_core::QObject {
114347    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status*>(QObject* ptr)```</span>.
114348    #[inline(always)]
114349    unsafe fn static_downcast(
114350        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114351    ) -> ::cpp_core::Ptr<crate::SignalOfStatus2> {
114352        let ffi_result = {
114353            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114354        };
114355        ::cpp_core::Ptr::from_raw(ffi_result)
114356    }
114357}
114358
114359impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfStatus2 {
114360    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status* ptr)```</span>.
114361    #[inline(always)]
114362    unsafe fn static_upcast(
114363        ptr: ::cpp_core::Ptr<crate::SignalOfStatus2>,
114364    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114365        let ffi_result = {
114366            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr284(
114367                ptr.as_raw_ptr() as *mut crate::SignalOfStatus2
114368            )
114369        };
114370        ::cpp_core::Ptr::from_raw(ffi_result)
114371    }
114372}
114373
114374impl ::std::ops::Deref for crate::SignalOfStatus2 {
114375    type Target = ::qt_core::QObject;
114376    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status* ptr)```</span>.
114377    #[inline(always)]
114378    fn deref(&self) -> &::qt_core::QObject {
114379        let ffi_result = {
114380            unsafe {
114381                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr284(
114382                    self as *const crate::SignalOfStatus2 as *mut crate::SignalOfStatus2,
114383                )
114384            }
114385        };
114386        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114387    }
114388}
114389
114390impl ::cpp_core::DynamicCast<crate::SignalOfStatus2> for ::qt_core::QObject {
114391    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status*>(QObject* ptr)```</span>.
114392    #[inline(always)]
114393    unsafe fn dynamic_cast(
114394        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114395    ) -> ::cpp_core::Ptr<crate::SignalOfStatus2> {
114396        let ffi_result = {
114397            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QTextureImage_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114398        };
114399        ::cpp_core::Ptr::from_raw(ffi_result)
114400    }
114401}
114402
114403#[cfg_attr(
114404    feature = "ritual_rustdoc_nightly",
114405    doc(cfg(any(
114406        cpp_lib_version = "5.14.0",
114407        cpp_lib_version = "5.11.3",
114408        cpp_lib_version = "5.12.2",
114409        cpp_lib_version = "5.13.0"
114410    )))
114411)]
114412#[cfg(any(
114413    any(
114414        cpp_lib_version = "5.14.0",
114415        cpp_lib_version = "5.11.3",
114416        cpp_lib_version = "5.12.2",
114417        cpp_lib_version = "5.13.0"
114418    ),
114419    feature = "ritual_rustdoc"
114420))]
114421impl ::cpp_core::StaticDowncast<crate::SignalOfQVectorOfQRayCasterHit> for ::qt_core::QObject {
114422    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref*>(QObject* ptr)```</span>.
114423    #[inline(always)]
114424    unsafe fn static_downcast(
114425        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114426    ) -> ::cpp_core::Ptr<crate::SignalOfQVectorOfQRayCasterHit> {
114427        let ffi_result = {
114428            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114429        };
114430        ::cpp_core::Ptr::from_raw(ffi_result)
114431    }
114432}
114433
114434#[cfg_attr(
114435    feature = "ritual_rustdoc_nightly",
114436    doc(cfg(any(
114437        cpp_lib_version = "5.14.0",
114438        cpp_lib_version = "5.11.3",
114439        cpp_lib_version = "5.12.2",
114440        cpp_lib_version = "5.13.0"
114441    )))
114442)]
114443#[cfg(any(
114444    any(
114445        cpp_lib_version = "5.14.0",
114446        cpp_lib_version = "5.11.3",
114447        cpp_lib_version = "5.12.2",
114448        cpp_lib_version = "5.13.0"
114449    ),
114450    feature = "ritual_rustdoc"
114451))]
114452impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQVectorOfQRayCasterHit {
114453    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref* ptr)```</span>.
114454    #[inline(always)]
114455    unsafe fn static_upcast(
114456        ptr: ::cpp_core::Ptr<crate::SignalOfQVectorOfQRayCasterHit>,
114457    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114458        let ffi_result = {
114459            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr286(
114460                ptr.as_raw_ptr() as *mut crate::SignalOfQVectorOfQRayCasterHit
114461            )
114462        };
114463        ::cpp_core::Ptr::from_raw(ffi_result)
114464    }
114465}
114466
114467#[cfg_attr(
114468    feature = "ritual_rustdoc_nightly",
114469    doc(cfg(any(
114470        cpp_lib_version = "5.14.0",
114471        cpp_lib_version = "5.11.3",
114472        cpp_lib_version = "5.12.2",
114473        cpp_lib_version = "5.13.0"
114474    )))
114475)]
114476#[cfg(any(
114477    any(
114478        cpp_lib_version = "5.14.0",
114479        cpp_lib_version = "5.11.3",
114480        cpp_lib_version = "5.12.2",
114481        cpp_lib_version = "5.13.0"
114482    ),
114483    feature = "ritual_rustdoc"
114484))]
114485impl ::std::ops::Deref for crate::SignalOfQVectorOfQRayCasterHit {
114486    type Target = ::qt_core::QObject;
114487    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref* ptr)```</span>.
114488    #[inline(always)]
114489    fn deref(&self) -> &::qt_core::QObject {
114490        let ffi_result = {
114491            unsafe {
114492                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr286(
114493                    self as *const crate::SignalOfQVectorOfQRayCasterHit
114494                        as *mut crate::SignalOfQVectorOfQRayCasterHit,
114495                )
114496            }
114497        };
114498        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114499    }
114500}
114501
114502#[cfg_attr(
114503    feature = "ritual_rustdoc_nightly",
114504    doc(cfg(any(
114505        cpp_lib_version = "5.14.0",
114506        cpp_lib_version = "5.11.3",
114507        cpp_lib_version = "5.12.2",
114508        cpp_lib_version = "5.13.0"
114509    )))
114510)]
114511#[cfg(any(
114512    any(
114513        cpp_lib_version = "5.14.0",
114514        cpp_lib_version = "5.11.3",
114515        cpp_lib_version = "5.12.2",
114516        cpp_lib_version = "5.13.0"
114517    ),
114518    feature = "ritual_rustdoc"
114519))]
114520impl ::cpp_core::DynamicCast<crate::SignalOfQVectorOfQRayCasterHit> for ::qt_core::QObject {
114521    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref*>(QObject* ptr)```</span>.
114522    #[inline(always)]
114523    unsafe fn dynamic_cast(
114524        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114525    ) -> ::cpp_core::Ptr<crate::SignalOfQVectorOfQRayCasterHit> {
114526        let ffi_result = {
114527            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114528        };
114529        ::cpp_core::Ptr::from_raw(ffi_result)
114530    }
114531}
114532
114533impl ::cpp_core::StaticDowncast<crate::SignalOfBlendFunction> for ::qt_core::QObject {
114534    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction*>(QObject* ptr)```</span>.
114535    #[inline(always)]
114536    unsafe fn static_downcast(
114537        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114538    ) -> ::cpp_core::Ptr<crate::SignalOfBlendFunction> {
114539        let ffi_result = {
114540            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114541        };
114542        ::cpp_core::Ptr::from_raw(ffi_result)
114543    }
114544}
114545
114546impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfBlendFunction {
114547    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction* ptr)```</span>.
114548    #[inline(always)]
114549    unsafe fn static_upcast(
114550        ptr: ::cpp_core::Ptr<crate::SignalOfBlendFunction>,
114551    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114552        let ffi_result = {
114553            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr288(
114554                ptr.as_raw_ptr() as *mut crate::SignalOfBlendFunction
114555            )
114556        };
114557        ::cpp_core::Ptr::from_raw(ffi_result)
114558    }
114559}
114560
114561impl ::std::ops::Deref for crate::SignalOfBlendFunction {
114562    type Target = ::qt_core::QObject;
114563    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction* ptr)```</span>.
114564    #[inline(always)]
114565    fn deref(&self) -> &::qt_core::QObject {
114566        let ffi_result = {
114567            unsafe {
114568                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr288(
114569                    self as *const crate::SignalOfBlendFunction
114570                        as *mut crate::SignalOfBlendFunction,
114571                )
114572            }
114573        };
114574        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114575    }
114576}
114577
114578impl ::cpp_core::DynamicCast<crate::SignalOfBlendFunction> for ::qt_core::QObject {
114579    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction*>(QObject* ptr)```</span>.
114580    #[inline(always)]
114581    unsafe fn dynamic_cast(
114582        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114583    ) -> ::cpp_core::Ptr<crate::SignalOfBlendFunction> {
114584        let ffi_result = {
114585            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBlendEquation_BlendFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114586        };
114587        ::cpp_core::Ptr::from_raw(ffi_result)
114588    }
114589}
114590
114591impl ::cpp_core::StaticDowncast<crate::SignalOfApi> for ::qt_core::QObject {
114592    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api*>(QObject* ptr)```</span>.
114593    #[inline(always)]
114594    unsafe fn static_downcast(
114595        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114596    ) -> ::cpp_core::Ptr<crate::SignalOfApi> {
114597        let ffi_result = {
114598            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114599        };
114600        ::cpp_core::Ptr::from_raw(ffi_result)
114601    }
114602}
114603
114604impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfApi {
114605    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api* ptr)```</span>.
114606    #[inline(always)]
114607    unsafe fn static_upcast(
114608        ptr: ::cpp_core::Ptr<crate::SignalOfApi>,
114609    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114610        let ffi_result = {
114611            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr290(
114612                ptr.as_raw_ptr() as *mut crate::SignalOfApi
114613            )
114614        };
114615        ::cpp_core::Ptr::from_raw(ffi_result)
114616    }
114617}
114618
114619impl ::std::ops::Deref for crate::SignalOfApi {
114620    type Target = ::qt_core::QObject;
114621    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api* ptr)```</span>.
114622    #[inline(always)]
114623    fn deref(&self) -> &::qt_core::QObject {
114624        let ffi_result = {
114625            unsafe {
114626                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr290(
114627                    self as *const crate::SignalOfApi as *mut crate::SignalOfApi,
114628                )
114629            }
114630        };
114631        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114632    }
114633}
114634
114635impl ::cpp_core::DynamicCast<crate::SignalOfApi> for ::qt_core::QObject {
114636    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api*>(QObject* ptr)```</span>.
114637    #[inline(always)]
114638    unsafe fn dynamic_cast(
114639        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114640    ) -> ::cpp_core::Ptr<crate::SignalOfApi> {
114641        let ffi_result = {
114642            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_Api_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114643        };
114644        ::cpp_core::Ptr::from_raw(ffi_result)
114645    }
114646}
114647
114648impl ::cpp_core::StaticDowncast<crate::SignalOfThresholdType> for ::qt_core::QObject {
114649    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType*>(QObject* ptr)```</span>.
114650    #[inline(always)]
114651    unsafe fn static_downcast(
114652        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114653    ) -> ::cpp_core::Ptr<crate::SignalOfThresholdType> {
114654        let ffi_result = {
114655            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114656        };
114657        ::cpp_core::Ptr::from_raw(ffi_result)
114658    }
114659}
114660
114661impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfThresholdType {
114662    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType* ptr)```</span>.
114663    #[inline(always)]
114664    unsafe fn static_upcast(
114665        ptr: ::cpp_core::Ptr<crate::SignalOfThresholdType>,
114666    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114667        let ffi_result = {
114668            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr292(
114669                ptr.as_raw_ptr() as *mut crate::SignalOfThresholdType
114670            )
114671        };
114672        ::cpp_core::Ptr::from_raw(ffi_result)
114673    }
114674}
114675
114676impl ::std::ops::Deref for crate::SignalOfThresholdType {
114677    type Target = ::qt_core::QObject;
114678    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType* ptr)```</span>.
114679    #[inline(always)]
114680    fn deref(&self) -> &::qt_core::QObject {
114681        let ffi_result = {
114682            unsafe {
114683                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr292(
114684                    self as *const crate::SignalOfThresholdType
114685                        as *mut crate::SignalOfThresholdType,
114686                )
114687            }
114688        };
114689        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114690    }
114691}
114692
114693impl ::cpp_core::DynamicCast<crate::SignalOfThresholdType> for ::qt_core::QObject {
114694    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType*>(QObject* ptr)```</span>.
114695    #[inline(always)]
114696    unsafe fn dynamic_cast(
114697        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114698    ) -> ::cpp_core::Ptr<crate::SignalOfThresholdType> {
114699        let ffi_result = {
114700            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114701        };
114702        ::cpp_core::Ptr::from_raw(ffi_result)
114703    }
114704}
114705
114706#[cfg_attr(
114707    feature = "ritual_rustdoc_nightly",
114708    doc(cfg(any(
114709        cpp_lib_version = "5.14.0",
114710        cpp_lib_version = "5.11.3",
114711        cpp_lib_version = "5.12.2",
114712        cpp_lib_version = "5.13.0"
114713    )))
114714)]
114715#[cfg(any(
114716    any(
114717        cpp_lib_version = "5.14.0",
114718        cpp_lib_version = "5.11.3",
114719        cpp_lib_version = "5.12.2",
114720        cpp_lib_version = "5.13.0"
114721    ),
114722    feature = "ritual_rustdoc"
114723))]
114724impl ::cpp_core::StaticDowncast<crate::SignalOfFilterMode> for ::qt_core::QObject {
114725    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode*>(QObject* ptr)```</span>.
114726    #[inline(always)]
114727    unsafe fn static_downcast(
114728        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114729    ) -> ::cpp_core::Ptr<crate::SignalOfFilterMode> {
114730        let ffi_result = {
114731            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114732        };
114733        ::cpp_core::Ptr::from_raw(ffi_result)
114734    }
114735}
114736
114737#[cfg_attr(
114738    feature = "ritual_rustdoc_nightly",
114739    doc(cfg(any(
114740        cpp_lib_version = "5.14.0",
114741        cpp_lib_version = "5.11.3",
114742        cpp_lib_version = "5.12.2",
114743        cpp_lib_version = "5.13.0"
114744    )))
114745)]
114746#[cfg(any(
114747    any(
114748        cpp_lib_version = "5.14.0",
114749        cpp_lib_version = "5.11.3",
114750        cpp_lib_version = "5.12.2",
114751        cpp_lib_version = "5.13.0"
114752    ),
114753    feature = "ritual_rustdoc"
114754))]
114755impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfFilterMode {
114756    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode* ptr)```</span>.
114757    #[inline(always)]
114758    unsafe fn static_upcast(
114759        ptr: ::cpp_core::Ptr<crate::SignalOfFilterMode>,
114760    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114761        let ffi_result = {
114762            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr294(
114763                ptr.as_raw_ptr() as *mut crate::SignalOfFilterMode
114764            )
114765        };
114766        ::cpp_core::Ptr::from_raw(ffi_result)
114767    }
114768}
114769
114770#[cfg_attr(
114771    feature = "ritual_rustdoc_nightly",
114772    doc(cfg(any(
114773        cpp_lib_version = "5.14.0",
114774        cpp_lib_version = "5.11.3",
114775        cpp_lib_version = "5.12.2",
114776        cpp_lib_version = "5.13.0"
114777    )))
114778)]
114779#[cfg(any(
114780    any(
114781        cpp_lib_version = "5.14.0",
114782        cpp_lib_version = "5.11.3",
114783        cpp_lib_version = "5.12.2",
114784        cpp_lib_version = "5.13.0"
114785    ),
114786    feature = "ritual_rustdoc"
114787))]
114788impl ::std::ops::Deref for crate::SignalOfFilterMode {
114789    type Target = ::qt_core::QObject;
114790    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode* ptr)```</span>.
114791    #[inline(always)]
114792    fn deref(&self) -> &::qt_core::QObject {
114793        let ffi_result = {
114794            unsafe {
114795                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr294(
114796                    self as *const crate::SignalOfFilterMode as *mut crate::SignalOfFilterMode,
114797                )
114798            }
114799        };
114800        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114801    }
114802}
114803
114804#[cfg_attr(
114805    feature = "ritual_rustdoc_nightly",
114806    doc(cfg(any(
114807        cpp_lib_version = "5.14.0",
114808        cpp_lib_version = "5.11.3",
114809        cpp_lib_version = "5.12.2",
114810        cpp_lib_version = "5.13.0"
114811    )))
114812)]
114813#[cfg(any(
114814    any(
114815        cpp_lib_version = "5.14.0",
114816        cpp_lib_version = "5.11.3",
114817        cpp_lib_version = "5.12.2",
114818        cpp_lib_version = "5.13.0"
114819    ),
114820    feature = "ritual_rustdoc"
114821))]
114822impl ::cpp_core::DynamicCast<crate::SignalOfFilterMode> for ::qt_core::QObject {
114823    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode*>(QObject* ptr)```</span>.
114824    #[inline(always)]
114825    unsafe fn dynamic_cast(
114826        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114827    ) -> ::cpp_core::Ptr<crate::SignalOfFilterMode> {
114828        let ffi_result = {
114829            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114830        };
114831        ::cpp_core::Ptr::from_raw(ffi_result)
114832    }
114833}
114834
114835impl ::cpp_core::StaticDowncast<crate::SignalOfQBuffer> for ::qt_core::QObject {
114836    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr*>(QObject* ptr)```</span>.
114837    #[inline(always)]
114838    unsafe fn static_downcast(
114839        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114840    ) -> ::cpp_core::Ptr<crate::SignalOfQBuffer> {
114841        let ffi_result = {
114842            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114843        };
114844        ::cpp_core::Ptr::from_raw(ffi_result)
114845    }
114846}
114847
114848impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQBuffer {
114849    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr* ptr)```</span>.
114850    #[inline(always)]
114851    unsafe fn static_upcast(
114852        ptr: ::cpp_core::Ptr<crate::SignalOfQBuffer>,
114853    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114854        let ffi_result = {
114855            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr296(
114856                ptr.as_raw_ptr() as *mut crate::SignalOfQBuffer
114857            )
114858        };
114859        ::cpp_core::Ptr::from_raw(ffi_result)
114860    }
114861}
114862
114863impl ::std::ops::Deref for crate::SignalOfQBuffer {
114864    type Target = ::qt_core::QObject;
114865    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr* ptr)```</span>.
114866    #[inline(always)]
114867    fn deref(&self) -> &::qt_core::QObject {
114868        let ffi_result = {
114869            unsafe {
114870                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr296(
114871                    self as *const crate::SignalOfQBuffer as *mut crate::SignalOfQBuffer,
114872                )
114873            }
114874        };
114875        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114876    }
114877}
114878
114879impl ::cpp_core::DynamicCast<crate::SignalOfQBuffer> for ::qt_core::QObject {
114880    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr*>(QObject* ptr)```</span>.
114881    #[inline(always)]
114882    unsafe fn dynamic_cast(
114883        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114884    ) -> ::cpp_core::Ptr<crate::SignalOfQBuffer> {
114885        let ffi_result = {
114886            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QBuffer_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114887        };
114888        ::cpp_core::Ptr::from_raw(ffi_result)
114889    }
114890}
114891
114892impl ::cpp_core::StaticDowncast<crate::SignalOfQAbstractTexture> for ::qt_core::QObject {
114893    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr*>(QObject* ptr)```</span>.
114894    #[inline(always)]
114895    unsafe fn static_downcast(
114896        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114897    ) -> ::cpp_core::Ptr<crate::SignalOfQAbstractTexture> {
114898        let ffi_result = {
114899            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114900        };
114901        ::cpp_core::Ptr::from_raw(ffi_result)
114902    }
114903}
114904
114905impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQAbstractTexture {
114906    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr* ptr)```</span>.
114907    #[inline(always)]
114908    unsafe fn static_upcast(
114909        ptr: ::cpp_core::Ptr<crate::SignalOfQAbstractTexture>,
114910    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114911        let ffi_result = {
114912            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr298(
114913                ptr.as_raw_ptr() as *mut crate::SignalOfQAbstractTexture
114914            )
114915        };
114916        ::cpp_core::Ptr::from_raw(ffi_result)
114917    }
114918}
114919
114920impl ::std::ops::Deref for crate::SignalOfQAbstractTexture {
114921    type Target = ::qt_core::QObject;
114922    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr* ptr)```</span>.
114923    #[inline(always)]
114924    fn deref(&self) -> &::qt_core::QObject {
114925        let ffi_result = {
114926            unsafe {
114927                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr298(
114928                    self as *const crate::SignalOfQAbstractTexture
114929                        as *mut crate::SignalOfQAbstractTexture,
114930                )
114931            }
114932        };
114933        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
114934    }
114935}
114936
114937impl ::cpp_core::DynamicCast<crate::SignalOfQAbstractTexture> for ::qt_core::QObject {
114938    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr*>(QObject* ptr)```</span>.
114939    #[inline(always)]
114940    unsafe fn dynamic_cast(
114941        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114942    ) -> ::cpp_core::Ptr<crate::SignalOfQAbstractTexture> {
114943        let ffi_result = {
114944            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114945        };
114946        ::cpp_core::Ptr::from_raw(ffi_result)
114947    }
114948}
114949
114950#[cfg_attr(
114951    feature = "ritual_rustdoc_nightly",
114952    doc(cfg(cpp_lib_version = "5.14.0"))
114953)]
114954#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
114955impl ::cpp_core::StaticDowncast<crate::SignalOfImageFormat> for ::qt_core::QObject {
114956    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat*>(QObject* ptr)```</span>.
114957    #[inline(always)]
114958    unsafe fn static_downcast(
114959        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
114960    ) -> ::cpp_core::Ptr<crate::SignalOfImageFormat> {
114961        let ffi_result = {
114962            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
114963        };
114964        ::cpp_core::Ptr::from_raw(ffi_result)
114965    }
114966}
114967
114968#[cfg_attr(
114969    feature = "ritual_rustdoc_nightly",
114970    doc(cfg(cpp_lib_version = "5.14.0"))
114971)]
114972#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
114973impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfImageFormat {
114974    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat* ptr)```</span>.
114975    #[inline(always)]
114976    unsafe fn static_upcast(
114977        ptr: ::cpp_core::Ptr<crate::SignalOfImageFormat>,
114978    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
114979        let ffi_result = {
114980            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr300(
114981                ptr.as_raw_ptr() as *mut crate::SignalOfImageFormat
114982            )
114983        };
114984        ::cpp_core::Ptr::from_raw(ffi_result)
114985    }
114986}
114987
114988#[cfg_attr(
114989    feature = "ritual_rustdoc_nightly",
114990    doc(cfg(cpp_lib_version = "5.14.0"))
114991)]
114992#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
114993impl ::std::ops::Deref for crate::SignalOfImageFormat {
114994    type Target = ::qt_core::QObject;
114995    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat* ptr)```</span>.
114996    #[inline(always)]
114997    fn deref(&self) -> &::qt_core::QObject {
114998        let ffi_result = {
114999            unsafe {
115000                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr300(
115001                    self as *const crate::SignalOfImageFormat as *mut crate::SignalOfImageFormat,
115002                )
115003            }
115004        };
115005        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115006    }
115007}
115008
115009#[cfg_attr(
115010    feature = "ritual_rustdoc_nightly",
115011    doc(cfg(cpp_lib_version = "5.14.0"))
115012)]
115013#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
115014impl ::cpp_core::DynamicCast<crate::SignalOfImageFormat> for ::qt_core::QObject {
115015    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat*>(QObject* ptr)```</span>.
115016    #[inline(always)]
115017    unsafe fn dynamic_cast(
115018        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115019    ) -> ::cpp_core::Ptr<crate::SignalOfImageFormat> {
115020        let ffi_result = {
115021            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderImage_ImageFormat_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115022        };
115023        ::cpp_core::Ptr::from_raw(ffi_result)
115024    }
115025}
115026
115027impl ::cpp_core::StaticDowncast<crate::SignalOfQShaderProgram> for ::qt_core::QObject {
115028    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr*>(QObject* ptr)```</span>.
115029    #[inline(always)]
115030    unsafe fn static_downcast(
115031        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115032    ) -> ::cpp_core::Ptr<crate::SignalOfQShaderProgram> {
115033        let ffi_result = {
115034            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115035        };
115036        ::cpp_core::Ptr::from_raw(ffi_result)
115037    }
115038}
115039
115040impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQShaderProgram {
115041    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr* ptr)```</span>.
115042    #[inline(always)]
115043    unsafe fn static_upcast(
115044        ptr: ::cpp_core::Ptr<crate::SignalOfQShaderProgram>,
115045    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115046        let ffi_result = {
115047            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr311(
115048                ptr.as_raw_ptr() as *mut crate::SignalOfQShaderProgram
115049            )
115050        };
115051        ::cpp_core::Ptr::from_raw(ffi_result)
115052    }
115053}
115054
115055impl ::std::ops::Deref for crate::SignalOfQShaderProgram {
115056    type Target = ::qt_core::QObject;
115057    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr* ptr)```</span>.
115058    #[inline(always)]
115059    fn deref(&self) -> &::qt_core::QObject {
115060        let ffi_result = {
115061            unsafe {
115062                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr311(
115063                    self as *const crate::SignalOfQShaderProgram
115064                        as *mut crate::SignalOfQShaderProgram,
115065                )
115066            }
115067        };
115068        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115069    }
115070}
115071
115072impl ::cpp_core::DynamicCast<crate::SignalOfQShaderProgram> for ::qt_core::QObject {
115073    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr*>(QObject* ptr)```</span>.
115074    #[inline(always)]
115075    unsafe fn dynamic_cast(
115076        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115077    ) -> ::cpp_core::Ptr<crate::SignalOfQShaderProgram> {
115078        let ffi_result = {
115079            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QShaderProgram_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115080        };
115081        ::cpp_core::Ptr::from_raw(ffi_result)
115082    }
115083}
115084
115085impl ::cpp_core::StaticDowncast<crate::SignalOfStatus3> for ::qt_core::QObject {
115086    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status*>(QObject* ptr)```</span>.
115087    #[inline(always)]
115088    unsafe fn static_downcast(
115089        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115090    ) -> ::cpp_core::Ptr<crate::SignalOfStatus3> {
115091        let ffi_result = {
115092            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115093        };
115094        ::cpp_core::Ptr::from_raw(ffi_result)
115095    }
115096}
115097
115098impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfStatus3 {
115099    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status* ptr)```</span>.
115100    #[inline(always)]
115101    unsafe fn static_upcast(
115102        ptr: ::cpp_core::Ptr<crate::SignalOfStatus3>,
115103    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115104        let ffi_result = {
115105            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr313(
115106                ptr.as_raw_ptr() as *mut crate::SignalOfStatus3
115107            )
115108        };
115109        ::cpp_core::Ptr::from_raw(ffi_result)
115110    }
115111}
115112
115113impl ::std::ops::Deref for crate::SignalOfStatus3 {
115114    type Target = ::qt_core::QObject;
115115    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status* ptr)```</span>.
115116    #[inline(always)]
115117    fn deref(&self) -> &::qt_core::QObject {
115118        let ffi_result = {
115119            unsafe {
115120                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr313(
115121                    self as *const crate::SignalOfStatus3 as *mut crate::SignalOfStatus3,
115122                )
115123            }
115124        };
115125        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115126    }
115127}
115128
115129impl ::cpp_core::DynamicCast<crate::SignalOfStatus3> for ::qt_core::QObject {
115130    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status*>(QObject* ptr)```</span>.
115131    #[inline(always)]
115132    unsafe fn dynamic_cast(
115133        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115134    ) -> ::cpp_core::Ptr<crate::SignalOfStatus3> {
115135        let ffi_result = {
115136            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115137        };
115138        ::cpp_core::Ptr::from_raw(ffi_result)
115139    }
115140}
115141
115142impl ::cpp_core::StaticDowncast<crate::SignalOfDepthFunction> for ::qt_core::QObject {
115143    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction*>(QObject* ptr)```</span>.
115144    #[inline(always)]
115145    unsafe fn static_downcast(
115146        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115147    ) -> ::cpp_core::Ptr<crate::SignalOfDepthFunction> {
115148        let ffi_result = {
115149            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115150        };
115151        ::cpp_core::Ptr::from_raw(ffi_result)
115152    }
115153}
115154
115155impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfDepthFunction {
115156    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction* ptr)```</span>.
115157    #[inline(always)]
115158    unsafe fn static_upcast(
115159        ptr: ::cpp_core::Ptr<crate::SignalOfDepthFunction>,
115160    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115161        let ffi_result = {
115162            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr315(
115163                ptr.as_raw_ptr() as *mut crate::SignalOfDepthFunction
115164            )
115165        };
115166        ::cpp_core::Ptr::from_raw(ffi_result)
115167    }
115168}
115169
115170impl ::std::ops::Deref for crate::SignalOfDepthFunction {
115171    type Target = ::qt_core::QObject;
115172    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction* ptr)```</span>.
115173    #[inline(always)]
115174    fn deref(&self) -> &::qt_core::QObject {
115175        let ffi_result = {
115176            unsafe {
115177                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr315(
115178                    self as *const crate::SignalOfDepthFunction
115179                        as *mut crate::SignalOfDepthFunction,
115180                )
115181            }
115182        };
115183        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115184    }
115185}
115186
115187impl ::cpp_core::DynamicCast<crate::SignalOfDepthFunction> for ::qt_core::QObject {
115188    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction*>(QObject* ptr)```</span>.
115189    #[inline(always)]
115190    unsafe fn dynamic_cast(
115191        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115192    ) -> ::cpp_core::Ptr<crate::SignalOfDepthFunction> {
115193        let ffi_result = {
115194            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QDepthTest_DepthFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115195        };
115196        ::cpp_core::Ptr::from_raw(ffi_result)
115197    }
115198}
115199
115200impl ::cpp_core::StaticDowncast<crate::SignalOfWindingDirection> for ::qt_core::QObject {
115201    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection*>(QObject* ptr)```</span>.
115202    #[inline(always)]
115203    unsafe fn static_downcast(
115204        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115205    ) -> ::cpp_core::Ptr<crate::SignalOfWindingDirection> {
115206        let ffi_result = {
115207            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115208        };
115209        ::cpp_core::Ptr::from_raw(ffi_result)
115210    }
115211}
115212
115213impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfWindingDirection {
115214    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection* ptr)```</span>.
115215    #[inline(always)]
115216    unsafe fn static_upcast(
115217        ptr: ::cpp_core::Ptr<crate::SignalOfWindingDirection>,
115218    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115219        let ffi_result = {
115220            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr317(
115221                ptr.as_raw_ptr() as *mut crate::SignalOfWindingDirection
115222            )
115223        };
115224        ::cpp_core::Ptr::from_raw(ffi_result)
115225    }
115226}
115227
115228impl ::std::ops::Deref for crate::SignalOfWindingDirection {
115229    type Target = ::qt_core::QObject;
115230    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection* ptr)```</span>.
115231    #[inline(always)]
115232    fn deref(&self) -> &::qt_core::QObject {
115233        let ffi_result = {
115234            unsafe {
115235                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr317(
115236                    self as *const crate::SignalOfWindingDirection
115237                        as *mut crate::SignalOfWindingDirection,
115238                )
115239            }
115240        };
115241        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115242    }
115243}
115244
115245impl ::cpp_core::DynamicCast<crate::SignalOfWindingDirection> for ::qt_core::QObject {
115246    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection*>(QObject* ptr)```</span>.
115247    #[inline(always)]
115248    unsafe fn dynamic_cast(
115249        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115250    ) -> ::cpp_core::Ptr<crate::SignalOfWindingDirection> {
115251        let ffi_result = {
115252            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QFrontFace_WindingDirection_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115253        };
115254        ::cpp_core::Ptr::from_raw(ffi_result)
115255    }
115256}
115257
115258impl ::cpp_core::StaticDowncast<crate::SignalOfStencilFunction> for ::qt_core::QObject {
115259    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction*>(QObject* ptr)```</span>.
115260    #[inline(always)]
115261    unsafe fn static_downcast(
115262        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115263    ) -> ::cpp_core::Ptr<crate::SignalOfStencilFunction> {
115264        let ffi_result = {
115265            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115266        };
115267        ::cpp_core::Ptr::from_raw(ffi_result)
115268    }
115269}
115270
115271impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfStencilFunction {
115272    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction* ptr)```</span>.
115273    #[inline(always)]
115274    unsafe fn static_upcast(
115275        ptr: ::cpp_core::Ptr<crate::SignalOfStencilFunction>,
115276    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115277        let ffi_result = {
115278            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr319(
115279                ptr.as_raw_ptr() as *mut crate::SignalOfStencilFunction
115280            )
115281        };
115282        ::cpp_core::Ptr::from_raw(ffi_result)
115283    }
115284}
115285
115286impl ::std::ops::Deref for crate::SignalOfStencilFunction {
115287    type Target = ::qt_core::QObject;
115288    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction* ptr)```</span>.
115289    #[inline(always)]
115290    fn deref(&self) -> &::qt_core::QObject {
115291        let ffi_result = {
115292            unsafe {
115293                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr319(
115294                    self as *const crate::SignalOfStencilFunction
115295                        as *mut crate::SignalOfStencilFunction,
115296                )
115297            }
115298        };
115299        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115300    }
115301}
115302
115303impl ::cpp_core::DynamicCast<crate::SignalOfStencilFunction> for ::qt_core::QObject {
115304    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction*>(QObject* ptr)```</span>.
115305    #[inline(always)]
115306    unsafe fn dynamic_cast(
115307        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115308    ) -> ::cpp_core::Ptr<crate::SignalOfStencilFunction> {
115309        let ffi_result = {
115310            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115311        };
115312        ::cpp_core::Ptr::from_raw(ffi_result)
115313    }
115314}
115315
115316impl ::cpp_core::StaticDowncast<crate::SignalOfComparisonMode> for ::qt_core::QObject {
115317    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode*>(QObject* ptr)```</span>.
115318    #[inline(always)]
115319    unsafe fn static_downcast(
115320        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115321    ) -> ::cpp_core::Ptr<crate::SignalOfComparisonMode> {
115322        let ffi_result = {
115323            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115324        };
115325        ::cpp_core::Ptr::from_raw(ffi_result)
115326    }
115327}
115328
115329impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfComparisonMode {
115330    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode* ptr)```</span>.
115331    #[inline(always)]
115332    unsafe fn static_upcast(
115333        ptr: ::cpp_core::Ptr<crate::SignalOfComparisonMode>,
115334    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115335        let ffi_result = {
115336            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr321(
115337                ptr.as_raw_ptr() as *mut crate::SignalOfComparisonMode
115338            )
115339        };
115340        ::cpp_core::Ptr::from_raw(ffi_result)
115341    }
115342}
115343
115344impl ::std::ops::Deref for crate::SignalOfComparisonMode {
115345    type Target = ::qt_core::QObject;
115346    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode* ptr)```</span>.
115347    #[inline(always)]
115348    fn deref(&self) -> &::qt_core::QObject {
115349        let ffi_result = {
115350            unsafe {
115351                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr321(
115352                    self as *const crate::SignalOfComparisonMode
115353                        as *mut crate::SignalOfComparisonMode,
115354                )
115355            }
115356        };
115357        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115358    }
115359}
115360
115361impl ::cpp_core::DynamicCast<crate::SignalOfComparisonMode> for ::qt_core::QObject {
115362    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode*>(QObject* ptr)```</span>.
115363    #[inline(always)]
115364    unsafe fn dynamic_cast(
115365        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115366    ) -> ::cpp_core::Ptr<crate::SignalOfComparisonMode> {
115367        let ffi_result = {
115368            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115369        };
115370        ::cpp_core::Ptr::from_raw(ffi_result)
115371    }
115372}
115373
115374impl ::cpp_core::StaticDowncast<crate::SignalOfBufferType2> for ::qt_core::QObject {
115375    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType*>(QObject* ptr)```</span>.
115376    #[inline(always)]
115377    unsafe fn static_downcast(
115378        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115379    ) -> ::cpp_core::Ptr<crate::SignalOfBufferType2> {
115380        let ffi_result = {
115381            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115382        };
115383        ::cpp_core::Ptr::from_raw(ffi_result)
115384    }
115385}
115386
115387impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfBufferType2 {
115388    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType* ptr)```</span>.
115389    #[inline(always)]
115390    unsafe fn static_upcast(
115391        ptr: ::cpp_core::Ptr<crate::SignalOfBufferType2>,
115392    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115393        let ffi_result = {
115394            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr323(
115395                ptr.as_raw_ptr() as *mut crate::SignalOfBufferType2
115396            )
115397        };
115398        ::cpp_core::Ptr::from_raw(ffi_result)
115399    }
115400}
115401
115402impl ::std::ops::Deref for crate::SignalOfBufferType2 {
115403    type Target = ::qt_core::QObject;
115404    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType* ptr)```</span>.
115405    #[inline(always)]
115406    fn deref(&self) -> &::qt_core::QObject {
115407        let ffi_result = {
115408            unsafe {
115409                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr323(
115410                    self as *const crate::SignalOfBufferType2 as *mut crate::SignalOfBufferType2,
115411                )
115412            }
115413        };
115414        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115415    }
115416}
115417
115418impl ::cpp_core::DynamicCast<crate::SignalOfBufferType2> for ::qt_core::QObject {
115419    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType*>(QObject* ptr)```</span>.
115420    #[inline(always)]
115421    unsafe fn dynamic_cast(
115422        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115423    ) -> ::cpp_core::Ptr<crate::SignalOfBufferType2> {
115424        let ffi_result = {
115425            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QClearBuffers_BufferType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115426        };
115427        ::cpp_core::Ptr::from_raw(ffi_result)
115428    }
115429}
115430
115431impl ::cpp_core::StaticDowncast<crate::SignalOfQVectorOfSortType> for ::qt_core::QObject {
115432    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref*>(QObject* ptr)```</span>.
115433    #[inline(always)]
115434    unsafe fn static_downcast(
115435        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115436    ) -> ::cpp_core::Ptr<crate::SignalOfQVectorOfSortType> {
115437        let ffi_result = {
115438            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115439        };
115440        ::cpp_core::Ptr::from_raw(ffi_result)
115441    }
115442}
115443
115444impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQVectorOfSortType {
115445    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref* ptr)```</span>.
115446    #[inline(always)]
115447    unsafe fn static_upcast(
115448        ptr: ::cpp_core::Ptr<crate::SignalOfQVectorOfSortType>,
115449    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115450        let ffi_result = {
115451            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr325(
115452                ptr.as_raw_ptr() as *mut crate::SignalOfQVectorOfSortType
115453            )
115454        };
115455        ::cpp_core::Ptr::from_raw(ffi_result)
115456    }
115457}
115458
115459impl ::std::ops::Deref for crate::SignalOfQVectorOfSortType {
115460    type Target = ::qt_core::QObject;
115461    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref* ptr)```</span>.
115462    #[inline(always)]
115463    fn deref(&self) -> &::qt_core::QObject {
115464        let ffi_result = {
115465            unsafe {
115466                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr325(
115467                    self as *const crate::SignalOfQVectorOfSortType
115468                        as *mut crate::SignalOfQVectorOfSortType,
115469                )
115470            }
115471        };
115472        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115473    }
115474}
115475
115476impl ::cpp_core::DynamicCast<crate::SignalOfQVectorOfSortType> for ::qt_core::QObject {
115477    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref*>(QObject* ptr)```</span>.
115478    #[inline(always)]
115479    unsafe fn dynamic_cast(
115480        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115481    ) -> ::cpp_core::Ptr<crate::SignalOfQVectorOfSortType> {
115482        let ffi_result = {
115483            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115484        };
115485        ::cpp_core::Ptr::from_raw(ffi_result)
115486    }
115487}
115488
115489impl ::cpp_core::StaticDowncast<crate::SignalOfUint> for ::qt_core::QObject {
115490    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int*>(QObject* ptr)```</span>.
115491    #[inline(always)]
115492    unsafe fn static_downcast(
115493        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115494    ) -> ::cpp_core::Ptr<crate::SignalOfUint> {
115495        let ffi_result = {
115496            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115497        };
115498        ::cpp_core::Ptr::from_raw(ffi_result)
115499    }
115500}
115501
115502impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfUint {
115503    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int* ptr)```</span>.
115504    #[inline(always)]
115505    unsafe fn static_upcast(
115506        ptr: ::cpp_core::Ptr<crate::SignalOfUint>,
115507    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115508        let ffi_result = {
115509            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr327(
115510                ptr.as_raw_ptr() as *mut crate::SignalOfUint
115511            )
115512        };
115513        ::cpp_core::Ptr::from_raw(ffi_result)
115514    }
115515}
115516
115517impl ::std::ops::Deref for crate::SignalOfUint {
115518    type Target = ::qt_core::QObject;
115519    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int* ptr)```</span>.
115520    #[inline(always)]
115521    fn deref(&self) -> &::qt_core::QObject {
115522        let ffi_result = {
115523            unsafe {
115524                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr327(
115525                    self as *const crate::SignalOfUint as *mut crate::SignalOfUint,
115526                )
115527            }
115528        };
115529        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115530    }
115531}
115532
115533impl ::cpp_core::DynamicCast<crate::SignalOfUint> for ::qt_core::QObject {
115534    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int*>(QObject* ptr)```</span>.
115535    #[inline(always)]
115536    unsafe fn dynamic_cast(
115537        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115538    ) -> ::cpp_core::Ptr<crate::SignalOfUint> {
115539        let ffi_result = {
115540            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_unsigned_int_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115541        };
115542        ::cpp_core::Ptr::from_raw(ffi_result)
115543    }
115544}
115545
115546impl ::cpp_core::StaticDowncast<crate::SignalOfStatus4> for ::qt_core::QObject {
115547    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status*>(QObject* ptr)```</span>.
115548    #[inline(always)]
115549    unsafe fn static_downcast(
115550        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115551    ) -> ::cpp_core::Ptr<crate::SignalOfStatus4> {
115552        let ffi_result = {
115553            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115554        };
115555        ::cpp_core::Ptr::from_raw(ffi_result)
115556    }
115557}
115558
115559impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfStatus4 {
115560    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status* ptr)```</span>.
115561    #[inline(always)]
115562    unsafe fn static_upcast(
115563        ptr: ::cpp_core::Ptr<crate::SignalOfStatus4>,
115564    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115565        let ffi_result = {
115566            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr332(
115567                ptr.as_raw_ptr() as *mut crate::SignalOfStatus4
115568            )
115569        };
115570        ::cpp_core::Ptr::from_raw(ffi_result)
115571    }
115572}
115573
115574impl ::std::ops::Deref for crate::SignalOfStatus4 {
115575    type Target = ::qt_core::QObject;
115576    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status* ptr)```</span>.
115577    #[inline(always)]
115578    fn deref(&self) -> &::qt_core::QObject {
115579        let ffi_result = {
115580            unsafe {
115581                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr332(
115582                    self as *const crate::SignalOfStatus4 as *mut crate::SignalOfStatus4,
115583                )
115584            }
115585        };
115586        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115587    }
115588}
115589
115590impl ::cpp_core::DynamicCast<crate::SignalOfStatus4> for ::qt_core::QObject {
115591    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status*>(QObject* ptr)```</span>.
115592    #[inline(always)]
115593    unsafe fn dynamic_cast(
115594        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115595    ) -> ::cpp_core::Ptr<crate::SignalOfStatus4> {
115596        let ffi_result = {
115597            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QSceneLoader_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115598        };
115599        ::cpp_core::Ptr::from_raw(ffi_result)
115600    }
115601}
115602
115603impl ::cpp_core::StaticDowncast<crate::SignalOfTextureFormat> for ::qt_core::QObject {
115604    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat*>(QObject* ptr)```</span>.
115605    #[inline(always)]
115606    unsafe fn static_downcast(
115607        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115608    ) -> ::cpp_core::Ptr<crate::SignalOfTextureFormat> {
115609        let ffi_result = {
115610            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115611        };
115612        ::cpp_core::Ptr::from_raw(ffi_result)
115613    }
115614}
115615
115616impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfTextureFormat {
115617    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat* ptr)```</span>.
115618    #[inline(always)]
115619    unsafe fn static_upcast(
115620        ptr: ::cpp_core::Ptr<crate::SignalOfTextureFormat>,
115621    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115622        let ffi_result = {
115623            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr334(
115624                ptr.as_raw_ptr() as *mut crate::SignalOfTextureFormat
115625            )
115626        };
115627        ::cpp_core::Ptr::from_raw(ffi_result)
115628    }
115629}
115630
115631impl ::std::ops::Deref for crate::SignalOfTextureFormat {
115632    type Target = ::qt_core::QObject;
115633    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat* ptr)```</span>.
115634    #[inline(always)]
115635    fn deref(&self) -> &::qt_core::QObject {
115636        let ffi_result = {
115637            unsafe {
115638                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr334(
115639                    self as *const crate::SignalOfTextureFormat
115640                        as *mut crate::SignalOfTextureFormat,
115641                )
115642            }
115643        };
115644        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115645    }
115646}
115647
115648impl ::cpp_core::DynamicCast<crate::SignalOfTextureFormat> for ::qt_core::QObject {
115649    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat*>(QObject* ptr)```</span>.
115650    #[inline(always)]
115651    unsafe fn dynamic_cast(
115652        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115653    ) -> ::cpp_core::Ptr<crate::SignalOfTextureFormat> {
115654        let ffi_result = {
115655            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115656        };
115657        ::cpp_core::Ptr::from_raw(ffi_result)
115658    }
115659}
115660
115661impl ::cpp_core::StaticDowncast<crate::SignalOfPickResultMode> for ::qt_core::QObject {
115662    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode*>(QObject* ptr)```</span>.
115663    #[inline(always)]
115664    unsafe fn static_downcast(
115665        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115666    ) -> ::cpp_core::Ptr<crate::SignalOfPickResultMode> {
115667        let ffi_result = {
115668            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115669        };
115670        ::cpp_core::Ptr::from_raw(ffi_result)
115671    }
115672}
115673
115674impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfPickResultMode {
115675    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode* ptr)```</span>.
115676    #[inline(always)]
115677    unsafe fn static_upcast(
115678        ptr: ::cpp_core::Ptr<crate::SignalOfPickResultMode>,
115679    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115680        let ffi_result = {
115681            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr336(
115682                ptr.as_raw_ptr() as *mut crate::SignalOfPickResultMode
115683            )
115684        };
115685        ::cpp_core::Ptr::from_raw(ffi_result)
115686    }
115687}
115688
115689impl ::std::ops::Deref for crate::SignalOfPickResultMode {
115690    type Target = ::qt_core::QObject;
115691    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode* ptr)```</span>.
115692    #[inline(always)]
115693    fn deref(&self) -> &::qt_core::QObject {
115694        let ffi_result = {
115695            unsafe {
115696                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr336(
115697                    self as *const crate::SignalOfPickResultMode
115698                        as *mut crate::SignalOfPickResultMode,
115699                )
115700            }
115701        };
115702        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115703    }
115704}
115705
115706impl ::cpp_core::DynamicCast<crate::SignalOfPickResultMode> for ::qt_core::QObject {
115707    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode*>(QObject* ptr)```</span>.
115708    #[inline(always)]
115709    unsafe fn dynamic_cast(
115710        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115711    ) -> ::cpp_core::Ptr<crate::SignalOfPickResultMode> {
115712        let ffi_result = {
115713            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_PickResultMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115714        };
115715        ::cpp_core::Ptr::from_raw(ffi_result)
115716    }
115717}
115718
115719impl ::cpp_core::StaticDowncast<crate::SignalOfFaceOrientationPickingMode> for ::qt_core::QObject {
115720    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode*>(QObject* ptr)```</span>.
115721    #[inline(always)]
115722    unsafe fn static_downcast(
115723        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115724    ) -> ::cpp_core::Ptr<crate::SignalOfFaceOrientationPickingMode> {
115725        let ffi_result = {
115726            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115727        };
115728        ::cpp_core::Ptr::from_raw(ffi_result)
115729    }
115730}
115731
115732impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfFaceOrientationPickingMode {
115733    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode* ptr)```</span>.
115734    #[inline(always)]
115735    unsafe fn static_upcast(
115736        ptr: ::cpp_core::Ptr<crate::SignalOfFaceOrientationPickingMode>,
115737    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115738        let ffi_result = {
115739            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr338(
115740                ptr.as_raw_ptr() as *mut crate::SignalOfFaceOrientationPickingMode
115741            )
115742        };
115743        ::cpp_core::Ptr::from_raw(ffi_result)
115744    }
115745}
115746
115747impl ::std::ops::Deref for crate::SignalOfFaceOrientationPickingMode {
115748    type Target = ::qt_core::QObject;
115749    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode* ptr)```</span>.
115750    #[inline(always)]
115751    fn deref(&self) -> &::qt_core::QObject {
115752        let ffi_result = {
115753            unsafe {
115754                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr338(
115755                    self as *const crate::SignalOfFaceOrientationPickingMode
115756                        as *mut crate::SignalOfFaceOrientationPickingMode,
115757                )
115758            }
115759        };
115760        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115761    }
115762}
115763
115764impl ::cpp_core::DynamicCast<crate::SignalOfFaceOrientationPickingMode> for ::qt_core::QObject {
115765    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode*>(QObject* ptr)```</span>.
115766    #[inline(always)]
115767    unsafe fn dynamic_cast(
115768        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115769    ) -> ::cpp_core::Ptr<crate::SignalOfFaceOrientationPickingMode> {
115770        let ffi_result = {
115771            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115772        };
115773        ::cpp_core::Ptr::from_raw(ffi_result)
115774    }
115775}
115776
115777impl ::cpp_core::StaticDowncast<crate::SignalOfAttachmentPoint> for ::qt_core::QObject {
115778    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint*>(QObject* ptr)```</span>.
115779    #[inline(always)]
115780    unsafe fn static_downcast(
115781        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115782    ) -> ::cpp_core::Ptr<crate::SignalOfAttachmentPoint> {
115783        let ffi_result = {
115784            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115785        };
115786        ::cpp_core::Ptr::from_raw(ffi_result)
115787    }
115788}
115789
115790impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfAttachmentPoint {
115791    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint* ptr)```</span>.
115792    #[inline(always)]
115793    unsafe fn static_upcast(
115794        ptr: ::cpp_core::Ptr<crate::SignalOfAttachmentPoint>,
115795    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115796        let ffi_result = {
115797            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr340(
115798                ptr.as_raw_ptr() as *mut crate::SignalOfAttachmentPoint
115799            )
115800        };
115801        ::cpp_core::Ptr::from_raw(ffi_result)
115802    }
115803}
115804
115805impl ::std::ops::Deref for crate::SignalOfAttachmentPoint {
115806    type Target = ::qt_core::QObject;
115807    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint* ptr)```</span>.
115808    #[inline(always)]
115809    fn deref(&self) -> &::qt_core::QObject {
115810        let ffi_result = {
115811            unsafe {
115812                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr340(
115813                    self as *const crate::SignalOfAttachmentPoint
115814                        as *mut crate::SignalOfAttachmentPoint,
115815                )
115816            }
115817        };
115818        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115819    }
115820}
115821
115822impl ::cpp_core::DynamicCast<crate::SignalOfAttachmentPoint> for ::qt_core::QObject {
115823    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint*>(QObject* ptr)```</span>.
115824    #[inline(always)]
115825    unsafe fn dynamic_cast(
115826        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115827    ) -> ::cpp_core::Ptr<crate::SignalOfAttachmentPoint> {
115828        let ffi_result = {
115829            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115830        };
115831        ::cpp_core::Ptr::from_raw(ffi_result)
115832    }
115833}
115834
115835#[cfg_attr(
115836    feature = "ritual_rustdoc_nightly",
115837    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
115838)]
115839#[cfg(any(
115840    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
115841    feature = "ritual_rustdoc"
115842))]
115843impl ::cpp_core::StaticDowncast<crate::SignalOfHandleType2> for ::qt_core::QObject {
115844    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType*>(QObject* ptr)```</span>.
115845    #[inline(always)]
115846    unsafe fn static_downcast(
115847        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115848    ) -> ::cpp_core::Ptr<crate::SignalOfHandleType2> {
115849        let ffi_result = {
115850            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115851        };
115852        ::cpp_core::Ptr::from_raw(ffi_result)
115853    }
115854}
115855
115856#[cfg_attr(
115857    feature = "ritual_rustdoc_nightly",
115858    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
115859)]
115860#[cfg(any(
115861    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
115862    feature = "ritual_rustdoc"
115863))]
115864impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfHandleType2 {
115865    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType* ptr)```</span>.
115866    #[inline(always)]
115867    unsafe fn static_upcast(
115868        ptr: ::cpp_core::Ptr<crate::SignalOfHandleType2>,
115869    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115870        let ffi_result = {
115871            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr347(
115872                ptr.as_raw_ptr() as *mut crate::SignalOfHandleType2
115873            )
115874        };
115875        ::cpp_core::Ptr::from_raw(ffi_result)
115876    }
115877}
115878
115879#[cfg_attr(
115880    feature = "ritual_rustdoc_nightly",
115881    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
115882)]
115883#[cfg(any(
115884    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
115885    feature = "ritual_rustdoc"
115886))]
115887impl ::std::ops::Deref for crate::SignalOfHandleType2 {
115888    type Target = ::qt_core::QObject;
115889    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType* ptr)```</span>.
115890    #[inline(always)]
115891    fn deref(&self) -> &::qt_core::QObject {
115892        let ffi_result = {
115893            unsafe {
115894                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr347(
115895                    self as *const crate::SignalOfHandleType2 as *mut crate::SignalOfHandleType2,
115896                )
115897            }
115898        };
115899        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115900    }
115901}
115902
115903#[cfg_attr(
115904    feature = "ritual_rustdoc_nightly",
115905    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
115906)]
115907#[cfg(any(
115908    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
115909    feature = "ritual_rustdoc"
115910))]
115911impl ::cpp_core::DynamicCast<crate::SignalOfHandleType2> for ::qt_core::QObject {
115912    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType*>(QObject* ptr)```</span>.
115913    #[inline(always)]
115914    unsafe fn dynamic_cast(
115915        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115916    ) -> ::cpp_core::Ptr<crate::SignalOfHandleType2> {
115917        let ffi_result = {
115918            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QWaitFence_HandleType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115919        };
115920        ::cpp_core::Ptr::from_raw(ffi_result)
115921    }
115922}
115923
115924impl ::cpp_core::StaticDowncast<crate::SignalOfOpenglProfile> for ::qt_core::QObject {
115925    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile*>(QObject* ptr)```</span>.
115926    #[inline(always)]
115927    unsafe fn static_downcast(
115928        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115929    ) -> ::cpp_core::Ptr<crate::SignalOfOpenglProfile> {
115930        let ffi_result = {
115931            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115932        };
115933        ::cpp_core::Ptr::from_raw(ffi_result)
115934    }
115935}
115936
115937impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfOpenglProfile {
115938    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile* ptr)```</span>.
115939    #[inline(always)]
115940    unsafe fn static_upcast(
115941        ptr: ::cpp_core::Ptr<crate::SignalOfOpenglProfile>,
115942    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
115943        let ffi_result = {
115944            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr349(
115945                ptr.as_raw_ptr() as *mut crate::SignalOfOpenglProfile
115946            )
115947        };
115948        ::cpp_core::Ptr::from_raw(ffi_result)
115949    }
115950}
115951
115952impl ::std::ops::Deref for crate::SignalOfOpenglProfile {
115953    type Target = ::qt_core::QObject;
115954    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile* ptr)```</span>.
115955    #[inline(always)]
115956    fn deref(&self) -> &::qt_core::QObject {
115957        let ffi_result = {
115958            unsafe {
115959                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr349(
115960                    self as *const crate::SignalOfOpenglProfile
115961                        as *mut crate::SignalOfOpenglProfile,
115962                )
115963            }
115964        };
115965        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
115966    }
115967}
115968
115969impl ::cpp_core::DynamicCast<crate::SignalOfOpenglProfile> for ::qt_core::QObject {
115970    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile*>(QObject* ptr)```</span>.
115971    #[inline(always)]
115972    unsafe fn dynamic_cast(
115973        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115974    ) -> ::cpp_core::Ptr<crate::SignalOfOpenglProfile> {
115975        let ffi_result = {
115976            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115977        };
115978        ::cpp_core::Ptr::from_raw(ffi_result)
115979    }
115980}
115981
115982#[cfg_attr(
115983    feature = "ritual_rustdoc_nightly",
115984    doc(cfg(cpp_lib_version = "5.14.0"))
115985)]
115986#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
115987impl ::cpp_core::StaticDowncast<crate::SignalOfFaceMode2> for ::qt_core::QObject {
115988    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode*>(QObject* ptr)```</span>.
115989    #[inline(always)]
115990    unsafe fn static_downcast(
115991        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
115992    ) -> ::cpp_core::Ptr<crate::SignalOfFaceMode2> {
115993        let ffi_result = {
115994            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
115995        };
115996        ::cpp_core::Ptr::from_raw(ffi_result)
115997    }
115998}
115999
116000#[cfg_attr(
116001    feature = "ritual_rustdoc_nightly",
116002    doc(cfg(cpp_lib_version = "5.14.0"))
116003)]
116004#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116005impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfFaceMode2 {
116006    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode* ptr)```</span>.
116007    #[inline(always)]
116008    unsafe fn static_upcast(
116009        ptr: ::cpp_core::Ptr<crate::SignalOfFaceMode2>,
116010    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
116011        let ffi_result = {
116012            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr351(
116013                ptr.as_raw_ptr() as *mut crate::SignalOfFaceMode2
116014            )
116015        };
116016        ::cpp_core::Ptr::from_raw(ffi_result)
116017    }
116018}
116019
116020#[cfg_attr(
116021    feature = "ritual_rustdoc_nightly",
116022    doc(cfg(cpp_lib_version = "5.14.0"))
116023)]
116024#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116025impl ::std::ops::Deref for crate::SignalOfFaceMode2 {
116026    type Target = ::qt_core::QObject;
116027    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode* ptr)```</span>.
116028    #[inline(always)]
116029    fn deref(&self) -> &::qt_core::QObject {
116030        let ffi_result = {
116031            unsafe {
116032                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr351(
116033                    self as *const crate::SignalOfFaceMode2 as *mut crate::SignalOfFaceMode2,
116034                )
116035            }
116036        };
116037        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
116038    }
116039}
116040
116041#[cfg_attr(
116042    feature = "ritual_rustdoc_nightly",
116043    doc(cfg(cpp_lib_version = "5.14.0"))
116044)]
116045#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116046impl ::cpp_core::DynamicCast<crate::SignalOfFaceMode2> for ::qt_core::QObject {
116047    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode*>(QObject* ptr)```</span>.
116048    #[inline(always)]
116049    unsafe fn dynamic_cast(
116050        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116051    ) -> ::cpp_core::Ptr<crate::SignalOfFaceMode2> {
116052        let ffi_result = {
116053            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_FaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116054        };
116055        ::cpp_core::Ptr::from_raw(ffi_result)
116056    }
116057}
116058
116059impl ::cpp_core::StaticDowncast<crate::SignalOfFilter> for ::qt_core::QObject {
116060    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter*>(QObject* ptr)```</span>.
116061    #[inline(always)]
116062    unsafe fn static_downcast(
116063        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116064    ) -> ::cpp_core::Ptr<crate::SignalOfFilter> {
116065        let ffi_result = {
116066            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116067        };
116068        ::cpp_core::Ptr::from_raw(ffi_result)
116069    }
116070}
116071
116072impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfFilter {
116073    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter* ptr)```</span>.
116074    #[inline(always)]
116075    unsafe fn static_upcast(
116076        ptr: ::cpp_core::Ptr<crate::SignalOfFilter>,
116077    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
116078        let ffi_result = {
116079            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr353(
116080                ptr.as_raw_ptr() as *mut crate::SignalOfFilter
116081            )
116082        };
116083        ::cpp_core::Ptr::from_raw(ffi_result)
116084    }
116085}
116086
116087impl ::std::ops::Deref for crate::SignalOfFilter {
116088    type Target = ::qt_core::QObject;
116089    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter* ptr)```</span>.
116090    #[inline(always)]
116091    fn deref(&self) -> &::qt_core::QObject {
116092        let ffi_result = {
116093            unsafe {
116094                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr353(
116095                    self as *const crate::SignalOfFilter as *mut crate::SignalOfFilter,
116096                )
116097            }
116098        };
116099        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
116100    }
116101}
116102
116103impl ::cpp_core::DynamicCast<crate::SignalOfFilter> for ::qt_core::QObject {
116104    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter*>(QObject* ptr)```</span>.
116105    #[inline(always)]
116106    unsafe fn dynamic_cast(
116107        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116108    ) -> ::cpp_core::Ptr<crate::SignalOfFilter> {
116109        let ffi_result = {
116110            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QAbstractTexture_Filter_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116111        };
116112        ::cpp_core::Ptr::from_raw(ffi_result)
116113    }
116114}
116115
116116impl ::cpp_core::StaticDowncast<crate::SignalOfQVector3D> for ::qt_core::QObject {
116117    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector3D* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector3D*>(QObject* ptr)```</span>.
116118    #[inline(always)]
116119    unsafe fn static_downcast(
116120        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116121    ) -> ::cpp_core::Ptr<crate::SignalOfQVector3D> {
116122        let ffi_result = {
116123            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116124        };
116125        ::cpp_core::Ptr::from_raw(ffi_result)
116126    }
116127}
116128
116129impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQVector3D {
116130    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector3D* ptr)```</span>.
116131    #[inline(always)]
116132    unsafe fn static_upcast(
116133        ptr: ::cpp_core::Ptr<crate::SignalOfQVector3D>,
116134    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
116135        let ffi_result = {
116136            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr355(
116137                ptr.as_raw_ptr() as *mut crate::SignalOfQVector3D
116138            )
116139        };
116140        ::cpp_core::Ptr::from_raw(ffi_result)
116141    }
116142}
116143
116144impl ::std::ops::Deref for crate::SignalOfQVector3D {
116145    type Target = ::qt_core::QObject;
116146    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QVector3D* ptr)```</span>.
116147    #[inline(always)]
116148    fn deref(&self) -> &::qt_core::QObject {
116149        let ffi_result = {
116150            unsafe {
116151                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr355(
116152                    self as *const crate::SignalOfQVector3D as *mut crate::SignalOfQVector3D,
116153                )
116154            }
116155        };
116156        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
116157    }
116158}
116159
116160impl ::cpp_core::DynamicCast<crate::SignalOfQVector3D> for ::qt_core::QObject {
116161    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QVector3D* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QVector3D*>(QObject* ptr)```</span>.
116162    #[inline(always)]
116163    unsafe fn dynamic_cast(
116164        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116165    ) -> ::cpp_core::Ptr<crate::SignalOfQVector3D> {
116166        let ffi_result = {
116167            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QVector3D_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116168        };
116169        ::cpp_core::Ptr::from_raw(ffi_result)
116170    }
116171}
116172
116173#[cfg_attr(
116174    feature = "ritual_rustdoc_nightly",
116175    doc(cfg(cpp_lib_version = "5.14.0"))
116176)]
116177#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116178impl ::cpp_core::StaticDowncast<crate::SignalOfRasterMode> for ::qt_core::QObject {
116179    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode*>(QObject* ptr)```</span>.
116180    #[inline(always)]
116181    unsafe fn static_downcast(
116182        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116183    ) -> ::cpp_core::Ptr<crate::SignalOfRasterMode> {
116184        let ffi_result = {
116185            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116186        };
116187        ::cpp_core::Ptr::from_raw(ffi_result)
116188    }
116189}
116190
116191#[cfg_attr(
116192    feature = "ritual_rustdoc_nightly",
116193    doc(cfg(cpp_lib_version = "5.14.0"))
116194)]
116195#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116196impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfRasterMode {
116197    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode* ptr)```</span>.
116198    #[inline(always)]
116199    unsafe fn static_upcast(
116200        ptr: ::cpp_core::Ptr<crate::SignalOfRasterMode>,
116201    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
116202        let ffi_result = {
116203            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr357(
116204                ptr.as_raw_ptr() as *mut crate::SignalOfRasterMode
116205            )
116206        };
116207        ::cpp_core::Ptr::from_raw(ffi_result)
116208    }
116209}
116210
116211#[cfg_attr(
116212    feature = "ritual_rustdoc_nightly",
116213    doc(cfg(cpp_lib_version = "5.14.0"))
116214)]
116215#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116216impl ::std::ops::Deref for crate::SignalOfRasterMode {
116217    type Target = ::qt_core::QObject;
116218    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode* ptr)```</span>.
116219    #[inline(always)]
116220    fn deref(&self) -> &::qt_core::QObject {
116221        let ffi_result = {
116222            unsafe {
116223                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr357(
116224                    self as *const crate::SignalOfRasterMode as *mut crate::SignalOfRasterMode,
116225                )
116226            }
116227        };
116228        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
116229    }
116230}
116231
116232#[cfg_attr(
116233    feature = "ritual_rustdoc_nightly",
116234    doc(cfg(cpp_lib_version = "5.14.0"))
116235)]
116236#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116237impl ::cpp_core::DynamicCast<crate::SignalOfRasterMode> for ::qt_core::QObject {
116238    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode*>(QObject* ptr)```</span>.
116239    #[inline(always)]
116240    unsafe fn dynamic_cast(
116241        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116242    ) -> ::cpp_core::Ptr<crate::SignalOfRasterMode> {
116243        let ffi_result = {
116244            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_Qt3DRender_QRasterMode_RasterMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116245        };
116246        ::cpp_core::Ptr::from_raw(ffi_result)
116247    }
116248}
116249
116250impl ::cpp_core::StaticDowncast<crate::SignalOfQSize> for ::qt_core::QObject {
116251    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QSize* static_cast<ctr_qt_3d_render_ffi_signal_wrapper_QSize*>(QObject* ptr)```</span>.
116252    #[inline(always)]
116253    unsafe fn static_downcast(
116254        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116255    ) -> ::cpp_core::Ptr<crate::SignalOfQSize> {
116256        let ffi_result = {
116257            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_signal_wrapper_QSize_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116258        };
116259        ::cpp_core::Ptr::from_raw(ffi_result)
116260    }
116261}
116262
116263impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SignalOfQSize {
116264    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QSize* ptr)```</span>.
116265    #[inline(always)]
116266    unsafe fn static_upcast(
116267        ptr: ::cpp_core::Ptr<crate::SignalOfQSize>,
116268    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
116269        let ffi_result = {
116270            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr359(
116271                ptr.as_raw_ptr() as *mut crate::SignalOfQSize
116272            )
116273        };
116274        ::cpp_core::Ptr::from_raw(ffi_result)
116275    }
116276}
116277
116278impl ::std::ops::Deref for crate::SignalOfQSize {
116279    type Target = ::qt_core::QObject;
116280    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_signal_wrapper_QSize* ptr)```</span>.
116281    #[inline(always)]
116282    fn deref(&self) -> &::qt_core::QObject {
116283        let ffi_result = {
116284            unsafe {
116285                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr359(
116286                    self as *const crate::SignalOfQSize as *mut crate::SignalOfQSize,
116287                )
116288            }
116289        };
116290        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
116291    }
116292}
116293
116294impl ::cpp_core::DynamicCast<crate::SignalOfQSize> for ::qt_core::QObject {
116295    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_signal_wrapper_QSize* dynamic_cast<ctr_qt_3d_render_ffi_signal_wrapper_QSize*>(QObject* ptr)```</span>.
116296    #[inline(always)]
116297    unsafe fn dynamic_cast(
116298        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116299    ) -> ::cpp_core::Ptr<crate::SignalOfQSize> {
116300        let ffi_result = {
116301            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_signal_wrapper_QSize_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116302        };
116303        ::cpp_core::Ptr::from_raw(ffi_result)
116304    }
116305}
116306
116307impl ::cpp_core::CppDeletable for crate::SlotOfApi {
116308    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api()```</span>.
116309    #[inline(always)]
116310    unsafe fn delete(&self) {
116311        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api(self as *const crate::SlotOfApi as *mut crate::SlotOfApi)
116312    }
116313}
116314
116315impl ::cpp_core::CppDeletable for crate::SlotOfQGeometry {
116316    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr()```</span>.
116317    #[inline(always)]
116318    unsafe fn delete(&self) {
116319        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr(self as *const crate::SlotOfQGeometry as *mut crate::SlotOfQGeometry)
116320    }
116321}
116322
116323impl ::cpp_core::CppDeletable for crate::SlotOfQRenderTarget {
116324    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr()```</span>.
116325    #[inline(always)]
116326    unsafe fn delete(&self) {
116327        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr(self as *const crate::SlotOfQRenderTarget as *mut crate::SlotOfQRenderTarget)
116328    }
116329}
116330
116331impl ::cpp_core::CppDeletable for crate::SlotOfQPoint {
116332    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref::~ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref()```</span>.
116333    #[inline(always)]
116334    unsafe fn delete(&self) {
116335        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_dctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref(self as *const crate::SlotOfQPoint as *mut crate::SlotOfQPoint)
116336    }
116337}
116338
116339impl ::cpp_core::CppDeletable for crate::SlotOfStatus {
116340    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status()```</span>.
116341    #[inline(always)]
116342    unsafe fn delete(&self) {
116343        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status(self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus)
116344    }
116345}
116346
116347impl ::cpp_core::CppDeletable for crate::SlotOfQVector3D {
116348    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QVector3D::~ctr_qt_3d_render_ffi_slot_wrapper_QVector3D()```</span>.
116349    #[inline(always)]
116350    unsafe fn delete(&self) {
116351        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_dctr_qt_3d_render_ffi_slot_wrapper_QVector3D(self as *const crate::SlotOfQVector3D as *mut crate::SlotOfQVector3D)
116352    }
116353}
116354
116355impl ::cpp_core::CppDeletable for crate::SlotOfDepthFunction {
116356    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction()```</span>.
116357    #[inline(always)]
116358    unsafe fn delete(&self) {
116359        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction(self as *const crate::SlotOfDepthFunction as *mut crate::SlotOfDepthFunction)
116360    }
116361}
116362
116363#[cfg_attr(
116364    feature = "ritual_rustdoc_nightly",
116365    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
116366)]
116367#[cfg(any(
116368    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
116369    feature = "ritual_rustdoc"
116370))]
116371impl ::cpp_core::CppDeletable for crate::SlotOfHandleType {
116372    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType()```</span>.
116373    #[inline(always)]
116374    unsafe fn delete(&self) {
116375        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType(self as *const crate::SlotOfHandleType as *mut crate::SlotOfHandleType)
116376    }
116377}
116378
116379impl ::cpp_core::CppDeletable for crate::SlotOfComparisonMode {
116380    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode()```</span>.
116381    #[inline(always)]
116382    unsafe fn delete(&self) {
116383        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode(self as *const crate::SlotOfComparisonMode as *mut crate::SlotOfComparisonMode)
116384    }
116385}
116386
116387#[cfg_attr(
116388    feature = "ritual_rustdoc_nightly",
116389    doc(cfg(cpp_lib_version = "5.14.0"))
116390)]
116391#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116392impl ::cpp_core::CppDeletable for crate::SlotOfAccess {
116393    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access()```</span>.
116394    #[inline(always)]
116395    unsafe fn delete(&self) {
116396        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access(self as *const crate::SlotOfAccess as *mut crate::SlotOfAccess)
116397    }
116398}
116399
116400impl ::cpp_core::CppDeletable for crate::SlotOfBufferType {
116401    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType()```</span>.
116402    #[inline(always)]
116403    unsafe fn delete(&self) {
116404        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType(self as *const crate::SlotOfBufferType as *mut crate::SlotOfBufferType)
116405    }
116406}
116407
116408impl ::cpp_core::CppDeletable for crate::SlotOfFilter {
116409    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter()```</span>.
116410    #[inline(always)]
116411    unsafe fn delete(&self) {
116412        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter(self as *const crate::SlotOfFilter as *mut crate::SlotOfFilter)
116413    }
116414}
116415
116416impl ::cpp_core::CppDeletable for crate::SlotOfCullingMode {
116417    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode()```</span>.
116418    #[inline(always)]
116419    unsafe fn delete(&self) {
116420        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode(self as *const crate::SlotOfCullingMode as *mut crate::SlotOfCullingMode)
116421    }
116422}
116423
116424#[cfg_attr(
116425    feature = "ritual_rustdoc_nightly",
116426    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
116427)]
116428#[cfg(any(
116429    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
116430    feature = "ritual_rustdoc"
116431))]
116432impl ::cpp_core::CppDeletable for crate::SlotOfHandleType2 {
116433    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType()```</span>.
116434    #[inline(always)]
116435    unsafe fn delete(&self) {
116436        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType(self as *const crate::SlotOfHandleType2 as *mut crate::SlotOfHandleType2)
116437    }
116438}
116439
116440impl ::cpp_core::CppDeletable for crate::SlotOfQFlagsOperation {
116441    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation::~ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation()```</span>.
116442    #[inline(always)]
116443    unsafe fn delete(&self) {
116444        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_dctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation(self as *const crate::SlotOfQFlagsOperation as *mut crate::SlotOfQFlagsOperation)
116445    }
116446}
116447
116448#[cfg_attr(
116449    feature = "ritual_rustdoc_nightly",
116450    doc(cfg(any(
116451        cpp_lib_version = "5.14.0",
116452        cpp_lib_version = "5.11.3",
116453        cpp_lib_version = "5.12.2",
116454        cpp_lib_version = "5.13.0"
116455    )))
116456)]
116457#[cfg(any(
116458    any(
116459        cpp_lib_version = "5.14.0",
116460        cpp_lib_version = "5.11.3",
116461        cpp_lib_version = "5.12.2",
116462        cpp_lib_version = "5.13.0"
116463    ),
116464    feature = "ritual_rustdoc"
116465))]
116466impl ::cpp_core::CppDeletable for crate::SlotOfFilterMode {
116467    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode()```</span>.
116468    #[inline(always)]
116469    unsafe fn delete(&self) {
116470        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode(self as *const crate::SlotOfFilterMode as *mut crate::SlotOfFilterMode)
116471    }
116472}
116473
116474impl ::cpp_core::CppDeletable for crate::SlotOfAccessType {
116475    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType()```</span>.
116476    #[inline(always)]
116477    unsafe fn delete(&self) {
116478        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType(self as *const crate::SlotOfAccessType as *mut crate::SlotOfAccessType)
116479    }
116480}
116481
116482impl ::cpp_core::CppDeletable for crate::SlotOfQVariant {
116483    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QVariant::~ctr_qt_3d_render_ffi_slot_wrapper_QVariant()```</span>.
116484    #[inline(always)]
116485    unsafe fn delete(&self) {
116486        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_dctr_qt_3d_render_ffi_slot_wrapper_QVariant(self as *const crate::SlotOfQVariant as *mut crate::SlotOfQVariant)
116487    }
116488}
116489
116490impl ::cpp_core::CppDeletable for crate::SlotOfAlphaFunction {
116491    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction()```</span>.
116492    #[inline(always)]
116493    unsafe fn delete(&self) {
116494        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction(self as *const crate::SlotOfAlphaFunction as *mut crate::SlotOfAlphaFunction)
116495    }
116496}
116497
116498impl ::cpp_core::CppDeletable for crate::SlotOfWrapMode {
116499    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode()```</span>.
116500    #[inline(always)]
116501    unsafe fn delete(&self) {
116502        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode(self as *const crate::SlotOfWrapMode as *mut crate::SlotOfWrapMode)
116503    }
116504}
116505
116506impl ::cpp_core::CppDeletable for crate::SlotOfStencilFunction {
116507    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction()```</span>.
116508    #[inline(always)]
116509    unsafe fn delete(&self) {
116510        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction(self as *const crate::SlotOfStencilFunction as *mut crate::SlotOfStencilFunction)
116511    }
116512}
116513
116514impl ::cpp_core::CppDeletable for crate::SlotOfQVectorOfDouble {
116515    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref::~ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref()```</span>.
116516    #[inline(always)]
116517    unsafe fn delete(&self) {
116518        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_dctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref(self as *const crate::SlotOfQVectorOfDouble as *mut crate::SlotOfQVectorOfDouble)
116519    }
116520}
116521
116522impl ::cpp_core::CppDeletable for crate::SlotOfSizeMode {
116523    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode()```</span>.
116524    #[inline(always)]
116525    unsafe fn delete(&self) {
116526        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode(self as *const crate::SlotOfSizeMode as *mut crate::SlotOfSizeMode)
116527    }
116528}
116529
116530impl ::cpp_core::CppDeletable for crate::SlotOfVertexBaseType {
116531    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType()```</span>.
116532    #[inline(always)]
116533    unsafe fn delete(&self) {
116534        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType(self as *const crate::SlotOfVertexBaseType as *mut crate::SlotOfVertexBaseType)
116535    }
116536}
116537
116538impl ::cpp_core::CppDeletable for crate::SlotOfThresholdType {
116539    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType()```</span>.
116540    #[inline(always)]
116541    unsafe fn delete(&self) {
116542        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType(self as *const crate::SlotOfThresholdType as *mut crate::SlotOfThresholdType)
116543    }
116544}
116545
116546impl ::cpp_core::CppDeletable for crate::SlotOfFaceMode {
116547    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode()```</span>.
116548    #[inline(always)]
116549    unsafe fn delete(&self) {
116550        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode(self as *const crate::SlotOfFaceMode as *mut crate::SlotOfFaceMode)
116551    }
116552}
116553
116554impl ::cpp_core::CppDeletable for crate::SlotOfQByteArray {
116555    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref::~ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref()```</span>.
116556    #[inline(always)]
116557    unsafe fn delete(&self) {
116558        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_dctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref(self as *const crate::SlotOfQByteArray as *mut crate::SlotOfQByteArray)
116559    }
116560}
116561
116562#[cfg_attr(
116563    feature = "ritual_rustdoc_nightly",
116564    doc(cfg(cpp_lib_version = "5.14.0"))
116565)]
116566#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116567impl ::cpp_core::CppDeletable for crate::SlotOfRasterMode {
116568    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode()```</span>.
116569    #[inline(always)]
116570    unsafe fn delete(&self) {
116571        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode(self as *const crate::SlotOfRasterMode as *mut crate::SlotOfRasterMode)
116572    }
116573}
116574
116575impl ::cpp_core::CppDeletable for crate::SlotOfUsageType {
116576    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType()```</span>.
116577    #[inline(always)]
116578    unsafe fn delete(&self) {
116579        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType(self as *const crate::SlotOfUsageType as *mut crate::SlotOfUsageType)
116580    }
116581}
116582
116583impl ::cpp_core::CppDeletable for crate::SlotOfStatus2 {
116584    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status()```</span>.
116585    #[inline(always)]
116586    unsafe fn delete(&self) {
116587        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status(self as *const crate::SlotOfStatus2 as *mut crate::SlotOfStatus2)
116588    }
116589}
116590
116591impl ::cpp_core::CppDeletable for crate::SlotOfU64 {
116592    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_quint64::~ctr_qt_3d_render_ffi_slot_wrapper_quint64()```</span>.
116593    #[inline(always)]
116594    unsafe fn delete(&self) {
116595        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_quint64_dctr_qt_3d_render_ffi_slot_wrapper_quint64(self as *const crate::SlotOfU64 as *mut crate::SlotOfU64)
116596    }
116597}
116598
116599impl ::cpp_core::CppDeletable for crate::SlotOfFaceOrientationPickingMode {
116600    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode()```</span>.
116601    #[inline(always)]
116602    unsafe fn delete(&self) {
116603        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode(self as *const crate::SlotOfFaceOrientationPickingMode as *mut crate::SlotOfFaceOrientationPickingMode)
116604    }
116605}
116606
116607impl ::cpp_core::CppDeletable for crate::SlotOfCubeMapFace {
116608    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace()```</span>.
116609    #[inline(always)]
116610    unsafe fn delete(&self) {
116611        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace(self as *const crate::SlotOfCubeMapFace as *mut crate::SlotOfCubeMapFace)
116612    }
116613}
116614
116615impl ::cpp_core::CppDeletable for crate::SlotOfQShaderProgram {
116616    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr()```</span>.
116617    #[inline(always)]
116618    unsafe fn delete(&self) {
116619        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr(self as *const crate::SlotOfQShaderProgram as *mut crate::SlotOfQShaderProgram)
116620    }
116621}
116622
116623#[cfg_attr(
116624    feature = "ritual_rustdoc_nightly",
116625    doc(cfg(cpp_lib_version = "5.14.0"))
116626)]
116627#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116628impl ::cpp_core::CppDeletable for crate::SlotOfEnablement {
116629    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement()```</span>.
116630    #[inline(always)]
116631    unsafe fn delete(&self) {
116632        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement(self as *const crate::SlotOfEnablement as *mut crate::SlotOfEnablement)
116633    }
116634}
116635
116636impl ::cpp_core::CppDeletable for crate::SlotOfQColor {
116637    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref::~ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref()```</span>.
116638    #[inline(always)]
116639    unsafe fn delete(&self) {
116640        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_dctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref(self as *const crate::SlotOfQColor as *mut crate::SlotOfQColor)
116641    }
116642}
116643
116644impl ::cpp_core::CppDeletable for crate::SlotOfQRenderTargetOutput {
116645    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr()```</span>.
116646    #[inline(always)]
116647    unsafe fn delete(&self) {
116648        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr(self as *const crate::SlotOfQRenderTargetOutput as *mut crate::SlotOfQRenderTargetOutput)
116649    }
116650}
116651
116652impl ::cpp_core::CppDeletable for crate::SlotOfRenderPolicy {
116653    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy()```</span>.
116654    #[inline(always)]
116655    unsafe fn delete(&self) {
116656        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy(self as *const crate::SlotOfRenderPolicy as *mut crate::SlotOfRenderPolicy)
116657    }
116658}
116659
116660impl ::cpp_core::CppDeletable for crate::SlotOfComparisonFunction {
116661    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction()```</span>.
116662    #[inline(always)]
116663    unsafe fn delete(&self) {
116664        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction(self as *const crate::SlotOfComparisonFunction as *mut crate::SlotOfComparisonFunction)
116665    }
116666}
116667
116668impl ::cpp_core::CppDeletable for crate::SlotOfBlendFunction {
116669    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction()```</span>.
116670    #[inline(always)]
116671    unsafe fn delete(&self) {
116672        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction(self as *const crate::SlotOfBlendFunction as *mut crate::SlotOfBlendFunction)
116673    }
116674}
116675
116676impl ::cpp_core::CppDeletable for crate::SlotOfPickMethod {
116677    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod()```</span>.
116678    #[inline(always)]
116679    unsafe fn delete(&self) {
116680        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod(self as *const crate::SlotOfPickMethod as *mut crate::SlotOfPickMethod)
116681    }
116682}
116683
116684impl ::cpp_core::CppDeletable for crate::SlotOfPickResultMode {
116685    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode()```</span>.
116686    #[inline(always)]
116687    unsafe fn delete(&self) {
116688        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode(self as *const crate::SlotOfPickResultMode as *mut crate::SlotOfPickResultMode)
116689    }
116690}
116691
116692impl ::cpp_core::CppDeletable for crate::SlotOfQFrameGraphNode {
116693    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr()```</span>.
116694    #[inline(always)]
116695    unsafe fn delete(&self) {
116696        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr(self as *const crate::SlotOfQFrameGraphNode as *mut crate::SlotOfQFrameGraphNode)
116697    }
116698}
116699
116700impl ::cpp_core::CppDeletable for crate::SlotOfQVectorOfSortType {
116701    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref::~ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref()```</span>.
116702    #[inline(always)]
116703    unsafe fn delete(&self) {
116704        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_dctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref(self as *const crate::SlotOfQVectorOfSortType as *mut crate::SlotOfQVectorOfSortType)
116705    }
116706}
116707
116708impl ::cpp_core::CppDeletable for crate::SlotOfQVectorOfInt {
116709    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref::~ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref()```</span>.
116710    #[inline(always)]
116711    unsafe fn delete(&self) {
116712        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_dctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref(self as *const crate::SlotOfQVectorOfInt as *mut crate::SlotOfQVectorOfInt)
116713    }
116714}
116715
116716impl ::cpp_core::CppDeletable for crate::SlotOfStatus3 {
116717    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status()```</span>.
116718    #[inline(always)]
116719    unsafe fn delete(&self) {
116720        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status(self as *const crate::SlotOfStatus3 as *mut crate::SlotOfStatus3)
116721    }
116722}
116723
116724#[cfg_attr(
116725    feature = "ritual_rustdoc_nightly",
116726    doc(cfg(cpp_lib_version = "5.14.0"))
116727)]
116728#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116729impl ::cpp_core::CppDeletable for crate::SlotOfImageFormat {
116730    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat()```</span>.
116731    #[inline(always)]
116732    unsafe fn delete(&self) {
116733        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat(self as *const crate::SlotOfImageFormat as *mut crate::SlotOfImageFormat)
116734    }
116735}
116736
116737impl ::cpp_core::CppDeletable for crate::SlotOfTextureFormat {
116738    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat()```</span>.
116739    #[inline(always)]
116740    unsafe fn delete(&self) {
116741        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat(self as *const crate::SlotOfTextureFormat as *mut crate::SlotOfTextureFormat)
116742    }
116743}
116744
116745impl ::cpp_core::CppDeletable for crate::SlotOfBlending {
116746    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending()```</span>.
116747    #[inline(always)]
116748    unsafe fn delete(&self) {
116749        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending(self as *const crate::SlotOfBlending as *mut crate::SlotOfBlending)
116750    }
116751}
116752
116753impl ::cpp_core::CppDeletable for crate::SlotOfOperation {
116754    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation()```</span>.
116755    #[inline(always)]
116756    unsafe fn delete(&self) {
116757        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation(self as *const crate::SlotOfOperation as *mut crate::SlotOfOperation)
116758    }
116759}
116760
116761#[cfg_attr(
116762    feature = "ritual_rustdoc_nightly",
116763    doc(cfg(any(
116764        cpp_lib_version = "5.14.0",
116765        cpp_lib_version = "5.11.3",
116766        cpp_lib_version = "5.12.2",
116767        cpp_lib_version = "5.13.0"
116768    )))
116769)]
116770#[cfg(any(
116771    any(
116772        cpp_lib_version = "5.14.0",
116773        cpp_lib_version = "5.11.3",
116774        cpp_lib_version = "5.12.2",
116775        cpp_lib_version = "5.13.0"
116776    ),
116777    feature = "ritual_rustdoc"
116778))]
116779impl ::cpp_core::CppDeletable for crate::SlotOfQVectorOfQRayCasterHit {
116780    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref::~ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref()```</span>.
116781    #[inline(always)]
116782    unsafe fn delete(&self) {
116783        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_dctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref(self as *const crate::SlotOfQVectorOfQRayCasterHit as *mut crate::SlotOfQVectorOfQRayCasterHit)
116784    }
116785}
116786
116787impl ::cpp_core::CppDeletable for crate::SlotOfQAbstractTexture {
116788    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr()```</span>.
116789    #[inline(always)]
116790    unsafe fn delete(&self) {
116791        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr(self as *const crate::SlotOfQAbstractTexture as *mut crate::SlotOfQAbstractTexture)
116792    }
116793}
116794
116795impl ::cpp_core::CppDeletable for crate::SlotOfQPickEvent {
116796    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr()```</span>.
116797    #[inline(always)]
116798    unsafe fn delete(&self) {
116799        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr(self as *const crate::SlotOfQPickEvent as *mut crate::SlotOfQPickEvent)
116800    }
116801}
116802
116803#[cfg_attr(
116804    feature = "ritual_rustdoc_nightly",
116805    doc(cfg(any(
116806        cpp_lib_version = "5.14.0",
116807        cpp_lib_version = "5.11.3",
116808        cpp_lib_version = "5.12.2",
116809        cpp_lib_version = "5.13.0"
116810    )))
116811)]
116812#[cfg(any(
116813    any(
116814        cpp_lib_version = "5.14.0",
116815        cpp_lib_version = "5.11.3",
116816        cpp_lib_version = "5.12.2",
116817        cpp_lib_version = "5.13.0"
116818    ),
116819    feature = "ritual_rustdoc"
116820))]
116821impl ::cpp_core::CppDeletable for crate::SlotOfRunMode {
116822    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode()```</span>.
116823    #[inline(always)]
116824    unsafe fn delete(&self) {
116825        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode(self as *const crate::SlotOfRunMode as *mut crate::SlotOfRunMode)
116826    }
116827}
116828
116829impl ::cpp_core::CppDeletable for crate::SlotOfProjectionType {
116830    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType()```</span>.
116831    #[inline(always)]
116832    unsafe fn delete(&self) {
116833        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType(self as *const crate::SlotOfProjectionType as *mut crate::SlotOfProjectionType)
116834    }
116835}
116836
116837impl ::cpp_core::CppDeletable for crate::SlotOfQAttribute {
116838    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr()```</span>.
116839    #[inline(always)]
116840    unsafe fn delete(&self) {
116841        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr(self as *const crate::SlotOfQAttribute as *mut crate::SlotOfQAttribute)
116842    }
116843}
116844
116845impl ::cpp_core::CppDeletable for crate::SlotOfQBuffer {
116846    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr()```</span>.
116847    #[inline(always)]
116848    unsafe fn delete(&self) {
116849        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr(self as *const crate::SlotOfQBuffer as *mut crate::SlotOfQBuffer)
116850    }
116851}
116852
116853impl ::cpp_core::CppDeletable for crate::SlotOfStatus4 {
116854    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status()```</span>.
116855    #[inline(always)]
116856    unsafe fn delete(&self) {
116857        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status(self as *const crate::SlotOfStatus4 as *mut crate::SlotOfStatus4)
116858    }
116859}
116860
116861impl ::cpp_core::CppDeletable for crate::SlotOfBufferType2 {
116862    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType()```</span>.
116863    #[inline(always)]
116864    unsafe fn delete(&self) {
116865        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType(self as *const crate::SlotOfBufferType2 as *mut crate::SlotOfBufferType2)
116866    }
116867}
116868
116869impl ::cpp_core::CppDeletable for crate::SlotOfQSize {
116870    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QSize::~ctr_qt_3d_render_ffi_slot_wrapper_QSize()```</span>.
116871    #[inline(always)]
116872    unsafe fn delete(&self) {
116873        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QSize_dctr_qt_3d_render_ffi_slot_wrapper_QSize(self as *const crate::SlotOfQSize as *mut crate::SlotOfQSize)
116874    }
116875}
116876
116877impl ::cpp_core::CppDeletable for crate::SlotOfQLevelOfDetailBoundingSphere {
116878    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref()```</span>.
116879    #[inline(always)]
116880    unsafe fn delete(&self) {
116881        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref(self as *const crate::SlotOfQLevelOfDetailBoundingSphere as *mut crate::SlotOfQLevelOfDetailBoundingSphere)
116882    }
116883}
116884
116885impl ::cpp_core::CppDeletable for crate::SlotOfOpenglProfile {
116886    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile()```</span>.
116887    #[inline(always)]
116888    unsafe fn delete(&self) {
116889        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile(self as *const crate::SlotOfOpenglProfile as *mut crate::SlotOfOpenglProfile)
116890    }
116891}
116892
116893impl ::cpp_core::CppDeletable for crate::SlotOfQStringList {
116894    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref::~ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref()```</span>.
116895    #[inline(always)]
116896    unsafe fn delete(&self) {
116897        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_dctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref(self as *const crate::SlotOfQStringList as *mut crate::SlotOfQStringList)
116898    }
116899}
116900
116901impl ::cpp_core::CppDeletable for crate::SlotOfPrimitiveType {
116902    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType()```</span>.
116903    #[inline(always)]
116904    unsafe fn delete(&self) {
116905        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType(self as *const crate::SlotOfPrimitiveType as *mut crate::SlotOfPrimitiveType)
116906    }
116907}
116908
116909impl ::cpp_core::CppDeletable for crate::SlotOfAttachmentPoint {
116910    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint()```</span>.
116911    #[inline(always)]
116912    unsafe fn delete(&self) {
116913        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint(self as *const crate::SlotOfAttachmentPoint as *mut crate::SlotOfAttachmentPoint)
116914    }
116915}
116916
116917impl ::cpp_core::CppDeletable for crate::SlotOfQCamera {
116918    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr()```</span>.
116919    #[inline(always)]
116920    unsafe fn delete(&self) {
116921        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr(self as *const crate::SlotOfQCamera as *mut crate::SlotOfQCamera)
116922    }
116923}
116924
116925impl ::cpp_core::CppDeletable for crate::SlotOfWindingDirection {
116926    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection()```</span>.
116927    #[inline(always)]
116928    unsafe fn delete(&self) {
116929        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection(self as *const crate::SlotOfWindingDirection as *mut crate::SlotOfWindingDirection)
116930    }
116931}
116932
116933impl ::cpp_core::CppDeletable for crate::SlotOfQEffect {
116934    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr()```</span>.
116935    #[inline(always)]
116936    unsafe fn delete(&self) {
116937        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr(self as *const crate::SlotOfQEffect as *mut crate::SlotOfQEffect)
116938    }
116939}
116940
116941impl ::cpp_core::CppDeletable for crate::SlotOfStencilFaceMode {
116942    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode()```</span>.
116943    #[inline(always)]
116944    unsafe fn delete(&self) {
116945        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode(self as *const crate::SlotOfStencilFaceMode as *mut crate::SlotOfStencilFaceMode)
116946    }
116947}
116948
116949#[cfg_attr(
116950    feature = "ritual_rustdoc_nightly",
116951    doc(cfg(cpp_lib_version = "5.14.0"))
116952)]
116953#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
116954impl ::cpp_core::CppDeletable for crate::SlotOfFaceMode2 {
116955    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode()```</span>.
116956    #[inline(always)]
116957    unsafe fn delete(&self) {
116958        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode(self as *const crate::SlotOfFaceMode2 as *mut crate::SlotOfFaceMode2)
116959    }
116960}
116961
116962impl ::cpp_core::CppDeletable for crate::SlotOfAttributeType {
116963    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType::~ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType()```</span>.
116964    #[inline(always)]
116965    unsafe fn delete(&self) {
116966        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_dctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType(self as *const crate::SlotOfAttributeType as *mut crate::SlotOfAttributeType)
116967    }
116968}
116969
116970impl ::cpp_core::CppDeletable for crate::SlotOfUint {
116971    /// Calls C++ function: <span style='color: green;'>```[destructor] void ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int::~ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int()```</span>.
116972    #[inline(always)]
116973    unsafe fn delete(&self) {
116974        crate::__ffi::ctr_qt_3d_render_ffi_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_dctr_qt_3d_render_ffi_slot_wrapper_unsigned_int(self as *const crate::SlotOfUint as *mut crate::SlotOfUint)
116975    }
116976}
116977
116978impl ::cpp_core::StaticDowncast<crate::SlotOfApi> for ::qt_core::QObject {
116979    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api*>(QObject* ptr)```</span>.
116980    #[inline(always)]
116981    unsafe fn static_downcast(
116982        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
116983    ) -> ::cpp_core::Ptr<crate::SlotOfApi> {
116984        let ffi_result = {
116985            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
116986        };
116987        ::cpp_core::Ptr::from_raw(ffi_result)
116988    }
116989}
116990
116991impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfApi {
116992    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api* ptr)```</span>.
116993    #[inline(always)]
116994    unsafe fn static_upcast(
116995        ptr: ::cpp_core::Ptr<crate::SlotOfApi>,
116996    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
116997        let ffi_result = {
116998            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr360(
116999                ptr.as_raw_ptr() as *mut crate::SlotOfApi
117000            )
117001        };
117002        ::cpp_core::Ptr::from_raw(ffi_result)
117003    }
117004}
117005
117006impl ::std::ops::Deref for crate::SlotOfApi {
117007    type Target = ::qt_core::QObject;
117008    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api* ptr)```</span>.
117009    #[inline(always)]
117010    fn deref(&self) -> &::qt_core::QObject {
117011        let ffi_result = {
117012            unsafe {
117013                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr360(
117014                    self as *const crate::SlotOfApi as *mut crate::SlotOfApi,
117015                )
117016            }
117017        };
117018        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117019    }
117020}
117021
117022impl ::cpp_core::DynamicCast<crate::SlotOfApi> for ::qt_core::QObject {
117023    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api*>(QObject* ptr)```</span>.
117024    #[inline(always)]
117025    unsafe fn dynamic_cast(
117026        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117027    ) -> ::cpp_core::Ptr<crate::SlotOfApi> {
117028        let ffi_result = {
117029            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_Api_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117030        };
117031        ::cpp_core::Ptr::from_raw(ffi_result)
117032    }
117033}
117034
117035impl ::cpp_core::StaticDowncast<crate::SlotOfQGeometry> for ::qt_core::QObject {
117036    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr*>(QObject* ptr)```</span>.
117037    #[inline(always)]
117038    unsafe fn static_downcast(
117039        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117040    ) -> ::cpp_core::Ptr<crate::SlotOfQGeometry> {
117041        let ffi_result = {
117042            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117043        };
117044        ::cpp_core::Ptr::from_raw(ffi_result)
117045    }
117046}
117047
117048impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQGeometry {
117049    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr* ptr)```</span>.
117050    #[inline(always)]
117051    unsafe fn static_upcast(
117052        ptr: ::cpp_core::Ptr<crate::SlotOfQGeometry>,
117053    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117054        let ffi_result = {
117055            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr361(
117056                ptr.as_raw_ptr() as *mut crate::SlotOfQGeometry
117057            )
117058        };
117059        ::cpp_core::Ptr::from_raw(ffi_result)
117060    }
117061}
117062
117063impl ::std::ops::Deref for crate::SlotOfQGeometry {
117064    type Target = ::qt_core::QObject;
117065    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr* ptr)```</span>.
117066    #[inline(always)]
117067    fn deref(&self) -> &::qt_core::QObject {
117068        let ffi_result = {
117069            unsafe {
117070                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr361(
117071                    self as *const crate::SlotOfQGeometry as *mut crate::SlotOfQGeometry,
117072                )
117073            }
117074        };
117075        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117076    }
117077}
117078
117079impl ::cpp_core::DynamicCast<crate::SlotOfQGeometry> for ::qt_core::QObject {
117080    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr*>(QObject* ptr)```</span>.
117081    #[inline(always)]
117082    unsafe fn dynamic_cast(
117083        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117084    ) -> ::cpp_core::Ptr<crate::SlotOfQGeometry> {
117085        let ffi_result = {
117086            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometry_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117087        };
117088        ::cpp_core::Ptr::from_raw(ffi_result)
117089    }
117090}
117091
117092impl ::cpp_core::StaticDowncast<crate::SlotOfQRenderTarget> for ::qt_core::QObject {
117093    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr*>(QObject* ptr)```</span>.
117094    #[inline(always)]
117095    unsafe fn static_downcast(
117096        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117097    ) -> ::cpp_core::Ptr<crate::SlotOfQRenderTarget> {
117098        let ffi_result = {
117099            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117100        };
117101        ::cpp_core::Ptr::from_raw(ffi_result)
117102    }
117103}
117104
117105impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQRenderTarget {
117106    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr* ptr)```</span>.
117107    #[inline(always)]
117108    unsafe fn static_upcast(
117109        ptr: ::cpp_core::Ptr<crate::SlotOfQRenderTarget>,
117110    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117111        let ffi_result = {
117112            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr362(
117113                ptr.as_raw_ptr() as *mut crate::SlotOfQRenderTarget
117114            )
117115        };
117116        ::cpp_core::Ptr::from_raw(ffi_result)
117117    }
117118}
117119
117120impl ::std::ops::Deref for crate::SlotOfQRenderTarget {
117121    type Target = ::qt_core::QObject;
117122    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr* ptr)```</span>.
117123    #[inline(always)]
117124    fn deref(&self) -> &::qt_core::QObject {
117125        let ffi_result = {
117126            unsafe {
117127                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr362(
117128                    self as *const crate::SlotOfQRenderTarget as *mut crate::SlotOfQRenderTarget,
117129                )
117130            }
117131        };
117132        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117133    }
117134}
117135
117136impl ::cpp_core::DynamicCast<crate::SlotOfQRenderTarget> for ::qt_core::QObject {
117137    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr*>(QObject* ptr)```</span>.
117138    #[inline(always)]
117139    unsafe fn dynamic_cast(
117140        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117141    ) -> ::cpp_core::Ptr<crate::SlotOfQRenderTarget> {
117142        let ffi_result = {
117143            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTarget_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117144        };
117145        ::cpp_core::Ptr::from_raw(ffi_result)
117146    }
117147}
117148
117149impl ::cpp_core::StaticDowncast<crate::SlotOfQPoint> for ::qt_core::QObject {
117150    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref*>(QObject* ptr)```</span>.
117151    #[inline(always)]
117152    unsafe fn static_downcast(
117153        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117154    ) -> ::cpp_core::Ptr<crate::SlotOfQPoint> {
117155        let ffi_result = {
117156            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117157        };
117158        ::cpp_core::Ptr::from_raw(ffi_result)
117159    }
117160}
117161
117162impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQPoint {
117163    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref* ptr)```</span>.
117164    #[inline(always)]
117165    unsafe fn static_upcast(
117166        ptr: ::cpp_core::Ptr<crate::SlotOfQPoint>,
117167    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117168        let ffi_result = {
117169            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr363(
117170                ptr.as_raw_ptr() as *mut crate::SlotOfQPoint
117171            )
117172        };
117173        ::cpp_core::Ptr::from_raw(ffi_result)
117174    }
117175}
117176
117177impl ::std::ops::Deref for crate::SlotOfQPoint {
117178    type Target = ::qt_core::QObject;
117179    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref* ptr)```</span>.
117180    #[inline(always)]
117181    fn deref(&self) -> &::qt_core::QObject {
117182        let ffi_result = {
117183            unsafe {
117184                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr363(
117185                    self as *const crate::SlotOfQPoint as *mut crate::SlotOfQPoint,
117186                )
117187            }
117188        };
117189        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117190    }
117191}
117192
117193impl ::cpp_core::DynamicCast<crate::SlotOfQPoint> for ::qt_core::QObject {
117194    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref*>(QObject* ptr)```</span>.
117195    #[inline(always)]
117196    unsafe fn dynamic_cast(
117197        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117198    ) -> ::cpp_core::Ptr<crate::SlotOfQPoint> {
117199        let ffi_result = {
117200            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QPoint_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117201        };
117202        ::cpp_core::Ptr::from_raw(ffi_result)
117203    }
117204}
117205
117206impl ::cpp_core::StaticDowncast<crate::SlotOfStatus> for ::qt_core::QObject {
117207    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status*>(QObject* ptr)```</span>.
117208    #[inline(always)]
117209    unsafe fn static_downcast(
117210        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117211    ) -> ::cpp_core::Ptr<crate::SlotOfStatus> {
117212        let ffi_result = {
117213            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117214        };
117215        ::cpp_core::Ptr::from_raw(ffi_result)
117216    }
117217}
117218
117219impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfStatus {
117220    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status* ptr)```</span>.
117221    #[inline(always)]
117222    unsafe fn static_upcast(
117223        ptr: ::cpp_core::Ptr<crate::SlotOfStatus>,
117224    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117225        let ffi_result = {
117226            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr364(
117227                ptr.as_raw_ptr() as *mut crate::SlotOfStatus
117228            )
117229        };
117230        ::cpp_core::Ptr::from_raw(ffi_result)
117231    }
117232}
117233
117234impl ::std::ops::Deref for crate::SlotOfStatus {
117235    type Target = ::qt_core::QObject;
117236    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status* ptr)```</span>.
117237    #[inline(always)]
117238    fn deref(&self) -> &::qt_core::QObject {
117239        let ffi_result = {
117240            unsafe {
117241                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr364(
117242                    self as *const crate::SlotOfStatus as *mut crate::SlotOfStatus,
117243                )
117244            }
117245        };
117246        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117247    }
117248}
117249
117250impl ::cpp_core::DynamicCast<crate::SlotOfStatus> for ::qt_core::QObject {
117251    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status*>(QObject* ptr)```</span>.
117252    #[inline(always)]
117253    unsafe fn dynamic_cast(
117254        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117255    ) -> ::cpp_core::Ptr<crate::SlotOfStatus> {
117256        let ffi_result = {
117257            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117258        };
117259        ::cpp_core::Ptr::from_raw(ffi_result)
117260    }
117261}
117262
117263impl ::cpp_core::StaticDowncast<crate::SlotOfQVector3D> for ::qt_core::QObject {
117264    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector3D* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector3D*>(QObject* ptr)```</span>.
117265    #[inline(always)]
117266    unsafe fn static_downcast(
117267        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117268    ) -> ::cpp_core::Ptr<crate::SlotOfQVector3D> {
117269        let ffi_result = {
117270            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117271        };
117272        ::cpp_core::Ptr::from_raw(ffi_result)
117273    }
117274}
117275
117276impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQVector3D {
117277    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector3D* ptr)```</span>.
117278    #[inline(always)]
117279    unsafe fn static_upcast(
117280        ptr: ::cpp_core::Ptr<crate::SlotOfQVector3D>,
117281    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117282        let ffi_result = {
117283            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr365(
117284                ptr.as_raw_ptr() as *mut crate::SlotOfQVector3D
117285            )
117286        };
117287        ::cpp_core::Ptr::from_raw(ffi_result)
117288    }
117289}
117290
117291impl ::std::ops::Deref for crate::SlotOfQVector3D {
117292    type Target = ::qt_core::QObject;
117293    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector3D* ptr)```</span>.
117294    #[inline(always)]
117295    fn deref(&self) -> &::qt_core::QObject {
117296        let ffi_result = {
117297            unsafe {
117298                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr365(
117299                    self as *const crate::SlotOfQVector3D as *mut crate::SlotOfQVector3D,
117300                )
117301            }
117302        };
117303        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117304    }
117305}
117306
117307impl ::cpp_core::DynamicCast<crate::SlotOfQVector3D> for ::qt_core::QObject {
117308    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector3D* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector3D*>(QObject* ptr)```</span>.
117309    #[inline(always)]
117310    unsafe fn dynamic_cast(
117311        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117312    ) -> ::cpp_core::Ptr<crate::SlotOfQVector3D> {
117313        let ffi_result = {
117314            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector3D_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117315        };
117316        ::cpp_core::Ptr::from_raw(ffi_result)
117317    }
117318}
117319
117320impl ::cpp_core::StaticDowncast<crate::SlotOfDepthFunction> for ::qt_core::QObject {
117321    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction*>(QObject* ptr)```</span>.
117322    #[inline(always)]
117323    unsafe fn static_downcast(
117324        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117325    ) -> ::cpp_core::Ptr<crate::SlotOfDepthFunction> {
117326        let ffi_result = {
117327            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117328        };
117329        ::cpp_core::Ptr::from_raw(ffi_result)
117330    }
117331}
117332
117333impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfDepthFunction {
117334    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction* ptr)```</span>.
117335    #[inline(always)]
117336    unsafe fn static_upcast(
117337        ptr: ::cpp_core::Ptr<crate::SlotOfDepthFunction>,
117338    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117339        let ffi_result = {
117340            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr366(
117341                ptr.as_raw_ptr() as *mut crate::SlotOfDepthFunction
117342            )
117343        };
117344        ::cpp_core::Ptr::from_raw(ffi_result)
117345    }
117346}
117347
117348impl ::std::ops::Deref for crate::SlotOfDepthFunction {
117349    type Target = ::qt_core::QObject;
117350    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction* ptr)```</span>.
117351    #[inline(always)]
117352    fn deref(&self) -> &::qt_core::QObject {
117353        let ffi_result = {
117354            unsafe {
117355                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr366(
117356                    self as *const crate::SlotOfDepthFunction as *mut crate::SlotOfDepthFunction,
117357                )
117358            }
117359        };
117360        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117361    }
117362}
117363
117364impl ::cpp_core::DynamicCast<crate::SlotOfDepthFunction> for ::qt_core::QObject {
117365    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction*>(QObject* ptr)```</span>.
117366    #[inline(always)]
117367    unsafe fn dynamic_cast(
117368        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117369    ) -> ::cpp_core::Ptr<crate::SlotOfDepthFunction> {
117370        let ffi_result = {
117371            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QDepthTest_DepthFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117372        };
117373        ::cpp_core::Ptr::from_raw(ffi_result)
117374    }
117375}
117376
117377#[cfg_attr(
117378    feature = "ritual_rustdoc_nightly",
117379    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
117380)]
117381#[cfg(any(
117382    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
117383    feature = "ritual_rustdoc"
117384))]
117385impl ::cpp_core::StaticDowncast<crate::SlotOfHandleType> for ::qt_core::QObject {
117386    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType*>(QObject* ptr)```</span>.
117387    #[inline(always)]
117388    unsafe fn static_downcast(
117389        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117390    ) -> ::cpp_core::Ptr<crate::SlotOfHandleType> {
117391        let ffi_result = {
117392            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117393        };
117394        ::cpp_core::Ptr::from_raw(ffi_result)
117395    }
117396}
117397
117398#[cfg_attr(
117399    feature = "ritual_rustdoc_nightly",
117400    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
117401)]
117402#[cfg(any(
117403    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
117404    feature = "ritual_rustdoc"
117405))]
117406impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfHandleType {
117407    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType* ptr)```</span>.
117408    #[inline(always)]
117409    unsafe fn static_upcast(
117410        ptr: ::cpp_core::Ptr<crate::SlotOfHandleType>,
117411    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117412        let ffi_result = {
117413            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr367(
117414                ptr.as_raw_ptr() as *mut crate::SlotOfHandleType
117415            )
117416        };
117417        ::cpp_core::Ptr::from_raw(ffi_result)
117418    }
117419}
117420
117421#[cfg_attr(
117422    feature = "ritual_rustdoc_nightly",
117423    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
117424)]
117425#[cfg(any(
117426    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
117427    feature = "ritual_rustdoc"
117428))]
117429impl ::std::ops::Deref for crate::SlotOfHandleType {
117430    type Target = ::qt_core::QObject;
117431    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType* ptr)```</span>.
117432    #[inline(always)]
117433    fn deref(&self) -> &::qt_core::QObject {
117434        let ffi_result = {
117435            unsafe {
117436                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr367(
117437                    self as *const crate::SlotOfHandleType as *mut crate::SlotOfHandleType,
117438                )
117439            }
117440        };
117441        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117442    }
117443}
117444
117445#[cfg_attr(
117446    feature = "ritual_rustdoc_nightly",
117447    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
117448)]
117449#[cfg(any(
117450    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
117451    feature = "ritual_rustdoc"
117452))]
117453impl ::cpp_core::DynamicCast<crate::SlotOfHandleType> for ::qt_core::QObject {
117454    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType*>(QObject* ptr)```</span>.
117455    #[inline(always)]
117456    unsafe fn dynamic_cast(
117457        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117458    ) -> ::cpp_core::Ptr<crate::SlotOfHandleType> {
117459        let ffi_result = {
117460            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSetFence_HandleType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117461        };
117462        ::cpp_core::Ptr::from_raw(ffi_result)
117463    }
117464}
117465
117466impl ::cpp_core::StaticDowncast<crate::SlotOfComparisonMode> for ::qt_core::QObject {
117467    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode*>(QObject* ptr)```</span>.
117468    #[inline(always)]
117469    unsafe fn static_downcast(
117470        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117471    ) -> ::cpp_core::Ptr<crate::SlotOfComparisonMode> {
117472        let ffi_result = {
117473            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117474        };
117475        ::cpp_core::Ptr::from_raw(ffi_result)
117476    }
117477}
117478
117479impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfComparisonMode {
117480    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode* ptr)```</span>.
117481    #[inline(always)]
117482    unsafe fn static_upcast(
117483        ptr: ::cpp_core::Ptr<crate::SlotOfComparisonMode>,
117484    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117485        let ffi_result = {
117486            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr368(
117487                ptr.as_raw_ptr() as *mut crate::SlotOfComparisonMode
117488            )
117489        };
117490        ::cpp_core::Ptr::from_raw(ffi_result)
117491    }
117492}
117493
117494impl ::std::ops::Deref for crate::SlotOfComparisonMode {
117495    type Target = ::qt_core::QObject;
117496    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode* ptr)```</span>.
117497    #[inline(always)]
117498    fn deref(&self) -> &::qt_core::QObject {
117499        let ffi_result = {
117500            unsafe {
117501                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr368(
117502                    self as *const crate::SlotOfComparisonMode as *mut crate::SlotOfComparisonMode,
117503                )
117504            }
117505        };
117506        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117507    }
117508}
117509
117510impl ::cpp_core::DynamicCast<crate::SlotOfComparisonMode> for ::qt_core::QObject {
117511    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode*>(QObject* ptr)```</span>.
117512    #[inline(always)]
117513    unsafe fn dynamic_cast(
117514        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117515    ) -> ::cpp_core::Ptr<crate::SlotOfComparisonMode> {
117516        let ffi_result = {
117517            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117518        };
117519        ::cpp_core::Ptr::from_raw(ffi_result)
117520    }
117521}
117522
117523#[cfg_attr(
117524    feature = "ritual_rustdoc_nightly",
117525    doc(cfg(cpp_lib_version = "5.14.0"))
117526)]
117527#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
117528impl ::cpp_core::StaticDowncast<crate::SlotOfAccess> for ::qt_core::QObject {
117529    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access*>(QObject* ptr)```</span>.
117530    #[inline(always)]
117531    unsafe fn static_downcast(
117532        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117533    ) -> ::cpp_core::Ptr<crate::SlotOfAccess> {
117534        let ffi_result = {
117535            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117536        };
117537        ::cpp_core::Ptr::from_raw(ffi_result)
117538    }
117539}
117540
117541#[cfg_attr(
117542    feature = "ritual_rustdoc_nightly",
117543    doc(cfg(cpp_lib_version = "5.14.0"))
117544)]
117545#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
117546impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfAccess {
117547    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access* ptr)```</span>.
117548    #[inline(always)]
117549    unsafe fn static_upcast(
117550        ptr: ::cpp_core::Ptr<crate::SlotOfAccess>,
117551    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117552        let ffi_result = {
117553            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr369(
117554                ptr.as_raw_ptr() as *mut crate::SlotOfAccess
117555            )
117556        };
117557        ::cpp_core::Ptr::from_raw(ffi_result)
117558    }
117559}
117560
117561#[cfg_attr(
117562    feature = "ritual_rustdoc_nightly",
117563    doc(cfg(cpp_lib_version = "5.14.0"))
117564)]
117565#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
117566impl ::std::ops::Deref for crate::SlotOfAccess {
117567    type Target = ::qt_core::QObject;
117568    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access* ptr)```</span>.
117569    #[inline(always)]
117570    fn deref(&self) -> &::qt_core::QObject {
117571        let ffi_result = {
117572            unsafe {
117573                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr369(
117574                    self as *const crate::SlotOfAccess as *mut crate::SlotOfAccess,
117575                )
117576            }
117577        };
117578        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117579    }
117580}
117581
117582#[cfg_attr(
117583    feature = "ritual_rustdoc_nightly",
117584    doc(cfg(cpp_lib_version = "5.14.0"))
117585)]
117586#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
117587impl ::cpp_core::DynamicCast<crate::SlotOfAccess> for ::qt_core::QObject {
117588    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access*>(QObject* ptr)```</span>.
117589    #[inline(always)]
117590    unsafe fn dynamic_cast(
117591        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117592    ) -> ::cpp_core::Ptr<crate::SlotOfAccess> {
117593        let ffi_result = {
117594            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_Access_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117595        };
117596        ::cpp_core::Ptr::from_raw(ffi_result)
117597    }
117598}
117599
117600impl ::cpp_core::StaticDowncast<crate::SlotOfBufferType> for ::qt_core::QObject {
117601    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType*>(QObject* ptr)```</span>.
117602    #[inline(always)]
117603    unsafe fn static_downcast(
117604        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117605    ) -> ::cpp_core::Ptr<crate::SlotOfBufferType> {
117606        let ffi_result = {
117607            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117608        };
117609        ::cpp_core::Ptr::from_raw(ffi_result)
117610    }
117611}
117612
117613impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfBufferType {
117614    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType* ptr)```</span>.
117615    #[inline(always)]
117616    unsafe fn static_upcast(
117617        ptr: ::cpp_core::Ptr<crate::SlotOfBufferType>,
117618    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117619        let ffi_result = {
117620            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr370(
117621                ptr.as_raw_ptr() as *mut crate::SlotOfBufferType
117622            )
117623        };
117624        ::cpp_core::Ptr::from_raw(ffi_result)
117625    }
117626}
117627
117628impl ::std::ops::Deref for crate::SlotOfBufferType {
117629    type Target = ::qt_core::QObject;
117630    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType* ptr)```</span>.
117631    #[inline(always)]
117632    fn deref(&self) -> &::qt_core::QObject {
117633        let ffi_result = {
117634            unsafe {
117635                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr370(
117636                    self as *const crate::SlotOfBufferType as *mut crate::SlotOfBufferType,
117637                )
117638            }
117639        };
117640        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117641    }
117642}
117643
117644impl ::cpp_core::DynamicCast<crate::SlotOfBufferType> for ::qt_core::QObject {
117645    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType*>(QObject* ptr)```</span>.
117646    #[inline(always)]
117647    unsafe fn dynamic_cast(
117648        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117649    ) -> ::cpp_core::Ptr<crate::SlotOfBufferType> {
117650        let ffi_result = {
117651            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QClearBuffers_BufferType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117652        };
117653        ::cpp_core::Ptr::from_raw(ffi_result)
117654    }
117655}
117656
117657impl ::cpp_core::StaticDowncast<crate::SlotOfFilter> for ::qt_core::QObject {
117658    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter*>(QObject* ptr)```</span>.
117659    #[inline(always)]
117660    unsafe fn static_downcast(
117661        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117662    ) -> ::cpp_core::Ptr<crate::SlotOfFilter> {
117663        let ffi_result = {
117664            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117665        };
117666        ::cpp_core::Ptr::from_raw(ffi_result)
117667    }
117668}
117669
117670impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfFilter {
117671    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter* ptr)```</span>.
117672    #[inline(always)]
117673    unsafe fn static_upcast(
117674        ptr: ::cpp_core::Ptr<crate::SlotOfFilter>,
117675    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117676        let ffi_result = {
117677            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr371(
117678                ptr.as_raw_ptr() as *mut crate::SlotOfFilter
117679            )
117680        };
117681        ::cpp_core::Ptr::from_raw(ffi_result)
117682    }
117683}
117684
117685impl ::std::ops::Deref for crate::SlotOfFilter {
117686    type Target = ::qt_core::QObject;
117687    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter* ptr)```</span>.
117688    #[inline(always)]
117689    fn deref(&self) -> &::qt_core::QObject {
117690        let ffi_result = {
117691            unsafe {
117692                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr371(
117693                    self as *const crate::SlotOfFilter as *mut crate::SlotOfFilter,
117694                )
117695            }
117696        };
117697        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117698    }
117699}
117700
117701impl ::cpp_core::DynamicCast<crate::SlotOfFilter> for ::qt_core::QObject {
117702    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter*>(QObject* ptr)```</span>.
117703    #[inline(always)]
117704    unsafe fn dynamic_cast(
117705        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117706    ) -> ::cpp_core::Ptr<crate::SlotOfFilter> {
117707        let ffi_result = {
117708            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Filter_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117709        };
117710        ::cpp_core::Ptr::from_raw(ffi_result)
117711    }
117712}
117713
117714impl ::cpp_core::StaticDowncast<crate::SlotOfCullingMode> for ::qt_core::QObject {
117715    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode*>(QObject* ptr)```</span>.
117716    #[inline(always)]
117717    unsafe fn static_downcast(
117718        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117719    ) -> ::cpp_core::Ptr<crate::SlotOfCullingMode> {
117720        let ffi_result = {
117721            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117722        };
117723        ::cpp_core::Ptr::from_raw(ffi_result)
117724    }
117725}
117726
117727impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfCullingMode {
117728    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode* ptr)```</span>.
117729    #[inline(always)]
117730    unsafe fn static_upcast(
117731        ptr: ::cpp_core::Ptr<crate::SlotOfCullingMode>,
117732    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117733        let ffi_result = {
117734            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr372(
117735                ptr.as_raw_ptr() as *mut crate::SlotOfCullingMode
117736            )
117737        };
117738        ::cpp_core::Ptr::from_raw(ffi_result)
117739    }
117740}
117741
117742impl ::std::ops::Deref for crate::SlotOfCullingMode {
117743    type Target = ::qt_core::QObject;
117744    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode* ptr)```</span>.
117745    #[inline(always)]
117746    fn deref(&self) -> &::qt_core::QObject {
117747        let ffi_result = {
117748            unsafe {
117749                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr372(
117750                    self as *const crate::SlotOfCullingMode as *mut crate::SlotOfCullingMode,
117751                )
117752            }
117753        };
117754        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117755    }
117756}
117757
117758impl ::cpp_core::DynamicCast<crate::SlotOfCullingMode> for ::qt_core::QObject {
117759    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode*>(QObject* ptr)```</span>.
117760    #[inline(always)]
117761    unsafe fn dynamic_cast(
117762        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117763    ) -> ::cpp_core::Ptr<crate::SlotOfCullingMode> {
117764        let ffi_result = {
117765            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCullFace_CullingMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117766        };
117767        ::cpp_core::Ptr::from_raw(ffi_result)
117768    }
117769}
117770
117771#[cfg_attr(
117772    feature = "ritual_rustdoc_nightly",
117773    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
117774)]
117775#[cfg(any(
117776    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
117777    feature = "ritual_rustdoc"
117778))]
117779impl ::cpp_core::StaticDowncast<crate::SlotOfHandleType2> for ::qt_core::QObject {
117780    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType*>(QObject* ptr)```</span>.
117781    #[inline(always)]
117782    unsafe fn static_downcast(
117783        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117784    ) -> ::cpp_core::Ptr<crate::SlotOfHandleType2> {
117785        let ffi_result = {
117786            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117787        };
117788        ::cpp_core::Ptr::from_raw(ffi_result)
117789    }
117790}
117791
117792#[cfg_attr(
117793    feature = "ritual_rustdoc_nightly",
117794    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
117795)]
117796#[cfg(any(
117797    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
117798    feature = "ritual_rustdoc"
117799))]
117800impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfHandleType2 {
117801    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType* ptr)```</span>.
117802    #[inline(always)]
117803    unsafe fn static_upcast(
117804        ptr: ::cpp_core::Ptr<crate::SlotOfHandleType2>,
117805    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117806        let ffi_result = {
117807            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr373(
117808                ptr.as_raw_ptr() as *mut crate::SlotOfHandleType2
117809            )
117810        };
117811        ::cpp_core::Ptr::from_raw(ffi_result)
117812    }
117813}
117814
117815#[cfg_attr(
117816    feature = "ritual_rustdoc_nightly",
117817    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
117818)]
117819#[cfg(any(
117820    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
117821    feature = "ritual_rustdoc"
117822))]
117823impl ::std::ops::Deref for crate::SlotOfHandleType2 {
117824    type Target = ::qt_core::QObject;
117825    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType* ptr)```</span>.
117826    #[inline(always)]
117827    fn deref(&self) -> &::qt_core::QObject {
117828        let ffi_result = {
117829            unsafe {
117830                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr373(
117831                    self as *const crate::SlotOfHandleType2 as *mut crate::SlotOfHandleType2,
117832                )
117833            }
117834        };
117835        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117836    }
117837}
117838
117839#[cfg_attr(
117840    feature = "ritual_rustdoc_nightly",
117841    doc(cfg(any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0")))
117842)]
117843#[cfg(any(
117844    any(cpp_lib_version = "5.14.0", cpp_lib_version = "5.13.0"),
117845    feature = "ritual_rustdoc"
117846))]
117847impl ::cpp_core::DynamicCast<crate::SlotOfHandleType2> for ::qt_core::QObject {
117848    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType*>(QObject* ptr)```</span>.
117849    #[inline(always)]
117850    unsafe fn dynamic_cast(
117851        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117852    ) -> ::cpp_core::Ptr<crate::SlotOfHandleType2> {
117853        let ffi_result = {
117854            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QWaitFence_HandleType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117855        };
117856        ::cpp_core::Ptr::from_raw(ffi_result)
117857    }
117858}
117859
117860impl ::cpp_core::StaticDowncast<crate::SlotOfQFlagsOperation> for ::qt_core::QObject {
117861    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation*>(QObject* ptr)```</span>.
117862    #[inline(always)]
117863    unsafe fn static_downcast(
117864        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117865    ) -> ::cpp_core::Ptr<crate::SlotOfQFlagsOperation> {
117866        let ffi_result = {
117867            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117868        };
117869        ::cpp_core::Ptr::from_raw(ffi_result)
117870    }
117871}
117872
117873impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQFlagsOperation {
117874    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation* ptr)```</span>.
117875    #[inline(always)]
117876    unsafe fn static_upcast(
117877        ptr: ::cpp_core::Ptr<crate::SlotOfQFlagsOperation>,
117878    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117879        let ffi_result = {
117880            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr374(
117881                ptr.as_raw_ptr() as *mut crate::SlotOfQFlagsOperation
117882            )
117883        };
117884        ::cpp_core::Ptr::from_raw(ffi_result)
117885    }
117886}
117887
117888impl ::std::ops::Deref for crate::SlotOfQFlagsOperation {
117889    type Target = ::qt_core::QObject;
117890    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation* ptr)```</span>.
117891    #[inline(always)]
117892    fn deref(&self) -> &::qt_core::QObject {
117893        let ffi_result = {
117894            unsafe {
117895                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr374(
117896                    self as *const crate::SlotOfQFlagsOperation
117897                        as *mut crate::SlotOfQFlagsOperation,
117898                )
117899            }
117900        };
117901        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
117902    }
117903}
117904
117905impl ::cpp_core::DynamicCast<crate::SlotOfQFlagsOperation> for ::qt_core::QObject {
117906    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation*>(QObject* ptr)```</span>.
117907    #[inline(always)]
117908    unsafe fn dynamic_cast(
117909        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117910    ) -> ::cpp_core::Ptr<crate::SlotOfQFlagsOperation> {
117911        let ffi_result = {
117912            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QFlags_Qt3DRender_QMemoryBarrier_Operation_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117913        };
117914        ::cpp_core::Ptr::from_raw(ffi_result)
117915    }
117916}
117917
117918#[cfg_attr(
117919    feature = "ritual_rustdoc_nightly",
117920    doc(cfg(any(
117921        cpp_lib_version = "5.14.0",
117922        cpp_lib_version = "5.11.3",
117923        cpp_lib_version = "5.12.2",
117924        cpp_lib_version = "5.13.0"
117925    )))
117926)]
117927#[cfg(any(
117928    any(
117929        cpp_lib_version = "5.14.0",
117930        cpp_lib_version = "5.11.3",
117931        cpp_lib_version = "5.12.2",
117932        cpp_lib_version = "5.13.0"
117933    ),
117934    feature = "ritual_rustdoc"
117935))]
117936impl ::cpp_core::StaticDowncast<crate::SlotOfFilterMode> for ::qt_core::QObject {
117937    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode*>(QObject* ptr)```</span>.
117938    #[inline(always)]
117939    unsafe fn static_downcast(
117940        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
117941    ) -> ::cpp_core::Ptr<crate::SlotOfFilterMode> {
117942        let ffi_result = {
117943            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
117944        };
117945        ::cpp_core::Ptr::from_raw(ffi_result)
117946    }
117947}
117948
117949#[cfg_attr(
117950    feature = "ritual_rustdoc_nightly",
117951    doc(cfg(any(
117952        cpp_lib_version = "5.14.0",
117953        cpp_lib_version = "5.11.3",
117954        cpp_lib_version = "5.12.2",
117955        cpp_lib_version = "5.13.0"
117956    )))
117957)]
117958#[cfg(any(
117959    any(
117960        cpp_lib_version = "5.14.0",
117961        cpp_lib_version = "5.11.3",
117962        cpp_lib_version = "5.12.2",
117963        cpp_lib_version = "5.13.0"
117964    ),
117965    feature = "ritual_rustdoc"
117966))]
117967impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfFilterMode {
117968    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode* ptr)```</span>.
117969    #[inline(always)]
117970    unsafe fn static_upcast(
117971        ptr: ::cpp_core::Ptr<crate::SlotOfFilterMode>,
117972    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
117973        let ffi_result = {
117974            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr375(
117975                ptr.as_raw_ptr() as *mut crate::SlotOfFilterMode
117976            )
117977        };
117978        ::cpp_core::Ptr::from_raw(ffi_result)
117979    }
117980}
117981
117982#[cfg_attr(
117983    feature = "ritual_rustdoc_nightly",
117984    doc(cfg(any(
117985        cpp_lib_version = "5.14.0",
117986        cpp_lib_version = "5.11.3",
117987        cpp_lib_version = "5.12.2",
117988        cpp_lib_version = "5.13.0"
117989    )))
117990)]
117991#[cfg(any(
117992    any(
117993        cpp_lib_version = "5.14.0",
117994        cpp_lib_version = "5.11.3",
117995        cpp_lib_version = "5.12.2",
117996        cpp_lib_version = "5.13.0"
117997    ),
117998    feature = "ritual_rustdoc"
117999))]
118000impl ::std::ops::Deref for crate::SlotOfFilterMode {
118001    type Target = ::qt_core::QObject;
118002    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode* ptr)```</span>.
118003    #[inline(always)]
118004    fn deref(&self) -> &::qt_core::QObject {
118005        let ffi_result = {
118006            unsafe {
118007                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr375(
118008                    self as *const crate::SlotOfFilterMode as *mut crate::SlotOfFilterMode,
118009                )
118010            }
118011        };
118012        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118013    }
118014}
118015
118016#[cfg_attr(
118017    feature = "ritual_rustdoc_nightly",
118018    doc(cfg(any(
118019        cpp_lib_version = "5.14.0",
118020        cpp_lib_version = "5.11.3",
118021        cpp_lib_version = "5.12.2",
118022        cpp_lib_version = "5.13.0"
118023    )))
118024)]
118025#[cfg(any(
118026    any(
118027        cpp_lib_version = "5.14.0",
118028        cpp_lib_version = "5.11.3",
118029        cpp_lib_version = "5.12.2",
118030        cpp_lib_version = "5.13.0"
118031    ),
118032    feature = "ritual_rustdoc"
118033))]
118034impl ::cpp_core::DynamicCast<crate::SlotOfFilterMode> for ::qt_core::QObject {
118035    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode*>(QObject* ptr)```</span>.
118036    #[inline(always)]
118037    unsafe fn dynamic_cast(
118038        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118039    ) -> ::cpp_core::Ptr<crate::SlotOfFilterMode> {
118040        let ffi_result = {
118041            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_FilterMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118042        };
118043        ::cpp_core::Ptr::from_raw(ffi_result)
118044    }
118045}
118046
118047impl ::cpp_core::StaticDowncast<crate::SlotOfAccessType> for ::qt_core::QObject {
118048    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType*>(QObject* ptr)```</span>.
118049    #[inline(always)]
118050    unsafe fn static_downcast(
118051        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118052    ) -> ::cpp_core::Ptr<crate::SlotOfAccessType> {
118053        let ffi_result = {
118054            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118055        };
118056        ::cpp_core::Ptr::from_raw(ffi_result)
118057    }
118058}
118059
118060impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfAccessType {
118061    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType* ptr)```</span>.
118062    #[inline(always)]
118063    unsafe fn static_upcast(
118064        ptr: ::cpp_core::Ptr<crate::SlotOfAccessType>,
118065    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118066        let ffi_result = {
118067            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr376(
118068                ptr.as_raw_ptr() as *mut crate::SlotOfAccessType
118069            )
118070        };
118071        ::cpp_core::Ptr::from_raw(ffi_result)
118072    }
118073}
118074
118075impl ::std::ops::Deref for crate::SlotOfAccessType {
118076    type Target = ::qt_core::QObject;
118077    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType* ptr)```</span>.
118078    #[inline(always)]
118079    fn deref(&self) -> &::qt_core::QObject {
118080        let ffi_result = {
118081            unsafe {
118082                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr376(
118083                    self as *const crate::SlotOfAccessType as *mut crate::SlotOfAccessType,
118084                )
118085            }
118086        };
118087        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118088    }
118089}
118090
118091impl ::cpp_core::DynamicCast<crate::SlotOfAccessType> for ::qt_core::QObject {
118092    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType*>(QObject* ptr)```</span>.
118093    #[inline(always)]
118094    unsafe fn dynamic_cast(
118095        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118096    ) -> ::cpp_core::Ptr<crate::SlotOfAccessType> {
118097        let ffi_result = {
118098            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_AccessType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118099        };
118100        ::cpp_core::Ptr::from_raw(ffi_result)
118101    }
118102}
118103
118104impl ::cpp_core::StaticDowncast<crate::SlotOfQVariant> for ::qt_core::QObject {
118105    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVariant* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVariant*>(QObject* ptr)```</span>.
118106    #[inline(always)]
118107    unsafe fn static_downcast(
118108        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118109    ) -> ::cpp_core::Ptr<crate::SlotOfQVariant> {
118110        let ffi_result = {
118111            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118112        };
118113        ::cpp_core::Ptr::from_raw(ffi_result)
118114    }
118115}
118116
118117impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQVariant {
118118    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVariant* ptr)```</span>.
118119    #[inline(always)]
118120    unsafe fn static_upcast(
118121        ptr: ::cpp_core::Ptr<crate::SlotOfQVariant>,
118122    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118123        let ffi_result = {
118124            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr377(
118125                ptr.as_raw_ptr() as *mut crate::SlotOfQVariant
118126            )
118127        };
118128        ::cpp_core::Ptr::from_raw(ffi_result)
118129    }
118130}
118131
118132impl ::std::ops::Deref for crate::SlotOfQVariant {
118133    type Target = ::qt_core::QObject;
118134    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVariant* ptr)```</span>.
118135    #[inline(always)]
118136    fn deref(&self) -> &::qt_core::QObject {
118137        let ffi_result = {
118138            unsafe {
118139                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr377(
118140                    self as *const crate::SlotOfQVariant as *mut crate::SlotOfQVariant,
118141                )
118142            }
118143        };
118144        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118145    }
118146}
118147
118148impl ::cpp_core::DynamicCast<crate::SlotOfQVariant> for ::qt_core::QObject {
118149    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVariant* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVariant*>(QObject* ptr)```</span>.
118150    #[inline(always)]
118151    unsafe fn dynamic_cast(
118152        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118153    ) -> ::cpp_core::Ptr<crate::SlotOfQVariant> {
118154        let ffi_result = {
118155            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVariant_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118156        };
118157        ::cpp_core::Ptr::from_raw(ffi_result)
118158    }
118159}
118160
118161impl ::cpp_core::StaticDowncast<crate::SlotOfAlphaFunction> for ::qt_core::QObject {
118162    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction*>(QObject* ptr)```</span>.
118163    #[inline(always)]
118164    unsafe fn static_downcast(
118165        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118166    ) -> ::cpp_core::Ptr<crate::SlotOfAlphaFunction> {
118167        let ffi_result = {
118168            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118169        };
118170        ::cpp_core::Ptr::from_raw(ffi_result)
118171    }
118172}
118173
118174impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfAlphaFunction {
118175    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction* ptr)```</span>.
118176    #[inline(always)]
118177    unsafe fn static_upcast(
118178        ptr: ::cpp_core::Ptr<crate::SlotOfAlphaFunction>,
118179    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118180        let ffi_result = {
118181            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr378(
118182                ptr.as_raw_ptr() as *mut crate::SlotOfAlphaFunction
118183            )
118184        };
118185        ::cpp_core::Ptr::from_raw(ffi_result)
118186    }
118187}
118188
118189impl ::std::ops::Deref for crate::SlotOfAlphaFunction {
118190    type Target = ::qt_core::QObject;
118191    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction* ptr)```</span>.
118192    #[inline(always)]
118193    fn deref(&self) -> &::qt_core::QObject {
118194        let ffi_result = {
118195            unsafe {
118196                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr378(
118197                    self as *const crate::SlotOfAlphaFunction as *mut crate::SlotOfAlphaFunction,
118198                )
118199            }
118200        };
118201        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118202    }
118203}
118204
118205impl ::cpp_core::DynamicCast<crate::SlotOfAlphaFunction> for ::qt_core::QObject {
118206    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction*>(QObject* ptr)```</span>.
118207    #[inline(always)]
118208    unsafe fn dynamic_cast(
118209        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118210    ) -> ::cpp_core::Ptr<crate::SlotOfAlphaFunction> {
118211        let ffi_result = {
118212            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAlphaTest_AlphaFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118213        };
118214        ::cpp_core::Ptr::from_raw(ffi_result)
118215    }
118216}
118217
118218impl ::cpp_core::StaticDowncast<crate::SlotOfWrapMode> for ::qt_core::QObject {
118219    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode*>(QObject* ptr)```</span>.
118220    #[inline(always)]
118221    unsafe fn static_downcast(
118222        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118223    ) -> ::cpp_core::Ptr<crate::SlotOfWrapMode> {
118224        let ffi_result = {
118225            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118226        };
118227        ::cpp_core::Ptr::from_raw(ffi_result)
118228    }
118229}
118230
118231impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfWrapMode {
118232    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode* ptr)```</span>.
118233    #[inline(always)]
118234    unsafe fn static_upcast(
118235        ptr: ::cpp_core::Ptr<crate::SlotOfWrapMode>,
118236    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118237        let ffi_result = {
118238            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr379(
118239                ptr.as_raw_ptr() as *mut crate::SlotOfWrapMode
118240            )
118241        };
118242        ::cpp_core::Ptr::from_raw(ffi_result)
118243    }
118244}
118245
118246impl ::std::ops::Deref for crate::SlotOfWrapMode {
118247    type Target = ::qt_core::QObject;
118248    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode* ptr)```</span>.
118249    #[inline(always)]
118250    fn deref(&self) -> &::qt_core::QObject {
118251        let ffi_result = {
118252            unsafe {
118253                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr379(
118254                    self as *const crate::SlotOfWrapMode as *mut crate::SlotOfWrapMode,
118255                )
118256            }
118257        };
118258        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118259    }
118260}
118261
118262impl ::cpp_core::DynamicCast<crate::SlotOfWrapMode> for ::qt_core::QObject {
118263    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode*>(QObject* ptr)```</span>.
118264    #[inline(always)]
118265    unsafe fn dynamic_cast(
118266        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118267    ) -> ::cpp_core::Ptr<crate::SlotOfWrapMode> {
118268        let ffi_result = {
118269            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureWrapMode_WrapMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118270        };
118271        ::cpp_core::Ptr::from_raw(ffi_result)
118272    }
118273}
118274
118275impl ::cpp_core::StaticDowncast<crate::SlotOfStencilFunction> for ::qt_core::QObject {
118276    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction*>(QObject* ptr)```</span>.
118277    #[inline(always)]
118278    unsafe fn static_downcast(
118279        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118280    ) -> ::cpp_core::Ptr<crate::SlotOfStencilFunction> {
118281        let ffi_result = {
118282            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118283        };
118284        ::cpp_core::Ptr::from_raw(ffi_result)
118285    }
118286}
118287
118288impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfStencilFunction {
118289    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction* ptr)```</span>.
118290    #[inline(always)]
118291    unsafe fn static_upcast(
118292        ptr: ::cpp_core::Ptr<crate::SlotOfStencilFunction>,
118293    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118294        let ffi_result = {
118295            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr380(
118296                ptr.as_raw_ptr() as *mut crate::SlotOfStencilFunction
118297            )
118298        };
118299        ::cpp_core::Ptr::from_raw(ffi_result)
118300    }
118301}
118302
118303impl ::std::ops::Deref for crate::SlotOfStencilFunction {
118304    type Target = ::qt_core::QObject;
118305    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction* ptr)```</span>.
118306    #[inline(always)]
118307    fn deref(&self) -> &::qt_core::QObject {
118308        let ffi_result = {
118309            unsafe {
118310                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr380(
118311                    self as *const crate::SlotOfStencilFunction
118312                        as *mut crate::SlotOfStencilFunction,
118313                )
118314            }
118315        };
118316        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118317    }
118318}
118319
118320impl ::cpp_core::DynamicCast<crate::SlotOfStencilFunction> for ::qt_core::QObject {
118321    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction*>(QObject* ptr)```</span>.
118322    #[inline(always)]
118323    unsafe fn dynamic_cast(
118324        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118325    ) -> ::cpp_core::Ptr<crate::SlotOfStencilFunction> {
118326        let ffi_result = {
118327            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118328        };
118329        ::cpp_core::Ptr::from_raw(ffi_result)
118330    }
118331}
118332
118333impl ::cpp_core::StaticDowncast<crate::SlotOfQVectorOfDouble> for ::qt_core::QObject {
118334    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref*>(QObject* ptr)```</span>.
118335    #[inline(always)]
118336    unsafe fn static_downcast(
118337        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118338    ) -> ::cpp_core::Ptr<crate::SlotOfQVectorOfDouble> {
118339        let ffi_result = {
118340            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118341        };
118342        ::cpp_core::Ptr::from_raw(ffi_result)
118343    }
118344}
118345
118346impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQVectorOfDouble {
118347    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref* ptr)```</span>.
118348    #[inline(always)]
118349    unsafe fn static_upcast(
118350        ptr: ::cpp_core::Ptr<crate::SlotOfQVectorOfDouble>,
118351    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118352        let ffi_result = {
118353            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr381(
118354                ptr.as_raw_ptr() as *mut crate::SlotOfQVectorOfDouble
118355            )
118356        };
118357        ::cpp_core::Ptr::from_raw(ffi_result)
118358    }
118359}
118360
118361impl ::std::ops::Deref for crate::SlotOfQVectorOfDouble {
118362    type Target = ::qt_core::QObject;
118363    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref* ptr)```</span>.
118364    #[inline(always)]
118365    fn deref(&self) -> &::qt_core::QObject {
118366        let ffi_result = {
118367            unsafe {
118368                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr381(
118369                    self as *const crate::SlotOfQVectorOfDouble
118370                        as *mut crate::SlotOfQVectorOfDouble,
118371                )
118372            }
118373        };
118374        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118375    }
118376}
118377
118378impl ::cpp_core::DynamicCast<crate::SlotOfQVectorOfDouble> for ::qt_core::QObject {
118379    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref*>(QObject* ptr)```</span>.
118380    #[inline(always)]
118381    unsafe fn dynamic_cast(
118382        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118383    ) -> ::cpp_core::Ptr<crate::SlotOfQVectorOfDouble> {
118384        let ffi_result = {
118385            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector_double_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118386        };
118387        ::cpp_core::Ptr::from_raw(ffi_result)
118388    }
118389}
118390
118391impl ::cpp_core::StaticDowncast<crate::SlotOfSizeMode> for ::qt_core::QObject {
118392    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode*>(QObject* ptr)```</span>.
118393    #[inline(always)]
118394    unsafe fn static_downcast(
118395        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118396    ) -> ::cpp_core::Ptr<crate::SlotOfSizeMode> {
118397        let ffi_result = {
118398            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118399        };
118400        ::cpp_core::Ptr::from_raw(ffi_result)
118401    }
118402}
118403
118404impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfSizeMode {
118405    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode* ptr)```</span>.
118406    #[inline(always)]
118407    unsafe fn static_upcast(
118408        ptr: ::cpp_core::Ptr<crate::SlotOfSizeMode>,
118409    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118410        let ffi_result = {
118411            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr382(
118412                ptr.as_raw_ptr() as *mut crate::SlotOfSizeMode
118413            )
118414        };
118415        ::cpp_core::Ptr::from_raw(ffi_result)
118416    }
118417}
118418
118419impl ::std::ops::Deref for crate::SlotOfSizeMode {
118420    type Target = ::qt_core::QObject;
118421    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode* ptr)```</span>.
118422    #[inline(always)]
118423    fn deref(&self) -> &::qt_core::QObject {
118424        let ffi_result = {
118425            unsafe {
118426                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr382(
118427                    self as *const crate::SlotOfSizeMode as *mut crate::SlotOfSizeMode,
118428                )
118429            }
118430        };
118431        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118432    }
118433}
118434
118435impl ::cpp_core::DynamicCast<crate::SlotOfSizeMode> for ::qt_core::QObject {
118436    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode*>(QObject* ptr)```</span>.
118437    #[inline(always)]
118438    unsafe fn dynamic_cast(
118439        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118440    ) -> ::cpp_core::Ptr<crate::SlotOfSizeMode> {
118441        let ffi_result = {
118442            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPointSize_SizeMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118443        };
118444        ::cpp_core::Ptr::from_raw(ffi_result)
118445    }
118446}
118447
118448impl ::cpp_core::StaticDowncast<crate::SlotOfVertexBaseType> for ::qt_core::QObject {
118449    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType*>(QObject* ptr)```</span>.
118450    #[inline(always)]
118451    unsafe fn static_downcast(
118452        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118453    ) -> ::cpp_core::Ptr<crate::SlotOfVertexBaseType> {
118454        let ffi_result = {
118455            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118456        };
118457        ::cpp_core::Ptr::from_raw(ffi_result)
118458    }
118459}
118460
118461impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfVertexBaseType {
118462    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType* ptr)```</span>.
118463    #[inline(always)]
118464    unsafe fn static_upcast(
118465        ptr: ::cpp_core::Ptr<crate::SlotOfVertexBaseType>,
118466    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118467        let ffi_result = {
118468            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr383(
118469                ptr.as_raw_ptr() as *mut crate::SlotOfVertexBaseType
118470            )
118471        };
118472        ::cpp_core::Ptr::from_raw(ffi_result)
118473    }
118474}
118475
118476impl ::std::ops::Deref for crate::SlotOfVertexBaseType {
118477    type Target = ::qt_core::QObject;
118478    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType* ptr)```</span>.
118479    #[inline(always)]
118480    fn deref(&self) -> &::qt_core::QObject {
118481        let ffi_result = {
118482            unsafe {
118483                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr383(
118484                    self as *const crate::SlotOfVertexBaseType as *mut crate::SlotOfVertexBaseType,
118485                )
118486            }
118487        };
118488        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118489    }
118490}
118491
118492impl ::cpp_core::DynamicCast<crate::SlotOfVertexBaseType> for ::qt_core::QObject {
118493    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType*>(QObject* ptr)```</span>.
118494    #[inline(always)]
118495    unsafe fn dynamic_cast(
118496        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118497    ) -> ::cpp_core::Ptr<crate::SlotOfVertexBaseType> {
118498        let ffi_result = {
118499            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_VertexBaseType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118500        };
118501        ::cpp_core::Ptr::from_raw(ffi_result)
118502    }
118503}
118504
118505impl ::cpp_core::StaticDowncast<crate::SlotOfThresholdType> for ::qt_core::QObject {
118506    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType*>(QObject* ptr)```</span>.
118507    #[inline(always)]
118508    unsafe fn static_downcast(
118509        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118510    ) -> ::cpp_core::Ptr<crate::SlotOfThresholdType> {
118511        let ffi_result = {
118512            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118513        };
118514        ::cpp_core::Ptr::from_raw(ffi_result)
118515    }
118516}
118517
118518impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfThresholdType {
118519    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType* ptr)```</span>.
118520    #[inline(always)]
118521    unsafe fn static_upcast(
118522        ptr: ::cpp_core::Ptr<crate::SlotOfThresholdType>,
118523    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118524        let ffi_result = {
118525            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr384(
118526                ptr.as_raw_ptr() as *mut crate::SlotOfThresholdType
118527            )
118528        };
118529        ::cpp_core::Ptr::from_raw(ffi_result)
118530    }
118531}
118532
118533impl ::std::ops::Deref for crate::SlotOfThresholdType {
118534    type Target = ::qt_core::QObject;
118535    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType* ptr)```</span>.
118536    #[inline(always)]
118537    fn deref(&self) -> &::qt_core::QObject {
118538        let ffi_result = {
118539            unsafe {
118540                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr384(
118541                    self as *const crate::SlotOfThresholdType as *mut crate::SlotOfThresholdType,
118542                )
118543            }
118544        };
118545        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118546    }
118547}
118548
118549impl ::cpp_core::DynamicCast<crate::SlotOfThresholdType> for ::qt_core::QObject {
118550    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType*>(QObject* ptr)```</span>.
118551    #[inline(always)]
118552    unsafe fn dynamic_cast(
118553        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118554    ) -> ::cpp_core::Ptr<crate::SlotOfThresholdType> {
118555        let ffi_result = {
118556            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetail_ThresholdType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118557        };
118558        ::cpp_core::Ptr::from_raw(ffi_result)
118559    }
118560}
118561
118562impl ::cpp_core::StaticDowncast<crate::SlotOfFaceMode> for ::qt_core::QObject {
118563    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode*>(QObject* ptr)```</span>.
118564    #[inline(always)]
118565    unsafe fn static_downcast(
118566        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118567    ) -> ::cpp_core::Ptr<crate::SlotOfFaceMode> {
118568        let ffi_result = {
118569            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118570        };
118571        ::cpp_core::Ptr::from_raw(ffi_result)
118572    }
118573}
118574
118575impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfFaceMode {
118576    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode* ptr)```</span>.
118577    #[inline(always)]
118578    unsafe fn static_upcast(
118579        ptr: ::cpp_core::Ptr<crate::SlotOfFaceMode>,
118580    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118581        let ffi_result = {
118582            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr385(
118583                ptr.as_raw_ptr() as *mut crate::SlotOfFaceMode
118584            )
118585        };
118586        ::cpp_core::Ptr::from_raw(ffi_result)
118587    }
118588}
118589
118590impl ::std::ops::Deref for crate::SlotOfFaceMode {
118591    type Target = ::qt_core::QObject;
118592    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode* ptr)```</span>.
118593    #[inline(always)]
118594    fn deref(&self) -> &::qt_core::QObject {
118595        let ffi_result = {
118596            unsafe {
118597                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr385(
118598                    self as *const crate::SlotOfFaceMode as *mut crate::SlotOfFaceMode,
118599                )
118600            }
118601        };
118602        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118603    }
118604}
118605
118606impl ::cpp_core::DynamicCast<crate::SlotOfFaceMode> for ::qt_core::QObject {
118607    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode*>(QObject* ptr)```</span>.
118608    #[inline(always)]
118609    unsafe fn dynamic_cast(
118610        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118611    ) -> ::cpp_core::Ptr<crate::SlotOfFaceMode> {
118612        let ffi_result = {
118613            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_FaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118614        };
118615        ::cpp_core::Ptr::from_raw(ffi_result)
118616    }
118617}
118618
118619impl ::cpp_core::StaticDowncast<crate::SlotOfQByteArray> for ::qt_core::QObject {
118620    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref*>(QObject* ptr)```</span>.
118621    #[inline(always)]
118622    unsafe fn static_downcast(
118623        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118624    ) -> ::cpp_core::Ptr<crate::SlotOfQByteArray> {
118625        let ffi_result = {
118626            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118627        };
118628        ::cpp_core::Ptr::from_raw(ffi_result)
118629    }
118630}
118631
118632impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQByteArray {
118633    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref* ptr)```</span>.
118634    #[inline(always)]
118635    unsafe fn static_upcast(
118636        ptr: ::cpp_core::Ptr<crate::SlotOfQByteArray>,
118637    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118638        let ffi_result = {
118639            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr386(
118640                ptr.as_raw_ptr() as *mut crate::SlotOfQByteArray
118641            )
118642        };
118643        ::cpp_core::Ptr::from_raw(ffi_result)
118644    }
118645}
118646
118647impl ::std::ops::Deref for crate::SlotOfQByteArray {
118648    type Target = ::qt_core::QObject;
118649    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref* ptr)```</span>.
118650    #[inline(always)]
118651    fn deref(&self) -> &::qt_core::QObject {
118652        let ffi_result = {
118653            unsafe {
118654                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr386(
118655                    self as *const crate::SlotOfQByteArray as *mut crate::SlotOfQByteArray,
118656                )
118657            }
118658        };
118659        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118660    }
118661}
118662
118663impl ::cpp_core::DynamicCast<crate::SlotOfQByteArray> for ::qt_core::QObject {
118664    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref*>(QObject* ptr)```</span>.
118665    #[inline(always)]
118666    unsafe fn dynamic_cast(
118667        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118668    ) -> ::cpp_core::Ptr<crate::SlotOfQByteArray> {
118669        let ffi_result = {
118670            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QByteArray_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118671        };
118672        ::cpp_core::Ptr::from_raw(ffi_result)
118673    }
118674}
118675
118676#[cfg_attr(
118677    feature = "ritual_rustdoc_nightly",
118678    doc(cfg(cpp_lib_version = "5.14.0"))
118679)]
118680#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
118681impl ::cpp_core::StaticDowncast<crate::SlotOfRasterMode> for ::qt_core::QObject {
118682    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode*>(QObject* ptr)```</span>.
118683    #[inline(always)]
118684    unsafe fn static_downcast(
118685        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118686    ) -> ::cpp_core::Ptr<crate::SlotOfRasterMode> {
118687        let ffi_result = {
118688            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118689        };
118690        ::cpp_core::Ptr::from_raw(ffi_result)
118691    }
118692}
118693
118694#[cfg_attr(
118695    feature = "ritual_rustdoc_nightly",
118696    doc(cfg(cpp_lib_version = "5.14.0"))
118697)]
118698#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
118699impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfRasterMode {
118700    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode* ptr)```</span>.
118701    #[inline(always)]
118702    unsafe fn static_upcast(
118703        ptr: ::cpp_core::Ptr<crate::SlotOfRasterMode>,
118704    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118705        let ffi_result = {
118706            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr387(
118707                ptr.as_raw_ptr() as *mut crate::SlotOfRasterMode
118708            )
118709        };
118710        ::cpp_core::Ptr::from_raw(ffi_result)
118711    }
118712}
118713
118714#[cfg_attr(
118715    feature = "ritual_rustdoc_nightly",
118716    doc(cfg(cpp_lib_version = "5.14.0"))
118717)]
118718#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
118719impl ::std::ops::Deref for crate::SlotOfRasterMode {
118720    type Target = ::qt_core::QObject;
118721    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode* ptr)```</span>.
118722    #[inline(always)]
118723    fn deref(&self) -> &::qt_core::QObject {
118724        let ffi_result = {
118725            unsafe {
118726                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr387(
118727                    self as *const crate::SlotOfRasterMode as *mut crate::SlotOfRasterMode,
118728                )
118729            }
118730        };
118731        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118732    }
118733}
118734
118735#[cfg_attr(
118736    feature = "ritual_rustdoc_nightly",
118737    doc(cfg(cpp_lib_version = "5.14.0"))
118738)]
118739#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
118740impl ::cpp_core::DynamicCast<crate::SlotOfRasterMode> for ::qt_core::QObject {
118741    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode*>(QObject* ptr)```</span>.
118742    #[inline(always)]
118743    unsafe fn dynamic_cast(
118744        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118745    ) -> ::cpp_core::Ptr<crate::SlotOfRasterMode> {
118746        let ffi_result = {
118747            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_RasterMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118748        };
118749        ::cpp_core::Ptr::from_raw(ffi_result)
118750    }
118751}
118752
118753impl ::cpp_core::StaticDowncast<crate::SlotOfUsageType> for ::qt_core::QObject {
118754    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType*>(QObject* ptr)```</span>.
118755    #[inline(always)]
118756    unsafe fn static_downcast(
118757        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118758    ) -> ::cpp_core::Ptr<crate::SlotOfUsageType> {
118759        let ffi_result = {
118760            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118761        };
118762        ::cpp_core::Ptr::from_raw(ffi_result)
118763    }
118764}
118765
118766impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfUsageType {
118767    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType* ptr)```</span>.
118768    #[inline(always)]
118769    unsafe fn static_upcast(
118770        ptr: ::cpp_core::Ptr<crate::SlotOfUsageType>,
118771    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118772        let ffi_result = {
118773            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr388(
118774                ptr.as_raw_ptr() as *mut crate::SlotOfUsageType
118775            )
118776        };
118777        ::cpp_core::Ptr::from_raw(ffi_result)
118778    }
118779}
118780
118781impl ::std::ops::Deref for crate::SlotOfUsageType {
118782    type Target = ::qt_core::QObject;
118783    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType* ptr)```</span>.
118784    #[inline(always)]
118785    fn deref(&self) -> &::qt_core::QObject {
118786        let ffi_result = {
118787            unsafe {
118788                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr388(
118789                    self as *const crate::SlotOfUsageType as *mut crate::SlotOfUsageType,
118790                )
118791            }
118792        };
118793        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118794    }
118795}
118796
118797impl ::cpp_core::DynamicCast<crate::SlotOfUsageType> for ::qt_core::QObject {
118798    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType*>(QObject* ptr)```</span>.
118799    #[inline(always)]
118800    unsafe fn dynamic_cast(
118801        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118802    ) -> ::cpp_core::Ptr<crate::SlotOfUsageType> {
118803        let ffi_result = {
118804            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_UsageType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118805        };
118806        ::cpp_core::Ptr::from_raw(ffi_result)
118807    }
118808}
118809
118810impl ::cpp_core::StaticDowncast<crate::SlotOfStatus2> for ::qt_core::QObject {
118811    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status*>(QObject* ptr)```</span>.
118812    #[inline(always)]
118813    unsafe fn static_downcast(
118814        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118815    ) -> ::cpp_core::Ptr<crate::SlotOfStatus2> {
118816        let ffi_result = {
118817            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118818        };
118819        ::cpp_core::Ptr::from_raw(ffi_result)
118820    }
118821}
118822
118823impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfStatus2 {
118824    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status* ptr)```</span>.
118825    #[inline(always)]
118826    unsafe fn static_upcast(
118827        ptr: ::cpp_core::Ptr<crate::SlotOfStatus2>,
118828    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118829        let ffi_result = {
118830            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr389(
118831                ptr.as_raw_ptr() as *mut crate::SlotOfStatus2
118832            )
118833        };
118834        ::cpp_core::Ptr::from_raw(ffi_result)
118835    }
118836}
118837
118838impl ::std::ops::Deref for crate::SlotOfStatus2 {
118839    type Target = ::qt_core::QObject;
118840    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status* ptr)```</span>.
118841    #[inline(always)]
118842    fn deref(&self) -> &::qt_core::QObject {
118843        let ffi_result = {
118844            unsafe {
118845                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr389(
118846                    self as *const crate::SlotOfStatus2 as *mut crate::SlotOfStatus2,
118847                )
118848            }
118849        };
118850        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118851    }
118852}
118853
118854impl ::cpp_core::DynamicCast<crate::SlotOfStatus2> for ::qt_core::QObject {
118855    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status*>(QObject* ptr)```</span>.
118856    #[inline(always)]
118857    unsafe fn dynamic_cast(
118858        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118859    ) -> ::cpp_core::Ptr<crate::SlotOfStatus2> {
118860        let ffi_result = {
118861            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QTextureImage_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118862        };
118863        ::cpp_core::Ptr::from_raw(ffi_result)
118864    }
118865}
118866
118867impl ::cpp_core::StaticDowncast<crate::SlotOfU64> for ::qt_core::QObject {
118868    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_quint64* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_quint64*>(QObject* ptr)```</span>.
118869    #[inline(always)]
118870    unsafe fn static_downcast(
118871        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118872    ) -> ::cpp_core::Ptr<crate::SlotOfU64> {
118873        let ffi_result = {
118874            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_quint64_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118875        };
118876        ::cpp_core::Ptr::from_raw(ffi_result)
118877    }
118878}
118879
118880impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfU64 {
118881    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_quint64* ptr)```</span>.
118882    #[inline(always)]
118883    unsafe fn static_upcast(
118884        ptr: ::cpp_core::Ptr<crate::SlotOfU64>,
118885    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118886        let ffi_result = {
118887            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr390(
118888                ptr.as_raw_ptr() as *mut crate::SlotOfU64
118889            )
118890        };
118891        ::cpp_core::Ptr::from_raw(ffi_result)
118892    }
118893}
118894
118895impl ::std::ops::Deref for crate::SlotOfU64 {
118896    type Target = ::qt_core::QObject;
118897    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_quint64* ptr)```</span>.
118898    #[inline(always)]
118899    fn deref(&self) -> &::qt_core::QObject {
118900        let ffi_result = {
118901            unsafe {
118902                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr390(
118903                    self as *const crate::SlotOfU64 as *mut crate::SlotOfU64,
118904                )
118905            }
118906        };
118907        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118908    }
118909}
118910
118911impl ::cpp_core::DynamicCast<crate::SlotOfU64> for ::qt_core::QObject {
118912    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_quint64* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_quint64*>(QObject* ptr)```</span>.
118913    #[inline(always)]
118914    unsafe fn dynamic_cast(
118915        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118916    ) -> ::cpp_core::Ptr<crate::SlotOfU64> {
118917        let ffi_result = {
118918            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_quint64_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118919        };
118920        ::cpp_core::Ptr::from_raw(ffi_result)
118921    }
118922}
118923
118924impl ::cpp_core::StaticDowncast<crate::SlotOfFaceOrientationPickingMode> for ::qt_core::QObject {
118925    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode*>(QObject* ptr)```</span>.
118926    #[inline(always)]
118927    unsafe fn static_downcast(
118928        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118929    ) -> ::cpp_core::Ptr<crate::SlotOfFaceOrientationPickingMode> {
118930        let ffi_result = {
118931            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118932        };
118933        ::cpp_core::Ptr::from_raw(ffi_result)
118934    }
118935}
118936
118937impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfFaceOrientationPickingMode {
118938    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode* ptr)```</span>.
118939    #[inline(always)]
118940    unsafe fn static_upcast(
118941        ptr: ::cpp_core::Ptr<crate::SlotOfFaceOrientationPickingMode>,
118942    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
118943        let ffi_result = {
118944            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr391(
118945                ptr.as_raw_ptr() as *mut crate::SlotOfFaceOrientationPickingMode
118946            )
118947        };
118948        ::cpp_core::Ptr::from_raw(ffi_result)
118949    }
118950}
118951
118952impl ::std::ops::Deref for crate::SlotOfFaceOrientationPickingMode {
118953    type Target = ::qt_core::QObject;
118954    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode* ptr)```</span>.
118955    #[inline(always)]
118956    fn deref(&self) -> &::qt_core::QObject {
118957        let ffi_result = {
118958            unsafe {
118959                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr391(
118960                    self as *const crate::SlotOfFaceOrientationPickingMode
118961                        as *mut crate::SlotOfFaceOrientationPickingMode,
118962                )
118963            }
118964        };
118965        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
118966    }
118967}
118968
118969impl ::cpp_core::DynamicCast<crate::SlotOfFaceOrientationPickingMode> for ::qt_core::QObject {
118970    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode*>(QObject* ptr)```</span>.
118971    #[inline(always)]
118972    unsafe fn dynamic_cast(
118973        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118974    ) -> ::cpp_core::Ptr<crate::SlotOfFaceOrientationPickingMode> {
118975        let ffi_result = {
118976            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_FaceOrientationPickingMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118977        };
118978        ::cpp_core::Ptr::from_raw(ffi_result)
118979    }
118980}
118981
118982impl ::cpp_core::StaticDowncast<crate::SlotOfCubeMapFace> for ::qt_core::QObject {
118983    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace*>(QObject* ptr)```</span>.
118984    #[inline(always)]
118985    unsafe fn static_downcast(
118986        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
118987    ) -> ::cpp_core::Ptr<crate::SlotOfCubeMapFace> {
118988        let ffi_result = {
118989            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
118990        };
118991        ::cpp_core::Ptr::from_raw(ffi_result)
118992    }
118993}
118994
118995impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfCubeMapFace {
118996    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace* ptr)```</span>.
118997    #[inline(always)]
118998    unsafe fn static_upcast(
118999        ptr: ::cpp_core::Ptr<crate::SlotOfCubeMapFace>,
119000    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119001        let ffi_result = {
119002            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr392(
119003                ptr.as_raw_ptr() as *mut crate::SlotOfCubeMapFace
119004            )
119005        };
119006        ::cpp_core::Ptr::from_raw(ffi_result)
119007    }
119008}
119009
119010impl ::std::ops::Deref for crate::SlotOfCubeMapFace {
119011    type Target = ::qt_core::QObject;
119012    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace* ptr)```</span>.
119013    #[inline(always)]
119014    fn deref(&self) -> &::qt_core::QObject {
119015        let ffi_result = {
119016            unsafe {
119017                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr392(
119018                    self as *const crate::SlotOfCubeMapFace as *mut crate::SlotOfCubeMapFace,
119019                )
119020            }
119021        };
119022        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119023    }
119024}
119025
119026impl ::cpp_core::DynamicCast<crate::SlotOfCubeMapFace> for ::qt_core::QObject {
119027    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace*>(QObject* ptr)```</span>.
119028    #[inline(always)]
119029    unsafe fn dynamic_cast(
119030        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119031    ) -> ::cpp_core::Ptr<crate::SlotOfCubeMapFace> {
119032        let ffi_result = {
119033            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_CubeMapFace_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119034        };
119035        ::cpp_core::Ptr::from_raw(ffi_result)
119036    }
119037}
119038
119039impl ::cpp_core::StaticDowncast<crate::SlotOfQShaderProgram> for ::qt_core::QObject {
119040    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr*>(QObject* ptr)```</span>.
119041    #[inline(always)]
119042    unsafe fn static_downcast(
119043        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119044    ) -> ::cpp_core::Ptr<crate::SlotOfQShaderProgram> {
119045        let ffi_result = {
119046            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119047        };
119048        ::cpp_core::Ptr::from_raw(ffi_result)
119049    }
119050}
119051
119052impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQShaderProgram {
119053    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr* ptr)```</span>.
119054    #[inline(always)]
119055    unsafe fn static_upcast(
119056        ptr: ::cpp_core::Ptr<crate::SlotOfQShaderProgram>,
119057    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119058        let ffi_result = {
119059            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr393(
119060                ptr.as_raw_ptr() as *mut crate::SlotOfQShaderProgram
119061            )
119062        };
119063        ::cpp_core::Ptr::from_raw(ffi_result)
119064    }
119065}
119066
119067impl ::std::ops::Deref for crate::SlotOfQShaderProgram {
119068    type Target = ::qt_core::QObject;
119069    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr* ptr)```</span>.
119070    #[inline(always)]
119071    fn deref(&self) -> &::qt_core::QObject {
119072        let ffi_result = {
119073            unsafe {
119074                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr393(
119075                    self as *const crate::SlotOfQShaderProgram as *mut crate::SlotOfQShaderProgram,
119076                )
119077            }
119078        };
119079        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119080    }
119081}
119082
119083impl ::cpp_core::DynamicCast<crate::SlotOfQShaderProgram> for ::qt_core::QObject {
119084    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr*>(QObject* ptr)```</span>.
119085    #[inline(always)]
119086    unsafe fn dynamic_cast(
119087        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119088    ) -> ::cpp_core::Ptr<crate::SlotOfQShaderProgram> {
119089        let ffi_result = {
119090            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderProgram_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119091        };
119092        ::cpp_core::Ptr::from_raw(ffi_result)
119093    }
119094}
119095
119096#[cfg_attr(
119097    feature = "ritual_rustdoc_nightly",
119098    doc(cfg(cpp_lib_version = "5.14.0"))
119099)]
119100#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
119101impl ::cpp_core::StaticDowncast<crate::SlotOfEnablement> for ::qt_core::QObject {
119102    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement*>(QObject* ptr)```</span>.
119103    #[inline(always)]
119104    unsafe fn static_downcast(
119105        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119106    ) -> ::cpp_core::Ptr<crate::SlotOfEnablement> {
119107        let ffi_result = {
119108            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119109        };
119110        ::cpp_core::Ptr::from_raw(ffi_result)
119111    }
119112}
119113
119114#[cfg_attr(
119115    feature = "ritual_rustdoc_nightly",
119116    doc(cfg(cpp_lib_version = "5.14.0"))
119117)]
119118#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
119119impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfEnablement {
119120    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement* ptr)```</span>.
119121    #[inline(always)]
119122    unsafe fn static_upcast(
119123        ptr: ::cpp_core::Ptr<crate::SlotOfEnablement>,
119124    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119125        let ffi_result = {
119126            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr394(
119127                ptr.as_raw_ptr() as *mut crate::SlotOfEnablement
119128            )
119129        };
119130        ::cpp_core::Ptr::from_raw(ffi_result)
119131    }
119132}
119133
119134#[cfg_attr(
119135    feature = "ritual_rustdoc_nightly",
119136    doc(cfg(cpp_lib_version = "5.14.0"))
119137)]
119138#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
119139impl ::std::ops::Deref for crate::SlotOfEnablement {
119140    type Target = ::qt_core::QObject;
119141    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement* ptr)```</span>.
119142    #[inline(always)]
119143    fn deref(&self) -> &::qt_core::QObject {
119144        let ffi_result = {
119145            unsafe {
119146                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr394(
119147                    self as *const crate::SlotOfEnablement as *mut crate::SlotOfEnablement,
119148                )
119149            }
119150        };
119151        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119152    }
119153}
119154
119155#[cfg_attr(
119156    feature = "ritual_rustdoc_nightly",
119157    doc(cfg(cpp_lib_version = "5.14.0"))
119158)]
119159#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
119160impl ::cpp_core::DynamicCast<crate::SlotOfEnablement> for ::qt_core::QObject {
119161    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement*>(QObject* ptr)```</span>.
119162    #[inline(always)]
119163    unsafe fn dynamic_cast(
119164        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119165    ) -> ::cpp_core::Ptr<crate::SlotOfEnablement> {
119166        let ffi_result = {
119167            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSubtreeEnabler_Enablement_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119168        };
119169        ::cpp_core::Ptr::from_raw(ffi_result)
119170    }
119171}
119172
119173impl ::cpp_core::StaticDowncast<crate::SlotOfQColor> for ::qt_core::QObject {
119174    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref*>(QObject* ptr)```</span>.
119175    #[inline(always)]
119176    unsafe fn static_downcast(
119177        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119178    ) -> ::cpp_core::Ptr<crate::SlotOfQColor> {
119179        let ffi_result = {
119180            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119181        };
119182        ::cpp_core::Ptr::from_raw(ffi_result)
119183    }
119184}
119185
119186impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQColor {
119187    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref* ptr)```</span>.
119188    #[inline(always)]
119189    unsafe fn static_upcast(
119190        ptr: ::cpp_core::Ptr<crate::SlotOfQColor>,
119191    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119192        let ffi_result = {
119193            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr395(
119194                ptr.as_raw_ptr() as *mut crate::SlotOfQColor
119195            )
119196        };
119197        ::cpp_core::Ptr::from_raw(ffi_result)
119198    }
119199}
119200
119201impl ::std::ops::Deref for crate::SlotOfQColor {
119202    type Target = ::qt_core::QObject;
119203    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref* ptr)```</span>.
119204    #[inline(always)]
119205    fn deref(&self) -> &::qt_core::QObject {
119206        let ffi_result = {
119207            unsafe {
119208                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr395(
119209                    self as *const crate::SlotOfQColor as *mut crate::SlotOfQColor,
119210                )
119211            }
119212        };
119213        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119214    }
119215}
119216
119217impl ::cpp_core::DynamicCast<crate::SlotOfQColor> for ::qt_core::QObject {
119218    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref*>(QObject* ptr)```</span>.
119219    #[inline(always)]
119220    unsafe fn dynamic_cast(
119221        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119222    ) -> ::cpp_core::Ptr<crate::SlotOfQColor> {
119223        let ffi_result = {
119224            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QColor_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119225        };
119226        ::cpp_core::Ptr::from_raw(ffi_result)
119227    }
119228}
119229
119230impl ::cpp_core::StaticDowncast<crate::SlotOfQRenderTargetOutput> for ::qt_core::QObject {
119231    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr*>(QObject* ptr)```</span>.
119232    #[inline(always)]
119233    unsafe fn static_downcast(
119234        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119235    ) -> ::cpp_core::Ptr<crate::SlotOfQRenderTargetOutput> {
119236        let ffi_result = {
119237            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119238        };
119239        ::cpp_core::Ptr::from_raw(ffi_result)
119240    }
119241}
119242
119243impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQRenderTargetOutput {
119244    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr* ptr)```</span>.
119245    #[inline(always)]
119246    unsafe fn static_upcast(
119247        ptr: ::cpp_core::Ptr<crate::SlotOfQRenderTargetOutput>,
119248    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119249        let ffi_result = {
119250            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr396(
119251                ptr.as_raw_ptr() as *mut crate::SlotOfQRenderTargetOutput
119252            )
119253        };
119254        ::cpp_core::Ptr::from_raw(ffi_result)
119255    }
119256}
119257
119258impl ::std::ops::Deref for crate::SlotOfQRenderTargetOutput {
119259    type Target = ::qt_core::QObject;
119260    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr* ptr)```</span>.
119261    #[inline(always)]
119262    fn deref(&self) -> &::qt_core::QObject {
119263        let ffi_result = {
119264            unsafe {
119265                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr396(
119266                    self as *const crate::SlotOfQRenderTargetOutput
119267                        as *mut crate::SlotOfQRenderTargetOutput,
119268                )
119269            }
119270        };
119271        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119272    }
119273}
119274
119275impl ::cpp_core::DynamicCast<crate::SlotOfQRenderTargetOutput> for ::qt_core::QObject {
119276    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr*>(QObject* ptr)```</span>.
119277    #[inline(always)]
119278    unsafe fn dynamic_cast(
119279        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119280    ) -> ::cpp_core::Ptr<crate::SlotOfQRenderTargetOutput> {
119281        let ffi_result = {
119282            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119283        };
119284        ::cpp_core::Ptr::from_raw(ffi_result)
119285    }
119286}
119287
119288impl ::cpp_core::StaticDowncast<crate::SlotOfRenderPolicy> for ::qt_core::QObject {
119289    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy*>(QObject* ptr)```</span>.
119290    #[inline(always)]
119291    unsafe fn static_downcast(
119292        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119293    ) -> ::cpp_core::Ptr<crate::SlotOfRenderPolicy> {
119294        let ffi_result = {
119295            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119296        };
119297        ::cpp_core::Ptr::from_raw(ffi_result)
119298    }
119299}
119300
119301impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfRenderPolicy {
119302    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy* ptr)```</span>.
119303    #[inline(always)]
119304    unsafe fn static_upcast(
119305        ptr: ::cpp_core::Ptr<crate::SlotOfRenderPolicy>,
119306    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119307        let ffi_result = {
119308            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr397(
119309                ptr.as_raw_ptr() as *mut crate::SlotOfRenderPolicy
119310            )
119311        };
119312        ::cpp_core::Ptr::from_raw(ffi_result)
119313    }
119314}
119315
119316impl ::std::ops::Deref for crate::SlotOfRenderPolicy {
119317    type Target = ::qt_core::QObject;
119318    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy* ptr)```</span>.
119319    #[inline(always)]
119320    fn deref(&self) -> &::qt_core::QObject {
119321        let ffi_result = {
119322            unsafe {
119323                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr397(
119324                    self as *const crate::SlotOfRenderPolicy as *mut crate::SlotOfRenderPolicy,
119325                )
119326            }
119327        };
119328        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119329    }
119330}
119331
119332impl ::cpp_core::DynamicCast<crate::SlotOfRenderPolicy> for ::qt_core::QObject {
119333    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy*>(QObject* ptr)```</span>.
119334    #[inline(always)]
119335    unsafe fn dynamic_cast(
119336        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119337    ) -> ::cpp_core::Ptr<crate::SlotOfRenderPolicy> {
119338        let ffi_result = {
119339            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderSettings_RenderPolicy_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119340        };
119341        ::cpp_core::Ptr::from_raw(ffi_result)
119342    }
119343}
119344
119345impl ::cpp_core::StaticDowncast<crate::SlotOfComparisonFunction> for ::qt_core::QObject {
119346    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction*>(QObject* ptr)```</span>.
119347    #[inline(always)]
119348    unsafe fn static_downcast(
119349        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119350    ) -> ::cpp_core::Ptr<crate::SlotOfComparisonFunction> {
119351        let ffi_result = {
119352            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119353        };
119354        ::cpp_core::Ptr::from_raw(ffi_result)
119355    }
119356}
119357
119358impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfComparisonFunction {
119359    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction* ptr)```</span>.
119360    #[inline(always)]
119361    unsafe fn static_upcast(
119362        ptr: ::cpp_core::Ptr<crate::SlotOfComparisonFunction>,
119363    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119364        let ffi_result = {
119365            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr398(
119366                ptr.as_raw_ptr() as *mut crate::SlotOfComparisonFunction
119367            )
119368        };
119369        ::cpp_core::Ptr::from_raw(ffi_result)
119370    }
119371}
119372
119373impl ::std::ops::Deref for crate::SlotOfComparisonFunction {
119374    type Target = ::qt_core::QObject;
119375    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction* ptr)```</span>.
119376    #[inline(always)]
119377    fn deref(&self) -> &::qt_core::QObject {
119378        let ffi_result = {
119379            unsafe {
119380                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr398(
119381                    self as *const crate::SlotOfComparisonFunction
119382                        as *mut crate::SlotOfComparisonFunction,
119383                )
119384            }
119385        };
119386        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119387    }
119388}
119389
119390impl ::cpp_core::DynamicCast<crate::SlotOfComparisonFunction> for ::qt_core::QObject {
119391    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction*>(QObject* ptr)```</span>.
119392    #[inline(always)]
119393    unsafe fn dynamic_cast(
119394        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119395    ) -> ::cpp_core::Ptr<crate::SlotOfComparisonFunction> {
119396        let ffi_result = {
119397            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ComparisonFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119398        };
119399        ::cpp_core::Ptr::from_raw(ffi_result)
119400    }
119401}
119402
119403impl ::cpp_core::StaticDowncast<crate::SlotOfBlendFunction> for ::qt_core::QObject {
119404    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction*>(QObject* ptr)```</span>.
119405    #[inline(always)]
119406    unsafe fn static_downcast(
119407        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119408    ) -> ::cpp_core::Ptr<crate::SlotOfBlendFunction> {
119409        let ffi_result = {
119410            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119411        };
119412        ::cpp_core::Ptr::from_raw(ffi_result)
119413    }
119414}
119415
119416impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfBlendFunction {
119417    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction* ptr)```</span>.
119418    #[inline(always)]
119419    unsafe fn static_upcast(
119420        ptr: ::cpp_core::Ptr<crate::SlotOfBlendFunction>,
119421    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119422        let ffi_result = {
119423            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr399(
119424                ptr.as_raw_ptr() as *mut crate::SlotOfBlendFunction
119425            )
119426        };
119427        ::cpp_core::Ptr::from_raw(ffi_result)
119428    }
119429}
119430
119431impl ::std::ops::Deref for crate::SlotOfBlendFunction {
119432    type Target = ::qt_core::QObject;
119433    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction* ptr)```</span>.
119434    #[inline(always)]
119435    fn deref(&self) -> &::qt_core::QObject {
119436        let ffi_result = {
119437            unsafe {
119438                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr399(
119439                    self as *const crate::SlotOfBlendFunction as *mut crate::SlotOfBlendFunction,
119440                )
119441            }
119442        };
119443        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119444    }
119445}
119446
119447impl ::cpp_core::DynamicCast<crate::SlotOfBlendFunction> for ::qt_core::QObject {
119448    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction*>(QObject* ptr)```</span>.
119449    #[inline(always)]
119450    unsafe fn dynamic_cast(
119451        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119452    ) -> ::cpp_core::Ptr<crate::SlotOfBlendFunction> {
119453        let ffi_result = {
119454            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquation_BlendFunction_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119455        };
119456        ::cpp_core::Ptr::from_raw(ffi_result)
119457    }
119458}
119459
119460impl ::cpp_core::StaticDowncast<crate::SlotOfPickMethod> for ::qt_core::QObject {
119461    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod*>(QObject* ptr)```</span>.
119462    #[inline(always)]
119463    unsafe fn static_downcast(
119464        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119465    ) -> ::cpp_core::Ptr<crate::SlotOfPickMethod> {
119466        let ffi_result = {
119467            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119468        };
119469        ::cpp_core::Ptr::from_raw(ffi_result)
119470    }
119471}
119472
119473impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfPickMethod {
119474    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod* ptr)```</span>.
119475    #[inline(always)]
119476    unsafe fn static_upcast(
119477        ptr: ::cpp_core::Ptr<crate::SlotOfPickMethod>,
119478    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119479        let ffi_result = {
119480            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr400(
119481                ptr.as_raw_ptr() as *mut crate::SlotOfPickMethod
119482            )
119483        };
119484        ::cpp_core::Ptr::from_raw(ffi_result)
119485    }
119486}
119487
119488impl ::std::ops::Deref for crate::SlotOfPickMethod {
119489    type Target = ::qt_core::QObject;
119490    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod* ptr)```</span>.
119491    #[inline(always)]
119492    fn deref(&self) -> &::qt_core::QObject {
119493        let ffi_result = {
119494            unsafe {
119495                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr400(
119496                    self as *const crate::SlotOfPickMethod as *mut crate::SlotOfPickMethod,
119497                )
119498            }
119499        };
119500        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119501    }
119502}
119503
119504impl ::cpp_core::DynamicCast<crate::SlotOfPickMethod> for ::qt_core::QObject {
119505    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod*>(QObject* ptr)```</span>.
119506    #[inline(always)]
119507    unsafe fn dynamic_cast(
119508        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119509    ) -> ::cpp_core::Ptr<crate::SlotOfPickMethod> {
119510        let ffi_result = {
119511            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickMethod_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119512        };
119513        ::cpp_core::Ptr::from_raw(ffi_result)
119514    }
119515}
119516
119517impl ::cpp_core::StaticDowncast<crate::SlotOfPickResultMode> for ::qt_core::QObject {
119518    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode*>(QObject* ptr)```</span>.
119519    #[inline(always)]
119520    unsafe fn static_downcast(
119521        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119522    ) -> ::cpp_core::Ptr<crate::SlotOfPickResultMode> {
119523        let ffi_result = {
119524            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119525        };
119526        ::cpp_core::Ptr::from_raw(ffi_result)
119527    }
119528}
119529
119530impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfPickResultMode {
119531    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode* ptr)```</span>.
119532    #[inline(always)]
119533    unsafe fn static_upcast(
119534        ptr: ::cpp_core::Ptr<crate::SlotOfPickResultMode>,
119535    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119536        let ffi_result = {
119537            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr401(
119538                ptr.as_raw_ptr() as *mut crate::SlotOfPickResultMode
119539            )
119540        };
119541        ::cpp_core::Ptr::from_raw(ffi_result)
119542    }
119543}
119544
119545impl ::std::ops::Deref for crate::SlotOfPickResultMode {
119546    type Target = ::qt_core::QObject;
119547    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode* ptr)```</span>.
119548    #[inline(always)]
119549    fn deref(&self) -> &::qt_core::QObject {
119550        let ffi_result = {
119551            unsafe {
119552                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr401(
119553                    self as *const crate::SlotOfPickResultMode as *mut crate::SlotOfPickResultMode,
119554                )
119555            }
119556        };
119557        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119558    }
119559}
119560
119561impl ::cpp_core::DynamicCast<crate::SlotOfPickResultMode> for ::qt_core::QObject {
119562    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode*>(QObject* ptr)```</span>.
119563    #[inline(always)]
119564    unsafe fn dynamic_cast(
119565        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119566    ) -> ::cpp_core::Ptr<crate::SlotOfPickResultMode> {
119567        let ffi_result = {
119568            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickingSettings_PickResultMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119569        };
119570        ::cpp_core::Ptr::from_raw(ffi_result)
119571    }
119572}
119573
119574impl ::cpp_core::StaticDowncast<crate::SlotOfQFrameGraphNode> for ::qt_core::QObject {
119575    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr*>(QObject* ptr)```</span>.
119576    #[inline(always)]
119577    unsafe fn static_downcast(
119578        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119579    ) -> ::cpp_core::Ptr<crate::SlotOfQFrameGraphNode> {
119580        let ffi_result = {
119581            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119582        };
119583        ::cpp_core::Ptr::from_raw(ffi_result)
119584    }
119585}
119586
119587impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQFrameGraphNode {
119588    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr* ptr)```</span>.
119589    #[inline(always)]
119590    unsafe fn static_upcast(
119591        ptr: ::cpp_core::Ptr<crate::SlotOfQFrameGraphNode>,
119592    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119593        let ffi_result = {
119594            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr402(
119595                ptr.as_raw_ptr() as *mut crate::SlotOfQFrameGraphNode
119596            )
119597        };
119598        ::cpp_core::Ptr::from_raw(ffi_result)
119599    }
119600}
119601
119602impl ::std::ops::Deref for crate::SlotOfQFrameGraphNode {
119603    type Target = ::qt_core::QObject;
119604    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr* ptr)```</span>.
119605    #[inline(always)]
119606    fn deref(&self) -> &::qt_core::QObject {
119607        let ffi_result = {
119608            unsafe {
119609                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr402(
119610                    self as *const crate::SlotOfQFrameGraphNode
119611                        as *mut crate::SlotOfQFrameGraphNode,
119612                )
119613            }
119614        };
119615        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119616    }
119617}
119618
119619impl ::cpp_core::DynamicCast<crate::SlotOfQFrameGraphNode> for ::qt_core::QObject {
119620    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr*>(QObject* ptr)```</span>.
119621    #[inline(always)]
119622    unsafe fn dynamic_cast(
119623        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119624    ) -> ::cpp_core::Ptr<crate::SlotOfQFrameGraphNode> {
119625        let ffi_result = {
119626            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrameGraphNode_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119627        };
119628        ::cpp_core::Ptr::from_raw(ffi_result)
119629    }
119630}
119631
119632impl ::cpp_core::StaticDowncast<crate::SlotOfQVectorOfSortType> for ::qt_core::QObject {
119633    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref*>(QObject* ptr)```</span>.
119634    #[inline(always)]
119635    unsafe fn static_downcast(
119636        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119637    ) -> ::cpp_core::Ptr<crate::SlotOfQVectorOfSortType> {
119638        let ffi_result = {
119639            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119640        };
119641        ::cpp_core::Ptr::from_raw(ffi_result)
119642    }
119643}
119644
119645impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQVectorOfSortType {
119646    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref* ptr)```</span>.
119647    #[inline(always)]
119648    unsafe fn static_upcast(
119649        ptr: ::cpp_core::Ptr<crate::SlotOfQVectorOfSortType>,
119650    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119651        let ffi_result = {
119652            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr403(
119653                ptr.as_raw_ptr() as *mut crate::SlotOfQVectorOfSortType
119654            )
119655        };
119656        ::cpp_core::Ptr::from_raw(ffi_result)
119657    }
119658}
119659
119660impl ::std::ops::Deref for crate::SlotOfQVectorOfSortType {
119661    type Target = ::qt_core::QObject;
119662    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref* ptr)```</span>.
119663    #[inline(always)]
119664    fn deref(&self) -> &::qt_core::QObject {
119665        let ffi_result = {
119666            unsafe {
119667                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr403(
119668                    self as *const crate::SlotOfQVectorOfSortType
119669                        as *mut crate::SlotOfQVectorOfSortType,
119670                )
119671            }
119672        };
119673        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119674    }
119675}
119676
119677impl ::cpp_core::DynamicCast<crate::SlotOfQVectorOfSortType> for ::qt_core::QObject {
119678    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref*>(QObject* ptr)```</span>.
119679    #[inline(always)]
119680    unsafe fn dynamic_cast(
119681        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119682    ) -> ::cpp_core::Ptr<crate::SlotOfQVectorOfSortType> {
119683        let ffi_result = {
119684            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QSortPolicy_SortType_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119685        };
119686        ::cpp_core::Ptr::from_raw(ffi_result)
119687    }
119688}
119689
119690impl ::cpp_core::StaticDowncast<crate::SlotOfQVectorOfInt> for ::qt_core::QObject {
119691    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref*>(QObject* ptr)```</span>.
119692    #[inline(always)]
119693    unsafe fn static_downcast(
119694        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119695    ) -> ::cpp_core::Ptr<crate::SlotOfQVectorOfInt> {
119696        let ffi_result = {
119697            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119698        };
119699        ::cpp_core::Ptr::from_raw(ffi_result)
119700    }
119701}
119702
119703impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQVectorOfInt {
119704    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref* ptr)```</span>.
119705    #[inline(always)]
119706    unsafe fn static_upcast(
119707        ptr: ::cpp_core::Ptr<crate::SlotOfQVectorOfInt>,
119708    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119709        let ffi_result = {
119710            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr404(
119711                ptr.as_raw_ptr() as *mut crate::SlotOfQVectorOfInt
119712            )
119713        };
119714        ::cpp_core::Ptr::from_raw(ffi_result)
119715    }
119716}
119717
119718impl ::std::ops::Deref for crate::SlotOfQVectorOfInt {
119719    type Target = ::qt_core::QObject;
119720    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref* ptr)```</span>.
119721    #[inline(always)]
119722    fn deref(&self) -> &::qt_core::QObject {
119723        let ffi_result = {
119724            unsafe {
119725                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr404(
119726                    self as *const crate::SlotOfQVectorOfInt as *mut crate::SlotOfQVectorOfInt,
119727                )
119728            }
119729        };
119730        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119731    }
119732}
119733
119734impl ::cpp_core::DynamicCast<crate::SlotOfQVectorOfInt> for ::qt_core::QObject {
119735    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref*>(QObject* ptr)```</span>.
119736    #[inline(always)]
119737    unsafe fn dynamic_cast(
119738        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119739    ) -> ::cpp_core::Ptr<crate::SlotOfQVectorOfInt> {
119740        let ffi_result = {
119741            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector_int_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119742        };
119743        ::cpp_core::Ptr::from_raw(ffi_result)
119744    }
119745}
119746
119747impl ::cpp_core::StaticDowncast<crate::SlotOfStatus3> for ::qt_core::QObject {
119748    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status*>(QObject* ptr)```</span>.
119749    #[inline(always)]
119750    unsafe fn static_downcast(
119751        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119752    ) -> ::cpp_core::Ptr<crate::SlotOfStatus3> {
119753        let ffi_result = {
119754            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119755        };
119756        ::cpp_core::Ptr::from_raw(ffi_result)
119757    }
119758}
119759
119760impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfStatus3 {
119761    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status* ptr)```</span>.
119762    #[inline(always)]
119763    unsafe fn static_upcast(
119764        ptr: ::cpp_core::Ptr<crate::SlotOfStatus3>,
119765    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119766        let ffi_result = {
119767            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr405(
119768                ptr.as_raw_ptr() as *mut crate::SlotOfStatus3
119769            )
119770        };
119771        ::cpp_core::Ptr::from_raw(ffi_result)
119772    }
119773}
119774
119775impl ::std::ops::Deref for crate::SlotOfStatus3 {
119776    type Target = ::qt_core::QObject;
119777    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status* ptr)```</span>.
119778    #[inline(always)]
119779    fn deref(&self) -> &::qt_core::QObject {
119780        let ffi_result = {
119781            unsafe {
119782                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr405(
119783                    self as *const crate::SlotOfStatus3 as *mut crate::SlotOfStatus3,
119784                )
119785            }
119786        };
119787        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119788    }
119789}
119790
119791impl ::cpp_core::DynamicCast<crate::SlotOfStatus3> for ::qt_core::QObject {
119792    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status*>(QObject* ptr)```</span>.
119793    #[inline(always)]
119794    unsafe fn dynamic_cast(
119795        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119796    ) -> ::cpp_core::Ptr<crate::SlotOfStatus3> {
119797        let ffi_result = {
119798            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QSceneLoader_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119799        };
119800        ::cpp_core::Ptr::from_raw(ffi_result)
119801    }
119802}
119803
119804#[cfg_attr(
119805    feature = "ritual_rustdoc_nightly",
119806    doc(cfg(cpp_lib_version = "5.14.0"))
119807)]
119808#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
119809impl ::cpp_core::StaticDowncast<crate::SlotOfImageFormat> for ::qt_core::QObject {
119810    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat*>(QObject* ptr)```</span>.
119811    #[inline(always)]
119812    unsafe fn static_downcast(
119813        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119814    ) -> ::cpp_core::Ptr<crate::SlotOfImageFormat> {
119815        let ffi_result = {
119816            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119817        };
119818        ::cpp_core::Ptr::from_raw(ffi_result)
119819    }
119820}
119821
119822#[cfg_attr(
119823    feature = "ritual_rustdoc_nightly",
119824    doc(cfg(cpp_lib_version = "5.14.0"))
119825)]
119826#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
119827impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfImageFormat {
119828    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat* ptr)```</span>.
119829    #[inline(always)]
119830    unsafe fn static_upcast(
119831        ptr: ::cpp_core::Ptr<crate::SlotOfImageFormat>,
119832    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119833        let ffi_result = {
119834            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr406(
119835                ptr.as_raw_ptr() as *mut crate::SlotOfImageFormat
119836            )
119837        };
119838        ::cpp_core::Ptr::from_raw(ffi_result)
119839    }
119840}
119841
119842#[cfg_attr(
119843    feature = "ritual_rustdoc_nightly",
119844    doc(cfg(cpp_lib_version = "5.14.0"))
119845)]
119846#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
119847impl ::std::ops::Deref for crate::SlotOfImageFormat {
119848    type Target = ::qt_core::QObject;
119849    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat* ptr)```</span>.
119850    #[inline(always)]
119851    fn deref(&self) -> &::qt_core::QObject {
119852        let ffi_result = {
119853            unsafe {
119854                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr406(
119855                    self as *const crate::SlotOfImageFormat as *mut crate::SlotOfImageFormat,
119856                )
119857            }
119858        };
119859        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119860    }
119861}
119862
119863#[cfg_attr(
119864    feature = "ritual_rustdoc_nightly",
119865    doc(cfg(cpp_lib_version = "5.14.0"))
119866)]
119867#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
119868impl ::cpp_core::DynamicCast<crate::SlotOfImageFormat> for ::qt_core::QObject {
119869    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat*>(QObject* ptr)```</span>.
119870    #[inline(always)]
119871    unsafe fn dynamic_cast(
119872        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119873    ) -> ::cpp_core::Ptr<crate::SlotOfImageFormat> {
119874        let ffi_result = {
119875            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QShaderImage_ImageFormat_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119876        };
119877        ::cpp_core::Ptr::from_raw(ffi_result)
119878    }
119879}
119880
119881impl ::cpp_core::StaticDowncast<crate::SlotOfTextureFormat> for ::qt_core::QObject {
119882    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat*>(QObject* ptr)```</span>.
119883    #[inline(always)]
119884    unsafe fn static_downcast(
119885        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119886    ) -> ::cpp_core::Ptr<crate::SlotOfTextureFormat> {
119887        let ffi_result = {
119888            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119889        };
119890        ::cpp_core::Ptr::from_raw(ffi_result)
119891    }
119892}
119893
119894impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfTextureFormat {
119895    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat* ptr)```</span>.
119896    #[inline(always)]
119897    unsafe fn static_upcast(
119898        ptr: ::cpp_core::Ptr<crate::SlotOfTextureFormat>,
119899    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119900        let ffi_result = {
119901            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr407(
119902                ptr.as_raw_ptr() as *mut crate::SlotOfTextureFormat
119903            )
119904        };
119905        ::cpp_core::Ptr::from_raw(ffi_result)
119906    }
119907}
119908
119909impl ::std::ops::Deref for crate::SlotOfTextureFormat {
119910    type Target = ::qt_core::QObject;
119911    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat* ptr)```</span>.
119912    #[inline(always)]
119913    fn deref(&self) -> &::qt_core::QObject {
119914        let ffi_result = {
119915            unsafe {
119916                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr407(
119917                    self as *const crate::SlotOfTextureFormat as *mut crate::SlotOfTextureFormat,
119918                )
119919            }
119920        };
119921        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119922    }
119923}
119924
119925impl ::cpp_core::DynamicCast<crate::SlotOfTextureFormat> for ::qt_core::QObject {
119926    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat*>(QObject* ptr)```</span>.
119927    #[inline(always)]
119928    unsafe fn dynamic_cast(
119929        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119930    ) -> ::cpp_core::Ptr<crate::SlotOfTextureFormat> {
119931        let ffi_result = {
119932            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_TextureFormat_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119933        };
119934        ::cpp_core::Ptr::from_raw(ffi_result)
119935    }
119936}
119937
119938impl ::cpp_core::StaticDowncast<crate::SlotOfBlending> for ::qt_core::QObject {
119939    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending*>(QObject* ptr)```</span>.
119940    #[inline(always)]
119941    unsafe fn static_downcast(
119942        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119943    ) -> ::cpp_core::Ptr<crate::SlotOfBlending> {
119944        let ffi_result = {
119945            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119946        };
119947        ::cpp_core::Ptr::from_raw(ffi_result)
119948    }
119949}
119950
119951impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfBlending {
119952    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending* ptr)```</span>.
119953    #[inline(always)]
119954    unsafe fn static_upcast(
119955        ptr: ::cpp_core::Ptr<crate::SlotOfBlending>,
119956    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
119957        let ffi_result = {
119958            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr408(
119959                ptr.as_raw_ptr() as *mut crate::SlotOfBlending
119960            )
119961        };
119962        ::cpp_core::Ptr::from_raw(ffi_result)
119963    }
119964}
119965
119966impl ::std::ops::Deref for crate::SlotOfBlending {
119967    type Target = ::qt_core::QObject;
119968    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending* ptr)```</span>.
119969    #[inline(always)]
119970    fn deref(&self) -> &::qt_core::QObject {
119971        let ffi_result = {
119972            unsafe {
119973                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr408(
119974                    self as *const crate::SlotOfBlending as *mut crate::SlotOfBlending,
119975                )
119976            }
119977        };
119978        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
119979    }
119980}
119981
119982impl ::cpp_core::DynamicCast<crate::SlotOfBlending> for ::qt_core::QObject {
119983    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending*>(QObject* ptr)```</span>.
119984    #[inline(always)]
119985    unsafe fn dynamic_cast(
119986        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
119987    ) -> ::cpp_core::Ptr<crate::SlotOfBlending> {
119988        let ffi_result = {
119989            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBlendEquationArguments_Blending_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
119990        };
119991        ::cpp_core::Ptr::from_raw(ffi_result)
119992    }
119993}
119994
119995impl ::cpp_core::StaticDowncast<crate::SlotOfOperation> for ::qt_core::QObject {
119996    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation*>(QObject* ptr)```</span>.
119997    #[inline(always)]
119998    unsafe fn static_downcast(
119999        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120000    ) -> ::cpp_core::Ptr<crate::SlotOfOperation> {
120001        let ffi_result = {
120002            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120003        };
120004        ::cpp_core::Ptr::from_raw(ffi_result)
120005    }
120006}
120007
120008impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfOperation {
120009    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation* ptr)```</span>.
120010    #[inline(always)]
120011    unsafe fn static_upcast(
120012        ptr: ::cpp_core::Ptr<crate::SlotOfOperation>,
120013    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120014        let ffi_result = {
120015            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr409(
120016                ptr.as_raw_ptr() as *mut crate::SlotOfOperation
120017            )
120018        };
120019        ::cpp_core::Ptr::from_raw(ffi_result)
120020    }
120021}
120022
120023impl ::std::ops::Deref for crate::SlotOfOperation {
120024    type Target = ::qt_core::QObject;
120025    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation* ptr)```</span>.
120026    #[inline(always)]
120027    fn deref(&self) -> &::qt_core::QObject {
120028        let ffi_result = {
120029            unsafe {
120030                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr409(
120031                    self as *const crate::SlotOfOperation as *mut crate::SlotOfOperation,
120032                )
120033            }
120034        };
120035        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120036    }
120037}
120038
120039impl ::cpp_core::DynamicCast<crate::SlotOfOperation> for ::qt_core::QObject {
120040    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation*>(QObject* ptr)```</span>.
120041    #[inline(always)]
120042    unsafe fn dynamic_cast(
120043        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120044    ) -> ::cpp_core::Ptr<crate::SlotOfOperation> {
120045        let ffi_result = {
120046            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilOperationArguments_Operation_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120047        };
120048        ::cpp_core::Ptr::from_raw(ffi_result)
120049    }
120050}
120051
120052#[cfg_attr(
120053    feature = "ritual_rustdoc_nightly",
120054    doc(cfg(any(
120055        cpp_lib_version = "5.14.0",
120056        cpp_lib_version = "5.11.3",
120057        cpp_lib_version = "5.12.2",
120058        cpp_lib_version = "5.13.0"
120059    )))
120060)]
120061#[cfg(any(
120062    any(
120063        cpp_lib_version = "5.14.0",
120064        cpp_lib_version = "5.11.3",
120065        cpp_lib_version = "5.12.2",
120066        cpp_lib_version = "5.13.0"
120067    ),
120068    feature = "ritual_rustdoc"
120069))]
120070impl ::cpp_core::StaticDowncast<crate::SlotOfQVectorOfQRayCasterHit> for ::qt_core::QObject {
120071    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref*>(QObject* ptr)```</span>.
120072    #[inline(always)]
120073    unsafe fn static_downcast(
120074        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120075    ) -> ::cpp_core::Ptr<crate::SlotOfQVectorOfQRayCasterHit> {
120076        let ffi_result = {
120077            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120078        };
120079        ::cpp_core::Ptr::from_raw(ffi_result)
120080    }
120081}
120082
120083#[cfg_attr(
120084    feature = "ritual_rustdoc_nightly",
120085    doc(cfg(any(
120086        cpp_lib_version = "5.14.0",
120087        cpp_lib_version = "5.11.3",
120088        cpp_lib_version = "5.12.2",
120089        cpp_lib_version = "5.13.0"
120090    )))
120091)]
120092#[cfg(any(
120093    any(
120094        cpp_lib_version = "5.14.0",
120095        cpp_lib_version = "5.11.3",
120096        cpp_lib_version = "5.12.2",
120097        cpp_lib_version = "5.13.0"
120098    ),
120099    feature = "ritual_rustdoc"
120100))]
120101impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQVectorOfQRayCasterHit {
120102    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref* ptr)```</span>.
120103    #[inline(always)]
120104    unsafe fn static_upcast(
120105        ptr: ::cpp_core::Ptr<crate::SlotOfQVectorOfQRayCasterHit>,
120106    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120107        let ffi_result = {
120108            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr410(
120109                ptr.as_raw_ptr() as *mut crate::SlotOfQVectorOfQRayCasterHit
120110            )
120111        };
120112        ::cpp_core::Ptr::from_raw(ffi_result)
120113    }
120114}
120115
120116#[cfg_attr(
120117    feature = "ritual_rustdoc_nightly",
120118    doc(cfg(any(
120119        cpp_lib_version = "5.14.0",
120120        cpp_lib_version = "5.11.3",
120121        cpp_lib_version = "5.12.2",
120122        cpp_lib_version = "5.13.0"
120123    )))
120124)]
120125#[cfg(any(
120126    any(
120127        cpp_lib_version = "5.14.0",
120128        cpp_lib_version = "5.11.3",
120129        cpp_lib_version = "5.12.2",
120130        cpp_lib_version = "5.13.0"
120131    ),
120132    feature = "ritual_rustdoc"
120133))]
120134impl ::std::ops::Deref for crate::SlotOfQVectorOfQRayCasterHit {
120135    type Target = ::qt_core::QObject;
120136    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref* ptr)```</span>.
120137    #[inline(always)]
120138    fn deref(&self) -> &::qt_core::QObject {
120139        let ffi_result = {
120140            unsafe {
120141                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr410(
120142                    self as *const crate::SlotOfQVectorOfQRayCasterHit
120143                        as *mut crate::SlotOfQVectorOfQRayCasterHit,
120144                )
120145            }
120146        };
120147        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120148    }
120149}
120150
120151#[cfg_attr(
120152    feature = "ritual_rustdoc_nightly",
120153    doc(cfg(any(
120154        cpp_lib_version = "5.14.0",
120155        cpp_lib_version = "5.11.3",
120156        cpp_lib_version = "5.12.2",
120157        cpp_lib_version = "5.13.0"
120158    )))
120159)]
120160#[cfg(any(
120161    any(
120162        cpp_lib_version = "5.14.0",
120163        cpp_lib_version = "5.11.3",
120164        cpp_lib_version = "5.12.2",
120165        cpp_lib_version = "5.13.0"
120166    ),
120167    feature = "ritual_rustdoc"
120168))]
120169impl ::cpp_core::DynamicCast<crate::SlotOfQVectorOfQRayCasterHit> for ::qt_core::QObject {
120170    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref*>(QObject* ptr)```</span>.
120171    #[inline(always)]
120172    unsafe fn dynamic_cast(
120173        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120174    ) -> ::cpp_core::Ptr<crate::SlotOfQVectorOfQRayCasterHit> {
120175        let ffi_result = {
120176            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QVector_Qt3DRender_QRayCasterHit_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120177        };
120178        ::cpp_core::Ptr::from_raw(ffi_result)
120179    }
120180}
120181
120182impl ::cpp_core::StaticDowncast<crate::SlotOfQAbstractTexture> for ::qt_core::QObject {
120183    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr*>(QObject* ptr)```</span>.
120184    #[inline(always)]
120185    unsafe fn static_downcast(
120186        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120187    ) -> ::cpp_core::Ptr<crate::SlotOfQAbstractTexture> {
120188        let ffi_result = {
120189            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120190        };
120191        ::cpp_core::Ptr::from_raw(ffi_result)
120192    }
120193}
120194
120195impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQAbstractTexture {
120196    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr* ptr)```</span>.
120197    #[inline(always)]
120198    unsafe fn static_upcast(
120199        ptr: ::cpp_core::Ptr<crate::SlotOfQAbstractTexture>,
120200    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120201        let ffi_result = {
120202            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr411(
120203                ptr.as_raw_ptr() as *mut crate::SlotOfQAbstractTexture
120204            )
120205        };
120206        ::cpp_core::Ptr::from_raw(ffi_result)
120207    }
120208}
120209
120210impl ::std::ops::Deref for crate::SlotOfQAbstractTexture {
120211    type Target = ::qt_core::QObject;
120212    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr* ptr)```</span>.
120213    #[inline(always)]
120214    fn deref(&self) -> &::qt_core::QObject {
120215        let ffi_result = {
120216            unsafe {
120217                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr411(
120218                    self as *const crate::SlotOfQAbstractTexture
120219                        as *mut crate::SlotOfQAbstractTexture,
120220                )
120221            }
120222        };
120223        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120224    }
120225}
120226
120227impl ::cpp_core::DynamicCast<crate::SlotOfQAbstractTexture> for ::qt_core::QObject {
120228    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr*>(QObject* ptr)```</span>.
120229    #[inline(always)]
120230    unsafe fn dynamic_cast(
120231        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120232    ) -> ::cpp_core::Ptr<crate::SlotOfQAbstractTexture> {
120233        let ffi_result = {
120234            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120235        };
120236        ::cpp_core::Ptr::from_raw(ffi_result)
120237    }
120238}
120239
120240impl ::cpp_core::StaticDowncast<crate::SlotOfQPickEvent> for ::qt_core::QObject {
120241    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr*>(QObject* ptr)```</span>.
120242    #[inline(always)]
120243    unsafe fn static_downcast(
120244        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120245    ) -> ::cpp_core::Ptr<crate::SlotOfQPickEvent> {
120246        let ffi_result = {
120247            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120248        };
120249        ::cpp_core::Ptr::from_raw(ffi_result)
120250    }
120251}
120252
120253impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQPickEvent {
120254    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr* ptr)```</span>.
120255    #[inline(always)]
120256    unsafe fn static_upcast(
120257        ptr: ::cpp_core::Ptr<crate::SlotOfQPickEvent>,
120258    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120259        let ffi_result = {
120260            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr412(
120261                ptr.as_raw_ptr() as *mut crate::SlotOfQPickEvent
120262            )
120263        };
120264        ::cpp_core::Ptr::from_raw(ffi_result)
120265    }
120266}
120267
120268impl ::std::ops::Deref for crate::SlotOfQPickEvent {
120269    type Target = ::qt_core::QObject;
120270    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr* ptr)```</span>.
120271    #[inline(always)]
120272    fn deref(&self) -> &::qt_core::QObject {
120273        let ffi_result = {
120274            unsafe {
120275                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr412(
120276                    self as *const crate::SlotOfQPickEvent as *mut crate::SlotOfQPickEvent,
120277                )
120278            }
120279        };
120280        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120281    }
120282}
120283
120284impl ::cpp_core::DynamicCast<crate::SlotOfQPickEvent> for ::qt_core::QObject {
120285    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr*>(QObject* ptr)```</span>.
120286    #[inline(always)]
120287    unsafe fn dynamic_cast(
120288        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120289    ) -> ::cpp_core::Ptr<crate::SlotOfQPickEvent> {
120290        let ffi_result = {
120291            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QPickEvent_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120292        };
120293        ::cpp_core::Ptr::from_raw(ffi_result)
120294    }
120295}
120296
120297#[cfg_attr(
120298    feature = "ritual_rustdoc_nightly",
120299    doc(cfg(any(
120300        cpp_lib_version = "5.14.0",
120301        cpp_lib_version = "5.11.3",
120302        cpp_lib_version = "5.12.2",
120303        cpp_lib_version = "5.13.0"
120304    )))
120305)]
120306#[cfg(any(
120307    any(
120308        cpp_lib_version = "5.14.0",
120309        cpp_lib_version = "5.11.3",
120310        cpp_lib_version = "5.12.2",
120311        cpp_lib_version = "5.13.0"
120312    ),
120313    feature = "ritual_rustdoc"
120314))]
120315impl ::cpp_core::StaticDowncast<crate::SlotOfRunMode> for ::qt_core::QObject {
120316    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode*>(QObject* ptr)```</span>.
120317    #[inline(always)]
120318    unsafe fn static_downcast(
120319        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120320    ) -> ::cpp_core::Ptr<crate::SlotOfRunMode> {
120321        let ffi_result = {
120322            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120323        };
120324        ::cpp_core::Ptr::from_raw(ffi_result)
120325    }
120326}
120327
120328#[cfg_attr(
120329    feature = "ritual_rustdoc_nightly",
120330    doc(cfg(any(
120331        cpp_lib_version = "5.14.0",
120332        cpp_lib_version = "5.11.3",
120333        cpp_lib_version = "5.12.2",
120334        cpp_lib_version = "5.13.0"
120335    )))
120336)]
120337#[cfg(any(
120338    any(
120339        cpp_lib_version = "5.14.0",
120340        cpp_lib_version = "5.11.3",
120341        cpp_lib_version = "5.12.2",
120342        cpp_lib_version = "5.13.0"
120343    ),
120344    feature = "ritual_rustdoc"
120345))]
120346impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfRunMode {
120347    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode* ptr)```</span>.
120348    #[inline(always)]
120349    unsafe fn static_upcast(
120350        ptr: ::cpp_core::Ptr<crate::SlotOfRunMode>,
120351    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120352        let ffi_result = {
120353            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr413(
120354                ptr.as_raw_ptr() as *mut crate::SlotOfRunMode
120355            )
120356        };
120357        ::cpp_core::Ptr::from_raw(ffi_result)
120358    }
120359}
120360
120361#[cfg_attr(
120362    feature = "ritual_rustdoc_nightly",
120363    doc(cfg(any(
120364        cpp_lib_version = "5.14.0",
120365        cpp_lib_version = "5.11.3",
120366        cpp_lib_version = "5.12.2",
120367        cpp_lib_version = "5.13.0"
120368    )))
120369)]
120370#[cfg(any(
120371    any(
120372        cpp_lib_version = "5.14.0",
120373        cpp_lib_version = "5.11.3",
120374        cpp_lib_version = "5.12.2",
120375        cpp_lib_version = "5.13.0"
120376    ),
120377    feature = "ritual_rustdoc"
120378))]
120379impl ::std::ops::Deref for crate::SlotOfRunMode {
120380    type Target = ::qt_core::QObject;
120381    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode* ptr)```</span>.
120382    #[inline(always)]
120383    fn deref(&self) -> &::qt_core::QObject {
120384        let ffi_result = {
120385            unsafe {
120386                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr413(
120387                    self as *const crate::SlotOfRunMode as *mut crate::SlotOfRunMode,
120388                )
120389            }
120390        };
120391        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120392    }
120393}
120394
120395#[cfg_attr(
120396    feature = "ritual_rustdoc_nightly",
120397    doc(cfg(any(
120398        cpp_lib_version = "5.14.0",
120399        cpp_lib_version = "5.11.3",
120400        cpp_lib_version = "5.12.2",
120401        cpp_lib_version = "5.13.0"
120402    )))
120403)]
120404#[cfg(any(
120405    any(
120406        cpp_lib_version = "5.14.0",
120407        cpp_lib_version = "5.11.3",
120408        cpp_lib_version = "5.12.2",
120409        cpp_lib_version = "5.13.0"
120410    ),
120411    feature = "ritual_rustdoc"
120412))]
120413impl ::cpp_core::DynamicCast<crate::SlotOfRunMode> for ::qt_core::QObject {
120414    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode*>(QObject* ptr)```</span>.
120415    #[inline(always)]
120416    unsafe fn dynamic_cast(
120417        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120418    ) -> ::cpp_core::Ptr<crate::SlotOfRunMode> {
120419        let ffi_result = {
120420            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractRayCaster_RunMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120421        };
120422        ::cpp_core::Ptr::from_raw(ffi_result)
120423    }
120424}
120425
120426impl ::cpp_core::StaticDowncast<crate::SlotOfProjectionType> for ::qt_core::QObject {
120427    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType*>(QObject* ptr)```</span>.
120428    #[inline(always)]
120429    unsafe fn static_downcast(
120430        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120431    ) -> ::cpp_core::Ptr<crate::SlotOfProjectionType> {
120432        let ffi_result = {
120433            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120434        };
120435        ::cpp_core::Ptr::from_raw(ffi_result)
120436    }
120437}
120438
120439impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfProjectionType {
120440    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType* ptr)```</span>.
120441    #[inline(always)]
120442    unsafe fn static_upcast(
120443        ptr: ::cpp_core::Ptr<crate::SlotOfProjectionType>,
120444    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120445        let ffi_result = {
120446            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr414(
120447                ptr.as_raw_ptr() as *mut crate::SlotOfProjectionType
120448            )
120449        };
120450        ::cpp_core::Ptr::from_raw(ffi_result)
120451    }
120452}
120453
120454impl ::std::ops::Deref for crate::SlotOfProjectionType {
120455    type Target = ::qt_core::QObject;
120456    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType* ptr)```</span>.
120457    #[inline(always)]
120458    fn deref(&self) -> &::qt_core::QObject {
120459        let ffi_result = {
120460            unsafe {
120461                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr414(
120462                    self as *const crate::SlotOfProjectionType as *mut crate::SlotOfProjectionType,
120463                )
120464            }
120465        };
120466        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120467    }
120468}
120469
120470impl ::cpp_core::DynamicCast<crate::SlotOfProjectionType> for ::qt_core::QObject {
120471    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType*>(QObject* ptr)```</span>.
120472    #[inline(always)]
120473    unsafe fn dynamic_cast(
120474        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120475    ) -> ::cpp_core::Ptr<crate::SlotOfProjectionType> {
120476        let ffi_result = {
120477            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCameraLens_ProjectionType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120478        };
120479        ::cpp_core::Ptr::from_raw(ffi_result)
120480    }
120481}
120482
120483impl ::cpp_core::StaticDowncast<crate::SlotOfQAttribute> for ::qt_core::QObject {
120484    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr*>(QObject* ptr)```</span>.
120485    #[inline(always)]
120486    unsafe fn static_downcast(
120487        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120488    ) -> ::cpp_core::Ptr<crate::SlotOfQAttribute> {
120489        let ffi_result = {
120490            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120491        };
120492        ::cpp_core::Ptr::from_raw(ffi_result)
120493    }
120494}
120495
120496impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQAttribute {
120497    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr* ptr)```</span>.
120498    #[inline(always)]
120499    unsafe fn static_upcast(
120500        ptr: ::cpp_core::Ptr<crate::SlotOfQAttribute>,
120501    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120502        let ffi_result = {
120503            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr415(
120504                ptr.as_raw_ptr() as *mut crate::SlotOfQAttribute
120505            )
120506        };
120507        ::cpp_core::Ptr::from_raw(ffi_result)
120508    }
120509}
120510
120511impl ::std::ops::Deref for crate::SlotOfQAttribute {
120512    type Target = ::qt_core::QObject;
120513    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr* ptr)```</span>.
120514    #[inline(always)]
120515    fn deref(&self) -> &::qt_core::QObject {
120516        let ffi_result = {
120517            unsafe {
120518                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr415(
120519                    self as *const crate::SlotOfQAttribute as *mut crate::SlotOfQAttribute,
120520                )
120521            }
120522        };
120523        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120524    }
120525}
120526
120527impl ::cpp_core::DynamicCast<crate::SlotOfQAttribute> for ::qt_core::QObject {
120528    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr*>(QObject* ptr)```</span>.
120529    #[inline(always)]
120530    unsafe fn dynamic_cast(
120531        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120532    ) -> ::cpp_core::Ptr<crate::SlotOfQAttribute> {
120533        let ffi_result = {
120534            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120535        };
120536        ::cpp_core::Ptr::from_raw(ffi_result)
120537    }
120538}
120539
120540impl ::cpp_core::StaticDowncast<crate::SlotOfQBuffer> for ::qt_core::QObject {
120541    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr*>(QObject* ptr)```</span>.
120542    #[inline(always)]
120543    unsafe fn static_downcast(
120544        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120545    ) -> ::cpp_core::Ptr<crate::SlotOfQBuffer> {
120546        let ffi_result = {
120547            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120548        };
120549        ::cpp_core::Ptr::from_raw(ffi_result)
120550    }
120551}
120552
120553impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQBuffer {
120554    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr* ptr)```</span>.
120555    #[inline(always)]
120556    unsafe fn static_upcast(
120557        ptr: ::cpp_core::Ptr<crate::SlotOfQBuffer>,
120558    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120559        let ffi_result = {
120560            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr416(
120561                ptr.as_raw_ptr() as *mut crate::SlotOfQBuffer
120562            )
120563        };
120564        ::cpp_core::Ptr::from_raw(ffi_result)
120565    }
120566}
120567
120568impl ::std::ops::Deref for crate::SlotOfQBuffer {
120569    type Target = ::qt_core::QObject;
120570    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr* ptr)```</span>.
120571    #[inline(always)]
120572    fn deref(&self) -> &::qt_core::QObject {
120573        let ffi_result = {
120574            unsafe {
120575                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr416(
120576                    self as *const crate::SlotOfQBuffer as *mut crate::SlotOfQBuffer,
120577                )
120578            }
120579        };
120580        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120581    }
120582}
120583
120584impl ::cpp_core::DynamicCast<crate::SlotOfQBuffer> for ::qt_core::QObject {
120585    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr*>(QObject* ptr)```</span>.
120586    #[inline(always)]
120587    unsafe fn dynamic_cast(
120588        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120589    ) -> ::cpp_core::Ptr<crate::SlotOfQBuffer> {
120590        let ffi_result = {
120591            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120592        };
120593        ::cpp_core::Ptr::from_raw(ffi_result)
120594    }
120595}
120596
120597impl ::cpp_core::StaticDowncast<crate::SlotOfStatus4> for ::qt_core::QObject {
120598    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status*>(QObject* ptr)```</span>.
120599    #[inline(always)]
120600    unsafe fn static_downcast(
120601        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120602    ) -> ::cpp_core::Ptr<crate::SlotOfStatus4> {
120603        let ffi_result = {
120604            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120605        };
120606        ::cpp_core::Ptr::from_raw(ffi_result)
120607    }
120608}
120609
120610impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfStatus4 {
120611    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status* ptr)```</span>.
120612    #[inline(always)]
120613    unsafe fn static_upcast(
120614        ptr: ::cpp_core::Ptr<crate::SlotOfStatus4>,
120615    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120616        let ffi_result = {
120617            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr417(
120618                ptr.as_raw_ptr() as *mut crate::SlotOfStatus4
120619            )
120620        };
120621        ::cpp_core::Ptr::from_raw(ffi_result)
120622    }
120623}
120624
120625impl ::std::ops::Deref for crate::SlotOfStatus4 {
120626    type Target = ::qt_core::QObject;
120627    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status* ptr)```</span>.
120628    #[inline(always)]
120629    fn deref(&self) -> &::qt_core::QObject {
120630        let ffi_result = {
120631            unsafe {
120632                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr417(
120633                    self as *const crate::SlotOfStatus4 as *mut crate::SlotOfStatus4,
120634                )
120635            }
120636        };
120637        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120638    }
120639}
120640
120641impl ::cpp_core::DynamicCast<crate::SlotOfStatus4> for ::qt_core::QObject {
120642    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status*>(QObject* ptr)```</span>.
120643    #[inline(always)]
120644    unsafe fn dynamic_cast(
120645        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120646    ) -> ::cpp_core::Ptr<crate::SlotOfStatus4> {
120647        let ffi_result = {
120648            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAbstractTexture_Status_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120649        };
120650        ::cpp_core::Ptr::from_raw(ffi_result)
120651    }
120652}
120653
120654impl ::cpp_core::StaticDowncast<crate::SlotOfBufferType2> for ::qt_core::QObject {
120655    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType*>(QObject* ptr)```</span>.
120656    #[inline(always)]
120657    unsafe fn static_downcast(
120658        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120659    ) -> ::cpp_core::Ptr<crate::SlotOfBufferType2> {
120660        let ffi_result = {
120661            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120662        };
120663        ::cpp_core::Ptr::from_raw(ffi_result)
120664    }
120665}
120666
120667impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfBufferType2 {
120668    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType* ptr)```</span>.
120669    #[inline(always)]
120670    unsafe fn static_upcast(
120671        ptr: ::cpp_core::Ptr<crate::SlotOfBufferType2>,
120672    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120673        let ffi_result = {
120674            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr418(
120675                ptr.as_raw_ptr() as *mut crate::SlotOfBufferType2
120676            )
120677        };
120678        ::cpp_core::Ptr::from_raw(ffi_result)
120679    }
120680}
120681
120682impl ::std::ops::Deref for crate::SlotOfBufferType2 {
120683    type Target = ::qt_core::QObject;
120684    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType* ptr)```</span>.
120685    #[inline(always)]
120686    fn deref(&self) -> &::qt_core::QObject {
120687        let ffi_result = {
120688            unsafe {
120689                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr418(
120690                    self as *const crate::SlotOfBufferType2 as *mut crate::SlotOfBufferType2,
120691                )
120692            }
120693        };
120694        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120695    }
120696}
120697
120698impl ::cpp_core::DynamicCast<crate::SlotOfBufferType2> for ::qt_core::QObject {
120699    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType*>(QObject* ptr)```</span>.
120700    #[inline(always)]
120701    unsafe fn dynamic_cast(
120702        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120703    ) -> ::cpp_core::Ptr<crate::SlotOfBufferType2> {
120704        let ffi_result = {
120705            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QBuffer_BufferType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120706        };
120707        ::cpp_core::Ptr::from_raw(ffi_result)
120708    }
120709}
120710
120711impl ::cpp_core::StaticDowncast<crate::SlotOfQSize> for ::qt_core::QObject {
120712    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QSize* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QSize*>(QObject* ptr)```</span>.
120713    #[inline(always)]
120714    unsafe fn static_downcast(
120715        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120716    ) -> ::cpp_core::Ptr<crate::SlotOfQSize> {
120717        let ffi_result = {
120718            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QSize_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120719        };
120720        ::cpp_core::Ptr::from_raw(ffi_result)
120721    }
120722}
120723
120724impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQSize {
120725    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QSize* ptr)```</span>.
120726    #[inline(always)]
120727    unsafe fn static_upcast(
120728        ptr: ::cpp_core::Ptr<crate::SlotOfQSize>,
120729    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120730        let ffi_result = {
120731            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr419(
120732                ptr.as_raw_ptr() as *mut crate::SlotOfQSize
120733            )
120734        };
120735        ::cpp_core::Ptr::from_raw(ffi_result)
120736    }
120737}
120738
120739impl ::std::ops::Deref for crate::SlotOfQSize {
120740    type Target = ::qt_core::QObject;
120741    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QSize* ptr)```</span>.
120742    #[inline(always)]
120743    fn deref(&self) -> &::qt_core::QObject {
120744        let ffi_result = {
120745            unsafe {
120746                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr419(
120747                    self as *const crate::SlotOfQSize as *mut crate::SlotOfQSize,
120748                )
120749            }
120750        };
120751        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120752    }
120753}
120754
120755impl ::cpp_core::DynamicCast<crate::SlotOfQSize> for ::qt_core::QObject {
120756    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QSize* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QSize*>(QObject* ptr)```</span>.
120757    #[inline(always)]
120758    unsafe fn dynamic_cast(
120759        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120760    ) -> ::cpp_core::Ptr<crate::SlotOfQSize> {
120761        let ffi_result = {
120762            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QSize_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120763        };
120764        ::cpp_core::Ptr::from_raw(ffi_result)
120765    }
120766}
120767
120768impl ::cpp_core::StaticDowncast<crate::SlotOfQLevelOfDetailBoundingSphere> for ::qt_core::QObject {
120769    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref*>(QObject* ptr)```</span>.
120770    #[inline(always)]
120771    unsafe fn static_downcast(
120772        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120773    ) -> ::cpp_core::Ptr<crate::SlotOfQLevelOfDetailBoundingSphere> {
120774        let ffi_result = {
120775            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120776        };
120777        ::cpp_core::Ptr::from_raw(ffi_result)
120778    }
120779}
120780
120781impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQLevelOfDetailBoundingSphere {
120782    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref* ptr)```</span>.
120783    #[inline(always)]
120784    unsafe fn static_upcast(
120785        ptr: ::cpp_core::Ptr<crate::SlotOfQLevelOfDetailBoundingSphere>,
120786    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120787        let ffi_result = {
120788            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr420(
120789                ptr.as_raw_ptr() as *mut crate::SlotOfQLevelOfDetailBoundingSphere
120790            )
120791        };
120792        ::cpp_core::Ptr::from_raw(ffi_result)
120793    }
120794}
120795
120796impl ::std::ops::Deref for crate::SlotOfQLevelOfDetailBoundingSphere {
120797    type Target = ::qt_core::QObject;
120798    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref* ptr)```</span>.
120799    #[inline(always)]
120800    fn deref(&self) -> &::qt_core::QObject {
120801        let ffi_result = {
120802            unsafe {
120803                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr420(
120804                    self as *const crate::SlotOfQLevelOfDetailBoundingSphere
120805                        as *mut crate::SlotOfQLevelOfDetailBoundingSphere,
120806                )
120807            }
120808        };
120809        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120810    }
120811}
120812
120813impl ::cpp_core::DynamicCast<crate::SlotOfQLevelOfDetailBoundingSphere> for ::qt_core::QObject {
120814    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref*>(QObject* ptr)```</span>.
120815    #[inline(always)]
120816    unsafe fn dynamic_cast(
120817        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120818    ) -> ::cpp_core::Ptr<crate::SlotOfQLevelOfDetailBoundingSphere> {
120819        let ffi_result = {
120820            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QLevelOfDetailBoundingSphere_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120821        };
120822        ::cpp_core::Ptr::from_raw(ffi_result)
120823    }
120824}
120825
120826impl ::cpp_core::StaticDowncast<crate::SlotOfOpenglProfile> for ::qt_core::QObject {
120827    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile*>(QObject* ptr)```</span>.
120828    #[inline(always)]
120829    unsafe fn static_downcast(
120830        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120831    ) -> ::cpp_core::Ptr<crate::SlotOfOpenglProfile> {
120832        let ffi_result = {
120833            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120834        };
120835        ::cpp_core::Ptr::from_raw(ffi_result)
120836    }
120837}
120838
120839impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfOpenglProfile {
120840    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile* ptr)```</span>.
120841    #[inline(always)]
120842    unsafe fn static_upcast(
120843        ptr: ::cpp_core::Ptr<crate::SlotOfOpenglProfile>,
120844    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120845        let ffi_result = {
120846            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr421(
120847                ptr.as_raw_ptr() as *mut crate::SlotOfOpenglProfile
120848            )
120849        };
120850        ::cpp_core::Ptr::from_raw(ffi_result)
120851    }
120852}
120853
120854impl ::std::ops::Deref for crate::SlotOfOpenglProfile {
120855    type Target = ::qt_core::QObject;
120856    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile* ptr)```</span>.
120857    #[inline(always)]
120858    fn deref(&self) -> &::qt_core::QObject {
120859        let ffi_result = {
120860            unsafe {
120861                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr421(
120862                    self as *const crate::SlotOfOpenglProfile as *mut crate::SlotOfOpenglProfile,
120863                )
120864            }
120865        };
120866        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120867    }
120868}
120869
120870impl ::cpp_core::DynamicCast<crate::SlotOfOpenglProfile> for ::qt_core::QObject {
120871    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile*>(QObject* ptr)```</span>.
120872    #[inline(always)]
120873    unsafe fn dynamic_cast(
120874        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120875    ) -> ::cpp_core::Ptr<crate::SlotOfOpenglProfile> {
120876        let ffi_result = {
120877            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGraphicsApiFilter_OpenGLProfile_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120878        };
120879        ::cpp_core::Ptr::from_raw(ffi_result)
120880    }
120881}
120882
120883impl ::cpp_core::StaticDowncast<crate::SlotOfQStringList> for ::qt_core::QObject {
120884    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref*>(QObject* ptr)```</span>.
120885    #[inline(always)]
120886    unsafe fn static_downcast(
120887        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120888    ) -> ::cpp_core::Ptr<crate::SlotOfQStringList> {
120889        let ffi_result = {
120890            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120891        };
120892        ::cpp_core::Ptr::from_raw(ffi_result)
120893    }
120894}
120895
120896impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQStringList {
120897    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref* ptr)```</span>.
120898    #[inline(always)]
120899    unsafe fn static_upcast(
120900        ptr: ::cpp_core::Ptr<crate::SlotOfQStringList>,
120901    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120902        let ffi_result = {
120903            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr422(
120904                ptr.as_raw_ptr() as *mut crate::SlotOfQStringList
120905            )
120906        };
120907        ::cpp_core::Ptr::from_raw(ffi_result)
120908    }
120909}
120910
120911impl ::std::ops::Deref for crate::SlotOfQStringList {
120912    type Target = ::qt_core::QObject;
120913    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref* ptr)```</span>.
120914    #[inline(always)]
120915    fn deref(&self) -> &::qt_core::QObject {
120916        let ffi_result = {
120917            unsafe {
120918                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr422(
120919                    self as *const crate::SlotOfQStringList as *mut crate::SlotOfQStringList,
120920                )
120921            }
120922        };
120923        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120924    }
120925}
120926
120927impl ::cpp_core::DynamicCast<crate::SlotOfQStringList> for ::qt_core::QObject {
120928    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref*>(QObject* ptr)```</span>.
120929    #[inline(always)]
120930    unsafe fn dynamic_cast(
120931        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120932    ) -> ::cpp_core::Ptr<crate::SlotOfQStringList> {
120933        let ffi_result = {
120934            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_QStringList_const_ref_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120935        };
120936        ::cpp_core::Ptr::from_raw(ffi_result)
120937    }
120938}
120939
120940impl ::cpp_core::StaticDowncast<crate::SlotOfPrimitiveType> for ::qt_core::QObject {
120941    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType*>(QObject* ptr)```</span>.
120942    #[inline(always)]
120943    unsafe fn static_downcast(
120944        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120945    ) -> ::cpp_core::Ptr<crate::SlotOfPrimitiveType> {
120946        let ffi_result = {
120947            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120948        };
120949        ::cpp_core::Ptr::from_raw(ffi_result)
120950    }
120951}
120952
120953impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfPrimitiveType {
120954    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType* ptr)```</span>.
120955    #[inline(always)]
120956    unsafe fn static_upcast(
120957        ptr: ::cpp_core::Ptr<crate::SlotOfPrimitiveType>,
120958    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
120959        let ffi_result = {
120960            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr423(
120961                ptr.as_raw_ptr() as *mut crate::SlotOfPrimitiveType
120962            )
120963        };
120964        ::cpp_core::Ptr::from_raw(ffi_result)
120965    }
120966}
120967
120968impl ::std::ops::Deref for crate::SlotOfPrimitiveType {
120969    type Target = ::qt_core::QObject;
120970    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType* ptr)```</span>.
120971    #[inline(always)]
120972    fn deref(&self) -> &::qt_core::QObject {
120973        let ffi_result = {
120974            unsafe {
120975                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr423(
120976                    self as *const crate::SlotOfPrimitiveType as *mut crate::SlotOfPrimitiveType,
120977                )
120978            }
120979        };
120980        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
120981    }
120982}
120983
120984impl ::cpp_core::DynamicCast<crate::SlotOfPrimitiveType> for ::qt_core::QObject {
120985    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType*>(QObject* ptr)```</span>.
120986    #[inline(always)]
120987    unsafe fn dynamic_cast(
120988        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
120989    ) -> ::cpp_core::Ptr<crate::SlotOfPrimitiveType> {
120990        let ffi_result = {
120991            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QGeometryRenderer_PrimitiveType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
120992        };
120993        ::cpp_core::Ptr::from_raw(ffi_result)
120994    }
120995}
120996
120997impl ::cpp_core::StaticDowncast<crate::SlotOfAttachmentPoint> for ::qt_core::QObject {
120998    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint*>(QObject* ptr)```</span>.
120999    #[inline(always)]
121000    unsafe fn static_downcast(
121001        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121002    ) -> ::cpp_core::Ptr<crate::SlotOfAttachmentPoint> {
121003        let ffi_result = {
121004            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121005        };
121006        ::cpp_core::Ptr::from_raw(ffi_result)
121007    }
121008}
121009
121010impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfAttachmentPoint {
121011    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint* ptr)```</span>.
121012    #[inline(always)]
121013    unsafe fn static_upcast(
121014        ptr: ::cpp_core::Ptr<crate::SlotOfAttachmentPoint>,
121015    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
121016        let ffi_result = {
121017            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr424(
121018                ptr.as_raw_ptr() as *mut crate::SlotOfAttachmentPoint
121019            )
121020        };
121021        ::cpp_core::Ptr::from_raw(ffi_result)
121022    }
121023}
121024
121025impl ::std::ops::Deref for crate::SlotOfAttachmentPoint {
121026    type Target = ::qt_core::QObject;
121027    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint* ptr)```</span>.
121028    #[inline(always)]
121029    fn deref(&self) -> &::qt_core::QObject {
121030        let ffi_result = {
121031            unsafe {
121032                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr424(
121033                    self as *const crate::SlotOfAttachmentPoint
121034                        as *mut crate::SlotOfAttachmentPoint,
121035                )
121036            }
121037        };
121038        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
121039    }
121040}
121041
121042impl ::cpp_core::DynamicCast<crate::SlotOfAttachmentPoint> for ::qt_core::QObject {
121043    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint*>(QObject* ptr)```</span>.
121044    #[inline(always)]
121045    unsafe fn dynamic_cast(
121046        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121047    ) -> ::cpp_core::Ptr<crate::SlotOfAttachmentPoint> {
121048        let ffi_result = {
121049            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRenderTargetOutput_AttachmentPoint_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121050        };
121051        ::cpp_core::Ptr::from_raw(ffi_result)
121052    }
121053}
121054
121055impl ::cpp_core::StaticDowncast<crate::SlotOfQCamera> for ::qt_core::QObject {
121056    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr*>(QObject* ptr)```</span>.
121057    #[inline(always)]
121058    unsafe fn static_downcast(
121059        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121060    ) -> ::cpp_core::Ptr<crate::SlotOfQCamera> {
121061        let ffi_result = {
121062            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121063        };
121064        ::cpp_core::Ptr::from_raw(ffi_result)
121065    }
121066}
121067
121068impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQCamera {
121069    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr* ptr)```</span>.
121070    #[inline(always)]
121071    unsafe fn static_upcast(
121072        ptr: ::cpp_core::Ptr<crate::SlotOfQCamera>,
121073    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
121074        let ffi_result = {
121075            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr425(
121076                ptr.as_raw_ptr() as *mut crate::SlotOfQCamera
121077            )
121078        };
121079        ::cpp_core::Ptr::from_raw(ffi_result)
121080    }
121081}
121082
121083impl ::std::ops::Deref for crate::SlotOfQCamera {
121084    type Target = ::qt_core::QObject;
121085    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr* ptr)```</span>.
121086    #[inline(always)]
121087    fn deref(&self) -> &::qt_core::QObject {
121088        let ffi_result = {
121089            unsafe {
121090                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr425(
121091                    self as *const crate::SlotOfQCamera as *mut crate::SlotOfQCamera,
121092                )
121093            }
121094        };
121095        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
121096    }
121097}
121098
121099impl ::cpp_core::DynamicCast<crate::SlotOfQCamera> for ::qt_core::QObject {
121100    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr*>(QObject* ptr)```</span>.
121101    #[inline(always)]
121102    unsafe fn dynamic_cast(
121103        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121104    ) -> ::cpp_core::Ptr<crate::SlotOfQCamera> {
121105        let ffi_result = {
121106            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QCamera_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121107        };
121108        ::cpp_core::Ptr::from_raw(ffi_result)
121109    }
121110}
121111
121112impl ::cpp_core::StaticDowncast<crate::SlotOfWindingDirection> for ::qt_core::QObject {
121113    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection*>(QObject* ptr)```</span>.
121114    #[inline(always)]
121115    unsafe fn static_downcast(
121116        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121117    ) -> ::cpp_core::Ptr<crate::SlotOfWindingDirection> {
121118        let ffi_result = {
121119            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121120        };
121121        ::cpp_core::Ptr::from_raw(ffi_result)
121122    }
121123}
121124
121125impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfWindingDirection {
121126    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection* ptr)```</span>.
121127    #[inline(always)]
121128    unsafe fn static_upcast(
121129        ptr: ::cpp_core::Ptr<crate::SlotOfWindingDirection>,
121130    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
121131        let ffi_result = {
121132            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr426(
121133                ptr.as_raw_ptr() as *mut crate::SlotOfWindingDirection
121134            )
121135        };
121136        ::cpp_core::Ptr::from_raw(ffi_result)
121137    }
121138}
121139
121140impl ::std::ops::Deref for crate::SlotOfWindingDirection {
121141    type Target = ::qt_core::QObject;
121142    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection* ptr)```</span>.
121143    #[inline(always)]
121144    fn deref(&self) -> &::qt_core::QObject {
121145        let ffi_result = {
121146            unsafe {
121147                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr426(
121148                    self as *const crate::SlotOfWindingDirection
121149                        as *mut crate::SlotOfWindingDirection,
121150                )
121151            }
121152        };
121153        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
121154    }
121155}
121156
121157impl ::cpp_core::DynamicCast<crate::SlotOfWindingDirection> for ::qt_core::QObject {
121158    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection*>(QObject* ptr)```</span>.
121159    #[inline(always)]
121160    unsafe fn dynamic_cast(
121161        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121162    ) -> ::cpp_core::Ptr<crate::SlotOfWindingDirection> {
121163        let ffi_result = {
121164            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QFrontFace_WindingDirection_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121165        };
121166        ::cpp_core::Ptr::from_raw(ffi_result)
121167    }
121168}
121169
121170impl ::cpp_core::StaticDowncast<crate::SlotOfQEffect> for ::qt_core::QObject {
121171    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr*>(QObject* ptr)```</span>.
121172    #[inline(always)]
121173    unsafe fn static_downcast(
121174        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121175    ) -> ::cpp_core::Ptr<crate::SlotOfQEffect> {
121176        let ffi_result = {
121177            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121178        };
121179        ::cpp_core::Ptr::from_raw(ffi_result)
121180    }
121181}
121182
121183impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfQEffect {
121184    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr* ptr)```</span>.
121185    #[inline(always)]
121186    unsafe fn static_upcast(
121187        ptr: ::cpp_core::Ptr<crate::SlotOfQEffect>,
121188    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
121189        let ffi_result = {
121190            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr427(
121191                ptr.as_raw_ptr() as *mut crate::SlotOfQEffect
121192            )
121193        };
121194        ::cpp_core::Ptr::from_raw(ffi_result)
121195    }
121196}
121197
121198impl ::std::ops::Deref for crate::SlotOfQEffect {
121199    type Target = ::qt_core::QObject;
121200    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr* ptr)```</span>.
121201    #[inline(always)]
121202    fn deref(&self) -> &::qt_core::QObject {
121203        let ffi_result = {
121204            unsafe {
121205                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr427(
121206                    self as *const crate::SlotOfQEffect as *mut crate::SlotOfQEffect,
121207                )
121208            }
121209        };
121210        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
121211    }
121212}
121213
121214impl ::cpp_core::DynamicCast<crate::SlotOfQEffect> for ::qt_core::QObject {
121215    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr*>(QObject* ptr)```</span>.
121216    #[inline(always)]
121217    unsafe fn dynamic_cast(
121218        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121219    ) -> ::cpp_core::Ptr<crate::SlotOfQEffect> {
121220        let ffi_result = {
121221            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QEffect_ptr_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121222        };
121223        ::cpp_core::Ptr::from_raw(ffi_result)
121224    }
121225}
121226
121227impl ::cpp_core::StaticDowncast<crate::SlotOfStencilFaceMode> for ::qt_core::QObject {
121228    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode*>(QObject* ptr)```</span>.
121229    #[inline(always)]
121230    unsafe fn static_downcast(
121231        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121232    ) -> ::cpp_core::Ptr<crate::SlotOfStencilFaceMode> {
121233        let ffi_result = {
121234            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121235        };
121236        ::cpp_core::Ptr::from_raw(ffi_result)
121237    }
121238}
121239
121240impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfStencilFaceMode {
121241    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode* ptr)```</span>.
121242    #[inline(always)]
121243    unsafe fn static_upcast(
121244        ptr: ::cpp_core::Ptr<crate::SlotOfStencilFaceMode>,
121245    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
121246        let ffi_result = {
121247            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr428(
121248                ptr.as_raw_ptr() as *mut crate::SlotOfStencilFaceMode
121249            )
121250        };
121251        ::cpp_core::Ptr::from_raw(ffi_result)
121252    }
121253}
121254
121255impl ::std::ops::Deref for crate::SlotOfStencilFaceMode {
121256    type Target = ::qt_core::QObject;
121257    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode* ptr)```</span>.
121258    #[inline(always)]
121259    fn deref(&self) -> &::qt_core::QObject {
121260        let ffi_result = {
121261            unsafe {
121262                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr428(
121263                    self as *const crate::SlotOfStencilFaceMode
121264                        as *mut crate::SlotOfStencilFaceMode,
121265                )
121266            }
121267        };
121268        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
121269    }
121270}
121271
121272impl ::cpp_core::DynamicCast<crate::SlotOfStencilFaceMode> for ::qt_core::QObject {
121273    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode*>(QObject* ptr)```</span>.
121274    #[inline(always)]
121275    unsafe fn dynamic_cast(
121276        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121277    ) -> ::cpp_core::Ptr<crate::SlotOfStencilFaceMode> {
121278        let ffi_result = {
121279            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QStencilTestArguments_StencilFaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121280        };
121281        ::cpp_core::Ptr::from_raw(ffi_result)
121282    }
121283}
121284
121285#[cfg_attr(
121286    feature = "ritual_rustdoc_nightly",
121287    doc(cfg(cpp_lib_version = "5.14.0"))
121288)]
121289#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
121290impl ::cpp_core::StaticDowncast<crate::SlotOfFaceMode2> for ::qt_core::QObject {
121291    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode*>(QObject* ptr)```</span>.
121292    #[inline(always)]
121293    unsafe fn static_downcast(
121294        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121295    ) -> ::cpp_core::Ptr<crate::SlotOfFaceMode2> {
121296        let ffi_result = {
121297            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121298        };
121299        ::cpp_core::Ptr::from_raw(ffi_result)
121300    }
121301}
121302
121303#[cfg_attr(
121304    feature = "ritual_rustdoc_nightly",
121305    doc(cfg(cpp_lib_version = "5.14.0"))
121306)]
121307#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
121308impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfFaceMode2 {
121309    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode* ptr)```</span>.
121310    #[inline(always)]
121311    unsafe fn static_upcast(
121312        ptr: ::cpp_core::Ptr<crate::SlotOfFaceMode2>,
121313    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
121314        let ffi_result = {
121315            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr429(
121316                ptr.as_raw_ptr() as *mut crate::SlotOfFaceMode2
121317            )
121318        };
121319        ::cpp_core::Ptr::from_raw(ffi_result)
121320    }
121321}
121322
121323#[cfg_attr(
121324    feature = "ritual_rustdoc_nightly",
121325    doc(cfg(cpp_lib_version = "5.14.0"))
121326)]
121327#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
121328impl ::std::ops::Deref for crate::SlotOfFaceMode2 {
121329    type Target = ::qt_core::QObject;
121330    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode* ptr)```</span>.
121331    #[inline(always)]
121332    fn deref(&self) -> &::qt_core::QObject {
121333        let ffi_result = {
121334            unsafe {
121335                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr429(
121336                    self as *const crate::SlotOfFaceMode2 as *mut crate::SlotOfFaceMode2,
121337                )
121338            }
121339        };
121340        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
121341    }
121342}
121343
121344#[cfg_attr(
121345    feature = "ritual_rustdoc_nightly",
121346    doc(cfg(cpp_lib_version = "5.14.0"))
121347)]
121348#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
121349impl ::cpp_core::DynamicCast<crate::SlotOfFaceMode2> for ::qt_core::QObject {
121350    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode*>(QObject* ptr)```</span>.
121351    #[inline(always)]
121352    unsafe fn dynamic_cast(
121353        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121354    ) -> ::cpp_core::Ptr<crate::SlotOfFaceMode2> {
121355        let ffi_result = {
121356            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QRasterMode_FaceMode_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121357        };
121358        ::cpp_core::Ptr::from_raw(ffi_result)
121359    }
121360}
121361
121362impl ::cpp_core::StaticDowncast<crate::SlotOfAttributeType> for ::qt_core::QObject {
121363    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType*>(QObject* ptr)```</span>.
121364    #[inline(always)]
121365    unsafe fn static_downcast(
121366        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121367    ) -> ::cpp_core::Ptr<crate::SlotOfAttributeType> {
121368        let ffi_result = {
121369            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121370        };
121371        ::cpp_core::Ptr::from_raw(ffi_result)
121372    }
121373}
121374
121375impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfAttributeType {
121376    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType* ptr)```</span>.
121377    #[inline(always)]
121378    unsafe fn static_upcast(
121379        ptr: ::cpp_core::Ptr<crate::SlotOfAttributeType>,
121380    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
121381        let ffi_result = {
121382            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr430(
121383                ptr.as_raw_ptr() as *mut crate::SlotOfAttributeType
121384            )
121385        };
121386        ::cpp_core::Ptr::from_raw(ffi_result)
121387    }
121388}
121389
121390impl ::std::ops::Deref for crate::SlotOfAttributeType {
121391    type Target = ::qt_core::QObject;
121392    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType* ptr)```</span>.
121393    #[inline(always)]
121394    fn deref(&self) -> &::qt_core::QObject {
121395        let ffi_result = {
121396            unsafe {
121397                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr430(
121398                    self as *const crate::SlotOfAttributeType as *mut crate::SlotOfAttributeType,
121399                )
121400            }
121401        };
121402        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
121403    }
121404}
121405
121406impl ::cpp_core::DynamicCast<crate::SlotOfAttributeType> for ::qt_core::QObject {
121407    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType*>(QObject* ptr)```</span>.
121408    #[inline(always)]
121409    unsafe fn dynamic_cast(
121410        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121411    ) -> ::cpp_core::Ptr<crate::SlotOfAttributeType> {
121412        let ffi_result = {
121413            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_Qt3DRender_QAttribute_AttributeType_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121414        };
121415        ::cpp_core::Ptr::from_raw(ffi_result)
121416    }
121417}
121418
121419impl ::cpp_core::StaticDowncast<crate::SlotOfUint> for ::qt_core::QObject {
121420    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int* static_cast<ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int*>(QObject* ptr)```</span>.
121421    #[inline(always)]
121422    unsafe fn static_downcast(
121423        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121424    ) -> ::cpp_core::Ptr<crate::SlotOfUint> {
121425        let ffi_result = {
121426            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121427        };
121428        ::cpp_core::Ptr::from_raw(ffi_result)
121429    }
121430}
121431
121432impl ::cpp_core::StaticUpcast<::qt_core::QObject> for crate::SlotOfUint {
121433    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int* ptr)```</span>.
121434    #[inline(always)]
121435    unsafe fn static_upcast(
121436        ptr: ::cpp_core::Ptr<crate::SlotOfUint>,
121437    ) -> ::cpp_core::Ptr<::qt_core::QObject> {
121438        let ffi_result = {
121439            crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr431(
121440                ptr.as_raw_ptr() as *mut crate::SlotOfUint
121441            )
121442        };
121443        ::cpp_core::Ptr::from_raw(ffi_result)
121444    }
121445}
121446
121447impl ::std::ops::Deref for crate::SlotOfUint {
121448    type Target = ::qt_core::QObject;
121449    /// Calls C++ function: <span style='color: green;'>```QObject* static_cast<QObject*>(ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int* ptr)```</span>.
121450    #[inline(always)]
121451    fn deref(&self) -> &::qt_core::QObject {
121452        let ffi_result = {
121453            unsafe {
121454                crate::__ffi::ctr_qt_3d_render_ffi_static_cast_QObject_ptr431(
121455                    self as *const crate::SlotOfUint as *mut crate::SlotOfUint,
121456                )
121457            }
121458        };
121459        unsafe { ffi_result.as_ref() }.expect("Attempted to convert null pointer to reference")
121460    }
121461}
121462
121463impl ::cpp_core::DynamicCast<crate::SlotOfUint> for ::qt_core::QObject {
121464    /// Calls C++ function: <span style='color: green;'>```ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int* dynamic_cast<ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int*>(QObject* ptr)```</span>.
121465    #[inline(always)]
121466    unsafe fn dynamic_cast(
121467        ptr: ::cpp_core::Ptr<::qt_core::QObject>,
121468    ) -> ::cpp_core::Ptr<crate::SlotOfUint> {
121469        let ffi_result = {
121470            crate::__ffi::ctr_qt_3d_render_ffi_dynamic_cast_ctr_qt_3d_render_ffi_slot_wrapper_unsigned_int_ptr(ptr.as_raw_ptr() as *mut ::qt_core::QObject)
121471        };
121472        ::cpp_core::Ptr::from_raw(ffi_result)
121473    }
121474}
121475
121476/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QAbstractTextureImage*>& key, unsigned int seed = …)```</span>.
121477#[inline(always)]
121478pub unsafe fn q_hash_q_vector_of_q_abstract_texture_image_uint(
121479    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
121480    seed: ::std::os::raw::c_uint,
121481) -> ::std::os::raw::c_uint {
121482    crate::__ffi::ctr_qt_3d_render_ffi_qHash(
121483        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(
121484            key,
121485        )
121486        .as_raw_ptr(),
121487        seed,
121488    )
121489}
121490
121491/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QParameter*>& key, unsigned int seed = …)```</span>.
121492#[inline(always)]
121493pub unsafe fn q_hash_q_vector_of_q_parameter_uint(
121494    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
121495    seed: ::std::os::raw::c_uint,
121496) -> ::std::os::raw::c_uint {
121497    crate::__ffi::ctr_qt_3d_render_ffi_qHash1(
121498        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(key)
121499            .as_raw_ptr(),
121500        seed,
121501    )
121502}
121503
121504/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QTechnique*>& key, unsigned int seed = …)```</span>.
121505#[inline(always)]
121506pub unsafe fn q_hash_q_vector_of_q_technique_uint(
121507    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
121508    seed: ::std::os::raw::c_uint,
121509) -> ::std::os::raw::c_uint {
121510    crate::__ffi::ctr_qt_3d_render_ffi_qHash2(
121511        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(key)
121512            .as_raw_ptr(),
121513        seed,
121514    )
121515}
121516
121517/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QAttribute*>& key, unsigned int seed = …)```</span>.
121518#[inline(always)]
121519pub unsafe fn q_hash_q_vector_of_q_attribute_uint(
121520    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
121521    seed: ::std::os::raw::c_uint,
121522) -> ::std::os::raw::c_uint {
121523    crate::__ffi::ctr_qt_3d_render_ffi_qHash3(
121524        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(key)
121525            .as_raw_ptr(),
121526        seed,
121527    )
121528}
121529
121530/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QLayer*>& key, unsigned int seed = …)```</span>.
121531#[inline(always)]
121532pub unsafe fn q_hash_q_vector_of_q_layer_uint(
121533    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
121534    seed: ::std::os::raw::c_uint,
121535) -> ::std::os::raw::c_uint {
121536    crate::__ffi::ctr_qt_3d_render_ffi_qHash4(
121537        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(key)
121538            .as_raw_ptr(),
121539        seed,
121540    )
121541}
121542
121543/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QFilterKey*>& key, unsigned int seed = …)```</span>.
121544#[inline(always)]
121545pub unsafe fn q_hash_q_vector_of_q_filter_key_uint(
121546    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
121547    seed: ::std::os::raw::c_uint,
121548) -> ::std::os::raw::c_uint {
121549    crate::__ffi::ctr_qt_3d_render_ffi_qHash5(
121550        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(key)
121551            .as_raw_ptr(),
121552        seed,
121553    )
121554}
121555
121556/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QRenderState*>& key, unsigned int seed = …)```</span>.
121557#[inline(always)]
121558pub unsafe fn q_hash_q_vector_of_q_render_state_uint(
121559    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
121560    seed: ::std::os::raw::c_uint,
121561) -> ::std::os::raw::c_uint {
121562    crate::__ffi::ctr_qt_3d_render_ffi_qHash6(
121563        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(key)
121564            .as_raw_ptr(),
121565        seed,
121566    )
121567}
121568
121569/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QRenderTargetOutput*>& key, unsigned int seed = …)```</span>.
121570#[inline(always)]
121571pub unsafe fn q_hash_q_vector_of_q_render_target_output_uint(
121572    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
121573    seed: ::std::os::raw::c_uint,
121574) -> ::std::os::raw::c_uint {
121575    crate::__ffi::ctr_qt_3d_render_ffi_qHash7(
121576        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(
121577            key,
121578        )
121579        .as_raw_ptr(),
121580        seed,
121581    )
121582}
121583
121584/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& key, unsigned int seed = …)```</span>.
121585#[inline(always)]
121586pub unsafe fn q_hash_q_vector_of_attachment_point_uint(
121587    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
121588    seed: ::std::os::raw::c_uint,
121589) -> ::std::os::raw::c_uint {
121590    crate::__ffi::ctr_qt_3d_render_ffi_qHash8(
121591        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(key)
121592            .as_raw_ptr(),
121593        seed,
121594    )
121595}
121596
121597/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QSortPolicy::SortType>& key, unsigned int seed = …)```</span>.
121598#[inline(always)]
121599pub unsafe fn q_hash_q_vector_of_sort_type_uint(
121600    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
121601    seed: ::std::os::raw::c_uint,
121602) -> ::std::os::raw::c_uint {
121603    crate::__ffi::ctr_qt_3d_render_ffi_qHash9(
121604        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(key)
121605            .as_raw_ptr(),
121606        seed,
121607    )
121608}
121609
121610/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QRenderPass*>& key, unsigned int seed = …)```</span>.
121611#[inline(always)]
121612pub unsafe fn q_hash_q_vector_of_q_render_pass_uint(
121613    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
121614    seed: ::std::os::raw::c_uint,
121615) -> ::std::os::raw::c_uint {
121616    crate::__ffi::ctr_qt_3d_render_ffi_qHash10(
121617        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(key)
121618            .as_raw_ptr(),
121619        seed,
121620    )
121621}
121622
121623/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QAbstractTextureImage*>& key)```</span>.
121624#[inline(always)]
121625pub unsafe fn q_hash_q_vector_of_q_abstract_texture_image(
121626    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
121627) -> ::std::os::raw::c_uint {
121628    crate::__ffi::ctr_qt_3d_render_ffi_qHash11(
121629        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(
121630            key,
121631        )
121632        .as_raw_ptr(),
121633    )
121634}
121635
121636/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QParameter*>& key)```</span>.
121637#[inline(always)]
121638pub unsafe fn q_hash_q_vector_of_q_parameter(
121639    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
121640) -> ::std::os::raw::c_uint {
121641    crate::__ffi::ctr_qt_3d_render_ffi_qHash12(
121642        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(key)
121643            .as_raw_ptr(),
121644    )
121645}
121646
121647/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QTechnique*>& key)```</span>.
121648#[inline(always)]
121649pub unsafe fn q_hash_q_vector_of_q_technique(
121650    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
121651) -> ::std::os::raw::c_uint {
121652    crate::__ffi::ctr_qt_3d_render_ffi_qHash13(
121653        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(key)
121654            .as_raw_ptr(),
121655    )
121656}
121657
121658/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QAttribute*>& key)```</span>.
121659#[inline(always)]
121660pub unsafe fn q_hash_q_vector_of_q_attribute(
121661    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
121662) -> ::std::os::raw::c_uint {
121663    crate::__ffi::ctr_qt_3d_render_ffi_qHash14(
121664        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(key)
121665            .as_raw_ptr(),
121666    )
121667}
121668
121669/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QLayer*>& key)```</span>.
121670#[inline(always)]
121671pub unsafe fn q_hash_q_vector_of_q_layer(
121672    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
121673) -> ::std::os::raw::c_uint {
121674    crate::__ffi::ctr_qt_3d_render_ffi_qHash15(
121675        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(key)
121676            .as_raw_ptr(),
121677    )
121678}
121679
121680/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QFilterKey*>& key)```</span>.
121681#[inline(always)]
121682pub unsafe fn q_hash_q_vector_of_q_filter_key(
121683    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
121684) -> ::std::os::raw::c_uint {
121685    crate::__ffi::ctr_qt_3d_render_ffi_qHash16(
121686        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(key)
121687            .as_raw_ptr(),
121688    )
121689}
121690
121691/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QRenderState*>& key)```</span>.
121692#[inline(always)]
121693pub unsafe fn q_hash_q_vector_of_q_render_state(
121694    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
121695) -> ::std::os::raw::c_uint {
121696    crate::__ffi::ctr_qt_3d_render_ffi_qHash17(
121697        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(key)
121698            .as_raw_ptr(),
121699    )
121700}
121701
121702/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QRenderTargetOutput*>& key)```</span>.
121703#[inline(always)]
121704pub unsafe fn q_hash_q_vector_of_q_render_target_output(
121705    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
121706) -> ::std::os::raw::c_uint {
121707    crate::__ffi::ctr_qt_3d_render_ffi_qHash18(
121708        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(
121709            key,
121710        )
121711        .as_raw_ptr(),
121712    )
121713}
121714
121715/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& key)```</span>.
121716#[inline(always)]
121717pub unsafe fn q_hash_q_vector_of_attachment_point(
121718    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
121719) -> ::std::os::raw::c_uint {
121720    crate::__ffi::ctr_qt_3d_render_ffi_qHash19(
121721        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(key)
121722            .as_raw_ptr(),
121723    )
121724}
121725
121726/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QSortPolicy::SortType>& key)```</span>.
121727#[inline(always)]
121728pub unsafe fn q_hash_q_vector_of_sort_type(
121729    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
121730) -> ::std::os::raw::c_uint {
121731    crate::__ffi::ctr_qt_3d_render_ffi_qHash20(
121732        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(key)
121733            .as_raw_ptr(),
121734    )
121735}
121736
121737/// Calls C++ function: <span style='color: green;'>```unsigned int qHash(const QVector<Qt3DRender::QRenderPass*>& key)```</span>.
121738#[inline(always)]
121739pub unsafe fn q_hash_q_vector_of_q_render_pass(
121740    key: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
121741) -> ::std::os::raw::c_uint {
121742    crate::__ffi::ctr_qt_3d_render_ffi_qHash21(
121743        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(key)
121744            .as_raw_ptr(),
121745    )
121746}
121747
121748/// Calls C++ function: <span style='color: green;'>```void Qt3DRender::swap(Qt3DRender::QTextureDataUpdate& lhs, Qt3DRender::QTextureDataUpdate& rhs)```</span>.
121749#[inline(always)]
121750#[cfg_attr(
121751    feature = "ritual_rustdoc_nightly",
121752    doc(cfg(cpp_lib_version = "5.14.0"))
121753)]
121754#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
121755pub unsafe fn swap(
121756    lhs: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureDataUpdate>>,
121757    rhs: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QTextureDataUpdate>>,
121758) {
121759    crate::__ffi::ctr_qt_3d_render_ffi_Qt3DRender_swap(
121760        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureDataUpdate>>::cast_into(lhs)
121761            .as_raw_ptr() as *mut crate::QTextureDataUpdate,
121762        ::cpp_core::CastInto::<::cpp_core::Ref<crate::QTextureDataUpdate>>::cast_into(rhs)
121763            .as_raw_ptr() as *mut crate::QTextureDataUpdate,
121764    )
121765}