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

#include <memory>
#include "../../../luminance-hdr-2.6.1.1/src/Viewers/GenericViewer.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'GenericViewer.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.15.18. 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_GenericViewer_t {
    QByteArrayData data[60];
    char stringdata0[759];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
    Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
    qptrdiff(offsetof(qt_meta_stringdata_GenericViewer_t, stringdata0) + ofs \
        - idx * sizeof(QByteArrayData)) \
    )
static const qt_meta_stringdata_GenericViewer_t qt_meta_stringdata_GenericViewer = {
    {
QT_MOC_LITERAL(0, 0, 13), // "GenericViewer"
QT_MOC_LITERAL(1, 14, 14), // "selectionReady"
QT_MOC_LITERAL(2, 29, 0), // ""
QT_MOC_LITERAL(3, 30, 7), // "isReady"
QT_MOC_LITERAL(4, 38, 7), // "changed"
QT_MOC_LITERAL(5, 46, 14), // "GenericViewer*"
QT_MOC_LITERAL(6, 61, 1), // "v"
QT_MOC_LITERAL(7, 63, 8), // "reparent"
QT_MOC_LITERAL(8, 72, 5), // "close"
QT_MOC_LITERAL(9, 78, 6), // "goNext"
QT_MOC_LITERAL(10, 85, 10), // "goPrevious"
QT_MOC_LITERAL(11, 96, 11), // "syncViewers"
QT_MOC_LITERAL(12, 108, 6), // "reject"
QT_MOC_LITERAL(13, 115, 12), // "updatePixmap"
QT_MOC_LITERAL(14, 128, 10), // "updateView"
QT_MOC_LITERAL(15, 139, 6), // "zoomIn"
QT_MOC_LITERAL(16, 146, 7), // "zoomOut"
QT_MOC_LITERAL(17, 154, 11), // "fitToWindow"
QT_MOC_LITERAL(18, 166, 7), // "checked"
QT_MOC_LITERAL(19, 174, 12), // "fillToWindow"
QT_MOC_LITERAL(20, 187, 10), // "normalSize"
QT_MOC_LITERAL(21, 198, 13), // "getViewerMode"
QT_MOC_LITERAL(22, 212, 10), // "ViewerMode"
QT_MOC_LITERAL(23, 223, 13), // "setViewerMode"
QT_MOC_LITERAL(24, 237, 11), // "viewer_mode"
QT_MOC_LITERAL(25, 249, 12), // "hasSelection"
QT_MOC_LITERAL(26, 262, 16), // "setSelectionTool"
QT_MOC_LITERAL(27, 279, 16), // "getSelectionRect"
QT_MOC_LITERAL(28, 296, 15), // "removeSelection"
QT_MOC_LITERAL(29, 312, 11), // "needsSaving"
QT_MOC_LITERAL(30, 324, 14), // "setNeedsSaving"
QT_MOC_LITERAL(31, 339, 11), // "getFileName"
QT_MOC_LITERAL(32, 351, 11), // "setFileName"
QT_MOC_LITERAL(33, 363, 10), // "syncViewer"
QT_MOC_LITERAL(34, 374, 3), // "src"
QT_MOC_LITERAL(35, 378, 5), // "isHDR"
QT_MOC_LITERAL(36, 384, 20), // "getMaxLuminanceValue"
QT_MOC_LITERAL(37, 405, 20), // "getMinLuminanceValue"
QT_MOC_LITERAL(38, 426, 25), // "getLuminanceMappingMethod"
QT_MOC_LITERAL(39, 452, 14), // "RGBMappingType"
QT_MOC_LITERAL(40, 467, 18), // "getFileNamePostFix"
QT_MOC_LITERAL(41, 486, 14), // "getExifComment"
QT_MOC_LITERAL(42, 501, 9), // "getQImage"
QT_MOC_LITERAL(43, 511, 9), // "setQImage"
QT_MOC_LITERAL(44, 521, 6), // "qimage"
QT_MOC_LITERAL(45, 528, 19), // "setDevicePixelRatio"
QT_MOC_LITERAL(46, 548, 1), // "s"
QT_MOC_LITERAL(47, 550, 8), // "getFrame"
QT_MOC_LITERAL(48, 559, 11), // "pfs::Frame*"
QT_MOC_LITERAL(49, 571, 8), // "setFrame"
QT_MOC_LITERAL(50, 580, 9), // "new_frame"
QT_MOC_LITERAL(51, 590, 19), // "TonemappingOptions*"
QT_MOC_LITERAL(52, 610, 6), // "tmopts"
QT_MOC_LITERAL(53, 617, 14), // "setFrameShared"
QT_MOC_LITERAL(54, 632, 27), // "std::shared_ptr<pfs::Frame>"
QT_MOC_LITERAL(55, 660, 25), // "slotPanIconSelectionMoved"
QT_MOC_LITERAL(56, 686, 17), // "slotPanIconHidden"
QT_MOC_LITERAL(57, 704, 23), // "slotCornerButtonPressed"
QT_MOC_LITERAL(58, 728, 16), // "scrollBarChanged"
QT_MOC_LITERAL(59, 745, 13) // "startDragging"

    },
    "GenericViewer\0selectionReady\0\0isReady\0"
    "changed\0GenericViewer*\0v\0reparent\0"
    "close\0goNext\0goPrevious\0syncViewers\0"
    "reject\0updatePixmap\0updateView\0zoomIn\0"
    "zoomOut\0fitToWindow\0checked\0fillToWindow\0"
    "normalSize\0getViewerMode\0ViewerMode\0"
    "setViewerMode\0viewer_mode\0hasSelection\0"
    "setSelectionTool\0getSelectionRect\0"
    "removeSelection\0needsSaving\0setNeedsSaving\0"
    "getFileName\0setFileName\0syncViewer\0"
    "src\0isHDR\0getMaxLuminanceValue\0"
    "getMinLuminanceValue\0getLuminanceMappingMethod\0"
    "RGBMappingType\0getFileNamePostFix\0"
    "getExifComment\0getQImage\0setQImage\0"
    "qimage\0setDevicePixelRatio\0s\0getFrame\0"
    "pfs::Frame*\0setFrame\0new_frame\0"
    "TonemappingOptions*\0tmopts\0setFrameShared\0"
    "std::shared_ptr<pfs::Frame>\0"
    "slotPanIconSelectionMoved\0slotPanIconHidden\0"
    "slotCornerButtonPressed\0scrollBarChanged\0"
    "startDragging"
};
#undef QT_MOC_LITERAL

