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

#include "../../../../../minuet-26.08.0/src/app/singingexercisecontroller.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 'singingexercisecontroller.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 69
#error "This file was generated using the moc from 6.11.2. 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_ZN6Minuet25SingingExerciseControllerE_t {};
} // unnamed namespace

template <> constexpr inline auto Minuet::SingingExerciseController::qt_create_metaobjectdata<qt_meta_tag_ZN6Minuet25SingingExerciseControllerE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "Minuet::SingingExerciseController",
        "QML.Element",
        "auto",
        "QML.Creatable",
        "false",
        "QML.UncreatableReason",
        "SingingExerciseController is provided by Core",
        "exerciseForVoiceClass",
        "QVariantMap",
        "",
        "exercise",
        "voiceClass",
        "createQuestion",
        "option",
        "scaleExercise",
        "displayedTargetStates",
        "QVariantList",
        "targetStates",
        "onboardingPreviewActive",
        "referenceCardExercise",
        "rootNote",
        "evaluatePitch",
        "targetNotes",
        "seconds",
        "midiNote",
        "cents",
        "listeningStartSeconds",
        "beatMs",
        "pitchToleranceCents",
        "pitchCorrectHoldSeconds",
        "disregardOctaveDifference",
        "timingToleranceMs",
        "refreshTargetStates",
        "elapsedMs",
        "targetIndexForElapsed",
        "targetCount",
        "finalElapsedMs",
        "score",
        "scoringMode",
        "noteName",
        "referenceNotes"
    };

    QtMocHelpers::UintData qt_methods {
        // Method 'exerciseForVoiceClass'
        QtMocHelpers::MethodData<QVariantMap(const QVariantMap &, int) const>(7, 9, QMC::AccessPublic, 0x80000000 | 8, {{
            { 0x80000000 | 8, 10 }, { QMetaType::Int, 11 },
        }}),
        // Method 'createQuestion'
        QtMocHelpers::MethodData<QVariantMap(const QVariantMap &, bool) const>(12, 9, QMC::AccessPublic, 0x80000000 | 8, {{
            { 0x80000000 | 8, 13 }, { QMetaType::Bool, 14 },
        }}),
        // Method 'displayedTargetStates'
        QtMocHelpers::MethodData<QVariantList(const QVariantList &, bool, bool, int, bool) const>(15, 9, QMC::AccessPublic, 0x80000000 | 16, {{
            { 0x80000000 | 16, 17 }, { QMetaType::Bool, 18 }, { QMetaType::Bool, 19 }, { QMetaType::Int, 20 },
            { QMetaType::Bool, 14 },
        }}),
        // Method 'evaluatePitch'
        QtMocHelpers::MethodData<QVariantMap(const QVariantList &, const QVariantList &, double, int, double, double, double, int, double, bool, bool, double) const>(21, 9, QMC::AccessPublic, 0x80000000 | 8, {{
            { 0x80000000 | 16, 17 }, { 0x80000000 | 16, 22 }, { QMetaType::Double, 23 }, { QMetaType::Int, 24 },
            { QMetaType::Double, 25 }, { QMetaType::Double, 26 }, { QMetaType::Double, 27 }, { QMetaType::Int, 28 },
            { QMetaType::Double, 29 }, { QMetaType::Bool, 30 }, { QMetaType::Bool, 14 }, { QMetaType::Double, 31 },
        }}),
        // Method 'refreshTargetStates'
        QtMocHelpers::MethodData<QVariantList(const QVariantList &, double, double, double, double, bool) const>(32, 9, QMC::AccessPublic, 0x80000000 | 16, {{
            { 0x80000000 | 16, 17 }, { QMetaType::Double, 33 }, { QMetaType::Double, 27 }, { QMetaType::Double, 31 },
            { QMetaType::Double, 29 }, { QMetaType::Bool, 14 },
        }}),
        // Method 'targetIndexForElapsed'
        QtMocHelpers::MethodData<int(int, double, double) const>(34, 9, QMC::AccessPublic, QMetaType::Int, {{
            { QMetaType::Int, 35 }, { QMetaType::Double, 33 }, { QMetaType::Double, 27 },
        }}),
        // Method 'finalElapsedMs'
        QtMocHelpers::MethodData<double(int, double, double, double, bool) const>(36, 9, QMC::AccessPublic, QMetaType::Double, {{
            { QMetaType::Int, 35 }, { QMetaType::Double, 27 }, { QMetaType::Double, 31 }, { QMetaType::Double, 29 },
            { QMetaType::Bool, 14 },
        }}),
        // Method 'score'
        QtMocHelpers::MethodData<int(const QVariantList &, int) const>(37, 9, QMC::AccessPublic, QMetaType::Int, {{
            { 0x80000000 | 16, 17 }, { QMetaType::Int, 38 },
        }}),
        // Method 'noteName'
        QtMocHelpers::MethodData<QString(int) const>(39, 9, QMC::AccessPublic, QMetaType::QString, {{
            { QMetaType::Int, 24 },
        }}),
        // Method 'referenceNotes'
        QtMocHelpers::MethodData<QVariantList(int, const QVariantList &) const>(40, 9, QMC::AccessPublic, 0x80000000 | 16, {{
            { QMetaType::Int, 20 }, { 0x80000000 | 16, 22 },
        }}),
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
    };
    QtMocHelpers::UintData qt_constructors {};
    QtMocHelpers::ClassInfos qt_classinfo({
            {    1,    2 },
            {    3,    4 },
            {    5,    6 },
    });
    return QtMocHelpers::metaObjectData<SingingExerciseController, void>(QMC::MetaObjectFlag{}, qt_stringData,
            qt_methods, qt_properties, qt_enums, qt_constructors, qt_classinfo);
}
Q_CONSTINIT const QMetaObject Minuet::SingingExerciseController::staticMetaObject = { {
    QMetaObject::SuperData::link<QObject::staticMetaObject>(),
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN6Minuet25SingingExerciseControllerE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN6Minuet25SingingExerciseControllerE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN6Minuet25SingingExerciseControllerE_t>.metaTypes,
    nullptr
} };

