//Auto-generated by /usr/bin/smokegen. DO NOT EDIT.
#include <qtcore_includes.h>
#include <typeinfo>

#include <smoke.h>
#include <qtcore_smoke.h>

class __internal_SmokeClass {};

namespace __smokeqtcore {

class x_QRegExp : public QRegExp {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // QRegExp* QRegExp()
        x_QRegExp* xret = new x_QRegExp();
        x[0].s_class = (void*)xret;
    }
    explicit x_QRegExp() : QRegExp() {}
    static void x_2(Smoke::Stack x) {
        // QRegExp* QRegExp(const QString&, Qt::CaseSensitivity, QRegExp::PatternSyntax)
        x_QRegExp* xret = new x_QRegExp(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum,(QRegExp::PatternSyntax)x[3].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QRegExp(const QString& x1, Qt::CaseSensitivity x2, QRegExp::PatternSyntax x3) : QRegExp(x1, x2, x3) {}
    static void x_3(Smoke::Stack x) {
        // QRegExp* QRegExp(const QRegExp&)
        x_QRegExp* xret = new x_QRegExp(*(const QRegExp*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QRegExp(const QRegExp& x1) : QRegExp(x1) {}
    void x_4(Smoke::Stack x) {
        // QRegExp& operator=(const QRegExp&)
        QRegExp& xret = this->QRegExp::operator=(*(const QRegExp*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_5(Smoke::Stack x) {
        // void swap(QRegExp&)
        this->QRegExp::swap(*(QRegExp*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // bool operator==(const QRegExp&) const
        bool xret = ((const x_QRegExp*)this)->QRegExp::operator==(*(const QRegExp*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_7(Smoke::Stack x) {
        // bool operator!=(const QRegExp&) const
        bool xret = ((const x_QRegExp*)this)->QRegExp::operator!=(*(const QRegExp*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_8(Smoke::Stack x) {
        // bool isEmpty() const
        bool xret = ((const x_QRegExp*)this)->QRegExp::isEmpty();
        x[0].s_bool = xret;
    }
    void x_9(Smoke::Stack x) {
        // bool isValid() const
        bool xret = ((const x_QRegExp*)this)->QRegExp::isValid();
        x[0].s_bool = xret;
    }
    void x_10(Smoke::Stack x) {
        // QString pattern() const
        QString xret = ((const x_QRegExp*)this)->QRegExp::pattern();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_11(Smoke::Stack x) {
        // void setPattern(const QString&)
        this->QRegExp::setPattern(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // Qt::CaseSensitivity caseSensitivity() const
        Qt::CaseSensitivity xret = ((const x_QRegExp*)this)->QRegExp::caseSensitivity();
        x[0].s_enum = xret;
    }
    void x_13(Smoke::Stack x) {
        // void setCaseSensitivity(Qt::CaseSensitivity)
        this->QRegExp::setCaseSensitivity((Qt::CaseSensitivity)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // QRegExp::PatternSyntax patternSyntax() const
        QRegExp::PatternSyntax xret = ((const x_QRegExp*)this)->QRegExp::patternSyntax();
        x[0].s_enum = xret;
    }
    void x_15(Smoke::Stack x) {
        // void setPatternSyntax(QRegExp::PatternSyntax)
        this->QRegExp::setPatternSyntax((QRegExp::PatternSyntax)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // bool isMinimal() const
        bool xret = ((const x_QRegExp*)this)->QRegExp::isMinimal();
        x[0].s_bool = xret;
    }
    void x_17(Smoke::Stack x) {
        // void setMinimal(bool)
        this->QRegExp::setMinimal((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // bool exactMatch(const QString&) const
        bool xret = ((const x_QRegExp*)this)->QRegExp::exactMatch(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_19(Smoke::Stack x) {
        // int indexIn(const QString&, int, QRegExp::CaretMode) const
        int xret = ((const x_QRegExp*)this)->QRegExp::indexIn(*(const QString*)x[1].s_class,(int)x[2].s_int,(QRegExp::CaretMode)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_20(Smoke::Stack x) {
        // int lastIndexIn(const QString&, int, QRegExp::CaretMode) const
        int xret = ((const x_QRegExp*)this)->QRegExp::lastIndexIn(*(const QString*)x[1].s_class,(int)x[2].s_int,(QRegExp::CaretMode)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_21(Smoke::Stack x) {
        // int matchedLength() const
        int xret = ((const x_QRegExp*)this)->QRegExp::matchedLength();
        x[0].s_int = xret;
    }
    void x_22(Smoke::Stack x) {
        // int numCaptures() const
        int xret = ((const x_QRegExp*)this)->QRegExp::numCaptures();
        x[0].s_int = xret;
    }
    void x_23(Smoke::Stack x) {
        // int captureCount() const
        int xret = ((const x_QRegExp*)this)->QRegExp::captureCount();
        x[0].s_int = xret;
    }
    void x_24(Smoke::Stack x) {
        // QStringList capturedTexts() const
        QStringList xret = ((const x_QRegExp*)this)->QRegExp::capturedTexts();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_25(Smoke::Stack x) {
        // QStringList capturedTexts()
        QStringList xret = this->QRegExp::capturedTexts();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_26(Smoke::Stack x) {
        // QString cap(int) const
        QString xret = ((const x_QRegExp*)this)->QRegExp::cap((int)x[1].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_27(Smoke::Stack x) {
        // QString cap(int)
        QString xret = this->QRegExp::cap((int)x[1].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_28(Smoke::Stack x) {
        // int pos(int) const
        int xret = ((const x_QRegExp*)this)->QRegExp::pos((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_29(Smoke::Stack x) {
        // int pos(int)
        int xret = this->QRegExp::pos((int)x[1].s_int);
        x[0].s_int = xret;
    }
    void x_30(Smoke::Stack x) {
        // QString errorString() const
        QString xret = ((const x_QRegExp*)this)->QRegExp::errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_31(Smoke::Stack x) {
        // QString errorString()
        QString xret = this->QRegExp::errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_32(Smoke::Stack x) {
        // static QString escape(const QString&)
        QString xret = QRegExp::escape(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_33(Smoke::Stack x) {
        // QRegExp* QRegExp(const QString&)
        x_QRegExp* xret = new x_QRegExp(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive,(QRegExp::PatternSyntax)QRegExp::RegExp);
        x[0].s_class = (void*)xret;
    }
    static void x_34(Smoke::Stack x) {
        // QRegExp* QRegExp(const QString&, Qt::CaseSensitivity)
        x_QRegExp* xret = new x_QRegExp(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum,(QRegExp::PatternSyntax)QRegExp::RegExp);
        x[0].s_class = (void*)xret;
    }
    void x_35(Smoke::Stack x) {
        // int indexIn(const QString&) const
        int xret = ((const x_QRegExp*)this)->QRegExp::indexIn(*(const QString*)x[1].s_class,(int)0,(QRegExp::CaretMode)QRegExp::CaretAtZero);
        x[0].s_int = xret;
    }
    void x_36(Smoke::Stack x) {
        // int indexIn(const QString&, int) const
        int xret = ((const x_QRegExp*)this)->QRegExp::indexIn(*(const QString*)x[1].s_class,(int)x[2].s_int,(QRegExp::CaretMode)QRegExp::CaretAtZero);
        x[0].s_int = xret;
    }
    void x_37(Smoke::Stack x) {
        // int lastIndexIn(const QString&) const
        int xret = ((const x_QRegExp*)this)->QRegExp::lastIndexIn(*(const QString*)x[1].s_class,(int)-1,(QRegExp::CaretMode)QRegExp::CaretAtZero);
        x[0].s_int = xret;
    }
    void x_38(Smoke::Stack x) {
        // int lastIndexIn(const QString&, int) const
        int xret = ((const x_QRegExp*)this)->QRegExp::lastIndexIn(*(const QString*)x[1].s_class,(int)x[2].s_int,(QRegExp::CaretMode)QRegExp::CaretAtZero);
        x[0].s_int = xret;
    }
    void x_39(Smoke::Stack x) {
        // QString cap() const
        QString xret = ((const x_QRegExp*)this)->QRegExp::cap((int)0);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_40(Smoke::Stack x) {
        // QString cap()
        QString xret = this->QRegExp::cap((int)0);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_41(Smoke::Stack x) {
        // int pos() const
        int xret = ((const x_QRegExp*)this)->QRegExp::pos((int)0);
        x[0].s_int = xret;
    }
    void x_42(Smoke::Stack x) {
        // int pos()
        int xret = this->QRegExp::pos((int)0);
        x[0].s_int = xret;
    }
    static void x_43(Smoke::Stack x) {
        x[0].s_enum = (long)QRegExp::RegExp;
    }
    static void x_44(Smoke::Stack x) {
        x[0].s_enum = (long)QRegExp::Wildcard;
    }
    static void x_45(Smoke::Stack x) {
        x[0].s_enum = (long)QRegExp::FixedString;
    }
    static void x_46(Smoke::Stack x) {
        x[0].s_enum = (long)QRegExp::RegExp2;
    }
    static void x_47(Smoke::Stack x) {
        x[0].s_enum = (long)QRegExp::WildcardUnix;
    }
    static void x_48(Smoke::Stack x) {
        x[0].s_enum = (long)QRegExp::W3CXmlSchema11;
    }
    static void x_49(Smoke::Stack x) {
        x[0].s_enum = (long)QRegExp::CaretAtZero;
    }
    static void x_50(Smoke::Stack x) {
        x[0].s_enum = (long)QRegExp::CaretAtOffset;
    }
    static void x_51(Smoke::Stack x) {
        x[0].s_enum = (long)QRegExp::CaretWontMatch;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 280: //QRegExp::PatternSyntax
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QRegExp::PatternSyntax;
                    break;
                case Smoke::EnumDelete:
                    delete (QRegExp::PatternSyntax*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QRegExp::PatternSyntax*)xdata = (QRegExp::PatternSyntax)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QRegExp::PatternSyntax*)xdata;
                    break;
            }
            break;
        case 279: //QRegExp::CaretMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QRegExp::CaretMode;
                    break;
                case Smoke::EnumDelete:
                    delete (QRegExp::CaretMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QRegExp::CaretMode*)xdata = (QRegExp::CaretMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QRegExp::CaretMode*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QRegExp() { this->_binding->deleted(97, (void*)this); }
};
void xenum_QRegExp(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QRegExp::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QRegExp(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QRegExp *xself = (x_QRegExp*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QRegExp::x_1(args);	break;
        case 2: x_QRegExp::x_2(args);	break;
        case 3: x_QRegExp::x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: x_QRegExp::x_32(args);	break;
        case 33: x_QRegExp::x_33(args);	break;
        case 34: x_QRegExp::x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: xself->x_40(args);	break;
        case 41: xself->x_41(args);	break;
        case 42: xself->x_42(args);	break;
        case 43: x_QRegExp::x_43(args);	break;
        case 44: x_QRegExp::x_44(args);	break;
        case 45: x_QRegExp::x_45(args);	break;
        case 46: x_QRegExp::x_46(args);	break;
        case 47: x_QRegExp::x_47(args);	break;
        case 48: x_QRegExp::x_48(args);	break;
        case 49: x_QRegExp::x_49(args);	break;
        case 50: x_QRegExp::x_50(args);	break;
        case 51: x_QRegExp::x_51(args);	break;
        case 52: delete (QRegExp*)xself;	break;
    }
}
class x_QResource : public QResource {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // QResource* QResource(const QString&, const QLocale&)
        x_QResource* xret = new x_QResource(*(const QString*)x[1].s_class,*(const QLocale*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QResource(const QString& x1, const QLocale& x2) : QResource(x1, x2) {}
    void x_2(Smoke::Stack x) {
        // void setFileName(const QString&)
        this->QResource::setFileName(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // QString fileName() const
        QString xret = ((const x_QResource*)this)->QResource::fileName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_4(Smoke::Stack x) {
        // QString absoluteFilePath() const
        QString xret = ((const x_QResource*)this)->QResource::absoluteFilePath();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // void setLocale(const QLocale&)
        this->QResource::setLocale(*(const QLocale*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // QLocale locale() const
        QLocale xret = ((const x_QResource*)this)->QResource::locale();
        x[0].s_class = (void*)new QLocale(xret);
    }
    void x_7(Smoke::Stack x) {
        // bool isValid() const
        bool xret = ((const x_QResource*)this)->QResource::isValid();
        x[0].s_bool = xret;
    }
    void x_8(Smoke::Stack x) {
        // bool isCompressed() const
        bool xret = ((const x_QResource*)this)->QResource::isCompressed();
        x[0].s_bool = xret;
    }
    void x_9(Smoke::Stack x) {
        // long long size() const
        long long xret = ((const x_QResource*)this)->QResource::size();
        x[0].s_class = (void*)new long long(xret);
    }
    void x_10(Smoke::Stack x) {
        // const unsigned char* data() const
        const unsigned char* xret = ((const x_QResource*)this)->QResource::data();
        x[0].s_class = (void*)xret;
    }
    static void x_11(Smoke::Stack x) {
        // static void addSearchPath(const QString&)
        QResource::addSearchPath(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_12(Smoke::Stack x) {
        // static QStringList searchPaths()
        QStringList xret = QResource::searchPaths();
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_13(Smoke::Stack x) {
        // static bool registerResource(const QString&, const QString&)
        bool xret = QResource::registerResource(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    static void x_14(Smoke::Stack x) {
        // static bool unregisterResource(const QString&, const QString&)
        bool xret = QResource::unregisterResource(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    static void x_15(Smoke::Stack x) {
        // static bool registerResource(const unsigned char*, const QString&)
        bool xret = QResource::registerResource((const unsigned char*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    static void x_16(Smoke::Stack x) {
        // static bool unregisterResource(const unsigned char*, const QString&)
        bool xret = QResource::unregisterResource((const unsigned char*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_17(Smoke::Stack x) {
        // bool isDir() const
        bool xret = ((const x_QResource*)this)->QResource::isDir();
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // bool isFile() const
        bool xret = ((const x_QResource*)this)->QResource::isFile();
        x[0].s_bool = xret;
    }
    void x_19(Smoke::Stack x) {
        // QStringList children() const
        QStringList xret = ((const x_QResource*)this)->QResource::children();
        x[0].s_class = (void*)new QStringList(xret);
    }
    static void x_20(Smoke::Stack x) {
        // QResource* QResource()
        x_QResource* xret = new x_QResource((const QString&)QString(),(const QLocale&)QLocale());
        x[0].s_class = (void*)xret;
    }
    static void x_21(Smoke::Stack x) {
        // QResource* QResource(const QString&)
        x_QResource* xret = new x_QResource(*(const QString*)x[1].s_class,(const QLocale&)QLocale());
        x[0].s_class = (void*)xret;
    }
    static void x_22(Smoke::Stack x) {
        // static bool registerResource(const QString&)
        bool xret = QResource::registerResource(*(const QString*)x[1].s_class,(const QString&)QString());
        x[0].s_bool = xret;
    }
    static void x_23(Smoke::Stack x) {
        // static bool unregisterResource(const QString&)
        bool xret = QResource::unregisterResource(*(const QString*)x[1].s_class,(const QString&)QString());
        x[0].s_bool = xret;
    }
    static void x_24(Smoke::Stack x) {
        // static bool registerResource(const unsigned char*)
        bool xret = QResource::registerResource((const unsigned char*)x[1].s_class,(const QString&)QString());
        x[0].s_bool = xret;
    }
    static void x_25(Smoke::Stack x) {
        // static bool unregisterResource(const unsigned char*)
        bool xret = QResource::unregisterResource((const unsigned char*)x[1].s_class,(const QString&)QString());
        x[0].s_bool = xret;
    }
    ~x_QResource() { this->_binding->deleted(98, (void*)this); }
};
void xcall_QResource(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QResource *xself = (x_QResource*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QResource::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: x_QResource::x_11(args);	break;
        case 12: x_QResource::x_12(args);	break;
        case 13: x_QResource::x_13(args);	break;
        case 14: x_QResource::x_14(args);	break;
        case 15: x_QResource::x_15(args);	break;
        case 16: x_QResource::x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: x_QResource::x_20(args);	break;
        case 21: x_QResource::x_21(args);	break;
        case 22: x_QResource::x_22(args);	break;
        case 23: x_QResource::x_23(args);	break;
        case 24: x_QResource::x_24(args);	break;
        case 25: x_QResource::x_25(args);	break;
        case 26: delete (QResource*)xself;	break;
    }
}
class x_QRunnable : public QRunnable, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    void x_1(Smoke::Stack x) {
        // virtual void run() = 0
        this->run();
        (void)x; // noop (for compiler warning)
    }
    static void x_2(Smoke::Stack x) {
        // QRunnable* QRunnable()
        x_QRunnable* xret = new x_QRunnable();
        x[0].s_class = (void*)xret;
    }
    explicit x_QRunnable() : QRunnable() {}
    void x_3(Smoke::Stack x) {
        // bool autoDelete() const
        bool xret = ((const x_QRunnable*)this)->QRunnable::autoDelete();
        x[0].s_bool = xret;
    }
    void x_4(Smoke::Stack x) {
        // void setAutoDelete(bool)
        this->QRunnable::setAutoDelete((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    static void x_5(Smoke::Stack x) {
        // QRunnable* QRunnable(const QRunnable&)
        x_QRunnable* xret = new x_QRunnable(*(const QRunnable*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QRunnable(const QRunnable& x1) : QRunnable(x1) {}
    virtual void run() {
        Smoke::StackItem x[1];
        this->_binding->callMethod(4375, (void*)this, x, true /*pure virtual*/);
    }
    ~x_QRunnable() { this->_binding->deleted(99, (void*)this); }
};
void xcall_QRunnable(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QRunnable *xself = (x_QRunnable*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: x_QRunnable::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QRunnable::x_5(args);	break;
        case 6: delete (QRunnable*)xself;	break;
    }
}
class x_QSemaphore : public QSemaphore {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // QSemaphore* QSemaphore(int)
        x_QSemaphore* xret = new x_QSemaphore((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSemaphore(int x1) : QSemaphore(x1) {}
    void x_2(Smoke::Stack x) {
        // void acquire(int)
        this->QSemaphore::acquire((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // bool tryAcquire(int)
        bool xret = this->QSemaphore::tryAcquire((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    void x_4(Smoke::Stack x) {
        // bool tryAcquire(int, int)
        bool xret = this->QSemaphore::tryAcquire((int)x[1].s_int,(int)x[2].s_int);
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // void release(int)
        this->QSemaphore::release((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // int available() const
        int xret = ((const x_QSemaphore*)this)->QSemaphore::available();
        x[0].s_int = xret;
    }
    static void x_7(Smoke::Stack x) {
        // QSemaphore* QSemaphore()
        x_QSemaphore* xret = new x_QSemaphore((int)0);
        x[0].s_class = (void*)xret;
    }
    void x_8(Smoke::Stack x) {
        // void acquire()
        this->QSemaphore::acquire((int)1);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // bool tryAcquire()
        bool xret = this->QSemaphore::tryAcquire((int)1);
        x[0].s_bool = xret;
    }
    void x_10(Smoke::Stack x) {
        // void release()
        this->QSemaphore::release((int)1);
        (void)x; // noop (for compiler warning)
    }
    ~x_QSemaphore() { this->_binding->deleted(100, (void*)this); }
};
void xcall_QSemaphore(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSemaphore *xself = (x_QSemaphore*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QSemaphore::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: x_QSemaphore::x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: delete (QSemaphore*)xself;	break;
    }
}
class x_QSequentialAnimationGroup : public QSequentialAnimationGroup, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    void x_1(Smoke::Stack x) {
        // virtual const QMetaObject* metaObject() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSequentialAnimationGroup*>(this))) {
            const QMetaObject* xret = ((const x_QSequentialAnimationGroup*)this)->QSequentialAnimationGroup::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QSequentialAnimationGroup*)this)->metaObject();
            x[0].s_class = (void*)xret;
        }
    }
    void x_2(Smoke::Stack x) {
        // virtual void* qt_metacast(const char*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSequentialAnimationGroup*>(this))) {
            void* xret = this->QSequentialAnimationGroup::qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        } else {
            void* xret = this->qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    static void x_3(Smoke::Stack x) {
        // static QString tr(const char*, const char*)
        QString xret = QSequentialAnimationGroup::tr((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_4(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*)
        QString xret = QSequentialAnimationGroup::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_5(Smoke::Stack x) {
        // static QString tr(const char*, const char*, int)
        QString xret = QSequentialAnimationGroup::tr((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_6(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*, int)
        QString xret = QSequentialAnimationGroup::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_7(Smoke::Stack x) {
        // virtual int qt_metacall(QMetaObject::Call, int, void**)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSequentialAnimationGroup*>(this))) {
            int xret = this->QSequentialAnimationGroup::qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        } else {
            int xret = this->qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        }
    }
    static void x_8(Smoke::Stack x) {
        // QSequentialAnimationGroup* QSequentialAnimationGroup(QObject*)
        x_QSequentialAnimationGroup* xret = new x_QSequentialAnimationGroup((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSequentialAnimationGroup(QObject* x1) : QSequentialAnimationGroup(x1) {}
    void x_9(Smoke::Stack x) {
        // QPauseAnimation* addPause(int)
        QPauseAnimation* xret = this->QSequentialAnimationGroup::addPause((int)x[1].s_int);
        x[0].s_class = (void*)xret;
    }
    void x_10(Smoke::Stack x) {
        // QPauseAnimation* insertPause(int, int)
        QPauseAnimation* xret = this->QSequentialAnimationGroup::insertPause((int)x[1].s_int,(int)x[2].s_int);
        x[0].s_class = (void*)xret;
    }
    void x_11(Smoke::Stack x) {
        // QAbstractAnimation* currentAnimation() const
        QAbstractAnimation* xret = ((const x_QSequentialAnimationGroup*)this)->QSequentialAnimationGroup::currentAnimation();
        x[0].s_class = (void*)xret;
    }
    void x_12(Smoke::Stack x) {
        // int duration() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSequentialAnimationGroup*>(this))) {
            int xret = ((const x_QSequentialAnimationGroup*)this)->QSequentialAnimationGroup::duration();
            x[0].s_int = xret;
        } else {
            int xret = ((const x_QSequentialAnimationGroup*)this)->duration();
            x[0].s_int = xret;
        }
    }
    void x_13(Smoke::Stack x) {
        // void currentAnimationChanged(QAbstractAnimation*)
        this->QSequentialAnimationGroup::currentAnimationChanged((QAbstractAnimation*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSequentialAnimationGroup*>(this))) {
            bool xret = this->QSequentialAnimationGroup::event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_15(Smoke::Stack x) {
        // void updateCurrentTime(int)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSequentialAnimationGroup*>(this))) {
            this->QSequentialAnimationGroup::updateCurrentTime((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        } else {
            this->updateCurrentTime((int)x[1].s_int);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_16(Smoke::Stack x) {
        // void updateState(QAbstractAnimation::State, QAbstractAnimation::State)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSequentialAnimationGroup*>(this))) {
            this->QSequentialAnimationGroup::updateState((QAbstractAnimation::State)x[1].s_enum,(QAbstractAnimation::State)x[2].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            this->updateState((QAbstractAnimation::State)x[1].s_enum,(QAbstractAnimation::State)x[2].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_17(Smoke::Stack x) {
        // void updateDirection(QAbstractAnimation::Direction)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSequentialAnimationGroup*>(this))) {
            this->QSequentialAnimationGroup::updateDirection((QAbstractAnimation::Direction)x[1].s_enum);
            (void)x; // noop (for compiler warning)
        } else {
            this->updateDirection((QAbstractAnimation::Direction)x[1].s_enum);
            (void)x; // noop (for compiler warning)
        }
    }
    static void x_18(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QSequentialAnimationGroup::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_19(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QSequentialAnimationGroup::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_20(Smoke::Stack x) {
        // QSequentialAnimationGroup* QSequentialAnimationGroup()
        x_QSequentialAnimationGroup* xret = new x_QSequentialAnimationGroup((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_21(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QSequentialAnimationGroup::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(4392, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QSequentialAnimationGroup::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4393, (void*)this, x)) return (void*)x[0].s_class;
        return this->QSequentialAnimationGroup::qt_metacast(x1);
    }
    virtual int qt_metacall(QMetaObject::Call x1, int x2, void** x3) {
        Smoke::StackItem x[4];
        x[1].s_enum = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(4398, (void*)this, x)) return (int)x[0].s_int;
        return this->QSequentialAnimationGroup::qt_metacall(x1, x2, x3);
    }
    virtual int duration() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(4403, (void*)this, x)) return (int)x[0].s_int;
        return this->QSequentialAnimationGroup::duration();
    }
    virtual void updateCurrentTime(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(4406, (void*)this, x)) return;
        this->QSequentialAnimationGroup::updateCurrentTime(x1);
    }
    virtual void updateState(QAbstractAnimation::State x1, QAbstractAnimation::State x2) {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_enum = x2;
        if (this->_binding->callMethod(4407, (void*)this, x)) return;
        this->QSequentialAnimationGroup::updateState(x1, x2);
    }
    virtual void updateDirection(QAbstractAnimation::Direction x1) {
        Smoke::StackItem x[2];
        x[1].s_enum = x1;
        if (this->_binding->callMethod(4408, (void*)this, x)) return;
        this->QSequentialAnimationGroup::updateDirection(x1);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4405, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QSequentialAnimationGroup::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(3805, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3841, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3842, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3843, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3844, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3845, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    ~x_QSequentialAnimationGroup() { this->_binding->deleted(101, (void*)this); }
};
void xcall_QSequentialAnimationGroup(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSequentialAnimationGroup *xself = (x_QSequentialAnimationGroup*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: x_QSequentialAnimationGroup::x_3(args);	break;
        case 4: x_QSequentialAnimationGroup::x_4(args);	break;
        case 5: x_QSequentialAnimationGroup::x_5(args);	break;
        case 6: x_QSequentialAnimationGroup::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QSequentialAnimationGroup::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: x_QSequentialAnimationGroup::x_18(args);	break;
        case 19: x_QSequentialAnimationGroup::x_19(args);	break;
        case 20: x_QSequentialAnimationGroup::x_20(args);	break;
        case 21: x_QSequentialAnimationGroup::x_21(args);	break;
        case 22: delete (QSequentialAnimationGroup*)xself;	break;
    }
}
class x_QSettings : public QSettings, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    void x_1(Smoke::Stack x) {
        // virtual const QMetaObject* metaObject() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSettings*>(this))) {
            const QMetaObject* xret = ((const x_QSettings*)this)->QSettings::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QSettings*)this)->metaObject();
            x[0].s_class = (void*)xret;
        }
    }
    void x_2(Smoke::Stack x) {
        // virtual void* qt_metacast(const char*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSettings*>(this))) {
            void* xret = this->QSettings::qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        } else {
            void* xret = this->qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    static void x_3(Smoke::Stack x) {
        // static QString tr(const char*, const char*)
        QString xret = QSettings::tr((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_4(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*)
        QString xret = QSettings::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_5(Smoke::Stack x) {
        // static QString tr(const char*, const char*, int)
        QString xret = QSettings::tr((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_6(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*, int)
        QString xret = QSettings::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_7(Smoke::Stack x) {
        // virtual int qt_metacall(QMetaObject::Call, int, void**)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSettings*>(this))) {
            int xret = this->QSettings::qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        } else {
            int xret = this->qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        }
    }
    static void x_8(Smoke::Stack x) {
        // QSettings* QSettings(const QString&, const QString&, QObject*)
        x_QSettings* xret = new x_QSettings(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(QObject*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSettings(const QString& x1, const QString& x2, QObject* x3) : QSettings(x1, x2, x3) {}
    static void x_9(Smoke::Stack x) {
        // QSettings* QSettings(QSettings::Scope, const QString&, const QString&, QObject*)
        x_QSettings* xret = new x_QSettings((QSettings::Scope)x[1].s_enum,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,(QObject*)x[4].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSettings(QSettings::Scope x1, const QString& x2, const QString& x3, QObject* x4) : QSettings(x1, x2, x3, x4) {}
    static void x_10(Smoke::Stack x) {
        // QSettings* QSettings(QSettings::Format, QSettings::Scope, const QString&, const QString&, QObject*)
        x_QSettings* xret = new x_QSettings((QSettings::Format)x[1].s_enum,(QSettings::Scope)x[2].s_enum,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QObject*)x[5].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSettings(QSettings::Format x1, QSettings::Scope x2, const QString& x3, const QString& x4, QObject* x5) : QSettings(x1, x2, x3, x4, x5) {}
    static void x_11(Smoke::Stack x) {
        // QSettings* QSettings(const QString&, QSettings::Format, QObject*)
        x_QSettings* xret = new x_QSettings(*(const QString*)x[1].s_class,(QSettings::Format)x[2].s_enum,(QObject*)x[3].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSettings(const QString& x1, QSettings::Format x2, QObject* x3) : QSettings(x1, x2, x3) {}
    static void x_12(Smoke::Stack x) {
        // QSettings* QSettings(QObject*)
        x_QSettings* xret = new x_QSettings((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSettings(QObject* x1) : QSettings(x1) {}
    void x_13(Smoke::Stack x) {
        // void clear()
        this->QSettings::clear();
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // void sync()
        this->QSettings::sync();
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // QSettings::Status status() const
        QSettings::Status xret = ((const x_QSettings*)this)->QSettings::status();
        x[0].s_enum = xret;
    }
    void x_16(Smoke::Stack x) {
        // void beginGroup(const QString&)
        this->QSettings::beginGroup(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // void endGroup()
        this->QSettings::endGroup();
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // QString group() const
        QString xret = ((const x_QSettings*)this)->QSettings::group();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_19(Smoke::Stack x) {
        // int beginReadArray(const QString&)
        int xret = this->QSettings::beginReadArray(*(const QString*)x[1].s_class);
        x[0].s_int = xret;
    }
    void x_20(Smoke::Stack x) {
        // void beginWriteArray(const QString&, int)
        this->QSettings::beginWriteArray(*(const QString*)x[1].s_class,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // void endArray()
        this->QSettings::endArray();
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // void setArrayIndex(int)
        this->QSettings::setArrayIndex((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // QStringList allKeys() const
        QStringList xret = ((const x_QSettings*)this)->QSettings::allKeys();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_24(Smoke::Stack x) {
        // QStringList childKeys() const
        QStringList xret = ((const x_QSettings*)this)->QSettings::childKeys();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_25(Smoke::Stack x) {
        // QStringList childGroups() const
        QStringList xret = ((const x_QSettings*)this)->QSettings::childGroups();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_26(Smoke::Stack x) {
        // bool isWritable() const
        bool xret = ((const x_QSettings*)this)->QSettings::isWritable();
        x[0].s_bool = xret;
    }
    void x_27(Smoke::Stack x) {
        // void setValue(const QString&, const QVariant&)
        this->QSettings::setValue(*(const QString*)x[1].s_class,*(const QVariant*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_28(Smoke::Stack x) {
        // QVariant value(const QString&, const QVariant&) const
        QVariant xret = ((const x_QSettings*)this)->QSettings::value(*(const QString*)x[1].s_class,*(const QVariant*)x[2].s_class);
        x[0].s_class = (void*)new QVariant(xret);
    }
    void x_29(Smoke::Stack x) {
        // void remove(const QString&)
        this->QSettings::remove(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_30(Smoke::Stack x) {
        // bool contains(const QString&) const
        bool xret = ((const x_QSettings*)this)->QSettings::contains(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_31(Smoke::Stack x) {
        // void setFallbacksEnabled(bool)
        this->QSettings::setFallbacksEnabled((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_32(Smoke::Stack x) {
        // bool fallbacksEnabled() const
        bool xret = ((const x_QSettings*)this)->QSettings::fallbacksEnabled();
        x[0].s_bool = xret;
    }
    void x_33(Smoke::Stack x) {
        // QString fileName() const
        QString xret = ((const x_QSettings*)this)->QSettings::fileName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_34(Smoke::Stack x) {
        // QSettings::Format format() const
        QSettings::Format xret = ((const x_QSettings*)this)->QSettings::format();
        x[0].s_enum = xret;
    }
    void x_35(Smoke::Stack x) {
        // QSettings::Scope scope() const
        QSettings::Scope xret = ((const x_QSettings*)this)->QSettings::scope();
        x[0].s_enum = xret;
    }
    void x_36(Smoke::Stack x) {
        // QString organizationName() const
        QString xret = ((const x_QSettings*)this)->QSettings::organizationName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_37(Smoke::Stack x) {
        // QString applicationName() const
        QString xret = ((const x_QSettings*)this)->QSettings::applicationName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_38(Smoke::Stack x) {
        // void setIniCodec(QTextCodec*)
        this->QSettings::setIniCodec((QTextCodec*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_39(Smoke::Stack x) {
        // void setIniCodec(const char*)
        this->QSettings::setIniCodec((const char*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_40(Smoke::Stack x) {
        // QTextCodec* iniCodec() const
        QTextCodec* xret = ((const x_QSettings*)this)->QSettings::iniCodec();
        x[0].s_class = (void*)xret;
    }
    static void x_41(Smoke::Stack x) {
        // static void setDefaultFormat(QSettings::Format)
        QSettings::setDefaultFormat((QSettings::Format)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    static void x_42(Smoke::Stack x) {
        // static QSettings::Format defaultFormat()
        QSettings::Format xret = QSettings::defaultFormat();
        x[0].s_enum = xret;
    }
    static void x_43(Smoke::Stack x) {
        // static void setSystemIniPath(const QString&)
        QSettings::setSystemIniPath(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_44(Smoke::Stack x) {
        // static void setUserIniPath(const QString&)
        QSettings::setUserIniPath(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_45(Smoke::Stack x) {
        // static void setPath(QSettings::Format, QSettings::Scope, const QString&)
        QSettings::setPath((QSettings::Format)x[1].s_enum,(QSettings::Scope)x[2].s_enum,*(const QString*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_46(Smoke::Stack x) {
        // static QSettings::Format registerFormat(const QString&, bool(*)(QIODevice&,QMap<QString,QVariant>&), bool(*)(QIODevice&,const QMap<QString,QVariant>&), Qt::CaseSensitivity)
        QSettings::Format xret = QSettings::registerFormat(*(const QString*)x[1].s_class,(bool(*)(QIODevice&,QMap<QString,QVariant>&))x[2].s_class,(bool(*)(QIODevice&,const QMap<QString,QVariant>&))x[3].s_class,(Qt::CaseSensitivity)x[4].s_enum);
        x[0].s_enum = xret;
    }
    void x_47(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSettings*>(this))) {
            bool xret = this->QSettings::event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    static void x_48(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QSettings::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_49(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QSettings::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_50(Smoke::Stack x) {
        // QSettings* QSettings(const QString&)
        x_QSettings* xret = new x_QSettings(*(const QString*)x[1].s_class,(const QString&)QString(),(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_51(Smoke::Stack x) {
        // QSettings* QSettings(const QString&, const QString&)
        x_QSettings* xret = new x_QSettings(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_52(Smoke::Stack x) {
        // QSettings* QSettings(QSettings::Scope, const QString&)
        x_QSettings* xret = new x_QSettings((QSettings::Scope)x[1].s_enum,*(const QString*)x[2].s_class,(const QString&)QString(),(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_53(Smoke::Stack x) {
        // QSettings* QSettings(QSettings::Scope, const QString&, const QString&)
        x_QSettings* xret = new x_QSettings((QSettings::Scope)x[1].s_enum,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_54(Smoke::Stack x) {
        // QSettings* QSettings(QSettings::Format, QSettings::Scope, const QString&)
        x_QSettings* xret = new x_QSettings((QSettings::Format)x[1].s_enum,(QSettings::Scope)x[2].s_enum,*(const QString*)x[3].s_class,(const QString&)QString(),(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_55(Smoke::Stack x) {
        // QSettings* QSettings(QSettings::Format, QSettings::Scope, const QString&, const QString&)
        x_QSettings* xret = new x_QSettings((QSettings::Format)x[1].s_enum,(QSettings::Scope)x[2].s_enum,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_56(Smoke::Stack x) {
        // QSettings* QSettings(const QString&, QSettings::Format)
        x_QSettings* xret = new x_QSettings(*(const QString*)x[1].s_class,(QSettings::Format)x[2].s_enum,(QObject*)0);
        x[0].s_class = (void*)xret;
    }
    static void x_57(Smoke::Stack x) {
        // QSettings* QSettings()
        x_QSettings* xret = new x_QSettings((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    void x_58(Smoke::Stack x) {
        // void beginWriteArray(const QString&)
        this->QSettings::beginWriteArray(*(const QString*)x[1].s_class,(int)-1);
        (void)x; // noop (for compiler warning)
    }
    void x_59(Smoke::Stack x) {
        // QVariant value(const QString&) const
        QVariant xret = ((const x_QSettings*)this)->QSettings::value(*(const QString*)x[1].s_class,(const QVariant&)QVariant());
        x[0].s_class = (void*)new QVariant(xret);
    }
    static void x_60(Smoke::Stack x) {
        // static QSettings::Format registerFormat(const QString&, bool(*)(QIODevice&,QMap<QString,QVariant>&), bool(*)(QIODevice&,const QMap<QString,QVariant>&))
        QSettings::Format xret = QSettings::registerFormat(*(const QString*)x[1].s_class,(bool(*)(QIODevice&,QMap<QString,QVariant>&))x[2].s_class,(bool(*)(QIODevice&,const QMap<QString,QVariant>&))x[3].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_enum = xret;
    }
    static void x_61(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QSettings::staticMetaObject;
    }
    static void x_62(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::NoError;
    }
    static void x_63(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::AccessError;
    }
    static void x_64(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::FormatError;
    }
    static void x_65(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::NativeFormat;
    }
    static void x_66(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::IniFormat;
    }
    static void x_67(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::InvalidFormat;
    }
    static void x_68(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat1;
    }
    static void x_69(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat2;
    }
    static void x_70(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat3;
    }
    static void x_71(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat4;
    }
    static void x_72(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat5;
    }
    static void x_73(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat6;
    }
    static void x_74(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat7;
    }
    static void x_75(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat8;
    }
    static void x_76(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat9;
    }
    static void x_77(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat10;
    }
    static void x_78(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat11;
    }
    static void x_79(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat12;
    }
    static void x_80(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat13;
    }
    static void x_81(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat14;
    }
    static void x_82(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat15;
    }
    static void x_83(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::CustomFormat16;
    }
    static void x_84(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::UserScope;
    }
    static void x_85(Smoke::Stack x) {
        x[0].s_enum = (long)QSettings::SystemScope;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(4414, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QSettings::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4415, (void*)this, x)) return (void*)x[0].s_class;
        return this->QSettings::qt_metacast(x1);
    }
    virtual int qt_metacall(QMetaObject::Call x1, int x2, void** x3) {
        Smoke::StackItem x[4];
        x[1].s_enum = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(4420, (void*)this, x)) return (int)x[0].s_int;
        return this->QSettings::qt_metacall(x1, x2, x3);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4460, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QSettings::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(3805, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3841, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3842, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3843, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3844, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3845, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 289: //QSettings::Status
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSettings::Status;
                    break;
                case Smoke::EnumDelete:
                    delete (QSettings::Status*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSettings::Status*)xdata = (QSettings::Status)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSettings::Status*)xdata;
                    break;
            }
            break;
        case 287: //QSettings::Format
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSettings::Format;
                    break;
                case Smoke::EnumDelete:
                    delete (QSettings::Format*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSettings::Format*)xdata = (QSettings::Format)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSettings::Format*)xdata;
                    break;
            }
            break;
        case 288: //QSettings::Scope
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSettings::Scope;
                    break;
                case Smoke::EnumDelete:
                    delete (QSettings::Scope*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSettings::Scope*)xdata = (QSettings::Scope)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSettings::Scope*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QSettings() { this->_binding->deleted(102, (void*)this); }
};
void xenum_QSettings(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QSettings::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QSettings(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSettings *xself = (x_QSettings*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: x_QSettings::x_3(args);	break;
        case 4: x_QSettings::x_4(args);	break;
        case 5: x_QSettings::x_5(args);	break;
        case 6: x_QSettings::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QSettings::x_8(args);	break;
        case 9: x_QSettings::x_9(args);	break;
        case 10: x_QSettings::x_10(args);	break;
        case 11: x_QSettings::x_11(args);	break;
        case 12: x_QSettings::x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: xself->x_40(args);	break;
        case 41: x_QSettings::x_41(args);	break;
        case 42: x_QSettings::x_42(args);	break;
        case 43: x_QSettings::x_43(args);	break;
        case 44: x_QSettings::x_44(args);	break;
        case 45: x_QSettings::x_45(args);	break;
        case 46: x_QSettings::x_46(args);	break;
        case 47: xself->x_47(args);	break;
        case 48: x_QSettings::x_48(args);	break;
        case 49: x_QSettings::x_49(args);	break;
        case 50: x_QSettings::x_50(args);	break;
        case 51: x_QSettings::x_51(args);	break;
        case 52: x_QSettings::x_52(args);	break;
        case 53: x_QSettings::x_53(args);	break;
        case 54: x_QSettings::x_54(args);	break;
        case 55: x_QSettings::x_55(args);	break;
        case 56: x_QSettings::x_56(args);	break;
        case 57: x_QSettings::x_57(args);	break;
        case 58: xself->x_58(args);	break;
        case 59: xself->x_59(args);	break;
        case 60: x_QSettings::x_60(args);	break;
        case 61: x_QSettings::x_61(args);	break;
        case 62: x_QSettings::x_62(args);	break;
        case 63: x_QSettings::x_63(args);	break;
        case 64: x_QSettings::x_64(args);	break;
        case 65: x_QSettings::x_65(args);	break;
        case 66: x_QSettings::x_66(args);	break;
        case 67: x_QSettings::x_67(args);	break;
        case 68: x_QSettings::x_68(args);	break;
        case 69: x_QSettings::x_69(args);	break;
        case 70: x_QSettings::x_70(args);	break;
        case 71: x_QSettings::x_71(args);	break;
        case 72: x_QSettings::x_72(args);	break;
        case 73: x_QSettings::x_73(args);	break;
        case 74: x_QSettings::x_74(args);	break;
        case 75: x_QSettings::x_75(args);	break;
        case 76: x_QSettings::x_76(args);	break;
        case 77: x_QSettings::x_77(args);	break;
        case 78: x_QSettings::x_78(args);	break;
        case 79: x_QSettings::x_79(args);	break;
        case 80: x_QSettings::x_80(args);	break;
        case 81: x_QSettings::x_81(args);	break;
        case 82: x_QSettings::x_82(args);	break;
        case 83: x_QSettings::x_83(args);	break;
        case 84: x_QSettings::x_84(args);	break;
        case 85: x_QSettings::x_85(args);	break;
        case 86: delete (QSettings*)xself;	break;
    }
}
class x_QSharedData : public QSharedData {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // QSharedData* QSharedData()
        x_QSharedData* xret = new x_QSharedData();
        x[0].s_class = (void*)xret;
    }
    explicit x_QSharedData() : QSharedData() {}
    static void x_2(Smoke::Stack x) {
        // QSharedData* QSharedData(const QSharedData&)
        x_QSharedData* xret = new x_QSharedData(*(const QSharedData*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSharedData(const QSharedData& x1) : QSharedData(x1) {}
    void x_3(Smoke::Stack x) {
        // QAtomicInt ref
        x[0].s_class = (void*)&this->QSharedData::ref;
    }
    void x_4(Smoke::Stack x) {
        // QAtomicInt ref=
        this->QSharedData::ref = *(const QAtomicInt*)x[1].s_class;
    }
    ~x_QSharedData() { this->_binding->deleted(103, (void*)this); }
};
void xcall_QSharedData(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSharedData *xself = (x_QSharedData*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QSharedData::x_1(args);	break;
        case 2: x_QSharedData::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: delete (QSharedData*)xself;	break;
    }
}

}
