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

#include <memory>
#include "../../../../qtlottie/src/imports/lottieanimation.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'lottieanimation.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.15.5. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif

QT_BEGIN_MOC_NAMESPACE
QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
struct qt_meta_stringdata_LottieAnimation_t {
    QByteArrayData data[48];
    char stringdata0[491];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
    Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
    qptrdiff(offsetof(qt_meta_stringdata_LottieAnimation_t, stringdata0) + ofs \
        - idx * sizeof(QByteArrayData)) \
    )
static const qt_meta_stringdata_LottieAnimation_t qt_meta_stringdata_LottieAnimation = {
    {
QT_MOC_LITERAL(0, 0, 15), // "LottieAnimation"
QT_MOC_LITERAL(1, 16, 13), // "statusChanged"
QT_MOC_LITERAL(2, 30, 0), // ""
QT_MOC_LITERAL(3, 31, 14), // "qualityChanged"
QT_MOC_LITERAL(4, 46, 13), // "sourceChanged"
QT_MOC_LITERAL(5, 60, 8), // "finished"
QT_MOC_LITERAL(6, 69, 16), // "frameRateChanged"
QT_MOC_LITERAL(7, 86, 15), // "autoPlayChanged"
QT_MOC_LITERAL(8, 102, 12), // "loopsChanged"
QT_MOC_LITERAL(9, 115, 16), // "directionChanged"
QT_MOC_LITERAL(10, 132, 17), // "startFrameChanged"
QT_MOC_LITERAL(11, 150, 15), // "endFrameChanged"
QT_MOC_LITERAL(12, 166, 12), // "loadFinished"
QT_MOC_LITERAL(13, 179, 15), // "renderNextFrame"
QT_MOC_LITERAL(14, 195, 5), // "start"
QT_MOC_LITERAL(15, 201, 4), // "play"
QT_MOC_LITERAL(16, 206, 5), // "pause"
QT_MOC_LITERAL(17, 212, 11), // "togglePause"
QT_MOC_LITERAL(18, 224, 4), // "stop"
QT_MOC_LITERAL(19, 229, 11), // "gotoAndPlay"
QT_MOC_LITERAL(20, 241, 5), // "frame"
QT_MOC_LITERAL(21, 247, 11), // "frameMarker"
QT_MOC_LITERAL(22, 259, 11), // "gotoAndStop"
QT_MOC_LITERAL(23, 271, 11), // "getDuration"
QT_MOC_LITERAL(24, 283, 8), // "inFrames"
QT_MOC_LITERAL(25, 292, 6), // "source"
QT_MOC_LITERAL(26, 299, 9), // "frameRate"
QT_MOC_LITERAL(27, 309, 10), // "startFrame"
QT_MOC_LITERAL(28, 320, 8), // "endFrame"
QT_MOC_LITERAL(29, 329, 6), // "status"
QT_MOC_LITERAL(30, 336, 6), // "Status"
QT_MOC_LITERAL(31, 343, 7), // "quality"
QT_MOC_LITERAL(32, 351, 7), // "Quality"
QT_MOC_LITERAL(33, 359, 8), // "autoPlay"
QT_MOC_LITERAL(34, 368, 5), // "loops"
QT_MOC_LITERAL(35, 374, 9), // "direction"
QT_MOC_LITERAL(36, 384, 9), // "Direction"
QT_MOC_LITERAL(37, 394, 4), // "Null"
QT_MOC_LITERAL(38, 399, 7), // "Loading"
QT_MOC_LITERAL(39, 407, 5), // "Ready"
QT_MOC_LITERAL(40, 413, 5), // "Error"
QT_MOC_LITERAL(41, 419, 10), // "LowQuality"
QT_MOC_LITERAL(42, 430, 13), // "MediumQuality"
QT_MOC_LITERAL(43, 444, 11), // "HighQuality"
QT_MOC_LITERAL(44, 456, 7), // "Forward"
QT_MOC_LITERAL(45, 464, 7), // "Reverse"
QT_MOC_LITERAL(46, 472, 9), // "LoopCount"
QT_MOC_LITERAL(47, 482, 8) // "Infinite"

    },
    "LottieAnimation\0statusChanged\0\0"
    "qualityChanged\0sourceChanged\0finished\0"
    "frameRateChanged\0autoPlayChanged\0"
    "loopsChanged\0directionChanged\0"
    "startFrameChanged\0endFrameChanged\0"
    "loadFinished\0renderNextFrame\0start\0"
    "play\0pause\0togglePause\0stop\0gotoAndPlay\0"
    "frame\0frameMarker\0gotoAndStop\0getDuration\0"
    "inFrames\0source\0frameRate\0startFrame\0"
    "endFrame\0status\0Status\0quality\0Quality\0"
    "autoPlay\0loops\0direction\0Direction\0"
    "Null\0Loading\0Ready\0Error\0LowQuality\0"
    "MediumQuality\0HighQuality\0Forward\0"
    "Reverse\0LoopCount\0Infinite"
};
#undef QT_MOC_LITERAL