static const uint qt_meta_data_GenericViewer[] = {

 // content:
       8,       // revision
       0,       // classname
       0,    0, // classinfo
      45,   14, // methods
       0,    0, // properties
       0,    0, // enums/sets
       0,    0, // constructors
       0,       // flags
       8,       // signalCount

 // signals: name, argc, parameters, tag, flags
       1,    1,  239,    2, 0x06 /* Public */,
       4,    1,  242,    2, 0x06 /* Public */,
       7,    2,  245,    2, 0x06 /* Public */,
       7,    1,  250,    2, 0x26 /* Public | MethodCloned */,
       9,    1,  253,    2, 0x06 /* Public */,
      10,    1,  256,    2, 0x06 /* Public */,
      11,    1,  259,    2, 0x06 /* Public */,
      12,    0,  262,    2, 0x06 /* Public */,

 // slots: name, argc, parameters, tag, flags
      13,    0,  263,    2, 0x0a /* Public */,
      14,    0,  264,    2, 0x0a /* Public */,
      15,    0,  265,    2, 0x0a /* Public */,
      16,    0,  266,    2, 0x0a /* Public */,
      17,    1,  267,    2, 0x0a /* Public */,
      17,    0,  270,    2, 0x2a /* Public | MethodCloned */,
      19,    0,  271,    2, 0x0a /* Public */,
      20,    0,  272,    2, 0x0a /* Public */,
      21,    0,  273,    2, 0x0a /* Public */,
      23,    1,  274,    2, 0x0a /* Public */,
      25,    0,  277,    2, 0x0a /* Public */,
      26,    1,  278,    2, 0x0a /* Public */,
      27,    0,  281,    2, 0x0a /* Public */,
      28,    0,  282,    2, 0x0a /* Public */,
      29,    0,  283,    2, 0x0a /* Public */,
      30,    1,  284,    2, 0x0a /* Public */,
      31,    0,  287,    2, 0x0a /* Public */,
      32,    1,  288,    2, 0x0a /* Public */,
      33,    1,  291,    2, 0x0a /* Public */,
      35,    0,  294,    2, 0x0a /* Public */,
      36,    0,  295,    2, 0x0a /* Public */,
      37,    0,  296,    2, 0x0a /* Public */,
      38,    0,  297,    2, 0x0a /* Public */,
      40,    0,  298,    2, 0x0a /* Public */,
      41,    0,  299,    2, 0x0a /* Public */,
      42,    0,  300,    2, 0x0a /* Public */,
      43,    1,  301,    2, 0x0a /* Public */,
      45,    1,  304,    2, 0x0a /* Public */,
      47,    0,  307,    2, 0x0a /* Public */,
      49,    2,  308,    2, 0x0a /* Public */,
      49,    1,  313,    2, 0x2a /* Public | MethodCloned */,
      53,    1,  316,    2, 0x0a /* Public */,
      55,    1,  319,    2, 0x09 /* Protected */,
      56,    0,  322,    2, 0x09 /* Protected */,
      57,    0,  323,    2, 0x09 /* Protected */,
      58,    1,  324,    2, 0x09 /* Protected */,
      59,    0,  327,    2, 0x09 /* Protected */,

 // signals: parameters
    QMetaType::Void, QMetaType::Bool,    3,
    QMetaType::Void, 0x80000000 | 5,    6,
    QMetaType::Void, 0x80000000 | 5, QMetaType::Bool,    6,    8,
    QMetaType::Void, 0x80000000 | 5,    6,
    QMetaType::Void, 0x80000000 | 5,    6,
    QMetaType::Void, 0x80000000 | 5,    6,
    QMetaType::Void, 0x80000000 | 5,    6,
    QMetaType::Void,

 // slots: parameters
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void, QMetaType::Bool,   18,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void,
    0x80000000 | 22,
    QMetaType::Void, 0x80000000 | 22,   24,
    QMetaType::Bool,
    QMetaType::Void, QMetaType::Bool,    2,
    QMetaType::QRect,
    QMetaType::Void,
    QMetaType::Bool,
    QMetaType::Void, QMetaType::Bool,    2,
    QMetaType::Void,
    QMetaType::Void, QMetaType::QString,    2,
    QMetaType::Void, 0x80000000 | 5,   34,
    QMetaType::Bool,
    QMetaType::Float,
    QMetaType::Float,
    0x80000000 | 39,
    QMetaType::QString,
    QMetaType::QString,
    QMetaType::QImage,
    QMetaType::Void, QMetaType::QImage,   44,
    QMetaType::Void, QMetaType::Float,   46,
    0x80000000 | 48,
    QMetaType::Void, 0x80000000 | 48, 0x80000000 | 51,   50,   52,
    QMetaType::Void, 0x80000000 | 48,   50,
    QMetaType::Void, 0x80000000 | 54,   50,
    QMetaType::Void, QMetaType::QRect,    2,
    QMetaType::Void,
    QMetaType::Void,
    QMetaType::Void, QMetaType::Int,    2,
    QMetaType::Void,

       0        // eod
};

