/****************************************************************************
** Meta object code from reading C++ file 'qcanvas2dtransformvaluetype_p.h'
**
** Created by: The Qt Meta Object Compiler version 69 (Qt 6.12.0)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/

#include "../../../../../qtcanvaspainter/src/canvas2d/qcanvas2dtransformvaluetype_p.h"
#include <QtCore/qmetatype.h>

#include <QtCore/qtmochelpers.h>

#include <memory>


#include <QtCore/qxptype_traits.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'qcanvas2dtransformvaluetype_p.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 69
#error "This file was generated using the moc from 6.12.0. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif

#ifndef Q_CONSTINIT
#define Q_CONSTINIT
#endif

QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
QT_WARNING_DISABLE_GCC("-Wuseless-cast")
namespace {
struct qt_meta_tag_ZN27QCanvas2DTransformValueTypeE_t {};
} // unnamed namespace

template <> constexpr inline auto QCanvas2DTransformValueType::qt_create_metaobjectdata<qt_meta_tag_ZN27QCanvas2DTransformValueTypeE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "QCanvas2DTransformValueType",
        "QML.AddedInVersion",
        "1548",
        "QML.Foreign",
        "QTransform",
        "QML.Element",
        "transform2d",
        "QML.Extended",
        "QML.Creatable",
        "true",
        "QML.CreationMethod",
        "structured",
        "m11",
        "",
        "m12",
        "m13",
        "m21",
        "m22",
        "m23",
        "m31",
        "m32",
        "m33",
        "setMatrix",
        "translate",
        "dx",
        "dy",
        "rotate",
        "angle",
        "rotateRadians",
        "scale",
        "s",
        "sx",
        "sy",
        "shear",
        "sh",
        "sv",
        "times",
        "m",
        "factor",
        "determinant",
        "inverted",
        "transposed",
        "reset"
    };

    QtMocHelpers::UintData qt_methods {
        // Method 'm11'
        QtMocHelpers::MethodData<qreal() const>(12, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'm12'
        QtMocHelpers::MethodData<qreal() const>(14, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'm13'
        QtMocHelpers::MethodData<qreal() const>(15, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'm21'
        QtMocHelpers::MethodData<qreal() const>(16, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'm22'
        QtMocHelpers::MethodData<qreal() const>(17, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'm23'
        QtMocHelpers::MethodData<qreal() const>(18, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'm31'
        QtMocHelpers::MethodData<qreal() const>(19, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'm32'
        QtMocHelpers::MethodData<qreal() const>(20, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'm33'
        QtMocHelpers::MethodData<qreal() const>(21, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'setMatrix'
        QtMocHelpers::MethodData<void(qreal, qreal, qreal, qreal, qreal, qreal, qreal, qreal, qreal)>(22, 13, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QReal, 12 }, { QMetaType::QReal, 14 }, { QMetaType::QReal, 15 }, { QMetaType::QReal, 16 },
            { QMetaType::QReal, 17 }, { QMetaType::QReal, 18 }, { QMetaType::QReal, 19 }, { QMetaType::QReal, 20 },
            { QMetaType::QReal, 21 },
        }}),
        // Method 'setMatrix'
        QtMocHelpers::MethodData<void(qreal, qreal, qreal, qreal, qreal, qreal)>(22, 13, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QReal, 12 }, { QMetaType::QReal, 14 }, { QMetaType::QReal, 16 }, { QMetaType::QReal, 17 },
            { QMetaType::QReal, 19 }, { QMetaType::QReal, 20 },
        }}),
        // Method 'translate'
        QtMocHelpers::MethodData<void(float, float)>(23, 13, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::Float, 24 }, { QMetaType::Float, 25 },
        }}),
        // Method 'rotate'
        QtMocHelpers::MethodData<void(float)>(26, 13, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::Float, 27 },
        }}),
        // Method 'rotateRadians'
        QtMocHelpers::MethodData<void(float)>(28, 13, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::Float, 27 },
        }}),
        // Method 'scale'
        QtMocHelpers::MethodData<void(float)>(29, 13, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::Float, 30 },
        }}),
        // Method 'scale'
        QtMocHelpers::MethodData<void(float, float)>(29, 13, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::Float, 31 }, { QMetaType::Float, 32 },
        }}),
        // Method 'shear'
        QtMocHelpers::MethodData<void(float, float)>(33, 13, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::Float, 34 }, { QMetaType::Float, 35 },
        }}),
        // Method 'times'
        QtMocHelpers::MethodData<QTransform(const QTransform &) const>(36, 13, QMC::AccessPublic, 0x80000000 | 4, {{
            { 0x80000000 | 4, 37 },
        }}),
        // Method 'times'
        QtMocHelpers::MethodData<QTransform(qreal) const>(36, 13, QMC::AccessPublic, 0x80000000 | 4, {{
            { QMetaType::QReal, 38 },
        }}),
        // Method 'determinant'
        QtMocHelpers::MethodData<qreal() const>(39, 13, QMC::AccessPublic, QMetaType::QReal),
        // Method 'inverted'
        QtMocHelpers::MethodData<QTransform() const>(40, 13, QMC::AccessPublic, 0x80000000 | 4),
        // Method 'transposed'
        QtMocHelpers::MethodData<QTransform() const>(41, 13, QMC::AccessPublic, 0x80000000 | 4),
        // Method 'reset'
        QtMocHelpers::MethodData<void()>(42, 13, QMC::AccessPublic, QMetaType::Void),
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
    };
    using Constructor = QtMocHelpers::NoType;
    QtMocHelpers::UintData qt_constructors {
        QtMocHelpers::ConstructorData<Constructor()>(13, QMC::AccessPublic),
    };
    QtMocHelpers::ClassInfos qt_classinfo({
            {    1,    2 },
            {    3,    4 },
            {    5,    6 },
            {    7,    0 },
            {    8,    9 },
            {   10,   11 },
    });
    return QtMocHelpers::metaObjectData<QCanvas2DTransformValueType, void>(QMC::PropertyAccessInStaticMetaCall, qt_stringData,
            qt_methods, qt_properties, qt_enums, qt_constructors, qt_classinfo);
}
Q_CONSTINIT const QMetaObject QCanvas2DTransformValueType::staticMetaObject = { {
    QtPrivate::MetaObjectForType<QTransform>::value,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN27QCanvas2DTransformValueTypeE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN27QCanvas2DTransformValueTypeE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN27QCanvas2DTransformValueTypeE_t>.metaTypes,
    nullptr
} };

void QCanvas2DTransformValueType::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = reinterpret_cast<QCanvas2DTransformValueType *>(_o);
    if (_c == QMetaObject::CreateInstance) {
        switch (_id) {
        case 0: { QCanvas2DTransformValueType *_r = new QCanvas2DTransformValueType();
            if (_a[0]) *reinterpret_cast<void**>(_a[0]) = _r; } break;
        default: break;
        }
    }
    if (_c == QMetaObject::ConstructInPlace) {
        switch (_id) {
        case 0: { new (_a[0]) QCanvas2DTransformValueType(); } break;
        default: break;
        }
    }
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: { qreal _r = _t->m11();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 1: { qreal _r = _t->m12();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 2: { qreal _r = _t->m13();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 3: { qreal _r = _t->m21();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 4: { qreal _r = _t->m22();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 5: { qreal _r = _t->m23();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 6: { qreal _r = _t->m31();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 7: { qreal _r = _t->m32();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 8: { qreal _r = _t->m33();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 9: _t->setMatrix((*reinterpret_cast<std::add_pointer_t<qreal>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[4])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[5])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[6])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[7])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[8])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[9]))); break;
        case 10: _t->setMatrix((*reinterpret_cast<std::add_pointer_t<qreal>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[4])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[5])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[6]))); break;
        case 11: _t->translate((*reinterpret_cast<std::add_pointer_t<float>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<float>>(_a[2]))); break;
        case 12: _t->rotate((*reinterpret_cast<std::add_pointer_t<float>>(_a[1]))); break;
        case 13: _t->rotateRadians((*reinterpret_cast<std::add_pointer_t<float>>(_a[1]))); break;
        case 14: _t->scale((*reinterpret_cast<std::add_pointer_t<float>>(_a[1]))); break;
        case 15: _t->scale((*reinterpret_cast<std::add_pointer_t<float>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<float>>(_a[2]))); break;
        case 16: _t->shear((*reinterpret_cast<std::add_pointer_t<float>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<float>>(_a[2]))); break;
        case 17: { QTransform _r = _t->times((*reinterpret_cast<std::add_pointer_t<QTransform>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QTransform*>(_a[0]) = std::move(_r); }  break;
        case 18: { QTransform _r = _t->times((*reinterpret_cast<std::add_pointer_t<qreal>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QTransform*>(_a[0]) = std::move(_r); }  break;
        case 19: { qreal _r = _t->determinant();
            if (_a[0]) *reinterpret_cast<qreal*>(_a[0]) = std::move(_r); }  break;
        case 20: { QTransform _r = _t->inverted();
            if (_a[0]) *reinterpret_cast<QTransform*>(_a[0]) = std::move(_r); }  break;
        case 21: { QTransform _r = _t->transposed();
            if (_a[0]) *reinterpret_cast<QTransform*>(_a[0]) = std::move(_r); }  break;
        case 22: _t->reset(); break;
        default: ;
        }
    }
}
QT_WARNING_POP