static const uint qt_meta_data_LottieAnimation[] = {

 // content:
       8,       // revision
       0,       // classname
       0,    0, // classinfo
      23,   14, // methods
       9,  162, // properties
       4,  198, // enums/sets
       0,    0, // constructors
       0,       // flags
      10,       // signalCount

 // signals: name, argc, parameters, tag, flags
       1,    0,  129,    2, 0x06 /* Public */,
       3,    0,  130,    2, 0x06 /* Public */,
       4,    0,  131,    2, 0x06 /* Public */,
       5,    0,  132,    2, 0x06 /* Public */,
       6,    0,  133,    2, 0x06 /* Public */,
       7,    0,  134,    2, 0x06 /* Public */,
       8,    0,  135,    2, 0x06 /* Public */,
       9,    0,  136,    2, 0x06 /* Public */,
      10,    0,  137,    2, 0x06 /* Public */,
      11,    0,  138,    2, 0x06 /* Public */,

 // slots: name, argc, parameters, tag, flags
      12,    0,  139,    2, 0x09 /* Protected */,
      13,    0,  140,    2, 0x09 /* Protected */,

 // methods: name, argc, parameters, tag, flags
      14,    0,  141,    2, 0x02 /* Public */,
      15,    0,  142,    2, 0x02 /* Public */,
      16,    0,  143,    2, 0x02 /* Public */,
      17,    0,  144,    2, 0x02 /* Public */,
      18,    0,  145,    2, 0x02 /* Public */,
      19,    1,  146,    2, 0x02 /* Public */,
      19,    1,  149,    2, 0x02 /* Public */,
      22,    1,  152,    2, 0x02 /* Public */,
      22,    1,  155,    2, 0x02 /* Public */,
      23,    1,  158,    2, 0x02 /* Public */,
      23,    0,  161,    2, 0x22 /* Public | MethodCloned */,

 // signals: parameters
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,

 // slots: parameters
    QMetaType::Void,
    QMetaType::Void,

 // methods: parameters
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void, QMetaType::Int,   20,
    QMetaType::Bool, QMetaType::QString,   21,
    QMetaType::Void, QMetaType::Int,   20,
    QMetaType::Bool, QMetaType::QString,   21,
    QMetaType::Double, QMetaType::Bool,   24,
    QMetaType::Double,

 // properties: name, type, flags
      25, QMetaType::QUrl, 0x00495103,
      26, QMetaType::Int, 0x00495107,
      27, QMetaType::Int, 0x00495001,
      28, QMetaType::Int, 0x00495001,
      29, 0x80000000 | 30, 0x0049510b,
      31, 0x80000000 | 32, 0x0049510b,
      33, QMetaType::Bool, 0x00495003,
      34, QMetaType::Int, 0x00495003,
      35, 0x80000000 | 36, 0x0049510b,

 // properties: notify_signal_id
       2,
       4,
       8,
       9,
       0,
       1,
       5,
       6,
       7,

 // enums: name, alias, flags, count, data
      30,   30, 0x0,    4,  218,
      32,   32, 0x0,    3,  226,
      36,   36, 0x0,    2,  232,
      46,   46, 0x0,    1,  236,

 // enum data: key, value
      37, uint(LottieAnimation::Null),
      38, uint(LottieAnimation::Loading),
      39, uint(LottieAnimation::Ready),
      40, uint(LottieAnimation::Error),
      41, uint(LottieAnimation::LowQuality),
      42, uint(LottieAnimation::MediumQuality),
      43, uint(LottieAnimation::HighQuality),
      44, uint(LottieAnimation::Forward),
      45, uint(LottieAnimation::Reverse),
      47, uint(LottieAnimation::Infinite),

       0        // eod
};

