/****************************************************************************
** Meta object code from reading C++ file 'publictransport.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 "../../../../../itinerary-26.04.0/src/app/publictransport.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 'publictransport.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_ZN15PublicTransportE_t {};
} // unnamed namespace

template <> constexpr inline auto PublicTransport::qt_create_metaobjectdata<qt_meta_tag_ZN15PublicTransportE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "PublicTransport",
        "locationFromPlace",
        "KPublicTransport::Location",
        "",
        "QVariant",
        "place",
        "trainStationFromLocation",
        "loc",
        "busStationFromLocation",
        "boatTerminalFromLocation",
        "reservationFromJourneySection",
        "KPublicTransport::JourneySection",
        "section",
        "stopoverRequestForPlace",
        "KPublicTransport::StopoverRequest",
        "dt",
        "attributionSummary",
        "QVariantList",
        "attributions",
        "lineModeToPlatformMode",
        "KOSMIndoorMap::Platform::Mode",
        "KPublicTransport::Line::Mode",
        "lineMode",
        "copyLocation"
    };

    QtMocHelpers::UintData qt_methods {
        // Method 'locationFromPlace'
        QtMocHelpers::MethodData<KPublicTransport::Location(const QVariant &)>(1, 3, QMC::AccessPublic, 0x80000000 | 2, {{
            { 0x80000000 | 4, 5 },
        }}),
        // Method 'trainStationFromLocation'
        QtMocHelpers::MethodData<QVariant(const KPublicTransport::Location &)>(6, 3, QMC::AccessPublic, 0x80000000 | 4, {{
            { 0x80000000 | 2, 7 },
        }}),
        // Method 'busStationFromLocation'
        QtMocHelpers::MethodData<QVariant(const KPublicTransport::Location &)>(8, 3, QMC::AccessPublic, 0x80000000 | 4, {{
            { 0x80000000 | 2, 7 },
        }}),
        // Method 'boatTerminalFromLocation'
        QtMocHelpers::MethodData<QVariant(const KPublicTransport::Location &)>(9, 3, QMC::AccessPublic, 0x80000000 | 4, {{
            { 0x80000000 | 2, 7 },
        }}),
        // Method 'reservationFromJourneySection'
        QtMocHelpers::MethodData<QVariant(const KPublicTransport::JourneySection &)>(10, 3, QMC::AccessPublic, 0x80000000 | 4, {{
            { 0x80000000 | 11, 12 },
        }}),
        // Method 'stopoverRequestForPlace'
        QtMocHelpers::MethodData<KPublicTransport::StopoverRequest(const QVariant &, const QDateTime &) const>(13, 3, QMC::AccessPublic, 0x80000000 | 14, {{
            { 0x80000000 | 4, 5 }, { QMetaType::QDateTime, 15 },
        }}),
        // Method 'attributionSummary'
        QtMocHelpers::MethodData<QString(const QVariantList &) const>(16, 3, QMC::AccessPublic, QMetaType::QString, {{
            { 0x80000000 | 17, 18 },
        }}),
        // Method 'lineModeToPlatformMode'
        QtMocHelpers::MethodData<KOSMIndoorMap::Platform::Mode(KPublicTransport::Line::Mode)>(19, 3, QMC::AccessPublic, 0x80000000 | 20, {{
            { 0x80000000 | 21, 22 },
        }}),
        // Method 'copyLocation'
        QtMocHelpers::MethodData<KPublicTransport::Location(const KPublicTransport::Location &)>(23, 3, QMC::AccessPublic, 0x80000000 | 2, {{
            { 0x80000000 | 2, 7 },
        }}),
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
    };
    return QtMocHelpers::metaObjectData<PublicTransport, qt_meta_tag_ZN15PublicTransportE_t>(QMC::PropertyAccessInStaticMetaCall, qt_stringData,
            qt_methods, qt_properties, qt_enums);
}
Q_CONSTINIT const QMetaObject PublicTransport::staticMetaObject = { {
    nullptr,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN15PublicTransportE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN15PublicTransportE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN15PublicTransportE_t>.metaTypes,
    nullptr
} };

void PublicTransport::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = reinterpret_cast<PublicTransport *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: { KPublicTransport::Location _r = _t->locationFromPlace((*reinterpret_cast<std::add_pointer_t<QVariant>>(_a[1])));
            if (_a[0]) *reinterpret_cast<KPublicTransport::Location*>(_a[0]) = std::move(_r); }  break;
        case 1: { QVariant _r = _t->trainStationFromLocation((*reinterpret_cast<std::add_pointer_t<KPublicTransport::Location>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QVariant*>(_a[0]) = std::move(_r); }  break;
        case 2: { QVariant _r = _t->busStationFromLocation((*reinterpret_cast<std::add_pointer_t<KPublicTransport::Location>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QVariant*>(_a[0]) = std::move(_r); }  break;
        case 3: { QVariant _r = _t->boatTerminalFromLocation((*reinterpret_cast<std::add_pointer_t<KPublicTransport::Location>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QVariant*>(_a[0]) = std::move(_r); }  break;
        case 4: { QVariant _r = _t->reservationFromJourneySection((*reinterpret_cast<std::add_pointer_t<KPublicTransport::JourneySection>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QVariant*>(_a[0]) = std::move(_r); }  break;
        case 5: { KPublicTransport::StopoverRequest _r = _t->stopoverRequestForPlace((*reinterpret_cast<std::add_pointer_t<QVariant>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QDateTime>>(_a[2])));
            if (_a[0]) *reinterpret_cast<KPublicTransport::StopoverRequest*>(_a[0]) = std::move(_r); }  break;
        case 6: { QString _r = _t->attributionSummary((*reinterpret_cast<std::add_pointer_t<QVariantList>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QString*>(_a[0]) = std::move(_r); }  break;
        case 7: { KOSMIndoorMap::Platform::Mode _r = _t->lineModeToPlatformMode((*reinterpret_cast<std::add_pointer_t<KPublicTransport::Line::Mode>>(_a[1])));
            if (_a[0]) *reinterpret_cast<KOSMIndoorMap::Platform::Mode*>(_a[0]) = std::move(_r); }  break;
        case 8: { KPublicTransport::Location _r = _t->copyLocation((*reinterpret_cast<std::add_pointer_t<KPublicTransport::Location>>(_a[1])));
            if (_a[0]) *reinterpret_cast<KPublicTransport::Location*>(_a[0]) = std::move(_r); }  break;
        default: ;
        }
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        switch (_id) {
        default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
        case 1:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
            case 0:
                *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType::fromType< KPublicTransport::Location >(); break;
            }
            break;
        case 2:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
            case 0:
                *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType::fromType< KPublicTransport::Location >(); break;
            }
            break;
        case 3:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
            case 0:
                *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType::fromType< KPublicTransport::Location >(); break;
            }
            break;
        case 8:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
            case 0:
                *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType::fromType< KPublicTransport::Location >(); break;
            }
            break;
        }
    }
}
QT_WARNING_POP