void GenericViewer::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    if (_c == QMetaObject::InvokeMetaMethod) {
        auto *_t = static_cast<GenericViewer *>(_o);
        (void)_t;
        switch (_id) {
        case 0: _t->selectionReady((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 1: _t->changed((*reinterpret_cast< GenericViewer*(*)>(_a[1]))); break;
        case 2: _t->reparent((*reinterpret_cast< GenericViewer*(*)>(_a[1])),(*reinterpret_cast< bool(*)>(_a[2]))); break;
        case 3: _t->reparent((*reinterpret_cast< GenericViewer*(*)>(_a[1]))); break;
        case 4: _t->goNext((*reinterpret_cast< GenericViewer*(*)>(_a[1]))); break;
        case 5: _t->goPrevious((*reinterpret_cast< GenericViewer*(*)>(_a[1]))); break;
        case 6: _t->syncViewers((*reinterpret_cast< GenericViewer*(*)>(_a[1]))); break;
        case 7: _t->reject(); break;
        case 8: _t->updatePixmap(); break;
        case 9: _t->updateView(); break;
        case 10: _t->zoomIn(); break;
        case 11: _t->zoomOut(); break;
        case 12: _t->fitToWindow((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 13: _t->fitToWindow(); break;
        case 14: _t->fillToWindow(); break;
        case 15: _t->normalSize(); break;
        case 16: { ViewerMode _r = _t->getViewerMode();
            if (_a[0]) *reinterpret_cast< ViewerMode*>(_a[0]) = std::move(_r); }  break;
        case 17: _t->setViewerMode((*reinterpret_cast< ViewerMode(*)>(_a[1]))); break;
        case 18: { bool _r = _t->hasSelection();
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = std::move(_r); }  break;
        case 19: _t->setSelectionTool((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 20: { QRect _r = _t->getSelectionRect();
            if (_a[0]) *reinterpret_cast< QRect*>(_a[0]) = std::move(_r); }  break;
        case 21: _t->removeSelection(); break;
        case 22: { bool _r = _t->needsSaving();
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = std::move(_r); }  break;
        case 23: _t->setNeedsSaving((*reinterpret_cast< bool(*)>(_a[1]))); break;
        case 24: _t->getFileName(); break;
        case 25: _t->setFileName((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 26: _t->syncViewer((*reinterpret_cast< GenericViewer*(*)>(_a[1]))); break;
        case 27: { bool _r = _t->isHDR();
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = std::move(_r); }  break;
        case 28: { float _r = _t->getMaxLuminanceValue();
            if (_a[0]) *reinterpret_cast< float*>(_a[0]) = std::move(_r); }  break;
        case 29: { float _r = _t->getMinLuminanceValue();
            if (_a[0]) *reinterpret_cast< float*>(_a[0]) = std::move(_r); }  break;
        case 30: { RGBMappingType _r = _t->getLuminanceMappingMethod();
            if (_a[0]) *reinterpret_cast< RGBMappingType*>(_a[0]) = std::move(_r); }  break;
        case 31: { QString _r = _t->getFileNamePostFix();
            if (_a[0]) *reinterpret_cast< QString*>(_a[0]) = std::move(_r); }  break;
        case 32: { QString _r = _t->getExifComment();
            if (_a[0]) *reinterpret_cast< QString*>(_a[0]) = std::move(_r); }  break;
        case 33: { QImage _r = _t->getQImage();
            if (_a[0]) *reinterpret_cast< QImage*>(_a[0]) = std::move(_r); }  break;
        case 34: _t->setQImage((*reinterpret_cast< const QImage(*)>(_a[1]))); break;
        case 35: _t->setDevicePixelRatio((*reinterpret_cast< const float(*)>(_a[1]))); break;
        case 36: { pfs::Frame* _r = _t->getFrame();
            if (_a[0]) *reinterpret_cast< pfs::Frame**>(_a[0]) = std::move(_r); }  break;
        case 37: _t->setFrame((*reinterpret_cast< pfs::Frame*(*)>(_a[1])),(*reinterpret_cast< TonemappingOptions*(*)>(_a[2]))); break;
        case 38: _t->setFrame((*reinterpret_cast< pfs::Frame*(*)>(_a[1]))); break;
        case 39: _t->setFrameShared((*reinterpret_cast< std::shared_ptr<pfs::Frame>(*)>(_a[1]))); break;
        case 40: _t->slotPanIconSelectionMoved((*reinterpret_cast< QRect(*)>(_a[1]))); break;
        case 41: _t->slotPanIconHidden(); break;
        case 42: _t->slotCornerButtonPressed(); break;
        case 43: _t->scrollBarChanged((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 44: _t->startDragging(); break;
        default: ;
        }
    } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        switch (_id) {
        default: *reinterpret_cast<int*>(_a[0]) = -1; break;
        case 1:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<int*>(_a[0]) = -1; break;
            case 0:
                *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< GenericViewer* >(); break;
            }
            break;
        case 2:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<int*>(_a[0]) = -1; break;
            case 0:
                *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< GenericViewer* >(); break;
            }
            break;
        case 3:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<int*>(_a[0]) = -1; break;
            case 0:
                *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< GenericViewer* >(); break;
            }
            break;
        case 4:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<int*>(_a[0]) = -1; break;
            case 0:
                *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< GenericViewer* >(); break;
            }
            break;
        case 5:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<int*>(_a[0]) = -1; break;
            case 0:
                *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< GenericViewer* >(); break;
            }
            break;
        case 6:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<int*>(_a[0]) = -1; break;
            case 0:
                *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< GenericViewer* >(); break;
            }
            break;
        case 26:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<int*>(_a[0]) = -1; break;
            case 0:
                *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< GenericViewer* >(); break;
            }
            break;
        }
    } else if (_c == QMetaObject::IndexOfMethod) {
        int *result = reinterpret_cast<int *>(_a[0]);
        {
            using _t = void (GenericViewer::*)(bool );
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&GenericViewer::selectionReady)) {
                *result = 0;
                return;
            }
        }
        {
            using _t = void (GenericViewer::*)(GenericViewer * );
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&GenericViewer::changed)) {
                *result = 1;
                return;
            }
        }
        {
            using _t = void (GenericViewer::*)(GenericViewer * , bool );
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&GenericViewer::reparent)) {
                *result = 2;
                return;
            }
        }
        {
            using _t = void (GenericViewer::*)(GenericViewer * );
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&GenericViewer::goNext)) {
                *result = 4;
                return;
            }
        }
        {
            using _t = void (GenericViewer::*)(GenericViewer * );
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&GenericViewer::goPrevious)) {
                *result = 5;
                return;
            }
        }
        {
            using _t = void (GenericViewer::*)(GenericViewer * );
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&GenericViewer::syncViewers)) {
                *result = 6;
                return;
            }
        }
        {
            using _t = void (GenericViewer::*)();
            if (*reinterpret_cast<_t *>(_a[1]) == static_cast<_t>(&GenericViewer::reject)) {
                *result = 7;
                return;
            }
        }
    }
}

