/****************************************************************************
** Meta object code from reading C++ file 'distancefieldmodel.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 "../../../../../qttools/src/distancefieldgenerator/distancefieldmodel.h"
#include <QtGui/qtextcursor.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 'distancefieldmodel.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_ZN18DistanceFieldModelE_t {};
} // unnamed namespace

template <> constexpr inline auto DistanceFieldModel::qt_create_metaobjectdata<qt_meta_tag_ZN18DistanceFieldModelE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "DistanceFieldModel",
        "startGeneration",
        "",
        "glyphCount",
        "stopGeneration",
        "distanceFieldGenerated",
        "error",
        "errorString",
        "addDistanceField",
        "QImage",
        "distanceField",
        "QPainterPath",
        "path",
        "glyph_t",
        "glyphId",
        "ucs4",
        "reserveSpace",
        "doubleResolution",
        "pixelSize",
        "UnicodeRange",
        "Other",
        "BasicLatin",
        "Latin1Supplement",
        "LatinExtendedA",
        "LatinExtendedB",
        "IPAExtensions",
        "SpacingModifierLetters",
        "CombiningDiacriticalMarks",
        "GreekAndCoptic",
        "Cyrillic",
        "CyrillicSupplementary",
        "Armenian",
        "Hebrew",
        "Arabic",
        "Syriac",
        "Thaana",
        "Devanagari",
        "Bengali",
        "Gurmukhi",
        "Gujarati",
        "Oriya",
        "Tamil",
        "Telugu",
        "Kannada",
        "Malayalam",
        "Sinhala",
        "Thai",
        "Lao",
        "Tibetan",
        "Myanmar",
        "Georgian",
        "HangulJamo",
        "Ethiopic",
        "Cherokee",
        "UnifiedCanadianAboriginalSyllabics",
        "Ogham",
        "Runic",
        "Tagalog",
        "Hanunoo",
        "Buhid",
        "Tagbanwa",
        "Khmer",
        "Mongolian",
        "Limbu",
        "TaiLe",
        "KhmerSymbols",
        "PhoneticExtensions",
        "LatinExtendedAdditional",
        "GreekExtended",
        "GeneralPunctuation",
        "SuperscriptsAndSubscripts",
        "CurrencySymbols",
        "CombiningDiacriticalMarksForSymbols",
        "LetterlikeSymbols",
        "NumberForms",
        "Arrows",
        "MathematicalOperators",
        "MiscellaneousTechnical",
        "ControlPictures",
        "OpticalCharacterRecognition",
        "EnclosedAlphanumerics",
        "BoxDrawing",
        "BlockElements",
        "GeometricShapes",
        "MiscellaneousSymbols",
        "Dingbats",
        "MiscellaneousMathematicalSymbolsA",
        "SupplementalArrowsA",
        "BraillePatterns",
        "SupplementalArrowsB",
        "MiscellaneousMathematicalSymbolsB",
        "SupplementalMathematicalOperators",
        "MiscellaneousSymbolsAndArrows",
        "CJKRadicalsSupplement",
        "KangxiRadicals",
        "IdeographicDescriptionCharacters",
        "CJKSymbolsAndPunctuation",
        "Hiragana",
        "Katakana",
        "Bopomofo",
        "HangulCompatibilityJamo",
        "Kanbun",
        "BopomofoExtended",
        "KatakanaPhoneticExtensions",
        "EnclosedCJKLettersAndMonths",
        "CJKCompatibility",
        "CJKUnifiedIdeographsExtensionA",
        "YijingHexagramSymbols",
        "CJKUnifiedIdeographs",
        "YiSyllables",
        "YiRadicals",
        "HangulSyllables",
        "HighSurrogates",
        "HighPrivateUseSurrogates",
        "LowSurrogates",
        "PrivateUseArea",
        "CJKCompatibilityIdeographs",
        "AlphabeticPresentationForms",
        "ArabicPresentationFormsA",
        "VariationSelectors",
        "CombiningHalfMarks",
        "CJKCompatibilityForms",
        "SmallFormVariants",
        "ArabicPresentationFormsB",
        "HalfwidthAndFullwidthForms",
        "Specials",
        "LinearBSyllabary",
        "LinearBIdeograms",
        "AegeanNumbers",
        "OldItalic",
        "Gothic",
        "Ugaritic",
        "Deseret",
        "Shavian",
        "Osmanya",
        "CypriotSyllabary",
        "ByzantineMusicalSymbols",
        "MusicalSymbols",
        "TaiXuanJingSymbols",
        "MathematicalAlphanumericSymbols",
        "CJKUnifiedIdeographsExtensionB",
        "CJKCompatibilityIdeographsSupplement",
        "Tags",
        "End"
    };

    QtMocHelpers::UintData qt_methods {
        // Signal 'startGeneration'
        QtMocHelpers::SignalData<void(quint16)>(1, 2, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::UShort, 3 },
        }}),
        // Signal 'stopGeneration'
        QtMocHelpers::SignalData<void()>(4, 2, QMC::AccessPublic, QMetaType::Void),
        // Signal 'distanceFieldGenerated'
        QtMocHelpers::SignalData<void()>(5, 2, QMC::AccessPublic, QMetaType::Void),
        // Signal 'error'
        QtMocHelpers::SignalData<void(const QString &)>(6, 2, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 7 },
        }}),
        // Slot 'addDistanceField'
        QtMocHelpers::SlotData<void(const QImage &, const QPainterPath &, glyph_t, quint32)>(8, 2, QMC::AccessPrivate, QMetaType::Void, {{
            { 0x80000000 | 9, 10 }, { 0x80000000 | 11, 12 }, { 0x80000000 | 13, 14 }, { QMetaType::UInt, 15 },
        }}),
        // Slot 'reserveSpace'
        QtMocHelpers::SlotData<void(quint16, bool, qreal)>(16, 2, QMC::AccessPrivate, QMetaType::Void, {{
            { QMetaType::UShort, 3 }, { QMetaType::Bool, 17 }, { QMetaType::QReal, 18 },
        }}),
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
        // enum 'UnicodeRange'
        QtMocHelpers::EnumData<enum UnicodeRange>(19, 19, QMC::EnumFlags{}).add({
            {   20, UnicodeRange::Other },
            {   21, UnicodeRange::BasicLatin },
            {   22, UnicodeRange::Latin1Supplement },
            {   23, UnicodeRange::LatinExtendedA },
            {   24, UnicodeRange::LatinExtendedB },
            {   25, UnicodeRange::IPAExtensions },
            {   26, UnicodeRange::SpacingModifierLetters },
            {   27, UnicodeRange::CombiningDiacriticalMarks },
            {   28, UnicodeRange::GreekAndCoptic },
            {   29, UnicodeRange::Cyrillic },
            {   30, UnicodeRange::CyrillicSupplementary },
            {   31, UnicodeRange::Armenian },
            {   32, UnicodeRange::Hebrew },
            {   33, UnicodeRange::Arabic },
            {   34, UnicodeRange::Syriac },
            {   35, UnicodeRange::Thaana },
            {   36, UnicodeRange::Devanagari },
            {   37, UnicodeRange::Bengali },
            {   38, UnicodeRange::Gurmukhi },
            {   39, UnicodeRange::Gujarati },
            {   40, UnicodeRange::Oriya },
            {   41, UnicodeRange::Tamil },
            {   42, UnicodeRange::Telugu },
            {   43, UnicodeRange::Kannada },
            {   44, UnicodeRange::Malayalam },
            {   45, UnicodeRange::Sinhala },
            {   46, UnicodeRange::Thai },
            {   47, UnicodeRange::Lao },
            {   48, UnicodeRange::Tibetan },
            {   49, UnicodeRange::Myanmar },
            {   50, UnicodeRange::Georgian },
            {   51, UnicodeRange::HangulJamo },
            {   52, UnicodeRange::Ethiopic },
            {   53, UnicodeRange::Cherokee },
            {   54, UnicodeRange::UnifiedCanadianAboriginalSyllabics },
            {   55, UnicodeRange::Ogham },
            {   56, UnicodeRange::Runic },
            {   57, UnicodeRange::Tagalog },
            {   58, UnicodeRange::Hanunoo },
            {   59, UnicodeRange::Buhid },
            {   60, UnicodeRange::Tagbanwa },
            {   61, UnicodeRange::Khmer },
            {   62, UnicodeRange::Mongolian },
            {   63, UnicodeRange::Limbu },
            {   64, UnicodeRange::TaiLe },
            {   65, UnicodeRange::KhmerSymbols },
            {   66, UnicodeRange::PhoneticExtensions },
            {   67, UnicodeRange::LatinExtendedAdditional },
            {   68, UnicodeRange::GreekExtended },
            {   69, UnicodeRange::GeneralPunctuation },
            {   70, UnicodeRange::SuperscriptsAndSubscripts },
            {   71, UnicodeRange::CurrencySymbols },
            {   72, UnicodeRange::CombiningDiacriticalMarksForSymbols },
            {   73, UnicodeRange::LetterlikeSymbols },
            {   74, UnicodeRange::NumberForms },
            {   75, UnicodeRange::Arrows },
            {   76, UnicodeRange::MathematicalOperators },
            {   77, UnicodeRange::MiscellaneousTechnical },
            {   78, UnicodeRange::ControlPictures },
            {   79, UnicodeRange::OpticalCharacterRecognition },
            {   80, UnicodeRange::EnclosedAlphanumerics },
            {   81, UnicodeRange::BoxDrawing },
            {   82, UnicodeRange::BlockElements },
            {   83, UnicodeRange::GeometricShapes },
            {   84, UnicodeRange::MiscellaneousSymbols },
            {   85, UnicodeRange::Dingbats },
            {   86, UnicodeRange::MiscellaneousMathematicalSymbolsA },
            {   87, UnicodeRange::SupplementalArrowsA },
            {   88, UnicodeRange::BraillePatterns },
            {   89, UnicodeRange::SupplementalArrowsB },
            {   90, UnicodeRange::MiscellaneousMathematicalSymbolsB },
            {   91, UnicodeRange::SupplementalMathematicalOperators },
            {   92, UnicodeRange::MiscellaneousSymbolsAndArrows },
            {   93, UnicodeRange::CJKRadicalsSupplement },
            {   94, UnicodeRange::KangxiRadicals },
            {   95, UnicodeRange::IdeographicDescriptionCharacters },
            {   96, UnicodeRange::CJKSymbolsAndPunctuation },
            {   97, UnicodeRange::Hiragana },
            {   98, UnicodeRange::Katakana },
            {   99, UnicodeRange::Bopomofo },
            {  100, UnicodeRange::HangulCompatibilityJamo },
            {  101, UnicodeRange::Kanbun },
            {  102, UnicodeRange::BopomofoExtended },
            {  103, UnicodeRange::KatakanaPhoneticExtensions },
            {  104, UnicodeRange::EnclosedCJKLettersAndMonths },
            {  105, UnicodeRange::CJKCompatibility },
            {  106, UnicodeRange::CJKUnifiedIdeographsExtensionA },
            {  107, UnicodeRange::YijingHexagramSymbols },
            {  108, UnicodeRange::CJKUnifiedIdeographs },
            {  109, UnicodeRange::YiSyllables },
            {  110, UnicodeRange::YiRadicals },
            {  111, UnicodeRange::HangulSyllables },
            {  112, UnicodeRange::HighSurrogates },
            {  113, UnicodeRange::HighPrivateUseSurrogates },
            {  114, UnicodeRange::LowSurrogates },
            {  115, UnicodeRange::PrivateUseArea },
            {  116, UnicodeRange::CJKCompatibilityIdeographs },
            {  117, UnicodeRange::AlphabeticPresentationForms },
            {  118, UnicodeRange::ArabicPresentationFormsA },
            {  119, UnicodeRange::VariationSelectors },
            {  120, UnicodeRange::CombiningHalfMarks },
            {  121, UnicodeRange::CJKCompatibilityForms },
            {  122, UnicodeRange::SmallFormVariants },
            {  123, UnicodeRange::ArabicPresentationFormsB },
            {  124, UnicodeRange::HalfwidthAndFullwidthForms },
            {  125, UnicodeRange::Specials },
            {  126, UnicodeRange::LinearBSyllabary },
            {  127, UnicodeRange::LinearBIdeograms },
            {  128, UnicodeRange::AegeanNumbers },
            {  129, UnicodeRange::OldItalic },
            {  130, UnicodeRange::Gothic },
            {  131, UnicodeRange::Ugaritic },
            {  132, UnicodeRange::Deseret },
            {  133, UnicodeRange::Shavian },
            {  134, UnicodeRange::Osmanya },
            {  135, UnicodeRange::CypriotSyllabary },
            {  136, UnicodeRange::ByzantineMusicalSymbols },
            {  137, UnicodeRange::MusicalSymbols },
            {  138, UnicodeRange::TaiXuanJingSymbols },
            {  139, UnicodeRange::MathematicalAlphanumericSymbols },
            {  140, UnicodeRange::CJKUnifiedIdeographsExtensionB },
            {  141, UnicodeRange::CJKCompatibilityIdeographsSupplement },
            {  142, UnicodeRange::Tags },
            {  143, UnicodeRange::End },
        }),
    };
    return QtMocHelpers::metaObjectData<DistanceFieldModel, qt_meta_tag_ZN18DistanceFieldModelE_t>(QMC::MetaObjectFlag{}, qt_stringData,
            qt_methods, qt_properties, qt_enums);
}
Q_CONSTINIT const QMetaObject DistanceFieldModel::staticMetaObject = { {
    QMetaObject::SuperData::link<QAbstractListModel::staticMetaObject>(),
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN18DistanceFieldModelE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN18DistanceFieldModelE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN18DistanceFieldModelE_t>.metaTypes,
    nullptr
} };

void DistanceFieldModel::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<DistanceFieldModel *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: _t->startGeneration((*reinterpret_cast<std::add_pointer_t<quint16>>(_a[1]))); break;
        case 1: _t->stopGeneration(); break;
        case 2: _t->distanceFieldGenerated(); break;
        case 3: _t->error((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
        case 4: _t->addDistanceField((*reinterpret_cast<std::add_pointer_t<QImage>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QPainterPath>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<glyph_t>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<quint32>>(_a[4]))); break;
        case 5: _t->reserveSpace((*reinterpret_cast<std::add_pointer_t<quint16>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<bool>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<qreal>>(_a[3]))); break;
        default: ;
        }
    }
    if (_c == QMetaObject::IndexOfMethod) {
        if (QtMocHelpers::indexOfMethod<void (DistanceFieldModel::*)(quint16 )>(_a, &DistanceFieldModel::startGeneration, 0))
            return;
        if (QtMocHelpers::indexOfMethod<void (DistanceFieldModel::*)()>(_a, &DistanceFieldModel::stopGeneration, 1))
            return;
        if (QtMocHelpers::indexOfMethod<void (DistanceFieldModel::*)()>(_a, &DistanceFieldModel::distanceFieldGenerated, 2))
            return;
        if (QtMocHelpers::indexOfMethod<void (DistanceFieldModel::*)(const QString & )>(_a, &DistanceFieldModel::error, 3))
            return;
    }
}

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

void *DistanceFieldModel::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_staticMetaObjectStaticContent<qt_meta_tag_ZN18DistanceFieldModelE_t>.strings))
        return static_cast<void*>(this);
    return QAbstractListModel::qt_metacast(_clname);
}

int DistanceFieldModel::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QAbstractListModel::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 6)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 6;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 6)
            *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType();
        _id -= 6;
    }
    return _id;
}

// SIGNAL 0
void DistanceFieldModel::startGeneration(quint16 _t1)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 0, nullptr, _t1);
}

// SIGNAL 1
void DistanceFieldModel::stopGeneration()
{
    QMetaObject::activate(this, &staticMetaObject, 1, nullptr);
}

// SIGNAL 2
void DistanceFieldModel::distanceFieldGenerated()
{
    QMetaObject::activate(this, &staticMetaObject, 2, nullptr);
}

// SIGNAL 3
void DistanceFieldModel::error(const QString & _t1)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 3, nullptr, _t1);
}
QT_WARNING_POP
