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

#include "../../../../../plasma5support-6.6.4/src/declarativeimports/datasource.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 'datasource.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 69
#error "This file was generated using the moc from 6.11.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_ZN14Plasma5Support10DataSourceE_t {};
} // unnamed namespace

template <> constexpr inline auto Plasma5Support::DataSource::qt_create_metaobjectdata<qt_meta_tag_ZN14Plasma5Support10DataSourceE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "Plasma5Support::DataSource",
        "QML.Element",
        "auto",
        "newData",
        "",
        "sourceName",
        "QVariantMap",
        "data",
        "sourceAdded",
        "source",
        "sourceRemoved",
        "sourceConnected",
        "sourceDisconnected",
        "intervalChanged",
        "intervalAlignmentChanged",
        "engineChanged",
        "dataChanged",
        "connectedSourcesChanged",
        "sourcesChanged",
        "dataUpdated",
        "Plasma5Support::DataEngine::Data",
        "modelChanged",
        "QAbstractItemModel*",
        "model",
        "removeSource",
        "setupData",
        "updateSources",
        "serviceForSource",
        "connectSource",
        "disconnectSource",
        "valid",
        "interval",
        "intervalAlignment",
        "Plasma5Support::Types::IntervalAlignment",
        "dataEngine",
        "engine",
        "connectedSources",
        "sources",
        "QQmlPropertyMap*",
        "models"
    };

    QtMocHelpers::UintData qt_methods {
        // Signal 'newData'
        QtMocHelpers::SignalData<void(const QString &, const QVariantMap &)>(3, 4, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 5 }, { 0x80000000 | 6, 7 },
        }}),
        // Signal 'sourceAdded'
        QtMocHelpers::SignalData<void(const QString &)>(8, 4, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 9 },
        }}),
        // Signal 'sourceRemoved'
        QtMocHelpers::SignalData<void(const QString &)>(10, 4, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 9 },
        }}),
        // Signal 'sourceConnected'
        QtMocHelpers::SignalData<void(const QString &)>(11, 4, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 9 },
        }}),
        // Signal 'sourceDisconnected'
        QtMocHelpers::SignalData<void(const QString &)>(12, 4, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 9 },
        }}),
        // Signal 'intervalChanged'
        QtMocHelpers::SignalData<void()>(13, 4, QMC::AccessPublic, QMetaType::Void),
        // Signal 'intervalAlignmentChanged'
        QtMocHelpers::SignalData<void()>(14, 4, QMC::AccessPublic, QMetaType::Void),
        // Signal 'engineChanged'
        QtMocHelpers::SignalData<void()>(15, 4, QMC::AccessPublic, QMetaType::Void),
        // Signal 'dataChanged'
        QtMocHelpers::SignalData<void()>(16, 4, QMC::AccessPublic, QMetaType::Void),
        // Signal 'connectedSourcesChanged'
        QtMocHelpers::SignalData<void()>(17, 4, QMC::AccessPublic, QMetaType::Void),
        // Signal 'sourcesChanged'
        QtMocHelpers::SignalData<void()>(18, 4, QMC::AccessPublic, QMetaType::Void),
        // Slot 'dataUpdated'
        QtMocHelpers::SlotData<void(const QString &, const Plasma5Support::DataEngine::Data &)>(19, 4, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 5 }, { 0x80000000 | 20, 7 },
        }}),
        // Slot 'modelChanged'
        QtMocHelpers::SlotData<void(const QString &, QAbstractItemModel *)>(21, 4, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 5 }, { 0x80000000 | 22, 23 },
        }}),
        // Slot 'removeSource'
        QtMocHelpers::SlotData<void(const QString &)>(24, 4, QMC::AccessProtected, QMetaType::Void, {{
            { QMetaType::QString, 9 },
        }}),
        // Slot 'setupData'
        QtMocHelpers::SlotData<void()>(25, 4, QMC::AccessProtected, QMetaType::Void),
        // Slot 'updateSources'
        QtMocHelpers::SlotData<void()>(26, 4, QMC::AccessProtected, QMetaType::Void),
        // Method 'serviceForSource'
        QtMocHelpers::MethodData<QObject *(const QString &)>(27, 4, QMC::AccessPublic, QMetaType::QObjectStar, {{
            { QMetaType::QString, 9 },
        }}),
        // Method 'connectSource'
        QtMocHelpers::MethodData<void(const QString &)>(28, 4, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 9 },
        }}),
        // Method 'disconnectSource'
        QtMocHelpers::MethodData<void(const QString &)>(29, 4, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 9 },
        }}),
    };
    QtMocHelpers::UintData qt_properties {
        // property 'valid'
        QtMocHelpers::PropertyData<bool>(30, QMetaType::Bool, QMC::DefaultPropertyFlags),
        // property 'interval'
        QtMocHelpers::PropertyData<int>(31, QMetaType::Int, QMC::DefaultPropertyFlags | QMC::Writable | QMC::StdCppSet, 5),
        // property 'intervalAlignment'
        QtMocHelpers::PropertyData<Plasma5Support::Types::IntervalAlignment>(32, 0x80000000 | 33, QMC::DefaultPropertyFlags | QMC::Writable | QMC::EnumOrFlag | QMC::StdCppSet, 6),
        // property 'dataEngine'
        QtMocHelpers::PropertyData<QString>(34, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Writable, 7),
        // property 'engine'
        QtMocHelpers::PropertyData<QString>(35, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Writable | QMC::StdCppSet, 7),
        // property 'connectedSources'
        QtMocHelpers::PropertyData<QStringList>(36, QMetaType::QStringList, QMC::DefaultPropertyFlags | QMC::Writable | QMC::StdCppSet, 9),
        // property 'sources'
        QtMocHelpers::PropertyData<QStringList>(37, QMetaType::QStringList, QMC::DefaultPropertyFlags, 10),
        // property 'data'
        QtMocHelpers::PropertyData<QQmlPropertyMap*>(7, 0x80000000 | 38, QMC::DefaultPropertyFlags | QMC::EnumOrFlag | QMC::Constant),
        // property 'models'
        QtMocHelpers::PropertyData<QQmlPropertyMap*>(39, 0x80000000 | 38, QMC::DefaultPropertyFlags | QMC::EnumOrFlag | QMC::Constant),
    };
    QtMocHelpers::UintData qt_enums {
    };
    QtMocHelpers::UintData qt_constructors {};
    QtMocHelpers::ClassInfos qt_classinfo({
            {    1,    2 },
    });
    return QtMocHelpers::metaObjectData<DataSource, void>(QMC::MetaObjectFlag{}, qt_stringData,
            qt_methods, qt_properties, qt_enums, qt_constructors, qt_classinfo);
}
Q_CONSTINIT static const QMetaObject::SuperData qt_meta_extradata_ZN14Plasma5Support10DataSourceE[] = {
    QMetaObject::SuperData::link<Plasma5Support::Types::staticMetaObject>(),
    nullptr
};