QT_INIT_METAOBJECT const QMetaObject GenericViewer::staticMetaObject = { {
    QMetaObject::SuperData::link<QWidget::staticMetaObject>(),
    qt_meta_stringdata_GenericViewer.data,
    qt_meta_data_GenericViewer,
    qt_static_metacall,
    nullptr,
    nullptr
} };


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

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

int GenericViewer::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QWidget::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 45)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 45;
    } else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 45)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 45;
    }
    return _id;
}

// SIGNAL 0
void GenericViewer::selectionReady(bool _t1)
{
    void *_a[] = { nullptr, const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t1))) };
    QMetaObject::activate(this, &staticMetaObject, 0, _a);
}

// SIGNAL 1
void GenericViewer::changed(GenericViewer * _t1)
{
    void *_a[] = { nullptr, const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t1))) };
    QMetaObject::activate(this, &staticMetaObject, 1, _a);
}

// SIGNAL 2
void GenericViewer::reparent(GenericViewer * _t1, bool _t2)
{
    void *_a[] = { nullptr, const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t1))), const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t2))) };
    QMetaObject::activate(this, &staticMetaObject, 2, _a);
}

// SIGNAL 4
void GenericViewer::goNext(GenericViewer * _t1)
{
    void *_a[] = { nullptr, const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t1))) };
    QMetaObject::activate(this, &staticMetaObject, 4, _a);
}

// SIGNAL 5
void GenericViewer::goPrevious(GenericViewer * _t1)
{
    void *_a[] = { nullptr, const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t1))) };
    QMetaObject::activate(this, &staticMetaObject, 5, _a);
}

// SIGNAL 6
void GenericViewer::syncViewers(GenericViewer * _t1)
{
    void *_a[] = { nullptr, const_cast<void*>(reinterpret_cast<const void*>(std::addressof(_t1))) };
    QMetaObject::activate(this, &staticMetaObject, 6, _a);
}

// SIGNAL 7
void GenericViewer::reject()
{
    QMetaObject::activate(this, &staticMetaObject, 7, nullptr);
}
QT_WARNING_POP
QT_END_MOC_NAMESPACE