void LottieAnimation::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    if (_c == QMetaObject::InvokeMetaMethod) {
        auto *_t = static_cast<LottieAnimation *>(_o);
        (void)_t;
        switch (_id) {
        case 0: _t->statusChanged(); break;
        case 1: _t->qualityChanged(); break;
        case 2: _t->sourceChanged(); break;
        case 3: _t->finished(); break;
        case 4: _t->frameRateChanged(); break;
        case 5: _t->autoPlayChanged(); break;
        case 6: _t->loopsChanged(); break;
        case 7: _t->directionChanged(); break;
        case 8: _t->startFrameChanged(); break;
        case 9: _t->endFrameChanged(); break;
        case 10: _t->loadFinished(); break;
        case 11: _t->renderNextFrame(); break;
        case 12: _t->start(); break;
        case 13: _t->play(); break;
        case 14: _t->pause(); break;
        case 15: _t->togglePause(); break;
        case 16: _t->stop(); break;
        case 17: _t->gotoAndPlay((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 18: { bool _r = _t->gotoAndPlay((*reinterpret_cast< const QString(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = std::move(_r); }  break;
        case 19: _t->gotoAndStop((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 20: { bool _r = _t->gotoAndStop((*reinterpret_cast< const QString(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = std::move(_r); }  break;
        case 21: { double _r = _t->getDuration((*reinterpret_cast< bool(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< double*>(_a[0]) = std::move(_r); }  break;
        case 22: { double _r = _t->getDuration();
            if (_a[0]) *reinterpret_cast< double*>(_a[0]) = std::move(_r); }  break;
        default: ;
        }
    } else if (_c == QMetaObject::IndexOfMethod) {
        int *result = reinterpret_cast<int *>(_a[0]);
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::statusChanged)) {
                *result = 0;
                return;
            }
        }
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::qualityChanged)) {
                *result = 1;
                return;
            }
        }
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::sourceChanged)) {
                *result = 2;
                return;
            }
        }
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::finished)) {
                *result = 3;
                return;
            }
        }
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::frameRateChanged)) {
                *result = 4;
                return;
            }
        }
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::autoPlayChanged)) {
                *result = 5;
                return;
            }
        }
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::loopsChanged)) {
                *result = 6;
                return;
            }
        }
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::directionChanged)) {
                *result = 7;
                return;
            }
        }
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::startFrameChanged)) {
                *result = 8;
                return;
            }
        }
        {
            using _t = void (LottieAnimation::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&LottieAnimation::endFrameChanged)) {
                *result = 9;
                return;
            }
        }
    }