void Minuet::SingingExerciseController::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<SingingExerciseController *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: { QVariantMap _r = _t->exerciseForVoiceClass((*reinterpret_cast<std::add_pointer_t<QVariantMap>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<int>>(_a[2])));
            if (_a[0]) *reinterpret_cast<QVariantMap*>(_a[0]) = std::move(_r); }  break;
        case 1: { QVariantMap _r = _t->createQuestion((*reinterpret_cast<std::add_pointer_t<QVariantMap>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[2])));
            if (_a[0]) *reinterpret_cast<QVariantMap*>(_a[0]) = std::move(_r); }  break;
        case 2: { QVariantList _r = _t->displayedTargetStates((*reinterpret_cast<std::add_pointer_t<QVariantList>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<int>>(_a[4])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[5])));
            if (_a[0]) *reinterpret_cast<QVariantList*>(_a[0]) = std::move(_r); }  break;
        case 3: { QVariantMap _r = _t->evaluatePitch((*reinterpret_cast<std::add_pointer_t<QVariantList>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QVariantList>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<int>>(_a[4])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[5])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[6])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[7])),(*reinterpret_cast<std::add_pointer_t<int>>(_a[8])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[9])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[10])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[11])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[12])));
            if (_a[0]) *reinterpret_cast<QVariantMap*>(_a[0]) = std::move(_r); }  break;
        case 4: { QVariantList _r = _t->refreshTargetStates((*reinterpret_cast<std::add_pointer_t<QVariantList>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[4])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[5])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[6])));
            if (_a[0]) *reinterpret_cast<QVariantList*>(_a[0]) = std::move(_r); }  break;
        case 5: { int _r = _t->targetIndexForElapsed((*reinterpret_cast<std::add_pointer_t<int>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[3])));
            if (_a[0]) *reinterpret_cast<int*>(_a[0]) = std::move(_r); }  break;
        case 6: { double _r = _t->finalElapsedMs((*reinterpret_cast<std::add_pointer_t<int>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<double>>(_a[4])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[5])));
            if (_a[0]) *reinterpret_cast<double*>(_a[0]) = std::move(_r); }  break;
        case 7: { int _r = _t->score((*reinterpret_cast<std::add_pointer_t<QVariantList>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<int>>(_a[2])));
            if (_a[0]) *reinterpret_cast<int*>(_a[0]) = std::move(_r); }  break;
        case 8: { QString _r = _t->noteName((*reinterpret_cast<std::add_pointer_t<int>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QString*>(_a[0]) = std::move(_r); }  break;
        case 9: { QVariantList _r = _t->referenceNotes((*reinterpret_cast<std::add_pointer_t<int>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QVariantList>>(_a[2])));
            if (_a[0]) *reinterpret_cast<QVariantList*>(_a[0]) = std::move(_r); }  break;
        default: ;
        }
    }
}

const QMetaObject *Minuet::SingingExerciseController::metaObject() const
{
    return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}

void *Minuet::SingingExerciseController::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_staticMetaObjectStaticContent<qt_meta_tag_ZN6Minuet25SingingExerciseControllerE_t>.strings))
        return static_cast<void*>(this);
    return QObject::qt_metacast(_clname);
}

int Minuet::SingingExerciseController::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QObject::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 10)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 10;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 10)
            *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType();
        _id -= 10;
    }
    return _id;
}
QT_WARNING_POP
