#![cfg_attr(feature = "ritual_rustdoc_nightly", feature(doc_cfg))]
//! Functions that provide access to C++ operators

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, QFlags<Qt3DRender::QMemoryBarrier::Operation> e)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_flags_operation(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    e: ::qt_core::QFlags<crate::q_memory_barrier::Operation>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__22(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            e.to_int(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QAbstractTextureImage*>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_q_abstract_texture_image(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__35(::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s).as_raw_ptr() as *mut ::qt_core::QDataStream, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(v).as_raw_ptr())
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QParameter*>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_q_parameter(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__36(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(v)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QTechnique*>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_q_technique(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__37(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(v)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QAttribute*>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_q_attribute(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__38(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(v)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QLayer*>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_q_layer(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__39(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(v)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QFilterKey*>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_q_filter_key(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__40(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(v)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QRenderState*>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_q_render_state(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__41(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(v)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QRenderTargetOutput*>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_q_render_target_output(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__42(::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s).as_raw_ptr() as *mut ::qt_core::QDataStream, ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(v).as_raw_ptr())
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_attachment_point(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__43(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(v)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QSortPolicy::SortType>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_sort_type(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__44(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(v)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator<<(QDataStream& s, const QVector<Qt3DRender::QRenderPass*>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_data_stream_q_vector_of_q_render_pass(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__45(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(v)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QAbstractTextureImage*>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_q_abstract_texture_image(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__46(::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug).as_raw_ptr(), ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAbstractTextureImage>>::cast_into(vec).as_raw_ptr())
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QParameter*>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_q_parameter(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQParameter>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__47(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQParameter>>::cast_into(vec)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QTechnique*>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_q_technique(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQTechnique>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__48(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQTechnique>>::cast_into(vec)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QAttribute*>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_q_attribute(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQAttribute>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__49(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQAttribute>>::cast_into(vec)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QLayer*>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_q_layer(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQLayer>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__50(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQLayer>>::cast_into(vec)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QFilterKey*>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_q_filter_key(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQFilterKey>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__51(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQFilterKey>>::cast_into(vec)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QRenderState*>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_q_render_state(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderState>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__52(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderState>>::cast_into(vec)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QRenderTargetOutput*>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_q_render_target_output(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__53(::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug).as_raw_ptr(), ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderTargetOutput>>::cast_into(vec).as_raw_ptr())
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_attachment_point(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__54(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(
                vec,
            )
            .as_raw_ptr(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QSortPolicy::SortType>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_sort_type(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__55(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(vec)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QVector<Qt3DRender::QRenderPass*>& vec)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_vector_of_q_render_pass(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    vec: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfQRenderPass>>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__56(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfQRenderPass>>::cast_into(vec)
                .as_raw_ptr(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDebug operator<<(QDebug debug, const QFlags<Qt3DRender::QMemoryBarrier::Operation>& flags)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-lt-lt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator<<(QDataStream &out, const QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Writes bit array <i>ba</i> to stream <i>out</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
pub unsafe fn shl_q_debug_q_flags_operation(
    debug: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDebug>>,
    flags: ::qt_core::QFlags<crate::q_memory_barrier::Operation>,
) -> ::cpp_core::CppBox<::qt_core::QDebug> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__57(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDebug>>::cast_into(debug)
                .as_raw_ptr(),
            flags.to_int(),
        )
    };
    ::cpp_core::CppBox::from_raw(ffi_result).expect("attempted to construct a null CppBox")
}

/// <p>Reads a bit array into <i>ba</i> from stream <i>in</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator>>(QDataStream& s, QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-gt-gt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator>>(QDataStream &in, QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Reads a bit array into <i>ba</i> from stream <i>in</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
#[cfg_attr(
    feature = "ritual_rustdoc_nightly",
    doc(cfg(cpp_lib_version = "5.14.0"))
)]
#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
pub unsafe fn shr_q_data_stream_q_vector_of_attachment_point(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__32(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfAttachmentPoint>>::cast_into(v)
                .as_raw_ptr() as *mut crate::QVectorOfAttachmentPoint,
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}

/// <p>Reads a bit array into <i>ba</i> from stream <i>in</i>.</p>
///
/// Calls C++ function: <span style='color: green;'>```QDataStream& operator>>(QDataStream& s, QVector<Qt3DRender::QSortPolicy::SortType>& v)```</span>.
///
/// Warning: no exact match found in C++ documentation. Below is the <a href="http://doc.qt.io/qt-5/qbitarray.html#operator-gt-gt">C++ documentation</a> for <span style='color: green;'>```QDataStream &operator>>(QDataStream &in, QBitArray &ba)```</span>:<div style='border: 1px solid #5CFF95; background: #D6FFE4; padding: 16px;'><p>Reads a bit array into <i>ba</i> from stream <i>in</i>.</p>
/// <p><b>See also </b><a href="http://doc.qt.io/qt-5/datastreamformat.html">Format of the QDataStream operators</a>.</p></div>
#[inline(always)]
#[cfg_attr(
    feature = "ritual_rustdoc_nightly",
    doc(cfg(cpp_lib_version = "5.14.0"))
)]
#[cfg(any(cpp_lib_version = "5.14.0", feature = "ritual_rustdoc"))]
pub unsafe fn shr_q_data_stream_q_vector_of_sort_type(
    s: impl ::cpp_core::CastInto<::cpp_core::Ref<::qt_core::QDataStream>>,
    v: impl ::cpp_core::CastInto<::cpp_core::Ref<crate::QVectorOfSortType>>,
) -> ::cpp_core::Ref<::qt_core::QDataStream> {
    let ffi_result = {
        crate::__ffi::ctr_qt_3d_render_ffi_operator__33(
            ::cpp_core::CastInto::<::cpp_core::Ref<::qt_core::QDataStream>>::cast_into(s)
                .as_raw_ptr() as *mut ::qt_core::QDataStream,
            ::cpp_core::CastInto::<::cpp_core::Ref<crate::QVectorOfSortType>>::cast_into(v)
                .as_raw_ptr() as *mut crate::QVectorOfSortType,
        )
    };
    ::cpp_core::Ref::from_raw(ffi_result).expect("attempted to construct a null Ref")
}