#ifndef QT_NO_PROPERTIES
    else if (_c == QMetaObject::ReadProperty) {
        auto *_t = static_cast<LottieAnimation *>(_o);
        (void)_t;
        void *_v = _a[0];
        switch (_id) {
        case 0: *reinterpret_cast< QUrl*>(_v) = _t->source(); break;
        case 1: *reinterpret_cast< int*>(_v) = _t->frameRate(); break;
        case 2: *reinterpret_cast< int*>(_v) = _t->startFrame(); break;
        case 3: *reinterpret_cast< int*>(_v) = _t->endFrame(); break;
        case 4: *reinterpret_cast< Status*>(_v) = _t->status(); break;
        case 5: *reinterpret_cast< Quality*>(_v) = _t->quality(); break;
        case 6: *reinterpret_cast< bool*>(_v) = _t->m_autoPlay; break;
        case 7: *reinterpret_cast< int*>(_v) = _t->m_loops; break;
        case 8: *reinterpret_cast< Direction*>(_v) = _t->direction(); break;
        default: break;
        }
    } else if (_c == QMetaObject::WriteProperty) {
        auto *_t = static_cast<LottieAnimation *>(_o);
        (void)_t;
        void *_v = _a[0];
        switch (_id) {
        case 0: _t->setSource(*reinterpret_cast< QUrl*>(_v)); break;
        case 1: _t->setFrameRate(*reinterpret_cast< int*>(_v)); break;
        case 4: _t->setStatus(*reinterpret_cast< Status*>(_v)); break;
        case 5: _t->setQuality(*reinterpret_cast< Quality*>(_v)); break;
        case 6:
            if (_t->m_autoPlay != *reinterpret_cast< bool*>(_v)) {
                _t->m_autoPlay = *reinterpret_cast< bool*>(_v);
                Q_EMIT _t->autoPlayChanged();
            }
            break;
        case 7:
            if (_t->m_loops != *reinterpret_cast< int*>(_v)) {
                _t->m_loops = *reinterpret_cast< int*>(_v);
                Q_EMIT _t->loopsChanged();
            }
            break;
        case 8: _t->setDirection(*reinterpret_cast< Direction*>(_v)); break;
        default: break;
        }
    } else if (_c == QMetaObject::ResetProperty) {
        LottieAnimation *_t = static_cast<LottieAnimation *>(_o);
        (void)_t;
        switch (_id) {
        case 1: _t->resetFrameRate(); break;
        default: break;
        }
    }
#endif // QT_NO_PROPERTIES
}

QT_INIT_METAOBJECT const QMetaObject LottieAnimation::staticMetaObject = { {
    QMetaObject::SuperData::link<QQuickPaintedItem::staticMetaObject>(),
    qt_meta_stringdata_LottieAnimation.data,
    qt_meta_data_LottieAnimation,
    qt_static_metacall,
    nullptr,
    nullptr
} };


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

void *LottieAnimation::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_meta_stringdata_LottieAnimation.stringdata0))
        return static_cast<void*>(this);
    return QQuickPaintedItem::qt_metacast(_clname);
}

int LottieAnimation::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QQuickPaintedItem::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 23)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 23;
    } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 23)
            *reinterpret_cast<int*>(_a[0]) = -1;
        _id -= 23;
    }
#ifndef QT_NO_PROPERTIES
    else if (_c == QMetaObject::ReadProperty || _c == QMetaObject::WriteProperty
            || _c == QMetaObject::ResetProperty || _c == QMetaObject::RegisterPropertyMetaType) {
        qt_static_metacall(this, _c, _id, _a);
        _id -= 9;
    } else if (_c == QMetaObject::QueryPropertyDesignable) {
        _id -= 9;
    } else if (_c == QMetaObject::QueryPropertyScriptable) {
        _id -= 9;
    } else if (_c == QMetaObject::QueryPropertyStored) {
        _id -= 9;
    } else if (_c == QMetaObject::QueryPropertyEditable) {
        _id -= 9;
    } else if (_c == QMetaObject::QueryPropertyUser) {
        _id -= 9;
    }
#endif // QT_NO_PROPERTIES
    return _id;
}

// SIGNAL 0
void LottieAnimation::statusChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 0, nullptr);
}

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

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

// SIGNAL 3
void LottieAnimation::finished()
{
    QMetaObject::activate(this, &staticMetaObject, 3, nullptr);
}

// SIGNAL 4
void LottieAnimation::frameRateChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 4, nullptr);
}

// SIGNAL 5
void LottieAnimation::autoPlayChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 5, nullptr);
}

// SIGNAL 6
void LottieAnimation::loopsChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 6, nullptr);
}

// SIGNAL 7
void LottieAnimation::directionChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 7, nullptr);
}

// SIGNAL 8
void LottieAnimation::startFrameChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 8, nullptr);
}

// SIGNAL 9
void LottieAnimation::endFrameChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 9, nullptr);
}
QT_WARNING_POP
QT_END_MOC_NAMESPACE