Q_CONSTINIT const QMetaObject Plasma5Support::DataSource::staticMetaObject = { {
    QMetaObject::SuperData::link<QObject::staticMetaObject>(),
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN14Plasma5Support10DataSourceE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN14Plasma5Support10DataSourceE_t>.data,
    qt_static_metacall,
    qt_meta_extradata_ZN14Plasma5Support10DataSourceE,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN14Plasma5Support10DataSourceE_t>.metaTypes,
    nullptr
} };

void Plasma5Support::DataSource::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<DataSource *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: _t->newData((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QVariantMap>>(_a[2]))); break;
        case 1: _t->sourceAdded((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
        case 2: _t->sourceRemoved((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
        case 3: _t->sourceConnected((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
        case 4: _t->sourceDisconnected((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
        case 5: _t->intervalChanged(); break;
        case 6: _t->intervalAlignmentChanged(); break;
        case 7: _t->engineChanged(); break;
        case 8: _t->dataChanged(); break;
        case 9: _t->connectedSourcesChanged(); break;
        case 10: _t->sourcesChanged(); break;
        case 11: _t->dataUpdated((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<Plasma5Support::DataEngine::Data>>(_a[2]))); break;
        case 12: _t->modelChanged((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QAbstractItemModel*>>(_a[2]))); break;
        case 13: _t->removeSource((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
        case 14: _t->setupData(); break;
        case 15: _t->updateSources(); break;
        case 16: { QObject* _r = _t->serviceForSource((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QObject**>(_a[0]) = std::move(_r); }  break;
        case 17: _t->connectSource((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
        case 18: _t->disconnectSource((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
        default: ;
        }
    }
    if (_c == QMetaObject::IndexOfMethod) {
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)(const QString & , const QVariantMap & )>(_a, &DataSource::newData, 0))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)(const QString & )>(_a, &DataSource::sourceAdded, 1))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)(const QString & )>(_a, &DataSource::sourceRemoved, 2))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)(const QString & )>(_a, &DataSource::sourceConnected, 3))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)(const QString & )>(_a, &DataSource::sourceDisconnected, 4))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)()>(_a, &DataSource::intervalChanged, 5))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)()>(_a, &DataSource::intervalAlignmentChanged, 6))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)()>(_a, &DataSource::engineChanged, 7))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)()>(_a, &DataSource::dataChanged, 8))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)()>(_a, &DataSource::connectedSourcesChanged, 9))
            return;
        if (QtMocHelpers::indexOfMethod<void (DataSource::*)()>(_a, &DataSource::sourcesChanged, 10))
            return;
    }
    if (_c == QMetaObject::RegisterPropertyMetaType) {
        switch (_id) {
        default: *reinterpret_cast<int*>(_a[0]) = -1; break;
        case 8:
        case 7:
            *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< QQmlPropertyMap* >(); break;
        }
    }
    if (_c == QMetaObject::ReadProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0: *reinterpret_cast<bool*>(_v) = _t->valid(); break;
        case 1: *reinterpret_cast<int*>(_v) = _t->interval(); break;
        case 2: *reinterpret_cast<Plasma5Support::Types::IntervalAlignment*>(_v) = _t->intervalAlignment(); break;
        case 3: *reinterpret_cast<QString*>(_v) = _t->engine(); break;
        case 4: *reinterpret_cast<QString*>(_v) = _t->engine(); break;
        case 5: *reinterpret_cast<QStringList*>(_v) = _t->connectedSources(); break;
        case 6: *reinterpret_cast<QStringList*>(_v) = _t->sources(); break;
        case 7: *reinterpret_cast<QQmlPropertyMap**>(_v) = _t->data(); break;
        case 8: *reinterpret_cast<QQmlPropertyMap**>(_v) = _t->models(); break;
        default: break;
        }
    }
    if (_c == QMetaObject::WriteProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 1: _t->setInterval(*reinterpret_cast<int*>(_v)); break;
        case 2: _t->setIntervalAlignment(*reinterpret_cast<Plasma5Support::Types::IntervalAlignment*>(_v)); break;
        case 3: _t->setEngine(*reinterpret_cast<QString*>(_v)); break;
        case 4: _t->setEngine(*reinterpret_cast<QString*>(_v)); break;
        case 5: _t->setConnectedSources(*reinterpret_cast<QStringList*>(_v)); break;
        default: break;
        }
    }
}

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

