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

#include "../../../libQuotient/Quotient/quotient_common.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 'quotient_common.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 69
#error "This file was generated using the moc from 6.11.1. 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_ZN8QuotientE_t {};
} // unnamed namespace

template <> constexpr inline auto Quotient::qt_create_metaobjectdata<qt_meta_tag_ZN8QuotientE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "Quotient",
        "MembershipMask",
        "Membership",
        "Invalid",
        "Join",
        "Leave",
        "Invite",
        "Knock",
        "Ban",
        "Undefined",
        "JoinStates",
        "JoinState",
        "RunningPolicy",
        "ForegroundRequest",
        "BackgroundRequest",
        "UriResolveResult",
        "StillResolving",
        "UriResolved",
        "CouldNotResolve",
        "IncorrectAction",
        "InvalidUri",
        "NoAccount",
        "RoomType",
        "Space",
        "EncryptionType",
        "MegolmV1AesSha2"
    };

    QtMocHelpers::UintData qt_methods {
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
        // flag 'MembershipMask'
        QtMocHelpers::EnumData<MembershipMask>(1, 2, QMC::EnumIsFlag | QMC::EnumIsScoped).add({
            {    3, Membership::Invalid },
            {    4, Membership::Join },
            {    5, Membership::Leave },
            {    6, Membership::Invite },
            {    7, Membership::Knock },
            {    8, Membership::Ban },
            {    9, Membership::Undefined },
        }),
        // flag 'JoinStates'
        QtMocHelpers::EnumData<JoinStates>(10, 11, QMC::EnumIsFlag | QMC::EnumIsScoped).add({
            {    3, JoinState::Invalid },
            {    4, JoinState::Join },
            {    5, JoinState::Leave },
            {    6, JoinState::Invite },
            {    7, JoinState::Knock },
        }),
        // enum 'RunningPolicy'
        QtMocHelpers::EnumData<RunningPolicy>(12, 12, QMC::EnumFlags{}).add({
            {   13, RunningPolicy::ForegroundRequest },
            {   14, RunningPolicy::BackgroundRequest },
        }),
        // enum 'UriResolveResult'
        QtMocHelpers::EnumData<UriResolveResult>(15, 15, QMC::EnumFlags{}).add({
            {   16, UriResolveResult::StillResolving },
            {   17, UriResolveResult::UriResolved },
            {   18, UriResolveResult::CouldNotResolve },
            {   19, UriResolveResult::IncorrectAction },
            {   20, UriResolveResult::InvalidUri },
            {   21, UriResolveResult::NoAccount },
        }),
        // enum 'RoomType'
        QtMocHelpers::EnumData<RoomType>(22, 22, QMC::EnumIsScoped).add({
            {   23, RoomType::Space },
            {    9, RoomType::Undefined },
        }),
        // enum 'EncryptionType'
        QtMocHelpers::EnumData<EncryptionType>(24, 24, QMC::EnumIsScoped).add({
            {   25, EncryptionType::MegolmV1AesSha2 },
            {    9, EncryptionType::Undefined },
        }),
    };
    return QtMocHelpers::metaObjectData<void, qt_meta_tag_ZN8QuotientE_t>(QMC::PropertyAccessInStaticMetaCall, qt_stringData,
            qt_methods, qt_properties, qt_enums);
}

static constexpr auto qt_staticMetaObjectContent_ZN8QuotientE =
    Quotient::qt_create_metaobjectdata<qt_meta_tag_ZN8QuotientE_t>();
static constexpr auto qt_staticMetaObjectStaticContent_ZN8QuotientE =
    qt_staticMetaObjectContent_ZN8QuotientE.staticData;
static constexpr auto qt_staticMetaObjectRelocatingContent_ZN8QuotientE =
    qt_staticMetaObjectContent_ZN8QuotientE.relocatingData;

Q_CONSTINIT const QMetaObject Quotient::staticMetaObject = { {
    nullptr,
    qt_staticMetaObjectStaticContent_ZN8QuotientE.stringdata,
    qt_staticMetaObjectStaticContent_ZN8QuotientE.data,
    nullptr,
    nullptr,
    qt_staticMetaObjectRelocatingContent_ZN8QuotientE.metaTypes,
    nullptr
} };

QT_WARNING_POP