void *Plasma5Support::DataSource::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_staticMetaObjectStaticContent<qt_meta_tag_ZN14Plasma5Support10DataSourceE_t>.strings))
        return static_cast<void*>(this);
    if (!strcmp(_clname, "QQmlParserStatus"))
        return static_cast< QQmlParserStatus*>(this);
    if (!strcmp(_clname, "DataEngineConsumer"))
        return static_cast< DataEngineConsumer*>(this);
    if (!strcmp(_clname, "org.qt-project.Qt.QQmlParserStatus"))
        return static_cast< QQmlParserStatus*>(this);
    return QObject::qt_metacast(_clname);
}

int Plasma5Support::DataSource::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 < 19)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 19;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 19)
            *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType();
        _id -= 19;
    }
    if (_c == QMetaObject::ReadProperty || _c == QMetaObject::WriteProperty
            || _c == QMetaObject::ResetProperty || _c == QMetaObject::BindableProperty
            || _c == QMetaObject::RegisterPropertyMetaType) {
        qt_static_metacall(this, _c, _id, _a);
        _id -= 9;
    }
    return _id;
}

// SIGNAL 0
void Plasma5Support::DataSource::newData(const QString & _t1, const QVariantMap & _t2)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 0, nullptr, _t1, _t2);
}

// SIGNAL 1
void Plasma5Support::DataSource::sourceAdded(const QString & _t1)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 1, nullptr, _t1);
}

// SIGNAL 2
void Plasma5Support::DataSource::sourceRemoved(const QString & _t1)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 2, nullptr, _t1);
}

// SIGNAL 3
void Plasma5Support::DataSource::sourceConnected(const QString & _t1)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 3, nullptr, _t1);
}

// SIGNAL 4
void Plasma5Support::DataSource::sourceDisconnected(const QString & _t1)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 4, nullptr, _t1);
}

// SIGNAL 5
void Plasma5Support::DataSource::intervalChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 5, nullptr);
}

// SIGNAL 6
void Plasma5Support::DataSource::intervalAlignmentChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 6, nullptr);
}

// SIGNAL 7
void Plasma5Support::DataSource::engineChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 7, nullptr);
}

// SIGNAL 8
void Plasma5Support::DataSource::dataChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 8, nullptr);
}

// SIGNAL 9
void Plasma5Support::DataSource::connectedSourcesChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 9, nullptr);
}

// SIGNAL 10
void Plasma5Support::DataSource::sourcesChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 10, nullptr);
}
QT_WARNING_POP
